:root{--ink:#202b3c;--muted:#788498;--line:#e7ebf1;--paper:#f6f8fb;--white:#fff;--blue:#5268df;--blue-dark:#4055c5;--green:#339777;--amber:#bf8430;--red:#c45959;--shadow:0 3px 14px rgba(31,48,74,.045)}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',system-ui,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:244px;padding:25px 16px 17px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;z-index:2}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 37px;font:800 18px Manrope,sans-serif;letter-spacing:-.5px}.brand small{display:block;color:#8b96a8;font:700 8px 'DM Sans',sans-serif;letter-spacing:1.9px;margin-top:3px}.brand-mark{width:34px;height:34px;border-radius:10px;background:#e9edff;color:var(--blue);display:grid;place-items:center;font:800 20px Manrope}.nav-label,.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.55px;color:#98a2b1}.nav-label{padding:0 12px 11px}.sidebar nav{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:13px;padding:12px;border-radius:8px;color:#667287;font-weight:600;transition:.15s}.nav-item>span{font-size:17px;width:17px;text-align:center;color:#8792a3}.nav-item:hover{background:#f7f8fc}.nav-item.active{color:var(--blue);background:#eef0ff}.nav-item.active>span{color:var(--blue)}.sidebar-foot{margin-top:auto;border:1px solid var(--line);border-radius:10px;padding:13px;display:flex;gap:10px;align-items:center;font-size:11px}.sidebar-foot b,.sidebar-foot small{display:block}.sidebar-foot small{margin-top:4px;color:var(--muted)}.system-dot{width:8px;height:8px;border-radius:50%;background:#49ab85;box-shadow:0 0 0 4px #e6f5ef}.main{margin-left:244px;min-height:100vh;padding:0 38px 48px;max-width:1700px}.topbar{height:67px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);margin:0 -38px 0;padding:0 38px;background:rgba(255,255,255,.46);font-size:12px;color:#748095}.crumb span{padding:0 7px;color:#b6bdc8}.crumb a{color:var(--blue)}.user-menu{display:flex;align-items:center;gap:9px;color:#465267;font-weight:600}.avatar{height:27px;width:27px;border-radius:50%;background:#eaedff;color:var(--blue);display:grid;place-items:center;font-weight:700}.user-menu form{margin-left:10px}.link-button{border:0;background:none;color:#828da0;font-size:12px;cursor:pointer}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin:36px 0 24px}.eyebrow{color:var(--blue);margin-bottom:9px}.page-head h1{margin:0;font:700 27px Manrope,sans-serif;letter-spacing:-.75px}.page-head p{margin:7px 0 0;color:var(--muted);font-size:13px}.button{border:1px solid transparent;border-radius:7px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:600;font-size:12px;white-space:nowrap;transition:.15s}.button.primary{background:var(--blue);color:white;box-shadow:0 2px 4px #5268df2b}.button.primary:hover{background:var(--blue-dark)}.button.secondary{background:#fff;border-color:#dfe4ec;color:#536074}.button.secondary:hover{background:#f8f9fc}.button.danger{background:#fff;border-color:#f0d7d7;color:#b94f4f}.button.danger:hover{background:#fff7f7}.button.compact{padding:8px 11px;font-size:11px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:21px}.metric-card,.content-card{background:var(--white);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow)}.metric-card{padding:17px 18px 15px;min-height:132px}.metric-title{color:#778398;font-size:11px;font-weight:600;display:flex;justify-content:space-between}.metric-title span{color:#b5bdc8}.metric-value{font:700 28px Manrope,sans-serif;margin:12px 0 10px;letter-spacing:-1px}.metric-foot{display:flex;align-items:center;gap:7px;color:#8a94a4;font-size:10px}.metric-icon{display:grid;place-items:center;width:18px;height:18px;border-radius:5px;font-weight:700}.metric-icon.blue{color:var(--blue);background:#eef0ff}.metric-icon.green{color:var(--green);background:#e7f5ef}.metric-icon.amber{color:var(--amber);background:#fff4df}.protocol-card{background:#f4f5ff;border-color:#e6e8ff}.protocol-name{font:700 17px Manrope;margin:13px 0 3px}.protocol-time{font-size:10px;color:#818ba0}.protocol-time i{padding:0 4px;color:#bdc3d1}.protocol-card>a{display:block;color:var(--blue);font-size:10px;font-weight:600;margin-top:9px}.protocol-card>a span{margin-left:4px}.content-card{margin-bottom:18px;overflow:hidden}.card-head{padding:17px 19px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f4}.card-head h2{font:700 14px Manrope;margin:0;letter-spacing:-.15px}.card-head p{margin:5px 0 0;color:#8994a5;font-size:11px}.text-link,.row-link{color:var(--blue);font-size:11px;font-weight:600}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:760px}th{text-align:left;background:#fbfcfd;color:#919baa;font-size:9px;letter-spacing:.85px;font-weight:700;padding:11px 17px;border-bottom:1px solid #edf0f4;white-space:nowrap}td{padding:12px 17px;border-bottom:1px solid #f0f2f5;color:#596579;font-size:11px;white-space:nowrap}tbody tr:last-child td{border-bottom:0}td b{color:#374359;font-weight:600}.sub-cell{display:block;color:#9aa3b1;font-size:10px;margin-top:4px}.empty-cell{text-align:center;color:#949eac;padding:31px}.status{display:inline-flex;align-items:center;border-radius:100px;padding:5px 9px;font-size:9px;font-weight:600;white-space:nowrap}.status:before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor;margin-right:6px}.status.pending{color:#828b99;background:#f0f2f5}.status.review{color:#b58030;background:#fff4dc}.status.approved{color:#348c6c;background:#e8f6ef}.status.corrected{color:#4765c7;background:#edf0ff}.status.rejected{color:#b45252;background:#fff0f0}.process-card{padding-bottom:16px}.process-card .card-head{border-bottom:0}.steps{display:flex;align-items:center;padding:11px 28px 5px}.step{display:flex;align-items:center;gap:8px;color:#8b95a4;font-size:10px;white-space:nowrap}.step b{width:23px;height:23px;border:1px solid #dfe4ec;border-radius:50%;display:grid;place-items:center;font-size:10px;background:#fff}.step.done{color:var(--blue);font-weight:600}.step.done b{background:var(--blue);border-color:var(--blue);color:#fff}.steps>i{height:1px;background:#e3e7ee;flex:1;margin:0 12px}.messages{padding-top:10px}.message{padding:10px 13px;border-radius:7px;font-size:12px;margin-top:8px}.message.success{background:#eaf7f1;color:#337a61}.message.warning{background:#fff4df;color:#896323}.message.error{background:#fff0f0;color:#a64040}.upload-layout{display:grid;grid-template-columns:minmax(0,1fr) 295px;gap:18px;align-items:start}.form-card{padding:4px 22px}.form-section{display:grid;grid-template-columns:30px 1fr;gap:13px;padding:23px 0;border-bottom:1px solid #edf0f4}.section-number{width:26px;height:26px;display:grid;place-items:center;border-radius:7px;background:#eef0ff;color:var(--blue);font-size:10px;font-weight:700}.form-section-body h2{font:700 13px Manrope;margin:3px 0 5px}.form-section-body>p{font-size:10px;color:#8792a2;margin:0 0 15px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px 15px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label,.file-drop label,.filter-bar label{font-size:10px;color:#69768a;font-weight:600}.field input,.field select,.field textarea,.filter-bar input,.filter-bar select,.review-form select,.small-input{border:1px solid #dfe4ec;border-radius:6px;min-height:36px;background:#fff;padding:8px 10px;color:#435066;outline:none;font-size:11px;width:100%}.field textarea{resize:vertical}.field input:focus,.field select:focus,.field textarea:focus,.filter-bar input:focus,.filter-bar select:focus{border-color:#8c9af0;box-shadow:0 0 0 3px #5368df16}.field small{color:#959eab;font-size:9px}.field ul.errorlist,.file-drop ul.errorlist{list-style:none;padding:0;margin:0;color:#b54a4a;font-size:10px}.file-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.file-drop{border:1px dashed #cfd6e2;background:#fbfcfe;border-radius:8px;padding:17px 14px;position:relative}.file-drop input[type=file]{margin-top:12px;width:100%;font-size:10px;color:#718096}.file-drop p{font-size:9px;color:#96a0af;margin:5px 0 0}.file-symbol{width:28px;height:28px;border-radius:7px;background:#edf0ff;color:var(--blue);display:grid;place-items:center;margin-bottom:10px}.optional{font:700 8px 'DM Sans';letter-spacing:1px;color:#a0a8b5;background:#f2f4f7;border-radius:4px;padding:4px 6px;margin-left:7px}.form-actions{display:flex;justify-content:flex-end;gap:9px;padding:17px 0}.info-panel{border:1px solid #e0e4fc;background:#f4f5ff;border-radius:10px;padding:19px;color:#637091}.info-icon{width:24px;height:24px;border-radius:50%;background:#e5e9ff;color:var(--blue);display:grid;place-items:center;font:700 12px Georgia}.info-panel h3{font:700 13px Manrope;margin:14px 0 7px;color:#34405e}.info-panel>p{font-size:10px;line-height:1.6;margin:0;color:#737f9a}.protocol-visual{background:#fff;border-radius:7px;padding:12px;margin:14px 0}.protocol-visual>span,.protocol-labels{font-size:8px;color:#9aa3b4}.protocol-line{height:14px;display:flex;align-items:center;margin:4px 0}.protocol-line i{height:8px;width:8px;border:2px solid var(--blue);border-radius:50%}.protocol-line b{height:3px;background:#929fee;flex:1}.protocol-line i:last-child{background:var(--blue)}.protocol-labels{display:flex;justify-content:space-between}.protocol-labels b{color:#5e6ed0}.info-panel .info-note{border-top:1px solid #e1e5fa;padding-top:12px}.filter-bar{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:9px;padding:13px;margin-bottom:18px}.filter-bar>div{display:flex;flex-direction:column;gap:5px;min-width:115px;flex:1}.filter-bar input,.filter-bar select{min-height:32px;padding:6px 8px;font-size:10px}.count-pill{font:600 10px 'DM Sans';background:#f0f2f6;color:#758095;border-radius:20px;padding:3px 7px;vertical-align:2px;margin-left:5px}.export-actions{display:flex;gap:6px}.title-divider{color:#c7cdd6;font-weight:400;margin:0 3px}.large-status{margin-bottom:5px}.window-card{padding-bottom:15px}.window-stats{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 7px;gap:12px}.window-stats>div:not(.window-arrow){display:flex;flex-direction:column;gap:5px}.window-stats span{font-size:8px;letter-spacing:1px;color:#9aa3b1;font-weight:700}.window-stats b{font:700 16px Manrope;color:#39455a}.window-stats small{font-size:9px;color:#8c96a5}.window-arrow{color:#a8b0be}.warning-text{color:#bf8430!important}.warning-banner{margin:12px 21px 1px;background:#fff5df;border:1px solid #f2e6c9;border-radius:6px;color:#8e6a27;padding:9px 11px;font-size:10px}.protocol-chip{border:1px solid #e5e8f0;border-radius:20px;padding:6px 9px;color:#778398;font-size:9px}.chart-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.chart-grid .content-card{margin:0}.chart-card{padding-bottom:8px}.chart-card canvas{display:block;width:100%;height:215px;touch-action:none}.chart-card.wide{grid-column:1 / -1}.chart-card.wide canvas{height:245px}.legend{display:flex;gap:12px;color:#788497;font-size:9px}.legend span{display:flex;align-items:center;gap:5px}.dot{width:7px;height:7px;border-radius:50%;display:inline-block}.dot.original{background:#5268df}.dot.corrected{background:#e18335}.dot.flagged{background:#e55d5d}.chart-controls{display:flex;align-items:center;gap:13px;padding:3px 18px 8px;color:#8792a2;font-size:9px}.chart-controls button{border:0;background:none;padding:0;color:var(--blue);font-weight:600;font-size:9px;cursor:pointer}.description-cell{color:#8490a2;font-size:10px;white-space:normal;min-width:250px}.quality-footer{padding:12px 18px;background:#fbfcfd;border-top:1px solid #edf0f4;display:flex;justify-content:space-between;gap:12px;color:#7d899b;font-size:9px}.review-form{padding-bottom:12px}.review-form select,.small-input{min-height:29px;padding:5px 7px;font-size:10px}.small-input{width:115px}.review-actions{padding:13px 17px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.muted-note{color:#858fa0;font-size:10px}.success-note{margin:17px;background:#edf8f2;border-radius:6px;color:#3d8669;padding:13px;font-size:11px}.audit-card{padding-bottom:10px}.audit-line{display:flex;align-items:center;gap:15px;padding:10px 18px;border-bottom:1px solid #f1f3f6;font-size:9px;color:#8a95a5}.audit-line span{width:72px;font-weight:600;color:#637086}.audit-line code{color:#778398;overflow-wrap:anywhere;font-size:9px}.audit-event{display:flex;gap:16px;padding:9px 18px;font-size:9px;color:#8a95a5}.audit-event b{color:#59667c;width:120px}.error-state{padding:34px}.error-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fff2df;color:#b47b2f;font:700 18px Georgia}.error-state h2{font:700 18px Manrope;margin:14px 0 7px}.error-state>p{color:#8590a0;font-size:12px;line-height:1.6}.login-page{min-height:100vh;display:grid;grid-template-columns:minmax(340px,520px) minmax(360px,1fr);max-width:1100px;margin:auto;padding:65px 35px;align-items:center;gap:80px}.login-panel .brand{padding:0 0 50px}.login-panel h1{font:700 26px Manrope;margin:10px 0}.login-panel>p{color:#818c9f;font-size:12px;margin:0 0 24px}.login-panel form{display:grid;gap:14px}.full-button{width:100%;margin-top:5px;height:40px}.privacy-note{display:block;text-align:center;color:#9aa3b1;font-size:9px;margin-top:16px}.login-art{background:linear-gradient(145deg,#303c76,#5068d8);border-radius:15px;padding:48px;color:#fff;min-height:360px;display:flex;flex-direction:column;justify-content:center;overflow:hidden;position:relative}.login-art:after{content:'';position:absolute;width:370px;height:370px;border:1px solid #ffffff24;border-radius:50%;right:-135px;bottom:-190px;box-shadow:0 0 0 35px #ffffff0c,0 0 0 70px #ffffff08}.login-art .eyebrow{color:#bfc9ff}.pulse-line{font-size:30px;letter-spacing:5px;color:#aab7ff;margin:28px 0 12px}.login-art h2{font:700 29px/1.25 Manrope;margin:0;letter-spacing:-.8px}.login-art p{max-width:300px;color:#d7dcf5;font-size:11px;line-height:1.7;margin-top:14px}.form-errors{padding:10px;background:#fff0f0;color:#a74747;border-radius:6px;font-size:11px;margin:12px 0}
.window-adjust{border-top:1px solid #edf0f4;margin-top:12px;padding:12px 21px 0;display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}.window-adjust>div{display:grid;gap:5px;min-width:170px}.window-adjust label{font-size:9px;color:#788498;font-weight:600}.window-adjust input{border:1px solid #dfe4ec;border-radius:5px;padding:7px 8px;font-size:10px;color:#435066}.window-adjust>.muted-note{flex:1}.quality-status-line{margin:0 21px;color:#8390a1;font-size:9px}.quality-status-line b{color:#526077}.history-chart{display:block;width:100%;height:220px;padding:10px 12px}.export-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
@media(max-width:1100px){.main{padding-left:24px;padding-right:24px}.topbar{margin-left:-24px;margin-right:-24px;padding:0 24px}.metric-grid{grid-template-columns:repeat(2,1fr)}.upload-layout{grid-template-columns:1fr}.info-panel{order:-1}.steps{padding-left:15px;padding-right:15px}.steps>i{margin:0 6px}}
@media(max-width:760px){.sidebar{position:static;width:auto;height:auto;padding:11px 13px;border-right:0;border-bottom:1px solid var(--line)}.brand{padding:0 4px 10px}.nav-label,.sidebar-foot{display:none}.sidebar nav{display:flex;overflow:auto;gap:3px}.nav-item{padding:8px;font-size:10px;gap:6px;white-space:nowrap}.nav-item>span{font-size:13px}.main{margin:0;padding:0 13px 30px}.topbar{height:48px;margin:0 -13px;padding:0 13px}.crumb{font-size:10px}.user-menu{font-size:10px}.user-menu form{margin-left:0}.page-head{margin:23px 0 17px;align-items:flex-start;gap:12px}.page-head h1{font-size:21px}.page-head p{font-size:11px;line-height:1.5}.page-head>.button{padding:9px;font-size:10px}.metric-grid{gap:8px}.metric-card{padding:12px;min-height:113px}.metric-value{font-size:23px}.metric-title{font-size:10px}.metric-foot{font-size:9px}.protocol-name{font-size:14px}.card-head{padding:13px}.steps{overflow:auto;justify-content:flex-start}.step{font-size:0;gap:0}.step b{font-size:9px}.steps>i{min-width:12px;flex:none}.chart-grid{grid-template-columns:1fr}.chart-card.wide{grid-column:auto}.chart-card.wide canvas{height:210px}.window-stats{flex-wrap:wrap;padding:14px}.window-stats>div:not(.window-arrow){width:29%}.window-arrow{display:none}.quality-footer{flex-direction:column}.upload-layout{gap:10px}.form-card{padding:0 13px}.form-section{grid-template-columns:24px 1fr;gap:9px}.form-grid,.file-grid{grid-template-columns:1fr}.filter-bar>div{min-width:calc(50% - 6px)}.filter-bar>.button{flex:1}.export-actions{flex-wrap:wrap}.login-page{padding:25px 18px;grid-template-columns:1fr;gap:25px}.login-art{min-height:250px;padding:28px}.login-art h2{font-size:23px}.login-panel .brand{padding-bottom:30px}.audit-event{flex-wrap:wrap}.audit-event b{width:auto}.title-divider{display:none}}
