.ep-page{--ep-font:"CoFo Brilliant", "CoFo Brilliant Fallback", var(--font-sans-clone,system-ui), -apple-system, "Segoe UI", sans-serif;--ep-paper:#faf9f7;--ep-surface:#fff;--ep-sunk:#f4f2ee;--ep-ink:#171717;--ep-ink-2:#45433f;--ep-line:#17171721;--ep-line-2:#17171738;--ep-blue:#5665f0;--ep-blue-edge:#4252e0;--ep-blue-ink:#3441c7;--ep-blue-soft:#5665f01a;--ep-amber-ink:#8a4b00;--ep-amber-soft:#fdf1dc;--ep-red-ink:#a3211a;--ep-red-soft:#fcebe9;--page:var(--ep-paper);--white:var(--ep-surface);--oat:var(--ep-sunk);--border:var(--ep-line-2);--ink:var(--ep-ink);--on-ink:#fff;--ink-75:var(--ep-ink-2);--ink-60:var(--ep-ink-2);--green:var(--ep-blue);--green-text:var(--ep-blue-ink);--green-ink:#fff;font-family:var(--ep-font);color:var(--ep-ink);background:var(--ep-paper);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased;padding-bottom:72px;font-size:17px;line-height:1.5}.ep-page *,.ep-page :before,.ep-page :after{box-sizing:border-box}.ep-page :is(h1,h2,h3){font-family:var(--ep-font);letter-spacing:-.015em;color:var(--ep-ink);font-weight:700}.ep-page a{color:var(--ep-blue-ink);text-underline-offset:3px}.ep-page :focus-visible{outline:2px solid var(--ep-ink);outline-offset:2px}.ep-wrap{width:min(100% - 48px,1120px);margin:0 auto}.ep-hero{padding:28px 0 22px}.ep-hero-inner{max-width:none}.ep-h1{max-width:22ch;margin:0;font-size:clamp(30px,3.4vw,42px);line-height:1.08}.ep-tool-section{padding:0}.ep-tool-grid{border:2px solid var(--ep-line);background:var(--ep-surface);border-radius:24px;grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid;overflow:hidden}.ep-form{background:var(--ep-sunk);border-right:2px solid var(--ep-line);padding:26px 28px 28px}.ep-form-head h2,.ep-empty h2,.ep-result-head h2{margin:0;font-size:26px;line-height:1.15}.ep-fieldset{border:0;min-width:0;margin:22px 0 0;padding:0}.ep-fieldset legend{color:var(--ep-ink);padding:0;font-size:15px;font-weight:700;line-height:1.4}.ep-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.ep-choice,.ep-radio{border:2px solid var(--ep-line-2);background:var(--ep-surface);cursor:pointer;min-height:48px;color:var(--ep-ink);border-radius:10px;align-items:center;gap:10px;padding:10px 14px;font-size:16px;font-weight:500;line-height:1.3;transition:border-color .12s,background-color .12s;display:flex;position:relative}.ep-choice:hover,.ep-radio:hover{border-color:#17171766}.ep-choice-selected,.ep-radio-selected{border-color:var(--ep-blue);background:var(--ep-blue-soft)}.ep-choice input,.ep-radio input{width:20px;height:20px;accent-color:var(--ep-blue);flex:none;margin:0}.ep-choice strong{font-weight:700;display:block}.ep-choice small{color:var(--ep-ink-2);margin-top:2px;font-size:15px;font-weight:600;display:block}.ep-choice:has(input:disabled){cursor:default}.ep-fieldset-row{display:grid}.ep-fieldset select{border:2px solid var(--ep-line-2);appearance:none;background-color:var(--ep-surface);background-image:linear-gradient(45deg, transparent 50%, var(--ep-ink) 50%), linear-gradient(135deg, var(--ep-ink) 50%, transparent 50%);width:100%;min-height:50px;color:var(--ep-ink);font:inherit;background-position:calc(100% - 18px),calc(100% - 12px);background-repeat:no-repeat;background-size:6px 6px;border-radius:10px;margin-top:10px;padding:10px 32px 10px 14px;font-size:16px;font-weight:500}.ep-fieldset select:focus{border-color:var(--ep-blue);box-shadow:0 0 0 4px var(--ep-blue-soft);outline:none}:is(.ep-choice:has(input:focus-visible),.ep-radio:has(input:focus-visible)){outline:2px solid var(--ep-ink);outline-offset:2px}.ep-radio-list{gap:8px;margin-top:10px;display:grid}.ep-form-error{background:var(--ep-red-soft);color:var(--ep-red-ink);border-radius:10px;margin:20px 0 0;padding:12px 14px;font-size:15px;font-weight:700;line-height:1.4}.ep-primary{background:var(--ep-blue);width:100%;min-height:52px;box-shadow:0 4px 0 var(--ep-blue-edge);color:#fff;font:inherit;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;margin-top:24px;padding:10px 26px;font-size:17px;font-weight:700;transition:transform .12s,box-shadow .12s,filter .12s;display:inline-flex}.ep-primary:hover{filter:brightness(1.06)}.ep-primary:active{box-shadow:0 0 0 var(--ep-blue-edge);transform:translateY(4px)}.ep-result{background:var(--ep-surface);min-width:0}.ep-empty,.ep-result-content{padding:26px 30px}.ep-empty{padding-top:34px}.ep-empty h2{color:#6b6862;font-size:clamp(28px,3vw,36px)}.ep-result-head p{color:var(--ep-ink-2);margin:6px 0 0;font-size:17px;font-weight:600}.ep-diagnostic-cta{border:2px solid var(--ep-blue);background:var(--ep-blue-soft);border-radius:14px;gap:4px;margin-top:20px;padding:16px 18px;transition:transform .12s;display:grid;color:var(--ep-ink)!important;text-decoration:none!important}.ep-diagnostic-cta:hover{transform:translateY(-1px)}.ep-diagnostic-cta-label{color:var(--ep-blue-ink);font-size:15px;font-weight:700}.ep-diagnostic-cta strong{font-size:20px;font-weight:700;line-height:1.25}.ep-diagnostic-cta>span:last-child{color:var(--ep-ink-2);font-size:16px;line-height:1.4}.ep-summary{gap:8px;margin-top:16px;display:grid}.ep-summary>div{background:var(--ep-sunk);border-radius:10px;min-width:0;padding:12px 14px}.ep-summary span,.ep-summary strong{display:block}.ep-summary span{color:var(--ep-ink-2);font-size:14px;font-weight:700}.ep-summary strong{color:var(--ep-ink);margin-top:4px;font-size:15px;font-weight:600;line-height:1.35}.ep-horizon{color:var(--ep-ink);margin:16px 0 0;font-size:16px;line-height:1.45}.ep-horizon strong{font-weight:700}.ep-steps{border-top:2px solid var(--ep-line);gap:14px;margin:20px 0 0;padding:16px 0 0;list-style:none;display:grid}.ep-steps li{grid-template-columns:34px minmax(0,1fr);gap:12px;display:grid}.ep-step-number{background:var(--ep-ink);color:#fff;font-variant-numeric:tabular-nums;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;display:inline-flex}.ep-steps h3,.ep-decision-card h3{margin:0;font-size:18px;line-height:1.3}.ep-steps p,.ep-decision-card>p:last-child{color:var(--ep-ink-2);margin:4px 0 0;font-size:16px;line-height:1.45}.ep-steps a{margin-top:6px;font-size:16px;font-weight:700;display:inline-block}.ep-decision-card{border:2px solid var(--ep-line);background:var(--ep-sunk);border-radius:14px;margin-top:20px;padding:16px 18px}.ep-help-consider-targeted-external-tutoring{background:var(--ep-amber-soft);border-color:#8a4b0059}.ep-help-seek-support-soon{background:var(--ep-red-soft);border-color:#a3211a59}.ep-sources-section{padding:40px 0 0}.ep-how{border:2px solid var(--ep-line);background:var(--ep-surface);border-radius:24px}.ep-how>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;list-style:none;display:flex}.ep-how>summary::-webkit-details-marker{display:none}.ep-how>summary h2{margin:0;font-size:22px}.ep-how>summary:after{content:"+";flex:none;font-size:28px;font-weight:700;line-height:1}.ep-how[open]>summary:after{content:"−"}.ep-how>:not(summary){margin-inline:24px}.ep-how>:last-child{margin-bottom:24px}.ep-source-list{gap:8px;max-width:72ch;margin-top:16px;padding:0 0 0 20px;display:grid}.ep-source-list li,.ep-source-footnote{color:var(--ep-ink);font-size:16px;line-height:1.5}.ep-source-footnote{max-width:72ch;margin-top:0;margin-bottom:0}.sp-section{padding-top:44px}.sp-h2{margin:0;font-size:clamp(26px,3vw,32px);line-height:1.15}.sp-root{margin-top:18px}.sp-form{border:2px solid var(--ep-line);background:var(--ep-sunk);border-radius:24px;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px 22px;padding:22px 24px;display:grid}.sp-field{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.sp-field legend,.sp-label{padding:0;font-size:15px;font-weight:700}.sp-field select{border:2px solid var(--ep-line-2);appearance:none;background-color:var(--ep-surface);background-image:linear-gradient(45deg, transparent 50%, var(--ep-ink) 50%), linear-gradient(135deg, var(--ep-ink) 50%, transparent 50%);min-height:50px;color:var(--ep-ink);font:inherit;background-position:calc(100% - 18px),calc(100% - 12px);background-repeat:no-repeat;background-size:6px 6px;border-radius:10px;padding:0 32px 0 14px;font-size:16px;font-weight:500}.sp-options{flex-wrap:wrap;gap:8px;display:flex}.sp-chip{border:2px solid var(--ep-line-2);background:var(--ep-surface);cursor:pointer;border-radius:999px;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:15px;font-weight:700;display:inline-flex}.sp-chip-on{border-color:var(--ep-blue);background:var(--ep-blue-soft)}.sp-chip input{accent-color:var(--ep-blue)}.sp-booking,.sp-summary{margin:16px 0 0;font-size:16px;line-height:1.5}.sp-summary{font-size:20px;font-weight:700}.sp-today{border:2px solid var(--ep-blue);background:var(--ep-surface);border-radius:24px;margin-top:16px;padding:20px 22px}.sp-today h3{margin:0 0 10px;font-size:20px}.sp-items{gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.sp-item a{color:var(--ep-ink);font-weight:700}.sp-today :is(.st-cta,.st-pick){min-height:48px;font:inherit;cursor:pointer;border-radius:999px;padding:10px 24px;font-size:16px;font-weight:700}.sp-today .st-cta{background:var(--ep-blue);box-shadow:0 4px 0 var(--ep-blue-edge);color:#fff;border:0}.sp-today .st-pick{border:2px solid var(--ep-line-2);background:var(--ep-surface);color:var(--ep-ink)}.sp-days{border-top:2px solid var(--ep-line);margin:16px 0 0;padding:0;list-style:none;display:grid}.sp-day{border-bottom:1px solid var(--ep-line);grid-template-columns:150px minmax(0,1fr);gap:12px;padding:12px 0;font-size:16px;display:grid}.sp-date{font-variant-numeric:tabular-nums;font-weight:700}.sp-what{color:var(--ep-ink-2)}.sp-day-rest .sp-what,.sp-day-test .sp-what{color:var(--ep-ink);font-weight:700}.sp-empty{margin:16px 0 0;font-size:16px}@media (max-width:860px){.ep-tool-grid{border-radius:20px;grid-template-columns:minmax(0,1fr)}.ep-form{border-right:0;padding:20px 16px 22px}.ep-result-empty{display:none}.ep-result{border-top:2px solid var(--ep-line);scroll-margin-top:12px}.ep-result-content{padding:20px 16px 22px}}@media (max-width:620px){.ep-wrap{width:calc(100% - 32px)}.ep-hero{padding:20px 0 16px}.ep-choice-grid{grid-template-columns:minmax(0,1fr)}.ep-how>summary{padding:16px 18px}.ep-how>:not(summary){margin-inline:18px}.sp-form{border-radius:20px;grid-template-columns:minmax(0,1fr);padding:18px 16px}.sp-day{grid-template-columns:minmax(0,1fr);gap:2px}}@media (prefers-reduced-motion:reduce){.ep-primary,.ep-diagnostic-cta,.ep-choice,.ep-radio{transition:none}}
