:root{--ink:#183a34;--muted:#737a71;--green:#214e40;--lime:#deedac;--paper:#f7f7f1;--line:#dfe2d6;--white:#fff;--red:#a24636;--red-light:#fcf0eb;--radius:18px;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a,select{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:3px solid #9bbb54;outline-offset:4px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(38px,4.8vw,66px);line-height:1.1;letter-spacing:-2.3px;margin-bottom:25px}h1 em{font-weight:400;color:#5c7753}h2{font-size:27px;letter-spacing:-.7px;margin-bottom:0}h3{font-size:18px;line-height:1.35}p{line-height:1.65}.page-width{width:min(1160px,calc(100% - 80px));margin:auto}.site-header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{width:min(1280px,calc(100% - 80px));min-height:98px;margin:auto;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;gap:12px;align-items:center;font-size:24px;letter-spacing:-1px;font-weight:600}.brand-mark{font-family:Georgia,serif;background:var(--green);color:white;font-size:35px;line-height:46px;width:47px;height:47px;text-align:center;border-radius:13px}.brand-mark span{color:var(--lime)}.brand-sub{display:block;font-size:10px;letter-spacing:1.4px;text-transform:uppercase;font-weight:400;margin-top:5px}.header-label{font-size:10px;color:var(--muted);letter-spacing:2px}.hero{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;padding-top:80px;padding-bottom:75px;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:600;display:inline-flex;align-items:center;gap:8px}.hero .eyebrow{margin-bottom:25px}.dot{width:7px;height:7px;background:#76975c;border-radius:50%}.lead{color:var(--muted);font-size:16px;line-height:1.8;max-width:490px}.hero-copy .lead{margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:18px}.hero-actions .subtle{max-width:160px;line-height:1.6;font-size:11px}.button{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:49px;padding:14px 23px;border:1px solid transparent;border-radius:8px;font-size:13px;font-weight:600;line-height:1.2;transition:background .15s}.primary{background:var(--green);color:#fff}.primary:hover{background:#163a30}.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.secondary:hover{background:#ebede3}.button span{font-size:19px;font-weight:400}.subtle{color:var(--muted);font-size:12px}.exam-card{background:#ebefdf;border:1px solid #d9e1cd;border-radius:var(--radius);padding:28px 32px;position:relative;overflow:hidden}.card-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.exam-card .eyebrow{margin:0;font-size:9px;letter-spacing:1.4px}.tag{font-size:11px;padding:7px 10px;border-radius:5px;background:#f9faf3;color:#52704b}.big-number{font-family:Georgia,serif;font-size:106px;line-height:1;letter-spacing:-5px;padding:36px 0 24px}.big-number>span{font:14px Arial,sans-serif;letter-spacing:0;margin-left:15px;color:#66725d}.rule-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:24px}.rule-grid>div+div{border-left:1px solid #ced7bf;padding-left:25px}.rule-grid strong{font-weight:500;font-size:28px;letter-spacing:-1px;display:block}.rule-grid strong span{font-size:16px;color:#6b795e}.rule-grid>div>span{font-size:11px;color:#728065;display:block;margin-top:6px}.card-bottom{border-top:1px solid #d1dbc4;padding-top:18px;display:flex;align-items:center;gap:9px;font-size:11px;color:#65775b}.check-circle{border:1px solid #7f956d;border-radius:50%;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;font-size:10px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.section-heading .eyebrow{margin-bottom:12px}.bank-count{color:var(--muted);font-size:11px;white-space:nowrap}.subjects-section{padding-bottom:50px}.subject-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.subject-card{background:var(--white);border:1px solid var(--line);border-radius:12px;padding:23px 22px 0;display:flex;flex-direction:column}.subject-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.subject-number{font-size:10px;color:#8f9989;letter-spacing:1px}.subject-icon{width:32px;height:32px;background:#f1f3e9;border:1px solid #e5e9d9;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:19px;color:#6a8056}.subject-card h3{min-height:48px;font-size:17px;max-width:190px;margin-bottom:8px}.subject-card p{font-size:11px;color:var(--muted);margin-bottom:21px}.subject-card p strong{color:var(--ink);font-size:13px;font-weight:500}.subject-bottom{border-top:1px solid #eef0e8;margin-top:auto;padding:15px 0;color:#8c9584;font-size:10px}.how-section{border-top:1px solid var(--line);padding:35px 0 45px}.how-section>.eyebrow{margin-bottom:26px}.how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.step{font-family:Georgia,serif;font-size:22px;color:#829170;display:block;margin-bottom:13px}.how-grid h3{font-size:15px;margin-bottom:8px}.how-grid p{font-size:12px;color:var(--muted);max-width:310px}.site-footer{border-top:1px solid var(--line);padding:25px 30px;text-align:center;font-size:10px;color:#92998b;line-height:1.6}.history-section{padding:10px 0 60px}.history-list{border:1px solid var(--line);border-radius:12px;background:white;overflow:hidden}.history-row{padding:18px 22px;display:grid;grid-template-columns:2fr 1fr 1.3fr 1fr;gap:18px;align-items:center;font-size:12px}.history-row+.history-row{border-top:1px solid var(--line)}.history-row:hover{background:#f5f7ee}.badge{display:inline-flex;padding:6px 9px;border-radius:5px;font-size:10px;font-weight:600;width:fit-content;white-space:nowrap}.success{background:#e8f0da;color:#3e6238}.failure{background:var(--red-light);color:var(--red)}.history-link{text-align:right;font-size:11px}.exam-page{padding-top:38px;padding-bottom:65px}.loading{padding:80px;text-align:center}.exam-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}.exam-heading .eyebrow{margin-bottom:10px}.exam-heading h1{font-size:38px;letter-spacing:-1.2px;margin-bottom:0}.timer{background:#ebefdf;border:1px solid #d9e1cd;border-radius:10px;min-width:165px;padding:13px 20px;text-align:center;font-variant-numeric:tabular-nums}.timer>span{display:block;font-size:8px;letter-spacing:1.4px;margin-bottom:6px}.timer strong{font-size:26px;font-weight:500}.timer.urgent{background:var(--red-light);border-color:#e5baaa;color:var(--red)}.exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:24px;align-items:start}.question-panel{background:white;border:1px solid var(--line);border-radius:14px;padding:30px;min-height:520px;display:flex;flex-direction:column}.question-meta{display:flex;justify-content:space-between;align-items:center;gap:15px}.question-meta .tag{background:#f0f3e7;font-size:10px}.question-meta .subtle{font-size:10px;white-space:nowrap}.progress-track{height:4px;background:#edf0e6;overflow:hidden;border-radius:4px}.progress-track>div{height:100%;background:#99b975;transition:width .2s}.question-panel>.progress-track{margin:20px 0 30px}.question-fieldset{padding:0;margin:0;border:0;min-width:0;flex:1}.question-fieldset legend{font-size:21px;font-weight:500;line-height:1.6;margin-bottom:24px;width:100%}.options{display:flex;flex-direction:column;gap:11px}.option{display:flex;align-items:center;gap:12px;border:1px solid #e2e5da;border-radius:8px;padding:16px;cursor:pointer;position:relative}.option:hover{background:#f7f9f2;border-color:#afbf9c}.option:has(input:checked){background:#eff4e3;border-color:#74945b}.option:has(input:focus-visible){outline:3px solid #9bbb54;outline-offset:2px}.option input{appearance:none;width:17px;height:17px;border:1px solid #c2cbb6;border-radius:50%;margin:0;flex-shrink:0}.option input:checked{border:5px solid #5b7b48}.option input:disabled{cursor:default}.option-letter{font-size:11px;font-weight:600;color:#738268;flex-shrink:0}.option-text{font-size:13px;line-height:1.7}.question-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:21px 0}.text-button{border:none;background:none;font-size:11px;color:#6c7f55;padding:7px 0;text-align:left}.text-button[aria-pressed=true]{color:#95652c;font-weight:600}.question-navigation{border-top:1px solid var(--line);padding-top:21px;display:flex;justify-content:space-between;align-items:center;gap:10px}.question-navigation .button{font-size:11px;padding:12px 17px;min-height:42px;gap:6px}.question-navigation [role=status]{font-size:9px;color:#839570;text-align:center}.question-navigation [role=status].pending{color:#9c7539}.navigator-panel{border:1px solid var(--line);border-radius:14px;padding:24px;background:#f0f2e8}.navigator-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.navigator-heading h2{font-size:16px;letter-spacing:-.4px}.navigator-heading strong{font-size:12px;font-weight:500;color:#5e7752}.navigator-panel>.subtle{font-size:10px;margin:10px 0 18px}.question-map{display:grid;grid-template-columns:repeat(10,1fr);gap:5px}.map-button{display:flex;align-items:center;justify-content:center;padding:0;aspect-ratio:1;border:1px solid #dae0cd;background:#fcfdf8;color:#78846b;border-radius:4px;font-size:9px;min-width:0}.map-button.answered{background:#dce8c3;border-color:#c3d5a5;color:#426338}.map-button.marked{box-shadow:inset 0 -3px #c59c56}.map-button.current{outline:2px solid var(--green);outline-offset:1px;color:var(--green);font-weight:bold}.map-legend{display:flex;gap:14px;margin:18px 0 22px;font-size:9px;color:#7f8973}.map-legend>span{display:flex;align-items:center;gap:5px}.map-legend i{width:9px;height:9px;border-radius:2px;display:inline-block}.legend-answered{background:#c5d9a6}.legend-marked{background:#dbbd85}.full-width{width:100%}.small-note{font-size:9px;color:#8b947f;text-align:center;margin:12px 0 0}.notice{background:#edf0e2;border:1px solid var(--line);padding:15px 20px;border-radius:9px;font-size:13px;line-height:1.6;margin-bottom:20px}.notice.error{background:var(--red-light);border-color:#e5c7b8;color:var(--red);display:flex;gap:20px;align-items:center;justify-content:space-between}.notice.error .text-button{color:var(--red);white-space:nowrap;text-decoration:underline}.result-heading{padding:20px 0 15px}.result-heading .eyebrow{margin-bottom:15px}.result-heading h1{font-size:44px;max-width:720px;letter-spacing:-1.6px}.result-heading .lead{max-width:none;font-size:14px}.result-overview{display:grid;grid-template-columns:1fr 1.6fr;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:white}.score-card{background:#e7eddb;padding:30px;display:flex;flex-direction:column;gap:14px}.score-card>span:first-child{font-size:9px;letter-spacing:1.5px}.score-card strong{font-family:Georgia,serif;font-size:56px;font-weight:400;letter-spacing:-2px}.score-card>span:last-child{font-size:11px;color:#718165}.score-card.failed{background:#f3eade}.result-details{padding:35px;display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-content:center}.result-details strong{display:block;font-size:27px;font-weight:400;margin-bottom:10px}.result-details span{font-size:11px;color:var(--muted)}.result-details p{grid-column:1/-1;margin:0;font-size:10px;color:var(--muted)}.theme-results{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:18px}.theme-result{border:1px solid var(--line);border-radius:10px;background:white;padding:20px}.theme-result h3{font-size:12px;min-height:34px;margin-bottom:10px}.theme-result strong{font-size:20px;font-weight:500;display:block;margin-bottom:15px}.correction-heading{margin-top:55px}.correction-toolbar{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:20px}.filter-buttons{display:flex;gap:5px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:transparent;color:var(--muted);padding:9px 13px;border-radius:6px;font-size:11px}.filter.active{background:#e8eddc;color:var(--ink);border-color:#bccaab}.theme-filter{font-size:11px;color:var(--muted);display:flex;gap:8px;align-items:center}.theme-filter select{background:white;border:1px solid var(--line);border-radius:6px;padding:9px;color:var(--ink);font-size:11px;max-width:240px}.correction-card{border:1px solid var(--line);border-radius:12px;background:white;padding:26px;margin-bottom:18px}.correction-meta{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:17px}.correction-meta .subtle{font-size:10px}.correction-card h3{font-size:17px;line-height:1.6;margin-bottom:18px}.correction-option{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e9ecdf;border-radius:6px;margin-top:8px}.correction-option.right-answer{background:#eef4e5;border-color:#bccfa5}.correction-option.wrong-answer{background:#fcf0eb;border-color:#e5c7b8}.correction-option .option-text{font-size:12px;flex:1}.answer-label{font-size:9px;max-width:95px;line-height:1.5;color:#4f723d}.wrong-answer .answer-label{color:var(--red)}.blank-note{font-size:11px;color:var(--red);margin:15px 0 0}dialog{border:1px solid var(--line);border-radius:15px;padding:32px;max-width:490px;width:calc(100% - 32px);color:var(--ink);background:var(--paper)}dialog::backdrop{background:#183a3466;backdrop-filter:blur(3px)}dialog h2{margin:15px 0;font-family:Georgia,serif;font-size:30px}dialog p{font-size:13px;color:var(--muted)}.dialog-actions{display:flex;gap:12px;justify-content:end;margin-top:25px}.dialog-actions .button{font-size:11px;gap:10px}.error-page{padding:90px 0;min-height:65vh}.error-page h1{font-size:46px;margin-top:20px}
@media(min-width:1400px){.hero{padding-top:95px;padding-bottom:90px}}@media(max-width:1050px){.hero{gap:35px}.hero-actions{flex-wrap:wrap}.hero-actions .subtle{max-width:none}.exam-layout{grid-template-columns:minmax(0,1fr) 270px;gap:17px}.navigator-panel{padding:19px}.question-panel{padding:25px}.question-map{gap:4px}.subject-card{padding:20px 17px 0}.subject-card h3{font-size:15px}}
@media(max-width:800px){.page-width,.header-inner{width:calc(100% - 40px)}.header-inner{min-height:80px}.header-label{display:none}.hero{padding-top:45px;padding-bottom:45px;grid-template-columns:1fr 1fr;gap:25px}h1{font-size:42px;letter-spacing:-1.5px}.lead{font-size:14px}.exam-card{padding:22px}.exam-card .eyebrow{font-size:8px;letter-spacing:.8px}.big-number{font-size:84px;padding-top:30px}.rule-grid{gap:12px}.rule-grid>div+div{padding-left:15px}.hero .eyebrow{font-size:9px;letter-spacing:1px}.subject-grid{grid-template-columns:repeat(2,1fr)}.subject-card h3{min-height:0;max-width:none}.subject-top{margin-bottom:17px}h2{font-size:23px}.how-grid{gap:25px}.exam-layout{grid-template-columns:1fr}.navigator-panel{order:2}.question-map{grid-template-columns:repeat(20,1fr);gap:7px}.map-button{font-size:11px}.navigator-panel>.subtle{margin-bottom:15px}.navigator-panel .full-width{width:auto;min-width:200px}.small-note{text-align:left}.theme-results{grid-template-columns:repeat(2,1fr)}.theme-result h3{min-height:0}.correction-toolbar{align-items:start;flex-direction:column}.theme-filter select{max-width:none}.history-row{grid-template-columns:1.5fr .7fr 1fr;gap:10px}.history-link{display:none}.result-heading h1{font-size:37px}}
@media(max-width:550px){.hero{grid-template-columns:1fr;padding-top:35px}.hero h1{font-size:45px}.hero-copy .lead{max-width:360px}.hero-actions{gap:15px;flex-wrap:nowrap}.hero-actions .subtle{font-size:10px;max-width:120px}.exam-card{margin-top:10px;padding:24px}.big-number{font-size:85px;padding:25px 0 20px}.rule-grid strong{font-size:27px}.card-bottom{font-size:10px}.section-heading{align-items:start;flex-direction:column;gap:12px}.section-heading h2{max-width:330px;line-height:1.3}.subject-grid{gap:10px}.subject-card{padding:17px 15px 0}.subject-card h3{font-size:14px;min-height:39px}.subject-card p{font-size:10px}.subject-bottom{font-size:9px}.how-grid{grid-template-columns:1fr;gap:20px}.how-grid>div{display:grid;grid-template-columns:30px 1fr;column-gap:10px}.step{grid-row:1/3}.how-grid h3{margin-bottom:5px}.how-grid p{max-width:none;margin-bottom:0}.site-footer{font-size:9px}.exam-page{padding-top:25px}.exam-heading{gap:12px;align-items:center}.exam-heading h1{font-size:25px;letter-spacing:-.8px}.exam-heading .eyebrow{font-size:8px;letter-spacing:1px}.timer{min-width:115px;padding:11px}.timer>span{font-size:7px;letter-spacing:.6px}.timer strong{font-size:22px}.question-panel{padding:20px;min-height:0}.question-meta{align-items:start}.question-meta .tag{max-width:60%;font-size:9px;line-height:1.4}.question-meta .subtle{font-size:9px;padding-top:7px}.question-fieldset legend{font-size:18px}.option{padding:13px 11px;gap:9px}.option-text{font-size:12px}.question-tools .text-button{font-size:10px}.question-navigation{flex-wrap:wrap}.question-navigation [role=status]{order:3;width:100%;padding-top:6px;font-size:10px}.question-map{grid-template-columns:repeat(10,1fr);gap:6px}.navigator-panel .full-width{width:100%}.small-note{text-align:center}.result-heading h1{font-size:33px}.result-overview{grid-template-columns:1fr}.score-card{padding:25px;gap:12px}.score-card strong{font-size:55px}.result-details{padding:25px 20px;gap:14px}.result-details strong{font-size:24px}.result-details span{font-size:10px}.theme-results{gap:10px}.theme-result{padding:16px}.theme-result h3{min-height:32px;font-size:11px}.theme-filter{width:100%}.theme-filter select{flex:1;min-width:0}.correction-heading{margin-top:40px}.correction-card{padding:20px 16px}.correction-meta .subtle{font-size:9px;max-width:70%;line-height:1.5}.correction-card h3{font-size:15px}.correction-option{gap:10px;padding:12px 10px;flex-wrap:wrap}.correction-option .option-text{font-size:11px}.answer-label{margin-left:20px;max-width:none;width:100%;font-size:10px}.history-row{padding:16px 13px;font-size:10px;gap:10px}.history-row .badge{font-size:8px}.notice.error{align-items:start;flex-direction:column;gap:5px;font-size:12px}.loading{padding:60px 10px}dialog{padding:25px}.dialog-actions{flex-direction:column}.dialog-actions .button{width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
@media print{.site-header,.site-footer,.correction-toolbar,.correction-heading .button{display:none}.page-width{width:100%}.correction-card{break-inside:avoid}.result-overview,.theme-results{break-inside:avoid}body{background:white}}

.start-rules{border-top:1px solid var(--line);padding-top:20px;margin:0 0 25px}.start-rules h2{font-size:14px;letter-spacing:0;margin-bottom:12px;font-weight:600}.start-rules ul{margin:0;padding-left:17px;color:var(--muted)}.start-rules li{font-size:12px;line-height:1.7;padding-left:4px;margin-bottom:8px}.start-rules strong{color:var(--ink);font-weight:600}@media(max-width:550px){.start-rules li{font-size:11px}.hero{padding-top:30px}.hero h1{font-size:40px}}

@media(max-width:360px){.question-map{grid-template-columns:repeat(8,1fr)}.hero-actions{flex-wrap:wrap}.hero-actions .subtle{max-width:none}.exam-heading h1{font-size:23px}}

.history-item{display:flex;align-items:center}.history-item+.history-item{border-top:1px solid var(--line)}.history-item .history-row{flex:1;min-width:0}.history-delete{color:var(--red);font-size:11px;padding:16px 20px;text-decoration:underline;text-underline-offset:3px}.history-delete:hover{background:var(--red-light)}.danger{background:var(--red);color:white}.danger:hover{background:#893829}.delete-page{padding:65px 0 90px;min-height:65vh}.delete-card{max-width:620px;background:white;border:1px solid var(--line);border-radius:14px;padding:32px}.delete-card h1{font-size:38px;letter-spacing:-1px;margin-top:18px}.delete-card p{color:var(--muted);font-size:14px}.delete-summary{padding:15px 18px;background:var(--paper);border-radius:8px;margin:20px 0}.delete-summary strong{color:var(--ink)}.delete-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}@media(max-width:550px){.history-item{flex-wrap:wrap}.history-item .history-row{flex-basis:100%}.history-delete{margin:0 10px 8px;padding:10px}.delete-page{padding-top:35px}.delete-card{padding:24px}.delete-card h1{font-size:31px}.delete-actions .button{width:100%}}

.password-label{display:block;font-size:12px;font-weight:600;margin-bottom:9px}.password-input{width:100%;max-width:360px;border:1px solid var(--line);border-radius:8px;padding:13px;background:white;color:var(--ink)}.password-input[aria-invalid=true]{border-color:var(--red)}.delete-password-note{margin-top:22px}
