@charset "UTF-8";
:root{--paper:#f6f5f0;--surface:#fffefa;--green:#214c42;--green-dark:#163b32;--sage:#e9efe5;--mint:#edf4ed;--ink:#243a32;--muted:#67736a;--line:#dfe4d9;--orange:#a85435;--orange-bg:#fbefe6;--red:#a13e35;--red-bg:#fcf0ec;--blue:#46667a;--shadow:0 12px 32px #26382b08;--radius:18px;--sidebar:236px;--font:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:15px;line-height:1.55}button,input,select{font:inherit}button{cursor:pointer}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default;opacity:.55}button,a,summary,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b27e41}button{color:inherit}a{color:var(--green)}svg{display:block;flex-shrink:0}button svg{pointer-events:none}p{margin:0 0 12px}h1,h2,h3,h4{margin:0;color:var(--ink);line-height:1.22}h1{font:500 clamp(30px,3vw,42px)/1.18 Georgia,"Times New Roman",serif;letter-spacing:-.7px}h2{font-size:22px;letter-spacing:-.4px}h3{font-size:18px;letter-spacing:-.2px}small{font-size:12px}strong{font-weight:650}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-80px;left:15px;z-index:100;background:var(--surface);padding:12px 18px;border-radius:8px}.skip-link:focus{top:12px}
.shell{min-height:100vh}.sidebar{position:fixed;z-index:20;top:0;bottom:0;left:0;width:var(--sidebar);display:flex;flex-direction:column;padding:32px 23px 24px;border-right:1px solid var(--line);background:#efefe7}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;border:0;background:none;padding:0;text-align:left;margin:0 0 44px}.brand-icon{width:42px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--green);color:#fff}.brand-name{font-weight:720;font-size:18px;line-height:1.15;letter-spacing:-.5px}.brand-place{display:block;margin-top:5px;letter-spacing:2px;font-size:10px;font-weight:650;color:var(--muted);text-transform:uppercase}.nav-stack{display:grid;gap:6px}.nav-item{display:flex;align-items:center;gap:11px;min-height:45px;border:0;border-radius:10px;padding:10px 12px;text-decoration:none;background:none;font-weight:550;color:#5f6d62;text-align:left}.nav-item:hover{background:#e5e8dd}.nav-item.active{background:var(--green);color:#fff}.nav-item svg{width:19px;height:19px}.nav-label{font-size:10px;color:#7c837a;text-transform:uppercase;letter-spacing:1.6px;margin:29px 12px 9px;font-weight:700}.nav-item.sub{font-size:13px;min-height:36px;padding:8px 12px}.dot{width:7px;height:7px;border-radius:50%;background:#75917c;margin:0 6px}.nav-item.sub.active{background:#dfe7da;color:var(--green)}.side-bottom{margin-top:auto;padding-top:28px}.side-note{font-size:12px;color:var(--muted);border-top:1px solid #d7dece;padding-top:19px}.side-note strong{display:block;color:var(--green);margin-bottom:5px}.side-bottom .text-button{margin:6px 0 0;padding-left:0}.mobile-top{display:none}.main{margin-left:var(--sidebar);padding:39px 44px 42px;max-width:1600px}.main-inner{max-width:1140px;margin:auto}.top-line{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:33px}.eyebrow{font-size:11px;letter-spacing:1.9px;font-weight:720;text-transform:uppercase;color:var(--muted)}.status-pill,.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:100px;padding:6px 11px;font-size:11px;font-weight:600;background:var(--surface);white-space:nowrap}.status-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:#769976}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:26px}.page-heading p{color:var(--muted);max-width:630px;margin:13px 0 0;font-size:15px}.heading-actions{display:flex;gap:8px;flex-shrink:0}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:43px;border:1px solid var(--line);border-radius:10px;padding:10px 17px;background:var(--surface);font-weight:600;font-size:13px;text-decoration:none;transition:background .15s,transform .15s}.button:hover{background:#edf0e8}.button.primary{background:var(--green);border-color:var(--green);color:#fff}.button.primary:hover{background:var(--green-dark)}.button.tertiary{background:transparent;border-color:transparent;padding:9px 11px}.button.danger{color:var(--red);border-color:#e6c9be}.button.small{min-height:35px;padding:6px 10px;font-size:12px}.button.wide{width:100%}.button svg,.text-button svg{width:17px;height:17px}.icon-button{display:inline-grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:9px;background:var(--surface);padding:8px}.icon-button:hover{background:var(--sage)}.text-button{border:0;background:none;color:var(--green);display:inline-flex;align-items:center;gap:6px;font-weight:600;padding:7px 9px;font-size:12px}.text-button:hover{text-decoration:underline}.subtle{color:var(--muted)}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:27px 0 32px}.metric{border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:19px 21px;display:flex;align-items:center;justify-content:space-between;gap:16px}.metric-label{font-size:12px;color:var(--muted);margin-bottom:5px}.metric-value{font-size:28px;line-height:1.15;letter-spacing:-.9px;font-weight:600}.metric-description{font-size:11px;color:var(--muted);margin-top:6px}.metric-icon{color:#819a81;background:#f0f3eb;border-radius:11px;padding:12px}.metric-icon svg{width:22px;height:22px}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:15px}.section-heading p{font-size:12px;color:var(--muted);margin:6px 0 0}.section-heading h2{font-size:18px}.mode-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:32px}.mode-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px 20px;text-align:left;transition:background .15s,border-color .15s;min-height:188px}.mode-card:hover{border-color:#8ca48c;background:#fcfef9}.mode-card.selected{border:2px solid var(--green);padding:21px 19px;background:#edf2e8}.mode-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.mode-symbol{display:grid;place-items:center;background:var(--sage);color:var(--green);width:38px;height:38px;border-radius:11px}.mode-card:nth-child(2) .mode-symbol{background:#eaf0f2;color:var(--blue)}.mode-card:nth-child(3) .mode-symbol{background:#f6e9df;color:var(--orange)}.mode-symbol svg{width:20px;height:20px}.mode-number{font-size:10px;letter-spacing:1px;color:#92988d;font-weight:700}.radio-mark{width:17px;height:17px;border:1px solid #b3beb0;border-radius:50%;background:var(--surface)}.selected .radio-mark{border:5px solid var(--green)}.mode-card h3{font-size:16px;margin-bottom:8px}.mode-card p{font-size:12px;line-height:1.55;color:var(--muted);margin:0}.catalog-panel{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);overflow:hidden}.catalog-head{padding:23px 24px 19px;border-bottom:1px solid var(--line)}.catalog-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.catalog-title h2{font-size:19px}.catalog-count{font-size:12px;color:var(--muted)}.phase-tabs{display:flex;gap:4px;background:#f0f2eb;border-radius:10px;padding:4px;max-width:650px;margin-bottom:17px}.phase-tab{border:0;border-radius:7px;background:none;padding:9px 14px;font-size:12px;white-space:nowrap;color:var(--muted);font-weight:600;flex:1}.phase-tab:hover{color:var(--green)}.phase-tab.active{background:var(--surface);color:var(--green);box-shadow:0 2px 5px #26382b0d}.catalog-filters{display:flex;gap:12px;align-items:center}.search-field{position:relative;flex:1}.search-field svg{position:absolute;left:12px;top:12px;color:#829080;width:17px;height:17px}.search-field input{width:100%;padding:10px 12px 10px 38px;border:1px solid var(--line);border-radius:9px;background:#fffefb;color:var(--ink);font-size:12px;height:41px}.filter-select,select{border:1px solid var(--line);border-radius:9px;background:#fffefb;color:var(--ink);padding:9px 30px 9px 11px;min-height:41px;font-size:12px}.filter-select{max-width:340px;min-width:180px}.catalog-body{padding:20px 23px 23px}.battery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.battery-card{display:flex;flex-direction:column;align-items:stretch;min-width:0;text-align:left;border:1px solid var(--line);border-radius:12px;background:#fffefa;padding:16px;transition:background .15s,border-color .15s}.battery-card:hover{border-color:#8ea48b;background:#f7faf3}.battery-top{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:11px}.battery-label{font-size:10px;letter-spacing:.5px;text-transform:uppercase;font-weight:700;color:#698064}.battery-code{font-size:10px;color:#66776b;border-radius:5px;background:#f0f3ec;padding:3px 6px;font-weight:600}.battery-card h3{font-size:14px;line-height:1.45;margin-bottom:11px;flex:1}.battery-meta{display:flex;gap:12px;color:var(--muted);font-size:11px;align-items:center}.battery-meta>span{display:inline-flex;align-items:center;gap:4px}.battery-meta svg{width:13px;height:13px}.battery-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #edf0e7;margin-top:15px;padding-top:11px}.battery-best{color:#899183;font-size:10px}.battery-best.done{color:var(--green)}.battery-start{display:inline-flex;align-items:center;gap:4px;font-size:11px;color:var(--green);font-weight:650}.battery-start svg{width:14px;height:14px}.footer-note{display:flex;justify-content:space-between;gap:24px;margin-top:24px;font-size:11px;color:#7d8779}.footer-note p{margin:0;max-width:740px}.resume-card{display:flex;gap:18px;align-items:center;border:1px solid #bbcab4;background:#e8efdf;padding:17px 21px;border-radius:14px;margin:0 0 24px}.resume-card .resume-text{flex:1}.resume-card h3{font-size:15px;margin:0 0 4px}.resume-card p{font-size:12px;color:var(--muted);margin:0}.resume-icon{color:var(--green)}.notice{background:#f9efd9;border:1px solid #e8d8b4;border-radius:11px;padding:13px 16px;color:#77572d;font-size:12px;line-height:1.6;margin-bottom:18px}.notice p:last-child{margin-bottom:0}.notice.info{background:#edf2e9;border-color:#d9e3d1;color:var(--green)}.empty{padding:43px 24px;text-align:center}.empty-icon{margin:0 auto 17px;width:54px;height:54px;display:grid;place-items:center;background:var(--sage);border-radius:16px;color:#718c73}.empty h3{font-size:18px;margin-bottom:9px}.empty p{font-size:13px;color:var(--muted);max-width:440px;margin:0 auto 17px}.boot-screen{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:100vh;padding:30px;text-align:center}.boot-mark{border-radius:18px;background:var(--green);color:#fff;font-family:Georgia,serif;font-size:30px;padding:14px 18px;margin-bottom:20px}.boot-screen p{color:var(--muted);margin-top:15px}
/* Exercise */
.quiz-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:22px}.quiz-heading h1{font-size:27px;line-height:1.3;margin:10px 0 0}.quiz-heading .back-button{padding-left:0;margin-bottom:6px}.quiz-subline{display:flex;align-items:center;gap:10px;margin-top:12px;color:var(--muted);font-size:12px}.timer{display:flex;align-items:center;gap:14px;background:var(--surface);border:1px solid var(--line);padding:12px 15px;border-radius:12px;flex-shrink:0}.timer-label{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.timer-time{font-size:23px;line-height:1.3;font-variant-numeric:tabular-nums;letter-spacing:.7px;font-weight:620}.timer.expired{background:var(--orange-bg);border-color:#d9bda4;color:var(--orange)}.quiz-layout{display:grid;grid-template-columns:minmax(0,1fr) 228px;gap:21px;align-items:start}.question-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:29px 30px 23px;min-width:0}.question-counter{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--muted);font-size:11px;margin-bottom:24px}.question-counter>span:first-child{font-weight:700;color:#6a8267;letter-spacing:1px;text-transform:uppercase}.question-text{font-size:21px;line-height:1.5;letter-spacing:-.2px;margin:0 0 25px;font-weight:580;overflow-wrap:anywhere}.answer-list{border:0;margin:0;padding:0;display:grid;gap:11px}.answer-option{position:relative;display:flex;align-items:center;gap:13px;border:1px solid #dce2d4;background:#fffefa;border-radius:11px;padding:15px 16px;cursor:pointer;min-height:65px;transition:background .12s,border-color .12s}.answer-option:hover{background:#f4f6ee;border-color:#9caf96}.answer-option.selected{background:#eaf0e2;border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.answer-option input{position:absolute;width:1px;height:1px;opacity:0}.answer-option:focus-within{outline:3px solid #b27e41;outline-offset:3px}.answer-letter{display:grid;place-items:center;min-width:30px;height:30px;border:1px solid #d6dfce;border-radius:8px;color:#788875;font-size:12px;font-weight:600;background:#f8faf4}.answer-option.selected .answer-letter{color:#fff;background:var(--green);border-color:var(--green)}.answer-copy{font-size:15px;line-height:1.5;flex:1;overflow-wrap:anywhere}.answer-indicator{width:17px;height:17px;border:1px solid #c7d1be;border-radius:50%;margin-left:2px;flex-shrink:0}.selected .answer-indicator{border:5px solid var(--green)}.question-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);margin-top:25px;padding-top:17px}.doubt-button{border:0;border-radius:8px;padding:8px 9px;background:none;color:var(--muted);font-size:12px;display:flex;align-items:center;gap:7px}.doubt-button svg{width:15px;height:15px}.doubt-button.marked{color:var(--orange);background:#f7eadf}.question-nav{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:17px}.question-nav .middle-count{font-size:11px;color:var(--muted)}.navigator{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:19px;position:sticky;top:24px}.navigator summary{list-style:none;cursor:default;font-size:13px;font-weight:650;margin-bottom:15px}.navigator summary::-webkit-details-marker{display:none}.navigator-summary{display:flex;justify-content:space-between;gap:7px}.navigator-summary span:last-child{color:var(--muted);font-weight:400}.navigator-progress{height:4px;border-radius:3px;background:#edf0e7;margin-bottom:19px;overflow:hidden}.navigator-progress span{display:block;height:100%;background:#648861;transition:width .2s}.number-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-bottom:17px}.number-button{position:relative;display:grid;place-items:center;border:1px solid var(--line);background:#fffefa;border-radius:7px;font-size:11px;min-width:0;height:31px;outline-offset:2px}.number-button.answered{background:#e5eddf;border-color:#d5dfce;color:var(--green);font-weight:600}.number-button.current{color:#fff;background:var(--green);border-color:var(--green)}.number-button.doubt::after{content:"";width:5px;height:5px;background:#b97840;border-radius:50%;position:absolute;right:3px;top:3px;border:1px solid #fff}.navigator-legend{display:flex;gap:11px;flex-wrap:wrap;font-size:9px;color:var(--muted);margin:0 0 20px}.navigator-legend>span{display:flex;align-items:center;gap:5px}.legend-square{width:8px;height:8px;border-radius:2px;background:#e5eddf;border:1px solid #d5dfce}.legend-dot{width:6px;height:6px;border-radius:50%;background:#b97840}.navigator .button{font-size:12px}.finish-note{font-size:10px;text-align:center;color:var(--muted);margin:10px 0 0;line-height:1.5}.paused-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:60px 24px;text-align:center}.paused-panel .empty-icon{width:64px;height:64px}.paused-panel p{color:var(--muted);font-size:14px;max-width:440px;margin:15px auto 23px}.expiry-message{font-size:12px;color:var(--orange);background:var(--orange-bg);border:1px solid #edd6c4;padding:11px 16px;border-radius:10px;margin-bottom:18px}
/* Results and progress */
.result-hero{display:flex;align-items:center;gap:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:29px 31px;margin-bottom:21px}.score-ring{--score:0%;width:124px;height:124px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) var(--score),#e7ede0 0);flex-shrink:0;position:relative}.score-ring::before{content:"";position:absolute;inset:8px;border-radius:50%;background:var(--surface)}.score-ring-content{position:relative;text-align:center}.score-ring strong{font-size:33px;font-weight:580;letter-spacing:-1px;display:block;line-height:1.2}.score-ring small{font-size:10px;color:var(--muted)}.result-summary{flex:1;min-width:0}.result-summary h2{font-size:22px;margin-bottom:9px}.result-summary p{font-size:12px;color:var(--muted);margin:0 0 15px}.result-totals{display:flex;flex-wrap:wrap;gap:20px}.result-total{font-size:12px;color:var(--muted)}.result-total strong{font-size:19px;display:block;line-height:1.4;color:var(--ink)}.result-total.good strong{color:var(--green)}.result-total.bad strong{color:var(--red)}.result-actions{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:30px}.saved-note{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-size:11px;margin:0 0 20px}.saved-note svg{width:14px;height:14px}.review-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:16px 0 21px}.review-tab{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:7px 12px;font-size:12px;color:var(--muted)}.review-tab.active{color:#fff;background:var(--green);border-color:var(--green)}.review-card{border:1px solid var(--line);border-radius:15px;background:var(--surface);padding:23px 25px;margin-bottom:16px;scroll-margin-top:24px}.review-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:13px;font-size:11px;color:var(--muted)}.outcome{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:650;padding:4px 8px;border-radius:6px;background:#f0f1e9;color:#7d7d64}.outcome.correct{background:#e4efe0;color:var(--green)}.outcome.incorrect{background:#f8e8e0;color:var(--red)}.review-question{font-size:17px;line-height:1.5;margin-bottom:17px;font-weight:600}.review-option{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:8px;margin-bottom:5px;font-size:13px;line-height:1.5;border:1px solid transparent}.review-option.is-right{background:#ebf3e6;border-color:#dce8d4;color:var(--green)}.review-option.is-wrong{background:var(--red-bg);border-color:#efd6cc;color:var(--red)}.review-letter{font-size:11px;font-weight:700;min-width:14px;margin-top:2px}.review-copy{flex:1;min-width:0;overflow-wrap:anywhere}.answer-label{display:inline-block;font-size:9px;margin-left:8px;border:1px solid currentColor;padding:1px 5px;border-radius:4px;white-space:nowrap;vertical-align:middle}.explanation{background:#f4f5ee;border-radius:10px;margin-top:17px;padding:15px 17px;font-size:13px;line-height:1.7}.explanation strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:#6b8066;margin-bottom:6px}.explanation p{margin:0;overflow-wrap:anywhere}.source{font-size:11px;color:var(--muted);line-height:1.65;margin-top:12px;overflow-wrap:anywhere}.source-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}.source-links a{font-size:10px;text-underline-offset:3px}.progress-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);gap:18px;margin-bottom:23px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:24px;min-width:0}.panel h2{font-size:18px;margin-bottom:9px}.panel-intro{font-size:12px;color:var(--muted);margin-bottom:21px}.chart{display:flex;align-items:flex-end;gap:10px;height:163px;border-bottom:1px solid var(--line);margin:26px 0 25px;padding:0 3px;position:relative;background:repeating-linear-gradient(to top,transparent 0,transparent calc(25% - 1px),#eef1e9 calc(25% - 1px),#eef1e9 25%)}.chart-col{height:100%;display:flex;flex:1;max-width:58px;align-items:center;justify-content:flex-end;flex-direction:column;position:relative}.chart-bar{display:block;border:0;background:#aec2a3;border-radius:5px 5px 0 0;width:100%;min-height:3px;position:relative;transition:background .15s}.chart-bar:hover{background:var(--green)}.chart-col:last-child .chart-bar{background:var(--green)}.chart-value{position:absolute;bottom:calc(100% + 5px);font-size:10px;color:var(--muted);left:50%;transform:translateX(-50%);white-space:nowrap}.chart-label{font-size:9px;color:var(--muted);position:absolute;top:calc(100% + 7px);white-space:nowrap;left:50%;transform:translateX(-50%)}.chart-foot{font-size:11px;color:var(--muted);margin-top:15px}.review-topic{padding:13px 0;border-bottom:1px solid #e9ede2}.review-topic:last-child{border:0;padding-bottom:0}.review-topic h3{font-size:13px;line-height:1.5;margin-bottom:4px}.review-topic p{font-size:11px;color:var(--muted);margin:0 0 5px}.topic-figures{display:flex;gap:10px;align-items:center;font-size:10px;color:var(--muted)}.topic-figures strong{color:var(--orange)}.table-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden;margin:22px 0}.table-panel-head{padding:23px 24px 17px}.table-panel-head h2{font-size:18px;margin-bottom:7px}.table-panel-head p{font-size:12px;color:var(--muted);margin:0}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;font-size:12px}th{font-weight:600;color:#76816e;background:#f5f6ef;font-size:10px;text-transform:uppercase;letter-spacing:.7px;padding:11px 16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}td{padding:14px 16px;border-bottom:1px solid #edf0e8;vertical-align:middle}tr:last-child td{border-bottom:0}td:first-child,th:first-child{padding-left:24px}td:last-child,th:last-child{padding-right:24px}.chapter-cell{max-width:310px;min-width:210px}.chapter-cell strong{display:block;font-size:12px;margin-bottom:3px;font-weight:600}.chapter-cell small{color:var(--muted);font-size:10px}.mini-progress{background:#eaf0e2;border-radius:3px;height:5px;min-width:84px;max-width:140px;overflow:hidden;margin-top:6px}.mini-progress span{display:block;height:100%;background:#8ca582}.evidence{display:inline-block;border-radius:5px;background:#f0f2e9;color:#7a8373;font-size:10px;padding:4px 7px;white-space:nowrap}.evidence.broader{background:#e5eede;color:#56744e}.history-item{display:flex;align-items:center;gap:15px;padding:17px 0;border-bottom:1px solid var(--line)}.history-item:last-child{border-bottom:0;padding-bottom:0}.history-score{width:51px;min-width:51px;height:51px;display:grid;place-items:center;border-radius:12px;background:var(--sage);color:var(--green);font-size:15px;font-weight:650}.history-info{flex:1;min-width:0}.history-info h3{font-size:13px;line-height:1.4;margin-bottom:5px}.history-info p{font-size:11px;color:var(--muted);margin:0}.history-item .button{flex-shrink:0}.disclaimer{font-size:11px;color:var(--muted);line-height:1.6;background:#eef1e6;border-radius:11px;padding:13px 16px;margin:20px 0}.storage-panel{display:flex;align-items:center;justify-content:space-between;gap:24px}.storage-panel p{font-size:12px;color:var(--muted);margin:8px 0 0;max-width:610px}.storage-buttons{display:flex;gap:8px;flex-shrink:0}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:26px 0}.guide-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:26px}.guide-card h2{font-size:19px;margin:14px 0 15px}.guide-card p,.guide-card li{font-size:13px;color:var(--muted);line-height:1.75}.guide-card ul,.guide-card ol{margin:0;padding-left:19px}.guide-card li{margin-bottom:9px}.guide-card li:last-child{margin-bottom:0}.guide-card strong{color:var(--ink)}.guide-card .mode-symbol{width:36px;height:36px}.guide-full{grid-column:1/-1}.guide-sources{font-size:12px}.guide-sources details{border-top:1px solid var(--line);padding:12px 0}.guide-sources summary{cursor:pointer;font-size:12px;color:var(--green);font-weight:600}.guide-sources p{margin-top:10px;font-size:12px;white-space:pre-line}.privacy-note{font-size:11px;line-height:1.7;color:var(--muted);margin-top:20px}.toast{position:fixed;bottom:25px;left:calc(50% + var(--sidebar)/2);transform:translateX(-50%);z-index:70;max-width:min(560px,calc(100vw - 36px));padding:13px 19px;border-radius:11px;background:var(--green-dark);color:#fff;box-shadow:0 5px 25px #0002;font-size:13px}.toast.error{background:#854437}
/* Dialog */
dialog{border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--ink);padding:0;width:min(530px,calc(100% - 32px));max-height:90vh;box-shadow:0 30px 100px #182a2940}dialog::backdrop{background:#1b302a77;backdrop-filter:blur(3px)}.dialog-body{padding:29px 30px}.dialog-header{display:flex;justify-content:space-between;align-items:flex-start;gap:17px;margin-bottom:22px}.dialog-header h2{font:500 28px/1.25 Georgia,serif;letter-spacing:-.4px}.dialog-header .eyebrow{margin-bottom:8px;font-size:9px}.dialog-description{font-size:13px;color:var(--muted);line-height:1.65;margin-bottom:19px}.dialog-meta{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 22px}.form-field{display:grid;gap:7px;margin:17px 0}.form-field label{font-size:12px;font-weight:650}.form-field select{font-size:13px;width:100%;height:43px}.form-hint{font-size:11px;color:var(--muted);line-height:1.6;margin:0}.dialog-footer{display:flex;justify-content:flex-end;gap:9px;padding-top:20px;margin-top:20px;border-top:1px solid var(--line)}.dialog-footer .button{flex:1}.confirmation-count{font-size:34px;font-weight:580;color:var(--green);letter-spacing:-1px;margin-bottom:12px}.checkbox-label{display:flex;align-items:flex-start;gap:10px;font-size:12px;margin:16px 0}.checkbox-label input{accent-color:var(--green);margin-top:4px}.import-summary{font-size:13px;color:var(--muted);line-height:1.65}.result-caption{font-size:11px;color:var(--muted);margin-top:17px}.mobile-only{display:none}
@media(min-width:1500px){.main{padding-left:60px;padding-right:60px}}
@media(max-width:1190px){:root{--sidebar:208px}.sidebar{padding:26px 17px 22px}.main{padding:30px 28px}.brand-name{font-size:17px}.battery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quiz-layout{grid-template-columns:minmax(0,1fr) 204px;gap:15px}.question-card{padding:25px 23px}.question-text{font-size:19px}.navigator{padding:16px}.number-grid{gap:5px}.number-button{height:29px}.mode-card{padding:20px 16px}.mode-card.selected{padding:19px 15px}.mode-card h3{font-size:15px}.metric{padding:17px}.metric-icon{padding:9px}.metric-value{font-size:25px}.progress-layout{grid-template-columns:minmax(0,1.2fr) minmax(240px,1fr)}.storage-panel{align-items:flex-start;flex-direction:column;gap:16px}}
@media(max-width:930px){:root{--sidebar:0px}.sidebar{display:none}.mobile-top{display:flex;position:relative;z-index:20;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border-bottom:1px solid var(--line);background:#efefe7}.mobile-top .brand{margin:0;gap:9px}.mobile-top .brand-icon{width:33px;height:36px;border-radius:9px}.mobile-top .brand-icon svg{width:23px;height:23px}.mobile-top .brand-name{font-size:16px}.mobile-top .brand-place{font-size:8px;letter-spacing:1.5px;margin-top:3px}.mobile-nav{display:flex;gap:4px}.mobile-nav .nav-item{min-height:37px;gap:6px;padding:8px 10px;font-size:12px}.mobile-nav .nav-item svg{width:16px;height:16px}.main{margin:0;padding:25px 26px 35px}.top-line{margin-bottom:24px}.quiz-heading h1{font-size:25px}.toast{left:50%}}
@media(max-width:650px){body{font-size:14px}.main{padding:22px 17px 28px}.mobile-top{padding:15px 17px;gap:10px}.mobile-nav .nav-item{padding:8px}.mobile-nav .nav-item span{display:none}.mobile-nav .nav-item svg{width:19px;height:19px}.top-line{margin-bottom:23px}.status-pill{font-size:9px;padding:5px 8px}.eyebrow{font-size:9px;letter-spacing:1.5px}.page-heading{align-items:flex-start;gap:13px;flex-direction:column;margin-bottom:22px}h1{font-size:32px}.page-heading p{font-size:13px;margin-top:11px}.heading-actions{width:100%}.metric-grid{gap:8px;margin:22px 0 27px}.metric{display:block;padding:13px 11px;border-radius:12px}.metric-icon{display:none}.metric-label{font-size:9px;margin-bottom:7px}.metric-value{font-size:24px}.metric-description{font-size:9px;margin-top:6px;line-height:1.4}.mode-grid{gap:9px;grid-template-columns:1fr;margin-bottom:25px}.mode-card{display:grid;grid-template-columns:39px 1fr;column-gap:13px;padding:16px;min-height:auto}.mode-card.selected{padding:15px}.mode-card-top{display:contents}.mode-symbol{grid-column:1;grid-row:1/3;width:37px;height:37px;align-self:center}.radio-mark{position:absolute;right:17px;top:17px;width:14px;height:14px}.selected .radio-mark{border-width:4px}.mode-card h3{grid-column:2;font-size:14px;margin:0 22px 4px 0}.mode-card p{grid-column:2;font-size:11px;max-width:380px;margin-right:13px}.section-heading h2{font-size:17px}.section-heading p{font-size:11px}.catalog-head{padding:20px 15px 16px}.catalog-title h2{font-size:17px}.catalog-count{font-size:10px}.phase-tabs{overflow:auto;gap:2px;padding:3px;margin-bottom:13px}.phase-tab{font-size:10px;padding:9px 8px;flex:1}.catalog-filters{flex-wrap:wrap;gap:9px}.search-field{flex-basis:100%}.filter-select{width:100%;max-width:none}.catalog-body{padding:14px}.battery-grid{grid-template-columns:1fr;gap:10px}.battery-card{padding:15px}.battery-card h3{font-size:14px;margin-bottom:10px}.battery-top{margin-bottom:8px}.battery-bottom{margin-top:12px;padding-top:9px}.battery-label{font-size:9px}.footer-note{font-size:10px;flex-direction:column;gap:10px}.resume-card{padding:15px;gap:12px;flex-wrap:wrap}.resume-icon{display:none}.resume-card .button{width:100%;font-size:12px;min-height:38px}.resume-card h3{font-size:13px}.resume-card p{font-size:11px}.quiz-heading{gap:15px;flex-wrap:wrap;margin-bottom:17px}.quiz-heading>div:first-child{flex:1;min-width:200px}.quiz-heading h1{font-size:22px}.quiz-heading .timer{width:100%;padding:10px 13px;justify-content:space-between}.timer>div{display:flex;align-items:center;gap:14px}.timer-label{font-size:9px}.timer-time{font-size:22px}.quiz-subline{margin-top:9px;font-size:10px;gap:7px}.quiz-subline .pill{font-size:9px}.quiz-layout{display:flex;flex-direction:column;gap:17px}.quiz-layout>div{width:100%}.question-card{padding:22px 18px 17px;border-radius:15px}.question-counter{font-size:10px;margin-bottom:19px;gap:9px}.question-text{font-size:18px;line-height:1.5;margin-bottom:21px}.answer-option{padding:13px 12px;gap:10px;min-height:62px}.answer-copy{font-size:14px}.answer-letter{height:27px;min-width:27px;border-radius:7px;font-size:11px}.answer-indicator{width:14px;height:14px}.selected .answer-indicator{border-width:4px}.question-tools{margin-top:20px;padding-top:13px;gap:5px}.doubt-button{font-size:11px;padding:7px 5px}.question-tools .text-button{font-size:11px;padding:7px 5px}.question-nav{margin-top:13px}.question-nav .button{font-size:12px;padding:10px 13px}.question-nav .middle-count{font-size:10px}.navigator{width:100%;position:static;padding:17px;border-radius:14px}.navigator summary{font-size:12px;margin-bottom:14px}.number-grid{grid-template-columns:repeat(10,1fr);gap:5px}.number-button{height:28px;font-size:10px}.navigator .button{min-height:46px;font-size:13px}.navigator-legend{font-size:9px;margin-bottom:16px}.finish-note{font-size:10px}.result-hero{padding:22px 19px;gap:19px;flex-wrap:wrap}.score-ring{width:100px;height:100px}.score-ring strong{font-size:27px}.score-ring small{font-size:9px}.result-summary h2{font-size:18px}.result-summary p{font-size:11px}.result-totals{gap:15px}.result-total{font-size:10px}.result-total strong{font-size:17px}.result-actions{gap:8px;margin-bottom:23px}.result-actions .button{font-size:11px;padding:10px 12px;flex:1}.review-card{padding:19px 16px}.review-question{font-size:15px}.review-option{font-size:12px;padding:9px 10px;gap:8px}.answer-label{display:table;margin:4px 0 0;font-size:8px}.explanation{font-size:12px;padding:13px 14px}.source{font-size:10px}.review-card-top{font-size:10px}.review-tabs{gap:6px}.review-tab{font-size:11px;padding:7px 10px}.progress-layout{grid-template-columns:1fr;gap:15px}.panel{padding:21px 18px}.panel h2{font-size:17px}.panel-intro{font-size:11px}.chapter-cell{min-width:200px}td:first-child,th:first-child{padding-left:18px}td:last-child,th:last-child{padding-right:18px}td{padding:12px 13px}.table-panel-head{padding:20px 18px 16px}.table-panel-head h2{font-size:17px}.table-panel-head p{font-size:11px}.history-item{gap:10px;flex-wrap:wrap}.history-score{width:43px;min-width:43px;height:43px;font-size:13px}.history-info h3{font-size:12px}.history-info p{font-size:10px}.history-item .button{font-size:10px;min-height:32px;padding:6px 8px}.storage-buttons{flex-wrap:wrap}.storage-buttons .button{font-size:11px}.guide-grid{grid-template-columns:1fr;gap:14px;margin-top:23px}.guide-card{padding:23px 20px}.guide-card h2{font-size:18px}.guide-full{grid-column:auto}.guide-card p,.guide-card li{font-size:12px}.dialog-body{padding:24px 22px}.dialog-header h2{font-size:25px}.dialog-footer .button{font-size:12px}.toast{bottom:18px;font-size:12px;padding:12px 16px}.mobile-only{display:block}.desktop-only{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{body{background:white;font-size:12px}.sidebar,.mobile-top,.top-line,.heading-actions,.result-actions,.review-tabs,.footer-note,.button,.toast,dialog{display:none!important}.main{margin:0;padding:0;max-width:none}.review-card{break-inside:avoid;box-shadow:none}.result-hero{break-inside:avoid}.source-links a::after{content:" (" attr(href) ")"}.score-ring{background:none;border:5px solid #48684e}.score-ring::before{display:none}.page-heading{margin-bottom:20px}}

/* Candidate choice and active-profile context. */
.profile-page{min-height:100vh;background:radial-gradient(ellipse at 50% 0%,#e9eee1 0,transparent 60%)}
.profile-header{max-width:1190px;margin:auto;padding:35px 36px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.profile-header .brand{margin:0}
.profile-main{max-width:1060px;margin:auto;padding:48px 36px 30px}
.profile-main>h1{font-size:clamp(34px,4.7vw,53px);margin:14px 0 18px;letter-spacing:-1.2px}
.profile-intro{font-size:16px;color:var(--muted);max-width:630px;line-height:1.7;margin-bottom:33px}
.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;margin:0 0 29px}
.profile-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;text-align:left;padding:28px 26px 24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow);transition:border-color .15s,background .15s}
.profile-card:hover{background:#fbfdf7;border-color:var(--green)}
.profile-avatar{display:grid;place-items:center;width:62px;height:62px;border-radius:18px;font-size:27px;font-weight:550;margin:0 0 25px;background:#e2ebda;color:var(--green)}
.profile-color-2{background:#e3edf0;color:var(--blue)}
.profile-color-3{background:#f5e7dc;color:var(--orange)}
.profile-card-name{font-size:21px;font-weight:650;margin-bottom:9px;letter-spacing:-.35px}
.profile-card-summary{font-size:12px;color:var(--muted);line-height:1.6}
.profile-resume{font-size:11px;color:var(--green);display:block;margin:4px 0 25px}
.profile-enter{display:flex;align-items:center;justify-content:space-between;width:100%;border-top:1px solid var(--line);padding-top:17px;margin-top:auto;color:var(--green);font-weight:650;font-size:13px}
.profile-explainer{display:flex;align-items:flex-start;gap:15px;border-top:1px solid var(--line);padding-top:26px;margin-top:31px}
.profile-explainer>.mode-symbol{flex-shrink:0}
.profile-explainer h2{font-size:17px;margin:0 0 9px}
.profile-explainer p{font-size:12px;line-height:1.8;max-width:820px}
.profile-explainer p:last-child{margin:0}
.profile-footer{color:var(--muted);font-size:11px;margin-top:35px;padding-top:19px;border-top:1px solid var(--line)}
.profile-legacy{margin-bottom:26px;font-size:13px}
.profile-legacy strong{display:block;margin-bottom:8px}
.candidate-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;margin:0 0 25px;border:1px solid #d5decd;border-radius:13px;background:#edf1e7}
.candidate-current{display:flex;align-items:center;gap:11px}
.candidate-avatar{display:grid;place-items:center;width:34px;height:36px;border-radius:10px;background:var(--green);color:#fff;font-weight:650;font-size:15px}
.candidate-current small{display:block;font-size:10px;color:var(--muted);line-height:1.3;margin-bottom:3px}
.candidate-current strong{display:block;font-size:13px;line-height:1.3}
@media(max-width:930px){.profile-main{padding-top:27px}.profile-header{padding-bottom:24px}}
@media(max-width:650px){.profile-header{padding:23px 20px;align-items:flex-start}.profile-header .brand-name{font-size:16px}.profile-header .brand-place{font-size:8px;letter-spacing:1.4px}.profile-header .brand-icon{width:36px;height:39px}.profile-header>.status-pill{display:none}.profile-main{padding:24px 20px 27px}.profile-main>h1{font-size:36px;letter-spacing:-.7px}.profile-intro{font-size:13px;margin-bottom:26px}.profile-grid{grid-template-columns:1fr;gap:13px}.profile-card{display:grid;grid-template-columns:52px 1fr;column-gap:17px;padding:21px 20px;border-radius:16px}.profile-avatar{grid-column:1;grid-row:1/4;align-self:center;width:49px;height:52px;border-radius:14px;font-size:23px;margin:0}.profile-card-name{grid-column:2;font-size:19px;margin-bottom:4px}.profile-card-summary{grid-column:2;font-size:11px}.profile-resume{grid-column:2;font-size:10px;margin:3px 0 0}.profile-enter{grid-column:1/3;margin-top:16px;padding-top:12px;font-size:12px}.profile-explainer{gap:12px;margin-top:26px}.profile-explainer h2{font-size:15px}.profile-explainer p{font-size:11px}.profile-footer{font-size:10px;line-height:1.7;margin-top:25px}.candidate-bar{padding:10px 11px;margin-bottom:22px;gap:10px}.candidate-current{gap:8px}.candidate-current small{font-size:9px}.candidate-current strong{font-size:12px}.candidate-avatar{width:29px;height:32px;font-size:13px}.candidate-bar .button{font-size:10px;padding:7px 9px;min-height:33px}}
@media print{.candidate-bar{background:none;border:none;border-bottom:1px solid #ccc;border-radius:0;padding:0 0 12px;margin-bottom:20px}.candidate-avatar{display:none}.candidate-current small{display:none}.candidate-current strong{font-size:12px}}
