:root{--navy:#0b3558;--navy-2:#082944;--blue:#1677ff;--cyan:#10b9b1;--bg:#f4f7fa;--line:#dce4eb;--text:#142536;--muted:#6c7c8d;--green:#17976d;--orange:#e89724;--red:#d94c4c;--shadow:0 18px 50px rgba(11,53,88,.1)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}button,input{font:inherit}a{text-decoration:none;color:inherit}.topbar{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 4vw;gap:42px;position:sticky;top:0;z-index:20}.brand{font-size:21px;font-weight:800;color:var(--navy);display:flex;align-items:center;gap:10px}.brand span,.logo-mark{display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,var(--navy),var(--cyan));border-radius:12px;font-weight:900}.brand span{width:39px;height:39px}.topbar nav{display:flex;gap:28px;font-weight:650;font-size:14px;flex:1}.topbar nav a:hover{color:var(--blue)}.user-menu{display:flex;align-items:center;gap:22px;text-align:right}.user-menu span{display:flex;flex-direction:column}.user-menu small{color:var(--muted);margin-top:3px;max-width:230px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.link-button{border:0;background:none;color:var(--red);cursor:pointer;font-weight:700}.page{max-width:1450px;margin:auto;padding:42px 4vw 70px}.auth-main{min-height:100vh}.login-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr);background:radial-gradient(circle at 18% 20%,#1b6082 0,#0b3558 42%,#07263e 100%);padding:7vw;gap:8vw;align-items:center}.login-copy{color:#fff;max-width:700px}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:800;color:var(--cyan)}.login-copy h1{font-size:clamp(38px,5vw,68px);line-height:1.04;margin:18px 0 22px;letter-spacing:-.04em}.login-copy>p{color:#c6d8e5;font-size:18px;line-height:1.7;max-width:590px}.feature-row{display:flex;align-items:center;gap:18px;margin-top:28px}.feature-row>span{border:1px solid #57809b;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;color:#7de2dd}.feature-row div{display:flex;flex-direction:column;gap:4px}.feature-row small{color:#b9cedc}.login-card{background:#fff;border-radius:24px;padding:48px;box-shadow:0 30px 90px #031b2d80}.logo-mark{width:58px;height:58px;font-size:23px}.login-card h2{font-size:30px;margin:28px 0 7px}.login-card>p{color:var(--muted);margin:0 0 30px}.form-stack{display:flex;flex-direction:column;gap:10px}.form-stack label{font-size:13px;font-weight:750;margin-top:7px}.form-stack input,.search{border:1px solid var(--line);background:#f9fbfc;border-radius:10px;padding:14px 15px;outline:none}.form-stack input:focus,.search:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677ff18}.password-wrap{display:flex;position:relative}.password-wrap input{width:100%;padding-right:70px}.password-wrap button{position:absolute;right:7px;top:7px;bottom:7px;border:0;background:#e9eff4;border-radius:7px;color:var(--navy);font-size:12px;font-weight:750}.button{border:0;border-radius:9px;padding:13px 19px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:9px}.button.primary{background:linear-gradient(135deg,var(--blue),#075cce);color:#fff}.button.dark{background:var(--navy);color:#fff}.button.ghost{border:1px solid var(--line);background:#fff;color:var(--navy)}.button.wide{width:100%;margin-top:12px}.button:disabled{opacity:.65}.secure-note{display:block;color:#8b99a6;text-align:center;margin-top:25px}.field-error{font-size:12px;color:var(--red)}.alert{padding:13px 16px;border-radius:9px;margin:10px 0}.alert:empty{display:none}.alert.error{background:#fff0f0;color:#a42b2b;border:1px solid #f4caca}.page-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:30px}.page-heading.compact{align-items:center}.page-heading h1{font-size:34px;letter-spacing:-.03em;margin:8px 0}.page-heading p{margin:0;color:var(--muted)}.search{width:280px;background:#fff}.company-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(310px,1fr));gap:18px}.company-card{position:relative;background:#fff;border:1px solid var(--line);padding:25px;border-radius:16px;display:grid;grid-template-columns:54px 1fr;gap:17px;box-shadow:0 5px 20px #0b355808}.company-card:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:#b8cedd}.company-icon{width:54px;height:54px;border-radius:13px;background:#e7f1fa;color:var(--navy);display:grid;place-items:center;font-size:22px;font-weight:900}.company-card h2{font-size:17px;margin:4px 0}.company-card p{font-size:13px;color:var(--muted);margin:0}.company-card .badge{position:absolute;top:21px;right:21px}.company-card .button{grid-column:1/-1;margin-top:10px}.badge{display:inline-flex;border-radius:99px;padding:5px 9px;font-size:11px;font-weight:800}.badge.neutral{background:#edf2f6;color:#526778}.badge.success{background:#def6eb;color:#087952}.badge.progress{background:#e1efff;color:#075fc2}.badge.warning{background:#fff0d7;color:#9b5d00}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:24px}.stats article{background:#fff;border:1px solid var(--line);padding:22px 25px;border-radius:14px;display:grid;grid-template-columns:1fr auto}.stats span{color:var(--muted);font-size:13px;font-weight:700}.stats strong{font-size:32px;grid-row:1/3;grid-column:2}.stats small{margin-top:8px;color:#92a0ac}.danger-text{color:var(--red)}.panel{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;padding:19px 23px;border-bottom:1px solid var(--line)}.panel-head h2{margin:0;font-size:18px}.filters{display:flex;gap:7px}.chip{border:0;background:#edf2f6;color:#526778;padding:7px 12px;border-radius:99px;cursor:pointer}.chip.active{background:var(--navy);color:#fff}.task-card{display:grid;grid-template-columns:5px 1fr auto;gap:21px;padding:22px 24px;border-bottom:1px solid var(--line)}.task-card:last-child{border-bottom:0}.task-status{border-radius:99px}.task-status.open{background:var(--blue)}.task-status.done{background:var(--green)}.task-top{display:flex;align-items:center;gap:10px}.task-id{color:#94a2ad;font-size:12px}.task-main h3{margin:11px 0 7px;font-size:17px}.task-main p{margin:0 0 13px;color:var(--muted);font-size:14px;max-width:850px}.task-meta{display:flex;gap:22px;flex-wrap:wrap;color:#637586;font-size:12px}.task-time{min-width:130px;display:flex;flex-direction:column;align-items:end;justify-content:center}.task-time small,.task-time span{color:var(--muted);font-size:12px}.task-time strong{margin:6px 0}.scanner-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.7fr);gap:25px}.scanner-card,.manual-card,.info-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}.camera{aspect-ratio:4/3;background:#061a2a;border-radius:12px;overflow:hidden;position:relative;margin-bottom:16px}.camera video{width:100%;height:100%;object-fit:cover}.camera-placeholder{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff;background:radial-gradient(circle,#174765,#061a2a)}.camera-placeholder span{font-size:56px;color:#56d9d2}.camera-placeholder strong{font-size:20px;margin-top:15px}.camera-placeholder small{color:#afc4d2;margin-top:8px}.camera-placeholder[hidden]{display:none}.scan-frame{position:absolute;width:70%;height:35%;left:15%;top:32%;border:2px solid #77efe8;border-radius:12px;box-shadow:0 0 0 100vmax #00101b55}.scan-frame i{position:absolute;left:5%;right:5%;height:2px;background:#ff4949;top:50%;box-shadow:0 0 12px #ff4949}.camera-note{text-align:center;color:var(--muted);font-size:12px;margin:14px 0 0}.scan-side{display:flex;flex-direction:column;gap:18px}.manual-card h2{margin:9px 0}.manual-card>p,.info-card p{color:var(--muted);line-height:1.6}.scan-result{border-radius:14px;padding:18px;display:flex;gap:14px;align-items:center}.scan-result>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:22px;font-weight:900}.scan-result div{display:flex;flex-direction:column;gap:5px}.scan-result small{opacity:.8}.scan-result.ok{background:#e3f7ee;color:#087952}.scan-result.ok>span{background:var(--green)}.scan-result.fail{background:#fff0f0;color:#9b2929}.scan-result.fail>span{background:var(--red)}.empty-state{text-align:center;padding:70px 20px;color:var(--muted)}.empty-state h1,.empty-state h2{color:var(--text)}
@media(max-width:850px){.topbar{height:auto;padding:13px 18px;flex-wrap:wrap;gap:12px}.topbar nav{order:3;width:100%;overflow:auto;gap:22px;border-top:1px solid var(--line);padding-top:11px}.user-menu{margin-left:auto}.user-menu span{display:none}.page{padding:27px 16px 60px}.login-shell{grid-template-columns:1fr;padding:28px 18px}.login-copy{display:none}.login-card{padding:32px 25px;max-width:480px;width:100%;margin:auto}.page-heading{align-items:flex-start;flex-direction:column}.page-heading .button,.search{width:100%}.stats{grid-template-columns:1fr}.scanner-layout{grid-template-columns:1fr}.scanner-card{padding:12px}.task-card{grid-template-columns:5px 1fr}.task-time{grid-column:2;align-items:start;border-top:1px dashed var(--line);padding-top:12px}.task-meta{gap:10px}.company-grid{grid-template-columns:1fr}}@media(max-width:460px){.login-card{border-radius:18px}.topbar nav a{white-space:nowrap}.page-heading h1{font-size:28px}.panel{margin-left:-8px;margin-right:-8px}.task-card{padding:18px 13px}.filters{max-width:190px;overflow:auto}.camera{aspect-ratio:3/4}}
