:root{--navy:#192d3c;--blue:#245c8a;--pale:#edf4f9;--line:#dbe4eb;--muted:#627381;--paper:#fff;--surface:#f6f8fa;--red:#c5283d;--green:#216c54;font-family:Arial,"Segoe UI",sans-serif;color:var(--navy);font-synthesis:none;background:var(--surface);font-size:15px}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:#fff;color:var(--navy);padding:10px 15px;border-radius:5px;font-weight:600;cursor:pointer;text-decoration:none;min-height:40px}button:hover,.button:hover{border-color:var(--blue);background:var(--pale);text-decoration:none}button.primary,.button.primary{background:var(--blue);color:#fff;border-color:var(--blue)}button.danger{color:var(--red)}button:disabled{opacity:.5;cursor:wait}button.small,.button.small{padding:5px 9px;min-height:32px;font-size:13px}button.link{border:0;background:none;padding:5px;color:var(--blue)}:focus-visible{outline:3px solid #85b3d7;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1{font-size:29px;letter-spacing:-.6px;font-weight:600;margin-bottom:8px}h2{font-size:20px;margin-bottom:18px}h3{font-size:16px}p{line-height:1.6}small,.muted{color:var(--muted)}.loading{padding:40px}.logo{position:relative;overflow:hidden;display:block;width:274px;height:95px;flex-shrink:0}.logo img{position:absolute;width:344px;max-width:none;left:-42px;top:-70px}.sidebar .logo{width:225px;height:83px;margin:17px 3px 27px}.sidebar .logo img{width:288px;left:-36px;top:-56px}.layout{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);background:#fff;padding:12px 16px;display:flex;flex-direction:column;z-index:10}.nav{display:flex;flex-direction:column;gap:5px}.nav a{display:flex;align-items:center;gap:12px;padding:12px 13px;color:#485e6e;font-weight:500;border-radius:5px}.nav a:hover{text-decoration:none;background:var(--surface)}.nav a.active{background:var(--pale);color:var(--blue);font-weight:600}.nav svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.6}.sidebar-footer{margin-top:auto;border-top:1px solid var(--line);padding:20px 8px 8px}.sidebar-footer strong{font-size:14px;display:block;margin-bottom:4px}.sidebar-footer small{display:block;margin-bottom:12px}.main{min-width:0}.topbar{height:72px;padding:0 35px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:#fff}.topbar .right{display:flex;align-items:center;gap:12px}.crumb{font-size:13px;color:var(--muted)}.content{max-width:1540px;margin:0 auto;padding:32px 36px 70px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.page-head p{margin:0;color:var(--muted)}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.panel{background:#fff;border:1px solid var(--line);border-radius:7px;padding:24px;margin-bottom:24px}.panel.flush{padding:0;overflow:hidden}.panel-title{padding:21px 23px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center}.panel-title h2{margin:0}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px}.stat{background:#fff;border:1px solid var(--line);border-radius:6px;padding:20px}.stat strong{display:block;font-size:30px;font-weight:500;margin-top:9px}.stat span{font-size:13px;color:var(--muted)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:14px}th{font-size:12px;letter-spacing:.3px;color:var(--muted);font-weight:600;background:#f8fafc;white-space:nowrap}th,td{padding:14px 18px;border-bottom:1px solid #e9eef2;vertical-align:middle}tr:last-child td{border-bottom:0}tbody tr:hover{background:#fafcfe}.badge{display:inline-flex;align-items:center;font-size:12px;border:1px solid var(--line);padding:4px 8px;border-radius:4px;color:#526675;background:#f6f8fa;white-space:nowrap}.badge.blue{background:#edf4fa;color:#245c8a;border-color:#d2e2ef}.badge.green{background:#edf7f2;color:var(--green);border-color:#d1e8dc}.badge.red{background:#fff2f3;color:var(--red);border-color:#f2d5da}.empty{padding:42px 20px;text-align:center;color:var(--muted)}label{font-size:13px;font-weight:600;display:block;margin-bottom:7px}input,select,textarea{width:100%;border:1px solid #cdd9e2;background:white;border-radius:4px;padding:10px 11px;color:var(--navy);min-height:42px}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:18px;accent-color:var(--blue);margin:0}textarea{resize:vertical;min-height:100px}.field{margin-bottom:18px}.field small{display:block;margin-top:6px;line-height:1.5}.fields{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.check{display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.5;margin:13px 0}.check input{flex-shrink:0;margin-top:2px}.toolbar{display:flex;align-items:center;gap:12px;margin-bottom:20px;flex-wrap:wrap}.toolbar input{max-width:340px}.tabs{display:flex;gap:5px;border-bottom:1px solid var(--line);margin:15px 0 25px;overflow:auto}.tabs button{border:0;border-radius:0;background:none;color:var(--muted);padding:14px 16px;white-space:nowrap}.tabs button.active{border-bottom:2px solid var(--blue);color:var(--blue)}.notice{padding:14px 16px;background:var(--pale);border-left:3px solid var(--blue);margin-bottom:22px;font-size:14px;line-height:1.6}.notice.warn{background:#fff7ec;border-color:#b98032;color:#795327}.error{background:#fff0f2;color:var(--red);padding:12px 15px;border-radius:4px;margin-bottom:18px;line-height:1.5}.success{color:var(--green)}dialog{border:1px solid var(--line);border-radius:9px;padding:0;width:min(650px,calc(100% - 28px));max-height:92vh;box-shadow:0 18px 65px #142c3f26;color:var(--navy)}dialog::backdrop{background:#142c3f65}dialog.wide{width:min(1000px,calc(100% - 28px))}.dialog-head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px;border-bottom:1px solid var(--line)}.dialog-head h2{margin:0}.dialog-body{padding:25px 26px;overflow:auto}.dialog-foot{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);padding:18px 26px}.close{font-size:23px;line-height:1;border:0;padding:3px 8px;min-height:30px}.auth-page{min-height:100vh;background:#fff}.public-header{display:flex;justify-content:space-between;align-items:center;padding:20px 7vw;border-bottom:1px solid var(--line)}.public-main{max-width:1120px;margin:65px auto;padding:0 28px}.public-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:95px;align-items:center}.public-intro h1{font-size:44px;font-weight:400;line-height:1.15;margin-bottom:25px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;color:var(--blue);margin-bottom:16px}.public-intro{padding:35px 0}.auth-box{border:1px solid var(--line);padding:34px;border-radius:7px;background:#fff}.auth-box h2{font-size:24px}.public-footer{max-width:1120px;margin:60px auto 0;padding:30px 28px;border-top:1px solid var(--line);color:var(--muted);font-size:13px;display:flex;justify-content:space-between;gap:20px}.survey-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.85fr);gap:22px;align-items:start}.scan-panel{position:sticky;top:20px;background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden}.scan-scroll{max-height:77vh;overflow:auto;background:#e9eef2;position:relative}.scan-svg{display:block;width:100%;height:auto;user-select:none}.hit-circle{fill:transparent;stroke:transparent;cursor:pointer;pointer-events:all;stroke-width:4}.hit-circle:hover,.hit-circle:focus{fill:#245c8a22;stroke:#245c8a;outline:none}.hit-circle.selected{stroke:#d2142b;stroke-width:4;fill:transparent}.hit-circle.active-row{stroke:#245c8a66;stroke-width:2}.hit-circle.selected.active-row{stroke:#d2142b;stroke-width:4}.answer-panel{background:#fff;border:1px solid var(--line);border-radius:6px;overflow:hidden}.answer-scroll{max-height:66vh;overflow:auto}.answer-row{display:grid;grid-template-columns:45px 1fr 67px;align-items:center;padding:9px 14px;border-bottom:1px solid #e9eef2;gap:10px}.answer-row.current{background:var(--pale)}.answer-row.needs{border-left:3px solid #c47a22;padding-left:11px}.answer-buttons{display:flex;gap:7px}.answer-buttons button{border-radius:50%;width:34px;height:34px;min-height:34px;padding:0;font-size:13px;font-weight:500}.answer-buttons button.chosen{background:var(--blue);color:white;border-color:var(--blue)}.answer-row>span{font-size:13px;color:var(--muted)}.answer-row .link{font-size:12px}.survey-summary{display:flex;align-items:center;gap:13px;flex-wrap:wrap;padding:15px 17px;border-bottom:1px solid var(--line);font-size:13px}.survey-tools{padding:14px 17px;border-bottom:1px solid var(--line)}.survey-tools input{width:80px;min-height:32px;padding:6px}.answer-preview{background:#eef2f5;border:1px solid var(--line);border-radius:4px;margin-bottom:22px;overflow:hidden}.answer-preview svg{width:100%;display:block}.review-choices{display:flex;gap:12px;justify-content:center;margin:22px 0}.review-choices button{width:58px;height:58px;border-radius:50%;font-size:22px}.review-choices .chosen{background:var(--blue);color:#fff}.question-status{font-size:13px;color:var(--muted);text-align:center}.key-code{font-family:Consolas,monospace;white-space:nowrap}.messages{display:flex;flex-direction:column;gap:16px;max-height:56vh;overflow:auto;padding:22px;background:#fff}.message{max-width:80%;padding:13px 17px;background:#f0f4f7;border-radius:5px;align-self:flex-start;white-space:pre-wrap;line-height:1.5}.message.mine{align-self:flex-end;background:#e4eff8}.message small{display:block;font-size:11px;margin-bottom:7px}.compose{display:flex;align-items:flex-end;padding:18px;gap:12px;border-top:1px solid var(--line)}.compose textarea{min-height:70px}.note{padding:20px;border-bottom:1px solid var(--line)}.note h3{margin-bottom:8px}.note .body{white-space:pre-wrap;line-height:1.6;margin-top:13px}.day-heading{font-size:13px;text-transform:capitalize;background:#edf3f8;padding:12px 20px;margin:0;border-bottom:1px solid var(--line);font-weight:600}.video-shell{background:#142733;color:white;min-height:100vh;padding:22px}.video-header{display:flex;justify-content:space-between;margin-bottom:20px}.video-stage{position:relative;background:#0d1c25;border-radius:6px;min-height:65vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.video-stage video.remote{width:100%;max-height:70vh}.video-stage video.local{width:210px;position:absolute;right:18px;bottom:18px;border:1px solid #60717b;border-radius:4px}.video-controls{display:flex;justify-content:center;gap:10px;padding:20px;flex-wrap:wrap}.video-status{text-align:center;position:absolute;top:20px;font-size:14px;color:#c8d8e2}.video-chat{max-width:650px;margin:0 auto}.video-chat .messages{max-height:200px;color:var(--navy)}#toast{position:fixed;bottom:25px;right:25px;max-width:430px;background:var(--navy);color:#fff;padding:14px 20px;border-radius:5px;box-shadow:0 5px 25px #142c3f22;display:none;z-index:100;line-height:1.5}.mobile-menu{display:none}.fine{font-size:12px;line-height:1.6;color:var(--muted)}.upload-label{cursor:pointer}.upload-label input{display:none}.section-gap{margin-top:32px}.mono{font-family:Consolas,monospace;word-break:break-word}.inline-list{display:flex;flex-wrap:wrap;gap:8px}.break{overflow-wrap:anywhere}
@media(min-width:1700px){.survey-layout{grid-template-columns:1.3fr 1fr}.scan-scroll{max-height:82vh}}@media(max-width:1100px){.layout{grid-template-columns:210px 1fr}.sidebar{padding:10px}.sidebar .logo{transform:scale(.85);transform-origin:left;width:195px}.content{padding:25px 23px}.topbar{padding:0 23px}.survey-layout{grid-template-columns:1fr}.scan-panel{position:relative;top:0}.scan-scroll{max-height:70vh}.answer-scroll{max-height:450px}.public-grid{gap:40px}.public-intro h1{font-size:37px}}@media(max-width:760px){.layout{display:block}.sidebar{position:fixed;left:-260px;width:248px;transition:left .2s;box-shadow:10px 0 35px #142c3f22}.sidebar.open{left:0}.mobile-menu{display:inline-flex;padding:5px 9px}.topbar{height:60px;padding:0 15px}.topbar .right{gap:5px}.topbar .right .user-label{display:none}.crumb{margin-left:10px}.content{padding:23px 15px 50px}.page-head{align-items:flex-start;flex-direction:column;gap:15px;margin-bottom:22px}h1{font-size:25px}.panel{padding:18px}.stats{gap:9px}.stat{padding:13px 10px}.stat strong{font-size:26px}.stat span{font-size:11px}.grid,.fields{grid-template-columns:1fr;gap:0}.panel-title{padding:16px}.public-header{padding:15px}.public-header .logo{transform:scale(.72);transform-origin:left;width:210px;height:74px}.public-header .button{font-size:12px;padding:8px 10px}.public-main{margin:25px auto;padding:0 20px}.public-grid{display:flex;flex-direction:column;gap:22px;align-items:stretch}.public-intro{padding:12px 0}.public-intro h1{font-size:32px;margin-bottom:15px}.auth-box{padding:24px}.public-footer{margin-top:35px;flex-direction:column;gap:8px}.dialog-head{padding:18px}.dialog-body{padding:20px 18px}.dialog-foot{padding:15px;flex-wrap:wrap}.answer-row{padding:9px 10px;grid-template-columns:37px 1fr 60px}.answer-buttons{gap:6px}.survey-layout{gap:18px}.video-shell{padding:12px}.video-stage video.local{width:115px;right:9px;bottom:9px}.video-stage{min-height:55vh}.video-controls button{font-size:12px;padding:8px}.review-choices{gap:10px}#toast{right:14px;left:14px;bottom:14px}th,td{padding:12px 14px}}
:root .survey-tools input[type=checkbox]{width:18px;height:18px;padding:0;min-height:18px}
@media(max-width:760px){:root .public-header .logo{transform:none;width:185px;height:62px;min-width:140px;flex-shrink:1}:root .public-header .logo img{width:235px;left:-32px;top:-47px}}
:root .logo img{filter:brightness(1.08) contrast(1.08);mix-blend-mode:multiply}

.public-intro{padding:0;display:flex;flex-direction:column;align-items:center;gap:18px}.public-illustration{display:block;width:100%;height:auto;max-width:590px;mix-blend-mode:multiply}.public-intro p{margin:0}.auth-box .auth-title{font-size:24px;line-height:1.3;letter-spacing:-.3px;font-weight:600;margin:0 0 18px}.public-grid{grid-template-columns:minmax(0,1.25fr) minmax(340px,1fr);gap:70px}@media(max-width:760px){.public-intro{gap:8px}.public-illustration{max-width:340px;max-height:205px;object-fit:contain}.public-grid{gap:24px}.public-intro>a{font-size:13px}}
.config-fieldset{border:0;padding:0;margin:0;min-width:0}.config-fieldset:disabled{opacity:.75}.settings-actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap;position:sticky;top:0;z-index:3;background:#f6f8fa;padding:12px 0}.settings-actions>button[type=submit]{margin-left:auto}.settings-strip{display:flex;justify-content:space-between;align-items:center;gap:20px}.settings-strip h2{margin-bottom:6px}.config-key-scroll{max-height:65vh;overflow:auto}.config-keys{min-width:900px}.config-keys thead{position:sticky;top:0;z-index:1}.config-keys td{padding:9px 10px}.config-keys td:nth-child(2){min-width:160px}.config-keys td:nth-child(3),.config-keys td:nth-child(4){min-width:248px}.config-points{display:grid;grid-template-columns:repeat(4,minmax(45px,1fr));gap:6px}.config-points input{width:100%;padding:8px 5px;text-align:center;font-size:13px}.config-bands input[type=number]{width:80px}.config-bands input[type=color]{width:64px;height:36px;padding:3px;cursor:pointer}.config-bands{min-width:580px}.config-formulas{display:grid;grid-template-columns:1fr 1fr;gap:22px}.formula-input{font:13px/1.5 Consolas,monospace;min-height:190px;resize:vertical}.config-checks{display:grid;grid-template-columns:repeat(2,1fr);gap:0 20px}.band-badge{display:inline-block;padding:5px 9px;border-radius:3px;white-space:nowrap;font-size:12px}.band-legend{display:flex;gap:12px 18px;flex-wrap:wrap;margin-top:20px;font-size:12px;line-height:1.5}.band-legend>span{display:inline-flex;gap:7px;align-items:center}.band-legend i{display:inline-block;flex-shrink:0;width:12px;height:12px;border:1px solid #0002;border-radius:2px}@media(max-width:900px){.config-formulas{grid-template-columns:1fr}}@media(max-width:760px){.settings-strip{align-items:flex-start;flex-direction:column}.settings-actions>button[type=submit]{margin-left:0}.config-checks{grid-template-columns:1fr}.settings-actions{top:0}.settings-actions .button,.settings-actions button{font-size:12px;padding:8px 10px}.config-key-scroll{max-height:60vh}}

.config-norms{margin-top:20px;max-width:600px}.config-norms h3{margin:0 auto 0 0;font-size:16px}.config-norms table input{width:100%;min-width:85px;max-width:160px}.config-norms td,.config-norms th{padding:6px 12px}.config-norms .norm-invalid{background:#fff2e6}.config-formulas{padding-top:16px}
