:root{--ink: #20232d;--ink-soft: #59606c;--paper: #f7f4ed;--paper-deep: #eee9df;--white: #fffdf8;--line: #20232d;--lavender: #d9d2ef;--lavender-deep: #aa9ccf;--mint: #cde5d8;--mint-deep: #78a58e;--peach: #f0d2c6;--peach-deep: #c27f68;--blue: #caddea;--blue-deep: #7296ae;--yellow: #e9e2b8;--danger: #9f4b3c;--success: #2e6d50;--shadow: 5px 5px 0 var(--ink);--header-height: 64px}*{box-sizing:border-box;border-radius:0!important}html{min-width:320px;overflow-y:scroll;scrollbar-gutter:stable;scroll-behavior:smooth;background:var(--paper)}body{min-height:100vh;margin:0;overflow-x:hidden;color:var(--ink);background:linear-gradient(90deg,rgba(32,35,45,.032) 1px,transparent 1px),linear-gradient(rgba(32,35,45,.032) 1px,transparent 1px),var(--paper);background-size:32px 32px;font-family:Wanted Sans,Noto Sans KR,system-ui,sans-serif;font-weight:500;line-height:1.55;text-rendering:optimizeLegibility}button,input,select,textarea{color:inherit;font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #6d5caa;outline-offset:3px}::selection{color:var(--ink);background:var(--yellow)}h1,h2,h3,p{margin-top:0}.eyebrow{margin-bottom:8px;color:var(--ink-soft);font-size:.73rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.primary-button,.secondary-button,.danger-button{min-height:40px;border:2px solid var(--line);padding:8px 14px;font-weight:750;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease}.primary-button{background:var(--ink);color:var(--white);box-shadow:4px 4px 0 var(--lavender-deep)}.secondary-button{background:var(--white);box-shadow:3px 3px 0 var(--ink)}.danger-button{background:var(--peach);box-shadow:3px 3px 0 var(--danger)}.primary-button:hover:not(:disabled),.secondary-button:hover:not(:disabled),.danger-button:hover:not(:disabled){transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.full-button{width:100%}.text-button{border:0;border-bottom:1px solid currentColor;padding:2px 0;background:transparent;font-weight:720}.loading-screen{min-height:100dvh;display:grid;place-content:center;justify-items:center;padding:30px;background:var(--lavender)}.loading-mark{border:3px solid var(--ink);padding:15px 22px 11px;background:var(--white);box-shadow:var(--shadow);font-size:clamp(2rem,9vw,5rem);font-weight:900;letter-spacing:-.07em}.loading-screen p{margin:30px 0 12px;font-weight:700}.loading-line{width:190px;height:6px;overflow:hidden;border:1px solid var(--ink);background:var(--white)}.loading-line:after{content:"";display:block;width:45%;height:100%;background:var(--ink);animation:loading-slide 1s ease-in-out infinite alternate}@keyframes loading-slide{0%{transform:translate(0)}to{transform:translate(123%)}}.auth-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(380px,.95fr)}.auth-intro,.auth-panel{min-height:100dvh;display:flex;flex-direction:column;justify-content:center}.auth-intro{position:relative;overflow:hidden;border-right:3px solid var(--ink);padding:clamp(32px,5vw,80px);background:linear-gradient(0deg,transparent 49%,rgba(32,35,45,.08) 50%,transparent 51%),linear-gradient(90deg,transparent 49%,rgba(32,35,45,.08) 50%,transparent 51%),var(--lavender);background-size:96px 96px}.auth-intro:after{content:"SQL";position:absolute;right:-.06em;bottom:-.24em;color:#20232d12;font-size:min(35vw,430px);font-weight:900;letter-spacing:-.12em;line-height:1;pointer-events:none}.auth-intro>*{position:relative;z-index:1}.auth-intro h1{max-width:760px;margin-bottom:22px;font-size:clamp(2.6rem,5vw,5.4rem);font-weight:850;letter-spacing:-.065em;line-height:.98}.auth-intro>p:not(.eyebrow){max-width:600px;margin-bottom:30px;font-size:clamp(.95rem,1.4vw,1.15rem)}.auth-stat-row{width:fit-content;display:flex;border:2px solid var(--ink);background:var(--white);box-shadow:var(--shadow)}.auth-stat-row span{display:flex;min-width:110px;flex-direction:column;padding:14px 18px;border-right:1px solid var(--ink);font-size:.85rem}.auth-stat-row span:last-child{border-right:0}.auth-stat-row strong{font-size:1.45rem;line-height:1.1}.auth-panel{padding:clamp(26px,4.5vw,68px);background:var(--paper)}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;border:2px solid var(--ink);border-bottom:0}.auth-tabs button{border:0;border-right:2px solid var(--ink);padding:13px;background:var(--paper-deep);font-weight:750}.auth-tabs button:last-child{border-right:0}.auth-tabs button.is-active{background:var(--ink);color:var(--white)}.auth-form{display:grid;gap:16px;border:2px solid var(--ink);padding:clamp(20px,3vw,36px);background:var(--white);box-shadow:7px 7px 0 var(--mint-deep)}.auth-form h2{margin-bottom:0;font-size:clamp(1.65rem,3vw,2.5rem);letter-spacing:-.04em}.auth-form label{display:grid;gap:8px;font-size:.9rem;font-weight:720}.auth-form input,.count-input input{width:100%;border:2px solid var(--ink);padding:10px 12px;background:var(--paper);outline:0}.auth-form input:focus,.count-input input:focus{background:var(--white);box-shadow:3px 3px 0 var(--lavender-deep)}.form-error{margin:0;border-left:5px solid var(--danger);padding:10px 12px;background:#f7e3dc;color:#7d3227;font-weight:700}.form-help{margin:-6px 0 0;color:var(--ink-soft);font-size:.82rem}.auth-submit{margin-top:5px}.app-shell{min-height:100dvh}.app-header{position:sticky;z-index:50;top:0;height:var(--header-height);display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(210px,1fr);align-items:stretch;border-bottom:2px solid var(--ink);background:#f7f4edf5;backdrop-filter:blur(12px)}.brand{width:fit-content;display:flex;align-items:baseline;gap:10px;border:0;border-right:2px solid var(--ink);padding:0 18px;background:var(--lavender)}.brand span{font-size:1.25rem;font-weight:900;letter-spacing:-.06em}.brand small{font-size:.62rem;font-weight:800;letter-spacing:.12em}.app-header nav{display:flex;align-items:stretch}.app-header nav button{min-width:86px;border:0;border-right:1px solid var(--ink);padding:0 14px;background:transparent;font-weight:720}.app-header nav button:first-child{border-left:1px solid var(--ink)}.app-header nav button.is-current{background:var(--ink);color:var(--white)}.nav-count{display:inline-grid;min-width:20px;height:20px;place-items:center;margin-left:4px;border:1px solid currentColor;padding:0 4px;font-size:.7rem}.account-area{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:0 18px}.save-indicator{border:0;padding:5px 7px;background:transparent;color:var(--ink-soft);font-size:.72rem;font-weight:700}.save-indicator:before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;background:var(--mint-deep)}.save-saving:before{background:var(--blue-deep);animation:save-pulse .8s ease-in-out infinite alternate}.save-error{color:var(--danger)}.save-error:before{background:var(--danger)}@keyframes save-pulse{0%{opacity:.35}to{opacity:1}}.username{max-width:130px;overflow:hidden;font-size:.85rem;font-weight:760;text-overflow:ellipsis;white-space:nowrap}.logout-button{border:1px solid var(--ink);padding:6px 9px;background:var(--white);font-size:.72rem;font-weight:700}.page-shell{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:36px 0 76px}.home-hero{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);align-items:end;gap:32px;border-bottom:3px solid var(--ink);padding:16px 0 32px}.home-hero h1{margin:0;font-size:clamp(2.7rem,6vw,5.8rem);font-weight:870;letter-spacing:-.075em;line-height:.92}.hero-copy{margin-bottom:5px;border-left:6px solid var(--lavender-deep);padding:4px 0 4px 18px;color:var(--ink-soft);font-size:.92rem;word-break:keep-all}.resume-banner{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:26px;border:2px solid var(--ink);padding:18px 20px;background:var(--yellow);box-shadow:var(--shadow)}.resume-banner h2,.resume-banner p{margin-bottom:0}.resume-banner h2{font-size:1.3rem}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:30px 0}.metric-card{min-height:132px;display:flex;flex-direction:column;border:2px solid var(--ink);padding:16px;transition:transform .16s ease}.metric-card:hover{transform:translateY(-3px)}.metric-card>span{font-size:.82rem;font-weight:720}.metric-card>strong{margin:auto 0 4px;font-size:clamp(2rem,3.2vw,3.2rem);font-weight:850;letter-spacing:-.06em;line-height:1}.metric-card small{color:var(--ink-soft)}.tone-lavender{background:var(--lavender)}.tone-mint{background:var(--mint)}.tone-peach{background:var(--peach)}.tone-blue{background:var(--blue)}.home-main-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:16px}.random-panel,.quick-panel{display:flex;flex-direction:column;gap:18px;border:2px solid var(--ink);padding:clamp(20px,2.6vw,30px);background:var(--white)}.random-panel{box-shadow:6px 6px 0 var(--blue-deep)}.quick-panel{background:var(--mint)}.random-panel h2,.quick-panel h2,.section-heading h2,.page-intro h1{margin-bottom:8px;font-size:clamp(1.7rem,3vw,2.65rem);font-weight:820;letter-spacing:-.055em;line-height:1.05}.quick-panel h2{white-space:nowrap}.random-panel p:not(.eyebrow),.quick-panel p:not(.eyebrow){max-width:620px;margin-bottom:0;color:var(--ink-soft);font-size:.92rem;word-break:keep-all}.count-presets{display:grid;grid-template-columns:repeat(5,1fr);border:2px solid var(--ink)}.count-presets button{border:0;border-right:1px solid var(--ink);padding:10px 5px;background:var(--paper);font-weight:750}.count-presets button:last-child{border-right:0}.count-presets button.is-selected{background:var(--lavender);box-shadow:inset 0 -4px 0 var(--lavender-deep)}.count-input{display:grid;grid-template-columns:auto minmax(130px,210px);align-items:center;gap:20px;font-weight:720}.count-input span{display:flex;align-items:center;gap:10px;white-space:nowrap}.count-input input{padding:9px 12px;text-align:right}.toggle-row{position:relative;display:grid;grid-template-columns:1fr 48px 28px;align-items:center;gap:10px;border:2px solid var(--ink);padding:11px 12px;background:var(--white);cursor:pointer;font-size:.86rem;font-weight:720}.toggle-row input{position:absolute;width:1px;height:1px;opacity:0}.toggle-row i{position:relative;width:48px;height:24px;border:2px solid var(--ink);background:var(--paper-deep)}.toggle-row i b{position:absolute;top:2px;left:2px;width:16px;height:16px;background:var(--ink);transition:transform .16s ease}.toggle-row input:checked+i{background:var(--mint)}.toggle-row input:checked+i b{transform:translate(24px)}.toggle-row em{font-size:.7rem;font-style:normal;font-weight:850}.round-section,.growth-section,.summary-review{margin-top:52px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:18px;border-bottom:2px solid var(--ink);padding-bottom:13px}.section-heading h2,.section-heading p{margin-bottom:0}.section-heading>p{color:var(--ink-soft);font-size:.88rem}.round-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.round-card{min-height:160px;display:grid;grid-template-columns:1fr auto;align-content:space-between;border:2px solid var(--ink);padding:15px;background:var(--white);text-align:left;transition:transform .14s ease,box-shadow .14s ease,background-color .14s ease}.round-card:nth-child(4n+1){box-shadow:4px 4px 0 var(--lavender-deep)}.round-card:nth-child(4n+2){box-shadow:4px 4px 0 var(--mint-deep)}.round-card:nth-child(4n+3){box-shadow:4px 4px 0 var(--peach-deep)}.round-card:nth-child(4n+4){box-shadow:4px 4px 0 var(--blue-deep)}.round-card:hover{transform:translate(2px,2px);background:#fff;box-shadow:1px 1px 0 var(--ink)}.round-number{font-size:3.1rem;font-weight:880;letter-spacing:-.08em;line-height:.9}.round-date{color:var(--ink-soft);font-size:.8rem}.round-progress{grid-column:1 / -1;height:7px;display:block;margin-top:20px;border:1px solid var(--ink);background:var(--paper-deep)}.round-progress i{display:block;height:100%;background:var(--ink);transition:width .22s ease}.round-meta{grid-column:1 / -1;display:flex;justify-content:space-between;gap:10px;margin-top:10px;font-size:.78rem}.growth-chart{min-height:270px;display:grid;grid-template-columns:repeat(auto-fit,minmax(58px,1fr));align-items:end;gap:10px;border:2px solid var(--ink);padding:28px 24px 18px;background:var(--white)}.growth-column{min-width:0;display:grid;grid-template-rows:24px 170px 34px;gap:7px;text-align:center}.growth-column>strong{font-size:.78rem}.growth-track{position:relative;display:flex;align-items:end;border-bottom:2px solid var(--ink);background:repeating-linear-gradient(to top,transparent 0 39px,rgba(32,35,45,.08) 40px)}.growth-track i{width:100%;min-height:5px;border:1px solid var(--ink);transition:height .3s ease}.bar-tone-0{background:var(--lavender)}.bar-tone-1{background:var(--mint)}.bar-tone-2{background:var(--peach)}.bar-tone-3{background:var(--blue)}.growth-column>span{overflow:hidden;font-size:.68rem;line-height:1.2;text-overflow:ellipsis}.chart-empty,.empty-panel{border:2px solid var(--ink);padding:42px;background:var(--white);color:var(--ink-soft);text-align:center}.session-page{min-height:calc(100dvh - var(--header-height))}.session-sticky-bar{position:sticky;z-index:40;top:var(--header-height);min-height:66px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:22px;border-bottom:2px solid var(--ink);padding:9px max(24px,calc((100% - 1000px)/2));background:#d9d2eff7;backdrop-filter:blur(10px)}.session-identity{display:flex;align-items:baseline;gap:14px}.session-identity span{font-weight:760}.session-identity strong{font-size:.8rem}.session-score{display:flex;gap:20px;font-size:.82rem}.session-score strong{margin-left:4px;font-size:1.05rem}.stop-button{border:1px solid var(--ink);padding:7px 11px;background:var(--white);font-size:.75rem;font-weight:730}.session-progress{position:absolute;right:0;bottom:-2px;left:0;height:5px;background:#ffffffb3}.session-progress i{display:block;height:100%;background:var(--ink);transition:width .2s ease}.question-stage{width:min(980px,calc(100% - 40px));margin:0 auto;padding:42px 0 82px;animation:question-enter .22s ease both}@keyframes question-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.question-heading{margin-bottom:22px}.question-heading>div{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;border-bottom:2px solid var(--ink);padding-bottom:10px}.question-origin,.question-counter{color:var(--ink-soft);font-size:.78rem;font-weight:780;letter-spacing:.08em}.question-heading h1{margin-bottom:0;font-size:clamp(1.45rem,3vw,2.2rem);font-weight:790;letter-spacing:-.045em;line-height:1.25}.question-context{margin-bottom:22px;border:2px solid var(--ink);padding:clamp(15px,2.4vw,22px);background:var(--white);box-shadow:4px 4px 0 var(--blue)}.audit-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;margin:0 0 20px;border:2px solid var(--ink);padding:11px 14px;background:var(--yellow);font-size:.78rem}.audit-note strong{white-space:nowrap}.markdown-content{min-width:0;overflow-wrap:anywhere}.markdown-content>:first-child{margin-top:0}.markdown-content>:last-child{margin-bottom:0}.markdown-content p,.markdown-content li{line-height:1.7}.markdown-content blockquote{margin:18px 0;border-left:5px solid var(--lavender-deep);padding:12px 16px;background:#f1edf8}.markdown-content pre{max-width:100%;overflow:auto;border:2px solid var(--ink);padding:16px;background:#292b34;color:#f7f2e9;font:.88rem/1.65 SFMono-Regular,Consolas,monospace;tab-size:2}.markdown-content code:not(pre code){border:1px solid #c8c0b0;padding:1px 4px;background:#eee9df;font:.9em SFMono-Regular,Consolas,monospace}.markdown-content table{width:max-content;min-width:100%;border-collapse:collapse;font-size:.9rem}.markdown-content table,.markdown-content thead,.markdown-content tbody{max-width:100%}.markdown-content table{display:block;overflow-x:auto;border:2px solid var(--ink)}.markdown-content th,.markdown-content td{border:1px solid var(--ink);padding:9px 12px;text-align:left;white-space:normal}.markdown-content th{background:var(--lavender)}.markdown-content hr{border:0;border-top:2px solid var(--ink)}.mermaid-diagram{overflow-x:auto;border:2px solid var(--ink);padding:18px;background:var(--white);text-align:center}.mermaid-diagram svg{max-width:100%;height:auto}.option-list{display:grid;gap:9px}.option-button{position:relative;width:100%;min-height:60px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;border:2px solid var(--ink);padding:10px 14px 10px 9px;background:var(--white);text-align:left;transition:transform .12s ease,box-shadow .12s ease,background-color .12s ease}.option-button:not(:disabled):hover{transform:translate(4px);background:#fff;box-shadow:-4px 0 0 var(--lavender-deep)}.option-number{width:36px;height:36px;display:grid;place-items:center;border:2px solid var(--ink);background:var(--paper);font-size:.95rem;font-weight:820}.option-content{font-weight:610}.option-content p{margin:0}.option-button.is-correct{background:var(--mint);box-shadow:5px 5px 0 var(--success);opacity:1}.option-button.is-wrong{background:var(--peach);box-shadow:5px 5px 0 var(--danger);opacity:1}.option-button.is-muted{opacity:.55}.option-state{border:1px solid var(--ink);padding:4px 7px;background:var(--white);font-size:.68rem;font-weight:800}.feedback-panel{margin-top:22px;border:2px solid var(--ink);padding:clamp(17px,3vw,26px);animation:feedback-enter .18s ease both}@keyframes feedback-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.feedback-correct{background:var(--mint)}.feedback-wrong{background:var(--peach)}.feedback-title{display:flex;justify-content:space-between;align-items:start;gap:22px}.feedback-title span{font-size:.72rem;font-weight:850;letter-spacing:.13em}.feedback-title h2{margin:5px 0 3px;font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:-.04em}.feedback-title p{margin-bottom:0}.explanation-block{margin-top:22px;border-top:2px solid var(--ink);padding-top:19px}.explanation-block .markdown-content{border:1px solid var(--ink);padding:clamp(18px,3vw,28px);background:var(--white)}.question-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:22px;border-top:2px solid var(--ink);padding-top:16px}.question-footer .toggle-row{min-width:min(380px,100%)}.next-button{min-width:220px;display:flex;justify-content:space-between;gap:20px}.next-button span,.keyboard-hint{color:#bfc2ca;font-size:.7rem}.keyboard-hint{margin:0;color:var(--ink-soft)}.list-page{width:min(1100px,calc(100% - 48px))}.page-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:26px;border-bottom:3px solid var(--ink);padding:12px 0 24px}.page-intro h1{margin-bottom:8px;font-size:clamp(2.5rem,5vw,4.2rem)}.page-intro p:not(.eyebrow){max-width:680px;margin-bottom:0;color:var(--ink-soft)}.filter-tabs{display:grid;grid-template-columns:repeat(3,1fr);margin-bottom:18px;border:2px solid var(--ink)}.filter-tabs button{border:0;border-right:1px solid var(--ink);padding:11px;background:var(--white);font-weight:720}.filter-tabs button:last-child{border-right:0}.filter-tabs button.is-active{background:var(--lavender)}.filter-tabs span{display:inline-block;min-width:23px;margin-left:5px;border:1px solid var(--ink);padding:1px 4px;background:var(--white);font-size:.7rem}.review-list,.history-list{display:grid;gap:12px}.review-card{border:2px solid var(--ink);background:var(--white)}.review-card[open]{box-shadow:5px 5px 0 var(--lavender-deep)}.review-card summary{position:relative;display:grid;grid-template-columns:130px minmax(0,1fr) auto 24px;align-items:center;gap:18px;padding:14px 16px;cursor:pointer;list-style:none}.review-card summary::-webkit-details-marker{display:none}.review-card summary:after{content:"+";font-size:1.4rem;font-weight:500;text-align:center}.review-card[open] summary:after{content:"\2212"}.review-index,.review-stat{color:var(--ink-soft);font-size:.76rem}.review-card summary>strong{font-size:1rem;line-height:1.4}.review-content{border-top:2px solid var(--ink);padding:clamp(20px,4vw,38px);background:var(--paper)}.review-options{display:grid;gap:7px;margin:24px 0;padding:0;list-style:none}.review-options li{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--ink);padding:10px;background:var(--white)}.review-options li>span{width:30px;height:30px;display:grid;place-items:center;border:1px solid var(--ink);font-weight:800}.review-options li.is-answer{border-width:2px;background:var(--mint)}.review-options li>strong{border:1px solid var(--ink);padding:3px 6px;background:var(--white);font-size:.68rem}.review-options .markdown-content p{margin:0}.review-explanation{border:2px solid var(--ink);padding:clamp(18px,3vw,28px);background:var(--white)}.pagination{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:30px}.pagination button{border:1px solid var(--ink);padding:8px 12px;background:var(--white);font-weight:700}.pagination span{font-size:.8rem;font-weight:750}.history-total{min-width:130px;border:2px solid var(--ink);padding:14px 18px;background:var(--lavender);box-shadow:var(--shadow);text-align:center}.history-total strong,.history-total span{display:block}.history-total strong{font-size:2.3rem;line-height:1}.history-total span{margin-top:4px;font-size:.75rem}.history-list{margin-top:34px}.history-card{display:grid;grid-template-columns:180px minmax(0,1fr) 110px minmax(180px,auto);align-items:center;gap:18px;border:2px solid var(--ink);padding:16px;background:var(--white)}.history-date{display:grid;gap:6px;color:var(--ink-soft);font-size:.74rem}.history-date strong{width:fit-content;border:1px solid var(--danger);padding:2px 5px;color:var(--danger);font-size:.65rem}.history-title h2{margin-bottom:3px;font-size:1.15rem;letter-spacing:-.02em}.history-title p{margin-bottom:0;color:var(--ink-soft);font-size:.75rem}.history-score{text-align:right}.history-score strong,.history-score span{display:block}.history-score strong{font-size:1.55rem;letter-spacing:-.04em}.history-score span{color:var(--ink-soft);font-size:.78rem}.history-actions{display:grid;justify-items:end;gap:8px}.history-actions .secondary-button{min-height:36px;padding:6px 12px}.history-actions .text-button{font-size:.72rem}.summary-page{width:min(1100px,calc(100% - 48px))}.summary-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:26px;border-bottom:3px solid var(--ink);padding:14px 0 30px}.summary-hero h1{max-width:760px;margin-bottom:12px;font-size:clamp(2.1rem,4.5vw,4rem);font-weight:850;letter-spacing:-.065em;line-height:1}.summary-hero>div>p:last-child{margin-bottom:0;color:var(--ink-soft)}.summary-score{min-width:210px;border:3px solid var(--ink);padding:19px;background:var(--lavender);box-shadow:7px 7px 0 var(--ink);text-align:right}.summary-score strong{display:block;font-size:clamp(3rem,5.5vw,5rem);font-weight:880;letter-spacing:-.08em;line-height:.9}.summary-score strong span{font-size:.45em}.summary-score p{margin:12px 0 0;font-size:.82rem;font-weight:720}.summary-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:30px 0 20px}.summary-metrics .metric-card{min-height:150px}.summary-metrics .metric-card>strong{font-size:clamp(1.8rem,3vw,3rem)}.summary-actions{display:flex;justify-content:flex-end;gap:12px}.modal-backdrop{position:fixed;z-index:100;inset:0;display:grid;place-items:center;padding:24px;background:#20232dad}.stop-dialog{width:min(520px,100%);border:3px solid var(--ink);padding:clamp(25px,5vw,44px);background:var(--white);box-shadow:9px 9px 0 var(--peach-deep);animation:dialog-enter .15s ease both}@keyframes dialog-enter{0%{transform:translateY(12px);opacity:0}to{transform:translateY(0);opacity:1}}.stop-dialog h2{margin-bottom:12px;font-size:clamp(1.7rem,4vw,2.6rem);letter-spacing:-.04em}.stop-dialog>p:not(.eyebrow){color:var(--ink-soft)}.stop-score{display:flex;justify-content:space-between;align-items:end;margin:25px 0;border-block:2px solid var(--ink);padding:18px 0}.stop-score strong{font-size:2.5rem;line-height:1}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.empty-state-page{min-height:calc(100dvh - var(--header-height));display:grid;place-items:center;padding:32px}.empty-state-page>div{width:min(620px,100%);border:3px solid var(--ink);padding:clamp(28px,6vw,60px);background:var(--white);box-shadow:8px 8px 0 var(--lavender-deep)}.empty-state-page h1{font-size:clamp(2rem,5vw,3.8rem);letter-spacing:-.05em;line-height:1.05}@media(max-width:1050px){.app-header{grid-template-columns:auto 1fr auto}.brand{padding-inline:16px}.brand small,.username{display:none}.app-header nav{justify-content:center}.account-area{padding-inline:12px}.home-hero{grid-template-columns:1fr;gap:28px}.hero-copy{max-width:650px}.metric-grid,.summary-metrics{grid-template-columns:repeat(2,1fr)}.round-grid{grid-template-columns:repeat(3,1fr)}.history-card{grid-template-columns:150px minmax(0,1fr) 90px}.history-actions{grid-column:2 / -1;display:flex;justify-content:flex-end}}@media(max-width:820px){:root{--header-height: 64px}.auth-shell{grid-template-columns:1fr}.auth-intro,.auth-panel{min-height:auto}.auth-intro{border-right:0;border-bottom:3px solid var(--ink);padding:54px 28px 62px}.auth-intro h1{max-width:650px;font-size:clamp(2.8rem,12vw,5.6rem)}.auth-panel{padding:42px 24px 70px}.home-main-grid{grid-template-columns:1fr}.quick-panel{min-height:auto}.round-grid{grid-template-columns:repeat(2,1fr)}.session-sticky-bar{grid-template-columns:1fr auto;gap:12px;padding-inline:18px}.session-score{grid-row:2;grid-column:1 / -1;justify-content:space-between}.stop-button{grid-column:2;grid-row:1}.review-card summary{grid-template-columns:1fr 24px;gap:7px 15px}.review-index,.review-card summary>strong,.review-stat{grid-column:1}.review-card summary:after{grid-column:2;grid-row:1 / 4}.summary-hero{grid-template-columns:1fr}.summary-score{min-width:0;text-align:left}}@media(max-width:640px){.app-header{grid-template-columns:64px 1fr auto}.brand{width:64px;justify-content:center;padding:0 6px}.brand span{font-size:1rem}.app-header nav button{min-width:0;flex:1;padding:0 8px;font-size:.78rem}.account-area{gap:5px;padding:0 6px}.save-indicator,.logout-button{width:34px;height:34px;overflow:hidden;padding:0;color:transparent;font-size:0}.save-indicator:before{width:9px;height:9px;margin:0}.logout-button:before{content:"\2197";color:var(--ink);font-size:1rem}.nav-count{display:none}.page-shell,.list-page,.summary-page{width:min(100% - 28px,1180px);padding-top:36px}.home-hero{padding-top:10px}.home-hero h1{font-size:clamp(2.5rem,12vw,4rem)}.resume-banner,.page-intro,.feedback-title,.question-footer{align-items:stretch;flex-direction:column}.metric-grid,.summary-metrics{grid-template-columns:1fr 1fr;gap:8px}.metric-card{min-height:132px;padding:15px}.metric-card>strong{font-size:2.25rem}.random-panel,.quick-panel{padding:22px}.count-presets{grid-template-columns:repeat(5,minmax(0,1fr))}.count-presets button{padding-inline:2px;font-size:.75rem}.count-input{grid-template-columns:1fr;gap:7px}.round-grid{gap:8px}.round-card{min-height:164px;padding:13px}.round-number{font-size:2.6rem}.round-date,.round-meta{font-size:.66rem}.section-heading{align-items:start;flex-direction:column;gap:10px}.growth-chart{overflow-x:auto;grid-template-columns:repeat(8,70px)}.session-sticky-bar{min-height:92px}.session-identity{display:grid;gap:0}.question-stage{width:min(100% - 24px,1020px);padding-top:38px}.question-heading h1{font-size:1.45rem}.question-context{padding:14px}.audit-note{grid-template-columns:1fr;gap:3px}.option-button{grid-template-columns:38px minmax(0,1fr);gap:10px;padding:10px}.option-number{width:36px;height:36px}.option-state{grid-column:2;width:fit-content}.question-footer .toggle-row,.next-button{min-width:0;width:100%}.filter-tabs{grid-template-columns:1fr}.filter-tabs button{border-right:0;border-bottom:1px solid var(--ink)}.filter-tabs button:last-child{border-bottom:0}.history-card{grid-template-columns:1fr auto;gap:10px 14px}.history-date,.history-title,.history-actions{grid-column:1 / -1}.history-score{grid-column:2;grid-row:1}.history-actions{align-items:stretch;flex-direction:column}.history-actions .secondary-button{width:100%}.summary-score{padding:20px}.summary-actions,.dialog-actions{align-items:stretch;flex-direction:column}.summary-actions>*,.dialog-actions>*{width:100%}.review-content{padding:16px}.review-options li{grid-template-columns:30px minmax(0,1fr)}.review-options li>strong{grid-column:2;width:fit-content}.auth-stat-row{width:100%}.auth-stat-row span{min-width:0;flex:1;padding:12px 9px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@font-face{font-family:Wanted Sans;src:url(/assets/fonts/WantedSansVariable.woff2) format("woff2");font-weight:100 1000;font-style:normal;font-display:swap}
