:root{--tr-bg:#f4f7fa;--tr-panel:#fff;--tr-line:#dce5ec;--tr-text:#17324a;--tr-muted:#6c7f91;--tr-accent:#2563eb;--tr-ok:#2f7d52;--tr-bad:#b94747;--tr-warn:#9a6a16}
html[data-theme="dark"]{--tr-bg:#0d1726;--tr-panel:#152237;--tr-line:#33445b;--tr-text:#dfe8f1;--tr-muted:#93a4b7;--tr-accent:#8fb4ff;--tr-ok:#75c795;--tr-bad:#ee9292;--tr-warn:#e8bf6b}
*{box-sizing:border-box}.training-page{margin:0;background:var(--tr-bg);color:var(--tr-text);font-family:Inter,Arial,sans-serif;font-weight:400}.training-shell{min-height:100vh;display:grid;grid-template-columns:230px 1fr}.training-sidebar{position:sticky;top:0;height:100vh;padding:22px 16px;border-right:1px solid var(--tr-line);background:var(--tr-panel);display:flex;flex-direction:column;gap:24px}.training-brand img{display:block;width:118px;max-height:58px;object-fit:contain;margin-bottom:10px}.training-brand div{font-size:13px;line-height:1.4;color:var(--tr-muted)}.training-sidebar nav{display:grid;gap:6px}.training-sidebar nav a{display:block;padding:10px 12px;border-radius:10px;color:var(--tr-text);text-decoration:none;font-size:13px;font-weight:400}.training-sidebar nav a:hover,.training-sidebar nav a.active{background:rgba(37,99,235,.09);color:var(--tr-accent)}.training-user{margin-top:auto;border-top:1px solid var(--tr-line);padding-top:14px}.training-user span,.training-user small{display:block}.training-user span{font-size:13px}.training-user small{font-size:11px;color:var(--tr-muted);margin-top:3px}.training-main{min-width:0}.training-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 30px 18px;border-bottom:1px solid var(--tr-line);background:var(--tr-panel)}.training-header h1{font-size:25px;line-height:1.2;font-weight:400;margin:4px 0 5px}.training-header p{margin:0;color:var(--tr-muted);font-size:12px}.training-eyebrow{font-size:10px;letter-spacing:.1em;color:var(--tr-muted)}.training-content{padding:26px 30px 60px;max-width:1440px;margin:0 auto}.training-loading{padding:40px;text-align:center;color:var(--tr-muted)}
.training-summary-intro,.training-report-card,.training-test-card,.training-stat,.training-summary-card,.training-filterbar{background:var(--tr-panel);border:1px solid var(--tr-line);border-radius:14px}.training-summary-intro{padding:18px 20px;margin-bottom:16px;font-size:13px;line-height:1.65}.training-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.training-summary-card{padding:18px}.training-summary-card h3{font-size:15px;font-weight:500;margin:0 0 7px}.training-summary-card p{margin:0;font-size:12px;line-height:1.6;color:var(--tr-muted)}.training-flow{margin-top:18px;padding:18px;border:1px dashed var(--tr-line);border-radius:14px;background:var(--tr-panel);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.7;white-space:pre-wrap}
.training-stats{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:14px}.training-stat{padding:14px}.training-stat span{display:block;font-size:10px;color:var(--tr-muted);margin-bottom:4px}.training-stat strong{font-size:22px;font-weight:400}.training-filterbar{display:flex;gap:10px;align-items:center;padding:12px;margin-bottom:14px;flex-wrap:wrap}.training-filterbar input,.training-filterbar select{height:36px;border:1px solid var(--tr-line);border-radius:9px;background:var(--tr-panel);color:var(--tr-text);padding:0 10px;font:inherit;font-size:12px}.training-filterbar input{min-width:260px;flex:1}.training-tests{display:grid;gap:10px}.training-test-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px}.training-test-start{width:34px;height:34px;border-radius:9px;border:1px solid var(--tr-line);background:var(--tr-panel);color:var(--tr-muted);font-size:18px;cursor:pointer}.training-test-start.passed{border-color:#acd2b9;color:var(--tr-ok);background:rgba(47,125,82,.08)}.training-test-start.failed{border-color:#e4b6b6;color:var(--tr-bad);background:rgba(185,71,71,.07)}.training-test-start.in-progress{border-color:#e2c788;color:var(--tr-warn);background:rgba(154,106,22,.08)}.training-test-main h3{font-size:14px;font-weight:500;margin:0 0 4px}.training-test-main p{font-size:11.5px;color:var(--tr-muted);line-height:1.45;margin:0}.training-test-meta{display:flex;gap:7px;align-items:center;margin-top:7px;flex-wrap:wrap}.training-pill{font-size:9.5px;padding:4px 7px;border:1px solid var(--tr-line);border-radius:999px;color:var(--tr-muted)}.training-status{font-size:10px;padding:5px 8px;border-radius:999px;white-space:nowrap}.training-status.passed{color:var(--tr-ok);background:rgba(47,125,82,.1)}.training-status.failed{color:var(--tr-bad);background:rgba(185,71,71,.09)}.training-status.in-progress{color:var(--tr-warn);background:rgba(154,106,22,.09)}.training-status.not-tested{color:var(--tr-muted);background:rgba(108,127,145,.08)}
.training-reports{margin-top:24px}.training-reports h2{font-size:17px;font-weight:400;margin:0 0 10px}.training-report-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:14px;align-items:center;padding:12px 14px;margin-bottom:8px;cursor:pointer}.training-report-card:hover{border-color:#bfcbd5}.training-report-card h4{font-size:12.5px;font-weight:500;margin:0 0 3px}.training-report-card p{font-size:10.5px;color:var(--tr-muted);margin:0}.training-report-score{font-size:12px;color:var(--tr-muted)}
.training-modal{position:fixed;inset:0;z-index:10000;display:grid;grid-template-columns:1fr minmax(560px,820px)}.training-modal.hidden{display:none}.training-modal-backdrop{background:rgba(8,15,25,.52)}.training-modal-panel{height:100vh;background:var(--tr-panel);border-left:1px solid var(--tr-line);overflow:auto}.training-modal-panel>header{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--tr-line);background:var(--tr-panel)}.training-modal-panel h2{font-size:19px;font-weight:400;margin:3px 0 0}.training-close{width:34px;height:34px;border-radius:9px;border:1px solid var(--tr-line);background:transparent;color:var(--tr-text);font-size:20px;cursor:pointer}.training-modal-body{padding:20px 20px 50px}.training-fixture{border:1px solid var(--tr-line);border-radius:12px;padding:13px;margin-bottom:14px;background:var(--tr-bg)}.training-fixture h3,.training-section h3{font-size:13px;font-weight:500;margin:0 0 9px}.training-fixture-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px}.training-fixture-grid div{font-size:11px;color:var(--tr-muted)}.training-fixture-grid span{display:block;font-size:9.5px;margin-bottom:2px}.training-fixture-grid strong{font-weight:400;color:var(--tr-text)}.training-section{margin:16px 0}.training-section ol,.training-section ul{margin:0;padding-left:20px}.training-section li{font-size:11.5px;line-height:1.55;margin:4px 0}.training-math{padding:10px 12px;border-left:3px solid var(--tr-accent);background:rgba(37,99,235,.05);border-radius:0 8px 8px 0;font-size:11px;line-height:1.55;margin:12px 0}.training-source-note{padding:10px 12px;border:1px solid var(--tr-line);border-radius:10px;font-size:11px;line-height:1.5;color:var(--tr-muted);margin:12px 0}.training-report-form{border-top:1px solid var(--tr-line);padding-top:16px;margin-top:18px}.training-field{display:grid;gap:5px;margin-bottom:12px}.training-field span{font-size:10.5px;color:var(--tr-muted)}.training-field input,.training-field textarea{width:100%;border:1px solid var(--tr-line);border-radius:9px;background:var(--tr-panel);color:var(--tr-text);padding:9px 10px;font:inherit;font-size:12px}.training-field textarea{min-height:76px;resize:vertical}.training-check{border:1px solid var(--tr-line);border-radius:11px;padding:12px;margin:9px 0}.training-check-head{display:flex;gap:9px;align-items:flex-start}.training-check-index{width:23px;height:23px;border-radius:7px;background:var(--tr-bg);display:grid;place-items:center;font-size:10px;color:var(--tr-muted);flex:0 0 auto}.training-check-question{font-size:11.5px;line-height:1.5}.training-expected{font-size:10.5px;color:var(--tr-muted);margin:7px 0 9px;padding-left:32px}.training-answer{padding-left:32px}.training-answer input[type="text"],.training-answer input[type="number"]{width:100%;height:36px;border:1px solid var(--tr-line);border-radius:8px;background:var(--tr-panel);color:var(--tr-text);padding:0 9px;font:inherit;font-size:12px}.training-yesno{display:flex;gap:8px}.training-yesno label{display:flex;align-items:center;gap:5px;border:1px solid var(--tr-line);border-radius:8px;padding:7px 11px;font-size:11px;cursor:pointer}.training-answer-note{margin-top:7px!important;height:33px!important}.training-actions{display:flex;gap:9px;justify-content:flex-end;margin-top:16px;flex-wrap:wrap}.training-btn{border:1px solid var(--tr-line);border-radius:9px;padding:9px 13px;background:var(--tr-panel);color:var(--tr-text);font:inherit;font-size:11px;cursor:pointer}.training-btn.primary{background:var(--tr-text);color:var(--tr-panel);border-color:var(--tr-text)}.training-btn.danger{color:var(--tr-bad)}.training-report-result{border-radius:13px;padding:16px;margin-bottom:14px}.training-report-result.passed{background:rgba(47,125,82,.08);border:1px solid #b7d7c2}.training-report-result.failed{background:rgba(185,71,71,.07);border:1px solid #e1bbbb}.training-report-result h3{font-size:18px;font-weight:400;margin:0 0 4px}.training-report-table{width:100%;border-collapse:collapse;font-size:10.5px}.training-report-table th,.training-report-table td{padding:8px;border-bottom:1px solid var(--tr-line);text-align:left;vertical-align:top}.training-report-table th{font-weight:500;color:var(--tr-muted)}.training-pass{color:var(--tr-ok)}.training-fail{color:var(--tr-bad)}
@media(max-width:900px){.training-shell{grid-template-columns:1fr}.training-sidebar{position:relative;height:auto}.training-sidebar nav{grid-template-columns:repeat(3,1fr)}.training-user{display:none}.training-summary-grid{grid-template-columns:1fr}.training-stats{grid-template-columns:repeat(2,1fr)}.training-modal{grid-template-columns:1fr}.training-modal-backdrop{display:none}.training-modal-panel{border-left:0}.training-content{padding:18px}.training-header{padding:18px}}
@media print{.training-sidebar,.training-header,.training-modal-panel>header,.training-actions{display:none!important}.training-modal{position:static;display:block}.training-modal-panel{height:auto;border:0}.training-modal-body{padding:0}.training-report-result,.training-check,.training-fixture{break-inside:avoid}}
