:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f5f3ee;--surface:#fffdf9;--surface-soft:#eeebe4;--ink:#292724;--muted:#655e55;--border:#ded9d0;--line-strong:#c6beb2;--accent:#b85e42;--accent-strong:#9f4f38;--accent-hover:#85402e;--accent-soft:#f0e4dc;--success:#49634b;--success-soft:#edf1e9;--amber:#8b6227;--amber-soft:#f7efdf;--red:#a33e36;--red-soft:#f8eae6;--blue:#466775;--blue-soft:#eaf0f1;--font-body:Inter, "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;--font-display:"Iowan Old Style", "Palatino Linotype", Georgia, "Songti SC", "Noto Serif CJK SC", serif;--font-mono:"SFMono-Regular", Consolas, monospace;--ease:cubic-bezier(.2, .65, .3, 1);--button-radius:8px;font-family:var(--font-body);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:14px}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{margin:0}body:has(.confirm-dialog){overflow:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer;touch-action:manipulation;border-radius:var(--button-radius)}button:disabled{cursor:not-allowed;opacity:.5}a{color:var(--accent-strong);text-decoration:none}a:hover{text-underline-offset:4px;text-decoration:underline}h1,h2,h3,p{margin:0}h2{font-family:var(--font-display);letter-spacing:-.025em;font-size:21px;font-weight:600}h3{overflow-wrap:anywhere;font-size:14px;font-weight:600}p{overflow-wrap:anywhere;line-height:1.8}::selection{color:var(--ink);background:#e6c9b8}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[role=tab]:focus-visible{outline:2px solid var(--accent-strong);outline-offset:4px}input,select,textarea{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-width:0;min-height:44px;color:var(--ink);transition:border-color .18s var(--ease), box-shadow .18s var(--ease);border-radius:8px;padding:11px 13px}input::placeholder,textarea::placeholder{color:#71695f}input:hover,select:hover,textarea:hover{border-color:#9b9285}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #b85e4212}input[readonly]{background:var(--surface-soft);color:var(--muted)}input[type=file]{padding:9px;font-size:12px}input[type=file]::file-selector-button{border-radius:var(--button-radius);color:var(--ink);background:var(--surface-soft);cursor:pointer;border:0;margin-right:10px;padding:5px 9px}input[type=checkbox]{width:17px;min-height:17px;accent-color:var(--accent-strong)}textarea{resize:vertical;line-height:1.7}select{appearance:auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;border:2px solid var(--accent-strong);background:var(--surface);border-radius:8px;padding:12px 18px;position:fixed;top:-100px;left:16px}.skip-link:focus{top:12px}.muted{color:var(--muted)}.mono{font-family:var(--font-mono);font-size:12px}.numeric{font-variant-numeric:tabular-nums}.align-right{text-align:right!important}.eyebrow{font-family:var(--font-mono);letter-spacing:.13em;color:var(--muted);font-size:10px;font-weight:500}.app-shell{min-height:100vh;display:flex}.sidebar{z-index:20;border-right:1px solid var(--border);width:224px;color:var(--ink);background:#eeebe5;flex-direction:column;flex-shrink:0;padding:32px 16px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{color:inherit;letter-spacing:.04em;align-items:center;gap:11px;margin:0 12px;font-size:19px;font-weight:600;display:flex}.brand:hover{text-decoration:none}.brand small{font-family:var(--font-mono);letter-spacing:.16em;color:var(--muted);margin-top:6px;font-size:8px;font-weight:400;display:block}.brand-symbol{background:0 0;flex-shrink:0;place-items:center;width:37px;height:39px;display:grid}.brand-symbol img{object-fit:contain;width:100%;height:100%;display:block}.sidebar nav{flex-direction:column;gap:5px;margin-top:32px;display:flex}.sidebar nav a{color:#666057;min-height:44px;transition:color .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease);border:1px solid #0000;border-radius:8px;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.sidebar nav a:hover{color:var(--ink);background:#e6e1d8;text-decoration:none}.sidebar nav a[aria-current=page]{color:var(--accent-strong);background:var(--surface);border-color:#d8cabc;box-shadow:0 1px 2px #29272405}.sidebar nav svg{flex-shrink:0;width:18px;height:18px}.nav-dot{background:var(--accent);border-radius:50%;width:5px;height:5px;margin-left:auto}.sidebar-bottom{margin-top:auto;padding-top:32px}.role-card{border-top:1px solid var(--border);align-items:center;gap:10px;padding:18px 8px;display:flex}.role-card>div{min-width:0}.avatar{border:1px solid var(--border);background:var(--surface);width:34px;height:34px;color:var(--muted);border-radius:50%;flex-shrink:0;place-items:center;font-size:12px;display:grid}.role-card strong{overflow-wrap:anywhere;font-size:12px;font-weight:500}.role-card small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.logout{border-radius:var(--button-radius);min-height:36px;color:var(--muted);transition:background .18s var(--ease), color .18s var(--ease);background:0 0;border:0;align-items:center;gap:9px;padding:9px 10px;font-size:11px;display:flex}.logout:hover{color:var(--ink);background:#e5dfd5}.logout svg{width:15px;height:15px}.main-shell{flex-direction:column;width:calc(100% - 224px);min-width:0;margin-left:224px;display:flex}main#main-content{outline:none;width:100%;max-width:1320px;margin:0 auto;padding:42px 42px 32px}.page-actions{justify-content:flex-end;margin-bottom:20px;display:flex}.page-content{min-width:0}.app-footer{color:var(--muted);justify-content:space-between;gap:18px;margin-top:auto;padding:22px 42px;font-size:10px;line-height:1.7;display:flex}.button{border-radius:var(--button-radius);white-space:nowrap;max-width:100%;min-height:36px;transition:background .18s var(--ease), border-color .18s var(--ease), color .18s var(--ease), transform .18s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:8px 15px;font-size:12px;font-weight:550;display:inline-flex}.button svg{flex-shrink:0;width:16px;height:16px}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{color:#fffdf9;background:var(--accent-strong);border-color:var(--accent-strong)}.button-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.button-secondary{color:#514b43;background:var(--surface);border-color:var(--line-strong)}.button-secondary:hover:not(:disabled){color:var(--ink);background:var(--surface-soft);border-color:#aaa092}.button-small{min-height:30px;padding:5px 11px;font-size:11px}.text-button{min-height:32px;color:var(--accent-strong);background:0 0;border:0;align-items:center;gap:5px;padding:4px 0;font-size:12px;line-height:1.5;display:inline-flex}.text-button:hover:not(:disabled){text-underline-offset:4px;text-decoration:underline}.text-button svg{flex-shrink:0;width:15px;height:15px}.danger{color:var(--red)}.button-group{flex-wrap:wrap;gap:10px;display:flex}.action-row{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.action-row p{font-size:12px}.action-row>.field{flex-shrink:0;margin-bottom:0}.panel{border:1px solid var(--border);background:var(--surface);border-radius:8px;min-width:0;margin-bottom:24px;padding:27px}.panel-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:25px;display:flex}.panel-header>div{min-width:0}.panel-header p{color:var(--muted);margin-top:8px;font-size:12px}.panel-header>.text-button{white-space:nowrap}.stats-grid{border-top:1px solid var(--line-strong);border-bottom:1px solid var(--border);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:28px;display:grid}.stat-card{border-right:1px solid var(--border);background:0 0;min-width:0;padding:23px 22px 25px}.stat-card:first-child{padding-left:0}.stat-card:last-child{border-right:0}.stat-top{color:#625b52;justify-content:space-between;align-items:center;gap:12px;font-size:12px;display:flex}.stat-top svg{color:#8a7c6c;width:17px;height:17px}.stat-card>strong{font-family:var(--font-display);letter-spacing:-.035em;font-variant-numeric:tabular-nums;color:var(--ink);margin:22px 0 10px;font-size:43px;font-weight:500;line-height:1.1;display:block}.stat-card>small{color:var(--muted);font-size:11px}.overview-columns{grid-template-columns:1.15fr 1fr;align-items:start;gap:24px;display:grid}.overview-columns>.panel{margin-bottom:0}.readiness-heading{background:var(--amber-soft);border:1px solid #e3d6bc;border-radius:6px;align-items:center;gap:13px;padding:17px;display:flex}.readiness-mark{width:35px;height:35px;color:var(--amber);background:#f4e8ce;border:1px solid #ddcbaa;border-radius:50%;flex-shrink:0;place-items:center;display:grid}.readiness-heading strong{color:#775520;font-size:12px}.readiness-heading p{color:#79684c;margin-top:4px;font-size:11px}.blockers-list{flex-direction:column;margin:17px 0 0;padding:0;list-style:none;display:flex}.blockers-list li{color:#655e54;overflow-wrap:anywhere;border-bottom:1px solid #eae5dc;align-items:baseline;gap:13px;padding:12px 0;font-size:12px;line-height:1.8;display:flex}.blockers-list li:last-child{border-bottom:0}.blockers-list li>span{color:#6d6256;min-width:20px;font-family:var(--font-mono);letter-spacing:.04em;font-size:10px}.workflow{margin:0 0 24px;padding:0;list-style:none}.workflow li{gap:16px;padding-bottom:28px;display:flex;position:relative}.workflow li:not(:last-child):before{border-left:1px solid var(--line-strong);content:"";position:absolute;top:32px;bottom:0;left:15px}.workflow li:last-child{padding-bottom:0}.workflow li>span{z-index:1;background:var(--surface);width:32px;height:32px;color:var(--accent-strong);font-family:var(--font-mono);border:1px solid #d8c7b8;border-radius:50%;flex-shrink:0;place-items:center;font-size:10px;display:grid}.workflow li strong{font-size:12px;font-weight:600}.workflow li p{color:var(--muted);margin-top:7px;font-size:11px}.workflow-panel>.button{width:100%;margin-top:5px}.notice{border:1px solid var(--border);overflow-wrap:anywhere;border-radius:6px;align-items:flex-start;gap:10px;margin-bottom:18px;padding:14px 16px;font-size:12px;line-height:1.75;display:flex}.notice>svg{flex-shrink:0;width:17px;height:17px;margin-top:3px}.notice-error{color:var(--red);background:var(--red-soft);border-color:#e6c9c1}.notice-info{color:#6b5b4e;background:#f3ede4;border-color:#dfd1c2}.notice-success{color:var(--success);background:var(--success-soft);border-color:#ccd9c8}.loading{min-height:40px;color:var(--muted);align-items:center;gap:9px;margin-bottom:10px;font-size:12px;display:flex}.spinner{border:2px solid #ded3c8;border-top-color:var(--accent-strong);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty{color:var(--muted);text-align:center;padding:42px 18px 48px}.empty h3{color:#625a50;margin:15px 0 8px;font-size:14px;font-weight:550}.empty p{max-width:500px;margin:auto;font-size:12px;line-height:1.85}.empty-icon{color:#8a7562;background:#f2ece3;border:1px solid #dacebf;border-radius:50%;place-items:center;width:48px;height:48px;margin:auto;display:grid}.ready-state{text-align:center;color:var(--success);padding:26px}.ready-state>svg{width:30px;height:30px;margin-bottom:12px}.ready-state p{margin-top:8px;font-size:12px}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:5px 9px;font-size:10px;font-weight:500;display:inline-flex}.badge>span{background:currentColor;border-radius:50%;width:4px;height:4px}.badge-neutral{color:#6b655d;background:#eeebe5}.badge-green{background:var(--success-soft);color:var(--success)}.badge-blue{background:var(--blue-soft);color:var(--blue)}.badge-red{background:var(--red-soft);color:var(--red)}.badge-amber{background:var(--amber-soft);color:var(--amber)}.field{flex-direction:column;gap:8px;min-width:0;margin-bottom:20px;font-size:12px;display:flex}.field>span{color:#514a42;font-weight:550}.field small{color:var(--muted);font-size:11px;line-height:1.6}.field-wide{grid-column:1/-1}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;display:grid}.form-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:12px;margin-top:12px;padding-top:20px;display:flex}.form-section-label{justify-content:space-between;align-items:center;margin:20px 0 14px;display:flex}.form-section-label h3{color:#635a4d;font-size:12px}.form-section-label span{color:var(--muted);font-size:10px}.section-heading{border-top:1px solid var(--border);color:#5d5145;margin:30px 0 21px;padding-top:25px;font-size:13px;font-weight:550}.section-heading:first-child{border-top:0;margin-top:0;padding-top:0}.team-form-layout{grid-template-columns:1.8fr 1fr;align-items:start;gap:24px;display:grid}.member-row{align-items:center;gap:12px;margin-bottom:12px;display:flex}.member-row .field{flex:1;min-width:0}.member-row .field input{width:100%}.member-row .text-button{white-space:nowrap}.member-number{color:#857361;min-width:14px;font-family:var(--font-mono);font-size:11px}.team-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.team-card{border:1px solid var(--border);background:#fffefa;border-radius:7px;min-width:0;padding:22px}.team-card-head{align-items:center;gap:13px;margin-bottom:20px;display:flex}.team-card-head>div{min-width:0}.team-card-head p{color:var(--muted);margin-top:6px;font-size:11px}.team-card-head>.badge{margin-left:auto}.team-avatar{color:#987559;background:#f5eee4;border:1px solid #e2d4c5;border-radius:50%;flex-shrink:0;place-items:center;width:38px;height:38px;display:grid}.team-details{margin:0 0 15px}.team-details>div{grid-template-columns:72px minmax(0,1fr);gap:10px;margin-top:11px;font-size:11px;line-height:1.75;display:grid}.team-details dt{color:var(--muted)}.team-details dd{color:#474139;overflow-wrap:anywhere;margin:0}.credential-box{background:#f2e9dd;border:1px solid #d8c8b6;border-radius:8px;margin-bottom:24px;padding:24px}.credential-box p{color:#6c5946;margin-top:8px;font-size:12px}.credential-box code{color:#5f4937;background:var(--surface);word-break:break-all;border:1px solid #d8c7b3;border-radius:6px;margin:15px 0;padding:14px;display:block}.submission-card{border:1px solid var(--border);border-radius:7px;margin-bottom:20px;padding:24px}.submission-card:last-child{margin-bottom:0}.submission-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.submission-heading>div{flex-wrap:wrap;align-items:center;gap:11px;min-width:0;display:flex}.version-tag{color:#8a5c37;font-family:var(--font-mono);font-variant-numeric:tabular-nums;background:#f5ede3;border:1px solid #dccab7;border-radius:5px;padding:6px 9px;font-size:11px;font-weight:500}.selected-tag{color:var(--success);align-items:center;gap:4px;font-size:10px;display:flex}.selected-tag svg{width:12px;height:12px}.submission-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 26px;margin:0;display:grid}.submission-details>div{min-width:0}.submission-details dt{color:var(--muted);margin-bottom:8px;font-size:10px}.submission-details dd{color:#494139;overflow-wrap:anywhere;margin:0;font-size:12px}.submission-details .mono{font-size:11px}.submission-details>div:nth-child(2){grid-area:2/1/auto/-1}.submission-card>.notice{margin-top:20px;margin-bottom:0}.submission-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;margin-top:24px;padding-top:18px;display:flex}.submission-actions>.text-button{margin-left:auto;font-size:11px}.review-note{color:#716252;margin-top:16px;font-size:11px}.table-scroll{overscroll-behavior-inline:contain;scrollbar-color:#c6beb2 transparent;scrollbar-width:thin;max-width:100%;overflow:auto}table{border-collapse:collapse;width:100%;min-width:620px;font-size:12px}th{border-bottom:1px solid var(--line-strong);color:#655b4e;text-align:left;white-space:nowrap;background:#f4f1ea;padding:14px 13px;font-size:11px;font-weight:600}td{color:#4c443b;vertical-align:middle;border-bottom:1px solid #e8e2d9;padding:19px 13px;line-height:1.7}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background .16s var(--ease)}tbody tr:hover{background:#f8f5ee}td strong{color:var(--ink);font-weight:550}td small{color:var(--muted);margin-top:5px;font-size:10px;display:block}td p{font-size:11px}td .table-detail{min-width:130px;max-width:260px;color:var(--red);margin-top:8px;font-size:10px}.table-actions{flex-direction:column;align-items:flex-start;gap:5px;min-width:60px;display:flex}.table-actions>.text-button{font-size:11px}.rule-status{align-items:center;gap:24px;padding-bottom:18px;display:flex}.rule-status>div{align-items:center;gap:16px;display:flex}.rule-status strong{color:var(--ink);font-family:var(--font-display);font-size:29px;font-weight:500}.checkbox-field{align-items:center;gap:10px;padding:6px 0 12px;font-size:12px;line-height:1.7;display:flex}.checkbox-field+.muted{font-size:11px}.rule-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin:0;display:grid}.rule-summary dt{color:var(--muted);font-size:10px}.rule-summary dd{color:#51483e;overflow-wrap:anywhere;margin:9px 0 0;font-size:12px}.rule-text{border-top:1px solid var(--border);margin-top:26px;padding-top:23px}.rule-text h3{color:#645447;margin-bottom:8px;font-size:12px}.rule-text p{color:var(--muted);white-space:pre-wrap;margin-bottom:20px;font-size:12px}.rule-text p:last-child{margin-bottom:0}.rank-number{color:#6d6256;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}.rank-leading{color:var(--accent-strong)}.ranking-table td{padding-top:22px;padding-bottom:22px}.ranking-table .numeric{font-family:var(--font-display);font-size:22px}.defense-form{border-bottom:1px solid var(--border);margin-bottom:24px;padding-bottom:25px}.audit-list article{border-bottom:1px solid var(--border);gap:15px;padding:20px 0;display:flex}.audit-list article:last-child{border-bottom:0}.audit-list article>div{min-width:0}.audit-icon{color:#897159;background:#f5eee4;border:1px solid #dbcebe;border-radius:7px;flex-shrink:0;place-items:center;width:33px;height:33px;display:grid}.audit-icon svg{width:15px;height:15px}.audit-list h3{overflow-wrap:anywhere;font-size:12px;font-weight:500}.audit-list p{margin-top:6px;font-size:11px}.audit-list details{color:var(--muted);margin-top:9px;font-size:11px}.audit-list summary{cursor:pointer}.audit-list pre{border:1px solid var(--border);white-space:pre-wrap;overflow-wrap:anywhere;background:#f3efe7;border-radius:6px;max-width:100%;padding:13px;font-size:10px;line-height:1.8}.login-page{grid-template-columns:1.1fr 1fr;min-height:100svh;display:grid}.login-intro{border-right:1px solid var(--border);min-width:0;color:var(--ink);background:#efebe2;flex-direction:column;padding:46px clamp(34px,4vw,66px);display:flex}.login-intro .brand{margin:0}.login-story{max-width:620px;margin:auto 0;padding:48px 0}.login-story>.eyebrow{color:var(--muted);font-size:10px}.login-story h1{font-family:var(--font-display);letter-spacing:-.025em;margin:22px 0 23px;font-size:clamp(38px,3.8vw,60px);font-weight:500;line-height:1.45}.login-story>p{color:#766a5b;font-size:13px;line-height:1.95}.login-form-side{background:var(--paper);justify-content:center;align-items:center;min-width:0;padding:52px clamp(28px,4vw,64px);display:flex}.login-form-side>.page-content{width:100%;max-width:440px}.login-form{border:1px solid var(--border);background:var(--surface);border-radius:12px;width:100%;max-width:440px;padding:35px;box-shadow:0 12px 35px #40311e06}.login-form h2{letter-spacing:-.025em;margin:16px 0;font-size:31px;font-weight:500;line-height:1.3}.login-form>p{color:var(--muted);margin-bottom:30px;font-size:12px}.login-form .field>span{font-size:12px}.login-form input{background:#fffefa;height:46px}.login-submit{justify-content:space-between;width:100%;min-height:40px;margin-top:9px;padding:8px 18px;font-size:12px}.login-form .login-note{color:var(--muted);gap:8px;margin:23px 0 0;font-size:10px;line-height:1.9;display:flex}.login-note svg{flex-shrink:0;width:14px;height:14px;margin-top:3px}.registration-form .field{margin-bottom:17px}.registration-form .field small{font-size:10px;line-height:1.65}.registration-back{justify-content:center;width:100%;margin-top:18px;font-size:11px}.training-map{width:100%;max-width:460px;margin:28px 0 0}.training-map-graphic{width:100%;height:auto;max-height:210px;color:var(--ink);display:block}.training-map-grid{fill:#baafa0}.training-map-path{fill:none;stroke:#8d8070;stroke-width:1.3px;stroke-linecap:round}.training-map-progress{stroke:var(--accent);stroke-width:1.8px}.training-map-node{fill:#efebe2;stroke:#9d8d79;stroke-width:1.5px}.training-map-node[data-active=true]{fill:var(--accent-strong);stroke:var(--accent-strong)}.training-map-node[data-active=true]+text{fill:var(--surface)}.training-map-graphic text{fill:#6d5d4c;font-family:var(--font-mono);font-size:11px}.training-map-tabs{border-radius:var(--button-radius);background:#e9e3d9;border:1px solid #d8cebf;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin-top:8px;padding:4px;display:grid}.training-step{border-radius:var(--button-radius);color:#6c5c4e;white-space:nowrap;min-width:0;min-height:36px;transition:background .18s var(--ease), color .18s var(--ease), border-color .18s var(--ease);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:7px;padding:6px 9px;font-size:11px;display:flex}.training-step .number{color:#6d6256;font-family:var(--font-mono);font-size:9px}.training-step[data-state=active]{background:var(--surface);color:var(--accent-strong);border-color:#d8c9b8;box-shadow:0 1px 2px #493b2610}.training-step:hover{color:var(--accent-strong)}.dataset-intro{margin-top:0}.compact-select select{min-width:130px;min-height:36px;padding:7px 10px;font-size:11px}.dataset-table{min-width:680px}.dataset-table td:first-child{overflow-wrap:anywhere;min-width:150px;max-width:260px}.dataset-digest{color:#7b6b59;overflow-wrap:anywhere;max-width:250px;font-size:10px;line-height:1.8;display:block}.schema-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.format-example{border:1px solid var(--border);color:#70604e;background:#f5f0e7;border-radius:6px;padding:14px 16px;font-size:11px}.format-example summary{cursor:pointer}.format-example pre{white-space:pre-wrap;overflow-wrap:anywhere;margin:15px 0 10px;font-size:10px;line-height:1.85}.format-example p{font-size:10px}.import-receipt{background:var(--success-soft);color:var(--success);border:1px solid #ccd9c8;border-radius:6px;align-items:center;gap:10px;margin-bottom:18px;padding:14px 16px;font-size:11px;display:flex}.import-receipt>svg{flex-shrink:0;width:17px;height:17px}.preview-count{color:var(--muted);margin-bottom:14px;font-size:11px}.sample-table{min-width:500px}.sample-table td{vertical-align:top}.sample-table td:first-child{overflow-wrap:anywhere;min-width:100px;max-width:180px}.sample-table td:last-child{overflow-wrap:anywhere;min-width:100px;max-width:200px}.sample-table pre{white-space:pre-wrap;overflow-wrap:anywhere;min-width:180px;max-width:450px;max-height:260px;margin:0;font-size:11px;line-height:1.8;overflow:auto}.evaluation-config-list{gap:18px;display:grid}.evaluation-config-card{border:1px solid var(--border);border-radius:7px;padding:22px}.evaluation-config-card .submission-heading>small{white-space:nowrap;font-size:10px}.config-datasets{border-top:1px solid var(--border);grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-top:20px;display:grid}.config-datasets>div{flex-direction:column;gap:8px;min-width:0;display:flex}.config-datasets span,.config-datasets small{color:var(--muted);font-size:10px}.config-datasets strong{color:#5b4b3e;overflow-wrap:anywhere;font-size:12px;font-weight:550}.config-digests{border-top:1px solid var(--border);margin:23px 0 0;padding-top:16px}.config-digests>div{grid-template-columns:94px minmax(0,1fr);align-items:baseline;gap:14px;margin-bottom:11px;display:grid}.config-digests>div:last-child{margin-bottom:0}.config-digests dt{color:var(--muted);font-size:10px}.config-digests dd{min-width:0;margin:0}.config-digests code{color:#76624d;overflow-wrap:anywhere;font-size:10px;line-height:1.8}.metric-description{color:#78644d;background:#f4eee3;border:1px solid #dfd2bf;border-radius:6px;padding:16px}.metric-description strong{color:#644c34;margin-bottom:8px;font-size:11px;display:block}.metric-description p{font-size:11px}.bound-dataset-digest{color:#78644d;overflow-wrap:anywhere;background:#f4eee3;border:1px solid #dfd2bf;border-radius:6px;padding:12px 13px;font-size:11px;line-height:1.8}.confirm-overlay{z-index:100;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#29272466;position:fixed;inset:0}.confirm-dialog{z-index:101;background:var(--surface);border:1px solid #d7cdbf;border-radius:12px;width:calc(100% - 40px);max-width:460px;max-height:calc(100svh - 48px);padding:32px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%);box-shadow:0 25px 90px #29272425}.confirm-title{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 14px;font-size:27px;font-weight:500;line-height:1.35}.confirm-description{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.85}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:28px;display:flex}.announcement-content{white-space:pre-wrap;overflow-wrap:anywhere;margin:18px 0;line-height:1.75}.announcement-checkbox{align-items:center;gap:8px;margin-right:4px;font-size:13px;display:inline-flex}.announcement-list{margin-top:24px}.announcement-entry{border-top:1px solid var(--border);padding:20px 0}.announcement-entry h3{margin:0}.module-list{gap:10px;display:grid}.module-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:10px 0;display:flex}.module-row small{color:var(--muted)}.confirm-actions .button.danger{color:var(--surface);background:var(--red);border-color:var(--red)}.confirm-actions .button.danger:hover{background:#85352e;border-color:#85352e}.confirm-overlay[data-state=open]{animation:overlay-in .18s var(--ease)}.confirm-overlay[data-state=closed]{animation:overlay-out .13s var(--ease)}.confirm-dialog[data-state=open]{animation:dialog-in .22s var(--ease)}.confirm-dialog[data-state=closed]{animation:dialog-out .13s var(--ease)}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}@keyframes overlay-out{0%{opacity:1}to{opacity:0}}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,calc(8px - 50%))scale(.98)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes dialog-out{0%{opacity:1}to{opacity:0;transform:translate(-50%,calc(4px - 50%))scale(.99)}}@media (width>=1700px){main#main-content{padding-left:52px;padding-right:52px}}@media (width<=1200px){.sidebar{width:204px;padding-left:12px;padding-right:12px}.main-shell{width:calc(100% - 204px);margin-left:204px}main#main-content,.app-footer{padding-left:28px;padding-right:28px}.overview-columns{grid-template-columns:1fr 1fr;gap:18px}.stat-card{padding-left:17px;padding-right:17px}.team-form-layout{grid-template-columns:1fr}.login-intro{padding:36px}.login-form-side{padding:38px 30px}.login-form{padding:28px}.rule-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.sidebar{width:76px;padding:26px 10px 18px}.sidebar .brand{justify-content:center;margin:0}.sidebar .brand>span:last-child,.sidebar nav a>span,.sidebar-bottom .role-card{display:none}.sidebar nav{margin-top:38px}.sidebar nav a{justify-content:center;padding:12px}.sidebar nav svg{width:20px;height:20px}.sidebar-bottom{padding-top:20px}.logout{justify-content:center;width:100%;min-height:44px;padding:10px 0;font-size:0}.logout svg{width:20px;height:20px}.main-shell{width:calc(100% - 76px);margin-left:76px}.overview-columns{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card:nth-child(2){border-right:0}.stat-card:nth-child(-n+2){border-bottom:1px solid var(--border)}.stat-card:nth-child(3){padding-left:0}.team-cards{grid-template-columns:1fr}.app-footer>span:last-child{display:none}.login-page{grid-template-columns:1fr 1fr}.login-intro{padding:30px}.login-story{padding:40px 0}.login-story h1{font-size:35px}.login-story>p br{display:none}.login-form-side{padding:32px 22px}.login-form{padding:25px}.login-form h2{font-size:27px}.training-step{gap:5px;padding:6px 4px;font-size:10px}.training-step .number{font-size:8px}}@media (width<=600px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--border);width:100%;padding:18px 18px 0;display:block;position:relative}.sidebar .brand{justify-content:flex-start;font-size:17px}.sidebar .brand>span:last-child{display:block}.sidebar .brand-symbol{border-radius:8px;width:32px;height:34px}.sidebar .brand small{margin-top:4px;font-size:7px}.sidebar nav{scrollbar-width:none;flex-direction:row;gap:6px;margin:18px -18px 0;padding:0 10px 11px;overflow:auto}.sidebar nav::-webkit-scrollbar{display:none}.sidebar nav a{flex-shrink:0;gap:6px;min-height:38px;padding:9px 10px;font-size:10px}.sidebar nav a>span:not(.nav-dot){display:inline}.sidebar nav svg{width:14px;height:14px}.sidebar-bottom{padding:0;position:absolute;top:16px;right:14px}.logout{min-height:38px;padding:8px}.logout svg{width:17px;height:17px}.main-shell{width:100%;margin-left:0}main#main-content{padding:28px 17px 20px}.stats-grid{margin-bottom:24px}.stat-card{padding:18px 14px 20px}.stat-top{gap:7px;font-size:11px}.stat-top svg{width:14px;height:14px}.stat-card>strong{margin:18px 0 9px;font-size:35px}.stat-card>small{font-size:10px}.panel{border-radius:7px;margin-bottom:18px;padding:20px 16px}.panel-header{gap:12px;margin-bottom:21px}.panel-header h2{font-size:18px}.panel-header p{font-size:11px}.panel-header>.text-button{font-size:10px}.panel-header .button{padding:7px 10px;font-size:10px}.readiness-heading{gap:10px;padding:13px}.readiness-heading strong{font-size:11px}.readiness-heading p{font-size:10px}.blockers-list li{font-size:11px}.action-row{flex-wrap:wrap;align-items:flex-start;gap:14px}.action-row p{font-size:11px}.action-row>.button{margin-left:auto}.form-grid{grid-template-columns:minmax(0,1fr)}.field-wide{grid-column:auto}.field{font-size:11px}.field small{font-size:10px}.form-actions .button{font-size:11px}.member-row{gap:7px}.member-row input{padding:9px;font-size:12px}.member-number{min-width:11px}.team-card{padding:18px 15px}.team-card-head{gap:10px}.team-details>div{grid-template-columns:64px minmax(0,1fr)}.submission-card{padding:18px 13px}.submission-heading{align-items:flex-start;gap:8px}.submission-heading h3{font-size:12px}.submission-heading>div{gap:7px}.submission-details{gap:17px}.submission-details dd{font-size:11px}.submission-actions>.text-button{margin-left:0}.submission-actions>.button{padding:7px 10px;font-size:10px}.rule-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}.rule-summary dd{font-size:11px}.rule-status .eyebrow{font-size:10px}.app-footer{padding:18px;font-size:9px}.button-group{gap:8px}.button-group>.button{padding:8px 11px;font-size:10px}.login-page{display:block}.login-intro{border-right:0;border-bottom:1px solid var(--border);padding:27px 25px 24px}.login-intro .brand{font-size:18px}.login-story{max-width:440px;padding:32px 0 0}.login-story>.eyebrow{font-size:9px}.login-story h1{margin:14px 0;font-size:34px}.login-story>p{font-size:11px;line-height:1.8}.login-story>p br{display:block}.login-form-side{padding:26px 20px 44px}.login-form-side>.page-content{max-width:440px}.login-form{border-radius:10px;max-width:100%;padding:24px}.login-form h2{font-size:27px}.login-form>p{margin-bottom:25px;font-size:11px}.login-form .eyebrow{font-size:9px}.training-map,.training-map-graphic{display:none}.training-map-tabs{gap:2px;margin-top:3px;padding:3px}.training-step{gap:4px;min-height:36px;font-size:10px}.training-step .number{font-size:8px}.schema-grid,.config-datasets{grid-template-columns:minmax(0,1fr)}.config-datasets{gap:18px}.evaluation-config-card{padding:18px 13px}.evaluation-config-card .submission-heading{flex-direction:column}.config-digests>div{grid-template-columns:minmax(0,1fr);gap:6px}.compact-select select{min-width:110px;font-size:10px}.import-receipt{align-items:flex-start}.confirm-dialog{border-radius:10px;width:calc(100% - 32px);padding:25px}.confirm-title{font-size:25px}.confirm-description{font-size:12px}.confirm-actions .button{flex:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.button:active:not(:disabled){transform:none}}.technical-details{border-top:1px solid var(--border);margin-top:24px;padding-top:16px}.technical-details>summary{cursor:pointer;color:var(--ink);font-weight:500}.pagination{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:20px;padding-top:20px;display:flex}.pagination>span{font-variant-numeric:tabular-nums}.module-switch{border:1px solid var(--border);cursor:pointer;width:44px;height:26px;transition:background .16s var(--ease);background:#ddd7d1;border-radius:999px;flex-shrink:0;align-items:center;padding:3px;display:inline-flex}.module-switch>span{width:18px;height:18px;transition:transform .16s var(--ease);background:#fff;border-radius:50%;display:block;box-shadow:0 1px 3px #0002}.module-switch[aria-checked=true]{background:var(--accent-strong);border-color:var(--accent-strong)}.module-switch[aria-checked=true]>span{transform:translate(18px)}.module-switch:disabled{opacity:.45;cursor:not-allowed}.module-switch:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}
