:root{--navy:#09182d;--blue:#2755d6;--ink:#192a43;--muted:#5a6980;--line:#dde5ee;--teal:#087e76}
*{box-sizing:border-box}body{margin:0;background:#f4f7fb;color:var(--ink);font:15px/1.55 Inter,Manrope,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #20b6bb;outline-offset:2px}.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}[hidden]{display:none!important}.nav{background:white;border-bottom:1px solid #dfe5ee;position:sticky;top:0;z-index:20}.nav-inner{max-width:1220px;margin:auto;padding:13px 21px;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{font-size:20px;letter-spacing:-.05em;font-weight:900;text-decoration:none;color:#111e33}.brand b{color:#0a968b}.nav-links{display:flex;align-items:center;gap:17px}.nav-links a{text-decoration:none;font-size:13px;font-weight:700;color:#4b5a74}.nav-links a:hover{color:#2755d6}.outer{max-width:1220px;margin:0 auto;padding:22px 22px 60px}.breadcrumbs{font-size:13px;color:#687892}.breadcrumbs a{color:var(--blue);text-decoration:none;font-weight:750}.intro{background:linear-gradient(117deg,#0b1831,#143b64);border-radius:20px;color:white;padding:32px 36px;margin:18px 0 20px;position:relative;overflow:hidden}.intro:after{content:"";position:absolute;right:-35px;top:-65px;width:255px;height:255px;border:1px solid #44dae53f;border-radius:50%;box-shadow:0 0 0 52px #44dae50c,0 0 0 100px #44dae508}.intro>*{position:relative;z-index:1}.eyebrow{font-size:11px;color:#86dedb;letter-spacing:.16em;font-weight:850}.intro h1{font-size:clamp(26px,4vw,41px);line-height:1.17;letter-spacing:-.05em;margin:9px 0 11px}.intro p{color:#cddded;font-size:14px;max-width:750px;margin:0}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.chips span{font-size:12px;border:1px solid #ffffff32;background:#ffffff1a;color:#fff;border-radius:999px;padding:7px 12px}.notice{border:1px solid #f5dda7;background:#fff8e9;border-radius:12px;color:#674c22;padding:14px 17px;font-size:13px;margin-bottom:22px}.setup-card,.question-card,.palette-card,.result-card{background:white;border:1px solid var(--line);border-radius:19px;box-shadow:0 9px 22px #18305007}.setup-card{padding:32px;max-width:780px;margin:18px auto 60px}.setup-card h2,.result-card h2{font-size:25px;letter-spacing:-.04em;margin:0 0 12px}.setup-card p{color:var(--muted);font-size:14px}.setup-actions{display:flex;flex-wrap:wrap;gap:11px;margin-top:25px}.btn{border:1px solid #cfdaeb;background:white;border-radius:12px;padding:11px 16px;color:#233653;font-weight:800;font-size:14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none}.btn:hover{background:#f2f6ff}.btn-primary{background:#2755d6;color:white;border-color:#2755d6}.btn-primary:hover{background:#1746c5;color:white}.btn-teal{background:#0a8177;border-color:#0a8177;color:white}.btn-teal:hover{background:#096c66;color:white}.btn-danger{color:#a54b3c}.exam-layout{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:16px;align-items:start}.question-card{min-width:0;padding:23px}.question-top{display:flex;align-items:start;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-bottom:15px;border-bottom:1px solid #e8edf4}.question-top h2{font-size:23px;margin:4px 0 0;letter-spacing:-.04em}.source-meta{font-size:12px;color:var(--muted);margin-top:5px}.question-tag{color:#0b7d77;background:#e5f5f1;border-radius:9px;padding:8px 11px;font-size:12px;font-weight:800}.diagram-controls{display:flex;justify-content:space-between;align-items:center;gap:9px;margin:17px 0 10px}.diagram-controls span{font-size:12px;color:var(--muted);font-weight:650}.zoom-actions{display:flex;gap:5px}.zoom-actions button{padding:6px 10px;background:#f2f5fb;border:1px solid #dae2ed;border-radius:7px;font-size:13px;font-weight:900}.visual-scroll{overflow:auto;border-radius:12px;border:1px solid #e2e7ee;background:#fafafa;max-height:72vh;scrollbar-color:#b4c5d7 transparent}.visual-scroll img{display:block;width:100%;height:auto;max-width:none;margin:0 auto}.visual-scroll img+img{border-top:1px solid #e3e8ed}.visual-scroll.zoom-125 img{width:125%}.visual-scroll.zoom-150 img{width:150%}.visual-scroll.zoom-200 img{width:200%}.image-error{display:none;background:#fff2f2;border-radius:8px;padding:12px;color:#a62a2a}.shared-note{background:#ebf2ff;border-left:3px solid #375fd2;color:#314873;border-radius:8px;padding:9px 12px;margin:10px 0;font-size:12px}.answer-area{border-top:1px solid #e7edf4;padding-top:21px;margin-top:18px}.answer-area>h3{margin:0 0 9px;font-size:18px}.answer-area>p{margin:0 0 13px;color:var(--muted);font-size:12px}.type-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:17px}.type-buttons label{font-size:12px;font-weight:750;cursor:pointer;border:1px solid #d7e1ee;border-radius:10px;padding:8px 11px;color:#53627b;display:inline-flex;align-items:center;gap:5px}.type-buttons label:has(input:checked){background:#e9f3ff;border-color:#7292db;color:#1a4da3}.answers-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.answers-list label{border:1px solid #d8e3f0;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:10px;padding:13px 10px;font-weight:850;cursor:pointer}.answers-list label:has(input:checked){background:#e4f7f2;border-color:#37aa99;color:#056b65}.answers-list input{accent-color:#087e76}.numeric{width:100%;max-width:370px;border:1px solid #c7d4e5;border-radius:10px;padding:13px 15px}.question-notes{display:block;width:100%;border:1px solid #cfdae9;border-radius:10px;min-height:75px;resize:vertical;padding:11px 13px;margin:12px 0;font-size:13px}.question-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:17px}.palette-card{padding:20px;position:sticky;top:82px}.time-row{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#e9f3f7;padding:12px 13px;border-radius:10px}.time-row span{font-size:12px;color:#576981;font-weight:700}.time-row strong{font-size:22px;font-variant-numeric:tabular-nums;color:#0b5868}.time-row.urgent{background:#ffe9e4}.time-row.urgent strong{color:#bf3126}.track{height:8px;background:#e7eef4;overflow:hidden;border-radius:20px;margin:15px 0 7px}.track span{display:block;height:100%;width:0;background:linear-gradient(90deg,#10897d,#2d6bdd);transition:width .2s}.progress-label{font-size:12px;color:#60718b}.palette-title{font-size:17px;margin:17px 0 9px}.palette{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.palette button{border:1px solid #d9e2ed;color:#52647d;border-radius:8px;background:white;font-weight:800;font-size:12px;min-height:40px;position:relative}.palette button.answered{background:#d9f1e9;color:#006658;border-color:#61baaa}.palette button.flagged:after{content:'★';position:absolute;right:0;top:-8px;color:#d88d12;font-size:14px}.palette button.active{box-shadow:0 0 0 2px #2755d6 inset;background:#eaf0ff}.legend{font-size:11px;color:#6e7890;display:grid;gap:5px;margin:15px 0}.legend span:before{content:'■';margin-right:5px;color:#0b8175}.legend span:nth-child(2):before{color:#bd8a1f}.legend span:nth-child(3):before{color:#97a7bd}.palette-card .btn{width:100%;margin-top:9px}.palette-mobile{display:none}.result-card{padding:30px;max-width:860px;margin:20px auto}.result-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:17px 0 22px}.result-stats article{padding:16px;border:1px solid #dae3ee;border-radius:12px;background:#f9fbff}.result-stats span{font-size:12px;color:#62758c}.result-stats strong{display:block;font-size:25px;font-weight:850}.result-notice{background:#fff5e5;color:#634b29;border:1px solid #f4dfa9;border-radius:12px;padding:13px 16px;font-size:13px}.footer{margin-top:40px;background:#101a33;color:#c0cbde;padding:30px 0;font-size:13px}.footer-inner{max-width:1220px;margin:auto;padding:0 21px;display:flex;gap:15px;justify-content:space-between;flex-wrap:wrap}.footer a{color:#d8e8fe}
@media(max-width:940px){.exam-layout{grid-template-columns:minmax(0,1fr) 230px}.palette{grid-template-columns:repeat(4,minmax(0,1fr))}.palette-card{padding:14px}}
@media(max-width:710px){.nav-inner{padding:12px 15px}.nav-links a:not(:first-child){display:none}.brand{font-size:18px}.outer{padding:14px 13px 40px}.intro{padding:25px 20px;border-radius:16px}.notice{font-size:12px}.exam-layout{display:flex;flex-direction:column}.question-card{width:100%;padding:15px}.palette-card{width:100%;position:static;order:0}.question-card{order:1}.palette-card .time-row{padding:9px 11px}.palette-card .palette{grid-template-columns:repeat(8,minmax(0,1fr))}.palette-card .palette button{min-height:32px;font-size:10px}.palette-mobile{display:block}.palette-details:not([open]) .palette-contents{display:none}.palette-details summary{font-weight:800;color:#20385e;cursor:pointer;margin-top:10px}.palette-title{display:none}.palette-contents{padding-top:10px}.palette-card .btn{margin-top:10px}.diagram-controls{align-items:start}.visual-scroll{max-height:none}.answers-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.answers-list label{padding:10px 3px}.question-actions .btn{flex:1;white-space:nowrap}.setup-card{padding:21px}.result-card{padding:22px}.result-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.result-stats strong{font-size:20px}}
@media(max-width:385px){.palette-card .palette{grid-template-columns:repeat(6,minmax(0,1fr))}.question-actions .btn{font-size:12px;padding:9px 7px}.intro h1{font-size:26px}}

.mobile-exam-status{display:none}@media(max-width:710px){.exam-layout .mobile-exam-status{display:flex;order:-1;align-items:center;justify-content:space-between;gap:10px;background:#e6f2f5;border:1px solid #b8d5e0;border-radius:11px;padding:10px 12px;font-size:12px;font-weight:750;color:#174d5f;width:100%}.mobile-exam-status strong{font-variant-numeric:tabular-nums}.exam-layout .question-card{order:0}.exam-layout .palette-card{order:1}.exam-layout .palette-card .time-row{display:none}}
