:root{--coral-700:#c56a3b;--coral-600:#e0824e;--coral-500:#e8915e;--coral-300:#f4c3a3;--coral-100:#fbe4d5;--coral-050:#fff6ef;--sky-600:#5aa0e6;--sky-500:#7bb8f1;--sky-300:#aed5f6;--sky-100:#e5f2ff;--sun-600:#ebb52e;--sun-500:#f2c94c;--sun-300:#f6d58a;--sun-100:#fbefc9;--leaf-600:#3d9b59;--leaf-500:#4fa968;--leaf-300:#9ad0ab;--leaf-100:#e4f3e8;--peri-600:#6e78d9;--peri-500:#8a93e8;--peri-300:#bdc3f2;--peri-100:#e7ecff;--ink-900:#202733;--ink-700:#3a4456;--slate-500:#6b7384;--slate-400:#9aa1ae;--line-300:#e6e9ec;--line-200:#eff1f3;--page:#eef1f0;--surface:#fff;--surface-cream:#faf8f2;--shadow-xs:0 1px 2px rgba(32,39,51,.05);--shadow-sm:0 4px 12px rgba(32,39,51,.06);--shadow-md:0 10px 24px rgba(32,39,51,.08);--shadow-lg:0 22px 48px rgba(32,39,51,.1);--shadow-rail:0 18px 40px rgba(32,39,51,.18);--ring-coral:0 0 0 3px rgba(232,145,94,.22);--r-sm:8px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-pill:999px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--font-sans:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;--fw-light:300;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extra:800;--text-xs:12px;--text-sm:14px;--text-base:16px;--text-lg:18px;--text-xl:22px;--text-2xl:28px;--lh-tight:1.15;--lh-snug:1.3;--lh-normal:1.55;--ease-soft:cubic-bezier(.4,.14,.3,1);--dur:.22s;--bg:var(--page);--ink:var(--ink-900);--muted:var(--slate-500);--line:var(--line-300);--green:var(--leaf-500);--green-soft:var(--leaf-100);--red:#a33b32;--red-soft:#f5e1df;--shadow:var(--shadow-lg)}*,:after,:before{box-sizing:border-box}body{background:var(--page);color:var(--ink-900);font-family:var(--font-sans);margin:0;min-width:320px;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}.page{min-height:100vh}.math-text{display:inline;overflow-wrap:anywhere}.math-text--block{display:block}.math-text__plain{white-space:pre-wrap}.math-text__formula{color:var(--ink-900);display:inline;margin:0 3px;max-width:100%;vertical-align:baseline}.math-text__formula .katex{font-size:1.12em;line-height:1.35;max-width:100%;text-rendering:geometricPrecision;white-space:normal}.math-text__formula .katex .scriptstyle{font-size:.78em}.math-text__formula .katex .scriptscriptstyle{font-size:.68em}.math-text__formula--display{display:block;margin:10px 0;overflow-x:auto;overflow-y:hidden}.math-text__formula--display .katex-display{margin:0;text-align:left}.math-text__image{background:#fff;border:1px solid var(--line-200);border-radius:var(--r-sm);display:block;height:auto;margin:10px 0;max-width:min(100%,460px)}.math-text__audio{display:block;margin:14px 0;width:min(100%,460px)}.math-text__table-wrap{display:block;margin:18px 0;max-width:100%;overflow-x:auto}.math-text__table{background:#fff;border-collapse:collapse;font-size:15px;line-height:1.35;width:100%}.math-text__table td{border:1px solid #cfd5d8;height:44px;min-width:92px;padding:11px 14px;text-align:center;vertical-align:middle;white-space:normal}.math-text__table td:first-child{background:#f6f7f7;font-weight:600;min-width:110px;text-align:left}.math-text__table .math-text__image{margin:4px auto;max-height:320px;max-width:100%;-o-object-fit:contain;object-fit:contain}.math-text--compact .math-text__formula{margin:0 2px}.math-text--compact .math-text__image{display:none}.shell{margin:0 auto;width:min(1180px,calc(100% - 32px))}.panel,.solver,.task-card{background:var(--surface);border:1px solid var(--line-300);border-radius:var(--r-sm);box-shadow:var(--shadow-sm)}.field{display:grid;gap:8px;margin-bottom:14px}.field label{color:var(--slate-500);font-size:13px;font-weight:600}.answer-input,.field select{background:#fff;border:1px solid var(--line-300);border-radius:8px;color:var(--ink-900);min-height:42px;outline:none;padding:0 12px;width:100%}.answer-input:focus,.field select:focus{border-color:var(--leaf-500);box-shadow:0 0 0 3px #4fa9681f}.segmented{display:grid;gap:8px;grid-template-columns:repeat(2,1fr)}.chip,.ghost,.icon-button,.primary{background:#fff;border:1px solid var(--line-300);border-radius:8px;color:var(--ink-900);font-weight:700;min-height:40px;padding:0 12px}.chip.is-active,.primary{background:var(--leaf-500);border-color:var(--leaf-500);color:#fff}.badge,.ghost{color:var(--slate-500)}.badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;min-height:26px;padding:0 9px}.badge,.badge.green{background:var(--leaf-100)}.badge.green{color:var(--leaf-600)}.task-list{display:grid;gap:12px}.task-card{padding:16px;text-align:left;transition:border-color .2s ease,transform .2s ease}.task-card.is-active,.task-card:hover{border-color:var(--leaf-500);transform:translateY(-1px)}.task-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.task-card h3{font-size:16px;line-height:1.35;margin:0 0 8px}.empty,.task-card p{color:var(--slate-500);line-height:1.5;margin:0}.solver{min-height:620px;padding:24px}.trainer-task{min-height:auto;scroll-margin-top:86px}.trainer-headline{align-items:center;display:flex;gap:12px;justify-content:space-between}.trainer-headline h2{font-size:24px;margin:0}.trainer-tasks{display:grid;gap:14px}.trainer-empty{padding:18px}.solver-head{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:20px}.solver h2{font-size:26px;margin:0 0 10px}.condition{background:var(--surface-cream);border-left:4px solid var(--leaf-500);border-radius:0 8px 8px 0;font-size:18px;line-height:1.6;padding:16px 18px}.answer-box{display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto auto;margin:18px 0}.feedback{border-radius:8px;font-weight:700;margin-bottom:16px;padding:14px 16px}.feedback.success{background:var(--leaf-100);color:var(--leaf-600)}.feedback.error{background:#f5e1df;color:#a33b32}.details{display:grid;gap:14px}.details section{border-top:1px solid var(--line-200);padding-top:14px}.details h3{font-size:17px;margin:0 0 8px}.details li,.details p{color:var(--slate-500);line-height:1.6}.details ol,.details ul{margin:8px 0 0;padding-left:20px}.tags{display:flex;flex-wrap:wrap;gap:8px}.catalog-hero{padding:38px 0 18px}.catalog-head{align-items:end;display:grid;gap:24px;grid-template-columns:minmax(0,1fr) minmax(280px,420px)}.catalog-head h1{font-size:clamp(34px,5vw,58px);line-height:1.04;margin:0}.catalog-head p{color:var(--slate-500);font-size:18px;line-height:1.55;margin:14px 0 0}.catalog-summary{background:var(--ink-900);border-radius:8px;color:#fff;display:grid;gap:10px;grid-template-columns:repeat(3,1fr);padding:14px}.catalog-summary span{color:#bdd0c6}.catalog-grid{display:grid;gap:16px;padding:18px 0 48px}.catalog-group{background:var(--surface);border:1px solid var(--line-300);border-radius:8px;box-shadow:var(--shadow-sm);padding:18px}.catalog-group-head{align-items:flex-start;border-bottom:1px solid var(--line-200);display:flex;gap:18px;justify-content:space-between;padding-bottom:14px}.catalog-group h2{font-size:22px;margin:10px 0 0}.catalog-task-list{display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:14px}.catalog-task{background:var(--surface-cream);border:1px solid var(--line-300);border-radius:8px;padding:14px}.catalog-task h3{font-size:16px;line-height:1.35;margin:0 0 8px}.catalog-task p{color:var(--slate-500);line-height:1.5;margin:0}.topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid var(--line-200);position:sticky;top:0;z-index:40}.topbar-inner{gap:18px;height:64px;padding:0 28px}.brand,.topbar-inner{align-items:center;display:flex}.brand{color:var(--ink-900);gap:10px;text-decoration:none}.brand-mark{background:var(--ink-900);border-radius:10px;color:#fff;display:grid;font-size:17px;font-weight:var(--fw-extra);height:36px;place-items:center;width:36px}.brand-name{font-size:16px;font-weight:var(--fw-bold);letter-spacing:.06em}.section-picker{position:relative}.section-btn{align-items:center;background:var(--line-200);border:none;border-radius:var(--r-pill);color:var(--ink-700);display:inline-flex;font-size:13.5px;font-weight:var(--fw-semibold);gap:8px;padding:9px 16px;transition:background var(--dur) var(--ease-soft);white-space:nowrap}.section-btn:hover{background:var(--line-300)}.section-btn svg{transition:transform var(--dur) var(--ease-soft)}.section-btn.is-open svg{transform:rotate(180deg)}.section-menu{background:var(--surface);border:1px solid var(--line-200);border-radius:var(--r-md);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;gap:12px;left:0;padding:10px;position:absolute;top:calc(100% + 8px);width:236px;z-index:50}.exam-choice{background:var(--line-200);border-radius:12px;display:grid;gap:4px;grid-template-columns:1fr 1fr;padding:4px}.exam-choice__item{border-radius:9px;color:var(--ink-700);font-size:13.5px;font-weight:var(--fw-semibold);padding:8px 12px;text-align:center;text-decoration:none;transition:background var(--dur) var(--ease-soft),color var(--dur) var(--ease-soft)}.exam-choice__item:hover{color:var(--ink-900)}.exam-choice__item.is-active{background:var(--surface);box-shadow:var(--shadow-sm);color:var(--coral-700)}.subject-choice{position:relative}.section-menu__label{color:var(--slate-500);display:block;font-size:11px;font-weight:var(--fw-bold);letter-spacing:.06em;margin:0 2px 6px;text-transform:uppercase}.subject-choice__button{align-items:center;background:var(--surface);border:1px solid var(--line-300);border-radius:10px;color:var(--ink-700);display:flex;font-size:13.5px;font-weight:var(--fw-medium);justify-content:space-between;padding:10px 12px;text-align:left;width:100%}.subject-choice__button:hover{border-color:var(--slate-300)}.subject-choice__button svg{transition:transform var(--dur) var(--ease-soft)}.subject-choice__button.is-open svg{transform:rotate(180deg)}.subject-options{background:var(--surface);border:1px solid var(--line-200);border-radius:10px;display:flex;flex-direction:column;gap:2px;margin-top:6px;padding:4px}.subject-option{align-items:center;border-radius:8px;color:var(--ink-700);display:flex;font-size:13.5px;font-weight:var(--fw-medium);justify-content:space-between;padding:9px 10px;text-decoration:none}.subject-option:hover{background:var(--line-200)}.subject-option.is-active{background:var(--coral-050);color:var(--coral-700);font-weight:var(--fw-semibold)}.top-nav{align-items:center;display:flex;gap:8px;margin-left:auto}.navlink{background:none;border:1.5px solid transparent;border-radius:var(--r-pill);color:var(--slate-500);font-size:14px;font-weight:var(--fw-medium);padding:8px 16px;text-decoration:none;white-space:nowrap}.navlink:hover{color:var(--ink-700)}.navlink.is-active{background:var(--coral-050);border-color:var(--coral-300);color:var(--coral-700);font-weight:var(--fw-semibold)}.navlink--solid{background:var(--ink-900);border-color:var(--ink-900);color:#fff;font-weight:var(--fw-semibold)}.navlink--solid:hover{color:#fff}.nav-avatar{background:var(--coral-100);border-radius:var(--r-pill);color:var(--coral-700);display:grid;flex-shrink:0;font-size:15px;font-weight:var(--fw-bold);height:36px;margin-left:6px;place-items:center;text-decoration:none;width:36px}.nav-avatar.is-active{box-shadow:0 0 0 2px var(--coral-500)}.column{margin:0 auto;width:min(760px,calc(100% - 32px))}.sticky-strip{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border-bottom:1px solid var(--line-200);position:sticky;top:64px;z-index:30}.t-strip{padding:10px 0}.t-strip-inner{align-items:center;display:flex;gap:14px}.t-bar{background:var(--line-200);border-radius:var(--r-pill);flex:1;height:8px;overflow:hidden}.t-bar-fill{background:var(--leaf-500);height:100%;transition:width var(--dur) var(--ease-soft)}.t-bar-note{color:var(--slate-500);font-size:12.5px;white-space:nowrap}.t-bar-note b{color:var(--leaf-600)}.t-head{margin-bottom:20px;padding-top:36px;text-align:center}.t-h1{font-size:28px;font-weight:var(--fw-extra);letter-spacing:-.02em;margin:0 0 6px}.t-lead{color:var(--slate-500);font-size:14px;margin:0}.t-toolbar{display:flex;flex-wrap:wrap;margin-bottom:24px}.t-btn,.t-toolbar{align-items:center;gap:8px}.t-btn{border:none;border-radius:var(--r-pill);display:inline-flex;font-size:13.5px;font-weight:var(--fw-semibold);padding:10px 18px;transition:background var(--dur) var(--ease-soft)}.t-btn svg{height:15px;width:15px}.t-btn--primary{background:var(--coral-500);box-shadow:var(--shadow-sm);color:#fff}.t-btn--primary:hover{background:var(--coral-600)}.t-btn-count{background:#ffffff47;border-radius:var(--r-pill);font-size:12px;padding:1px 8px}.t-fpill{align-items:center;background:var(--coral-050);border:1.5px solid var(--coral-500);border-radius:var(--r-pill);color:var(--coral-700);display:inline-flex;font-size:13px;font-weight:var(--fw-semibold);gap:6px;padding:6px 12px}.t-fpill button{color:inherit;font-weight:var(--fw-regular);line-height:1}.t-fpill button,.t-reset{background:none;border:none;padding:0}.t-reset{color:var(--slate-500);font-size:13px;text-decoration:underline;text-underline-offset:3px}.t-count{color:var(--slate-400);font-size:13px;margin-left:auto;white-space:nowrap}.t-filters{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-md);display:none;flex-direction:column;gap:20px;margin-bottom:24px;padding:22px 24px}.t-filters.is-open{display:flex}.t-flabel{color:var(--slate-400);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.12em;margin-bottom:8px;text-transform:uppercase}.t-fchips{display:flex;flex-wrap:wrap;gap:6px}.t-fchip{background:#fff;border:1.5px solid var(--line-300);border-radius:var(--r-pill);color:var(--ink-700);font-size:13px;font-weight:var(--fw-semibold);padding:8px 14px;transition:border-color var(--dur) var(--ease-soft)}.t-fchip:hover{border-color:var(--coral-300)}.t-fchip.is-on{background:var(--coral-050);border-color:var(--coral-500);color:var(--coral-700)}.t-idsearch{max-width:280px;position:relative}.t-idinput{background:#fff;border:1.5px solid var(--line-300);border-radius:var(--r-pill);font-size:14px;outline:none;padding:10px 36px 10px 16px;width:100%}.t-idinput:focus{border-color:var(--coral-500);box-shadow:var(--ring-coral)}.t-idclear{background:var(--line-200);border:none;border-radius:var(--r-pill);color:var(--slate-500);display:grid;font-size:16px;height:26px;line-height:1;place-items:center;position:absolute;right:6px;top:50%;transform:translateY(-50%);width:26px}.t-feed{gap:20px;padding-bottom:72px}.t-feed,.t-task{display:flex;flex-direction:column}.t-task{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-md);gap:14px;padding:26px 28px;scroll-margin-top:130px}.t-task-top{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.t-chip{border-radius:var(--r-pill);font-size:12px;font-weight:var(--fw-semibold);padding:4px 10px}.t-chip--num{background:var(--line-200);color:var(--ink-700);font-weight:var(--fw-bold)}.t-chip--kind{background:var(--leaf-100);color:var(--leaf-600)}.t-chip--kind.is-long{background:var(--peri-100);color:var(--peri-600)}.t-chip--done{align-items:center;background:var(--leaf-500);color:#fff;display:inline-flex;gap:5px}.t-chip--done svg{height:11px;width:11px}.t-id{align-items:center;background:none;border:none;color:var(--slate-400);display:inline-flex;font-size:12px;gap:5px;padding:0}.t-id:hover{color:var(--coral-700)}.t-id svg{height:12px;width:12px}.t-card-actions{display:flex;gap:8px;margin-left:auto}.t-iconbtn{background:#fff;border:1.5px solid var(--line-300);border-radius:var(--r-pill);color:var(--slate-400);display:grid;height:34px;place-items:center;transition:color var(--dur) var(--ease-soft),border-color var(--dur) var(--ease-soft);width:34px}.t-iconbtn svg{height:16px;width:16px}.t-iconbtn:hover{border-color:var(--slate-400);color:var(--ink-700)}.t-iconbtn.is-on{background:var(--coral-050);border-color:var(--coral-500);color:var(--coral-700)}.t-stmt{font-size:17px;line-height:1.6;margin:0}.t-source{display:flex;flex-direction:column;gap:10px}.t-source-btn{align-self:flex-start;background:none;border:none;color:var(--coral-700);font-size:13.5px;font-weight:var(--fw-semibold);padding:0;text-decoration:underline;text-underline-offset:3px}.t-source-body{background:var(--surface-cream);border-radius:var(--r-md);font-size:15px;line-height:1.65;max-height:340px;overflow-y:auto;padding:16px 18px}.t-answer-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.t-input{background:#fff;border:1.5px solid var(--line-300);border-radius:var(--r-pill);flex:1;font-size:14.5px;min-width:180px;outline:none;padding:11px 18px}.t-input:focus{border-color:var(--coral-500);box-shadow:var(--ring-coral)}.t-input.is-correct{background:#f3faf5;border-color:var(--leaf-500)}.t-input.is-wrong{background:#fdf3f2;border-color:#d98b82}.t-btn--check{background:var(--coral-500);color:#fff;font-size:14px;padding:11px 20px}.t-btn--check:hover{background:var(--coral-600)}.t-hintbtn{background:transparent;border:none;color:var(--slate-500);-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-underline-offset:4px}.t-feedback,.t-hintbtn{font-size:14px;font-weight:var(--fw-medium)}.t-feedback{align-items:center;border-radius:var(--r-md);display:flex;gap:10px;padding:11px 16px}.t-feedback svg{flex-shrink:0;height:16px;width:16px}.t-feedback--ok{background:var(--leaf-100);color:var(--leaf-600)}.t-feedback--no{background:#f9e7e5;color:#a33b32}.t-feedback--info{background:var(--surface-cream);color:var(--slate-600)}.t-check-unavailable{color:var(--slate-500);font-size:13px}.t-reveal{border-top:1px solid var(--line-200);padding-top:14px}.t-rh{color:var(--slate-400);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.12em;margin-bottom:8px;text-transform:uppercase}.t-reveal ol,.t-reveal ul{color:var(--ink-700);display:flex;flex-direction:column;font-size:14.5px;gap:8px;line-height:1.6;margin:0;padding-left:20px}.t-load-more{align-items:center;display:flex;font-size:13px;gap:14px;justify-content:center}.t-empty,.t-load-more{color:var(--slate-400)}.t-empty{font-size:14.5px;margin:0;padding:40px 0;text-align:center}.c-head{align-items:flex-end;display:flex;gap:24px;justify-content:space-between;margin-bottom:24px;padding-top:32px}.c-h1{font-size:30px;font-weight:var(--fw-extra);letter-spacing:-.02em;margin:0 0 4px}.c-lead{font-size:14.5px;margin:0}.c-expand,.c-lead{color:var(--slate-500)}.c-expand{background:none;border:none;font-size:13px;padding:0;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.c-list{display:flex;flex-direction:column;gap:10px;padding-bottom:72px}.c-group{background:var(--surface);border:1.5px solid transparent;border-radius:var(--r-md);box-shadow:var(--shadow-sm);overflow:hidden}.c-group.is-open{border-color:var(--coral-300);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.c-ghead{align-items:center;background:none;border:none;display:flex;gap:14px;padding:16px 22px;text-align:left;width:100%}.c-group.is-open .c-ghead{background:#fff9f2}.c-numchip{background:var(--line-200);border-radius:var(--r-pill);color:var(--ink-700);font-size:13px;font-weight:var(--fw-bold);padding:5px 12px;white-space:nowrap}.c-group.is-open .c-numchip{background:var(--coral-100);color:var(--coral-700)}.c-gtitle{flex:1;font-size:15px;font-weight:var(--fw-semibold)}.c-gcount{font-size:12px;white-space:nowrap}.c-chevron,.c-gcount{color:var(--slate-400)}.c-chevron{flex-shrink:0;height:16px;transition:transform var(--dur) var(--ease-soft);width:16px}.c-group.is-open .c-chevron{color:var(--coral-700);transform:rotate(180deg)}.c-items{display:flex;flex-direction:column;padding:6px 22px 18px}.c-subtopic{border-bottom:1px solid var(--line-200)}.c-subtopic:last-child{border-bottom:none}.c-subtopic-head{align-items:center;background:none;border:none;color:var(--ink-700);display:flex;gap:12px;padding:13px 0;text-align:left;width:100%}.c-subtopic-head:hover{color:var(--coral-700)}.c-subtopic-title{flex:1;font-size:14px;font-weight:var(--fw-medium)}.c-subtopic-count{color:var(--slate-400);font-size:12px;white-space:nowrap}.c-subtopic-chevron{color:var(--slate-400);height:14px;transition:transform var(--dur) var(--ease-soft);width:14px}.c-subtopic-chevron.is-open{color:var(--coral-700);transform:rotate(180deg)}.c-subtasks{background:var(--line-100);border-radius:10px;margin:0 0 8px;padding:0 12px}.c-item{align-items:center;border-bottom:1px solid var(--line-200);color:inherit;display:flex;gap:12px;padding:12px 0;text-decoration:none}.c-item:last-child{border-bottom:none}.c-item:hover .c-iopen{color:var(--coral-600)}.c-item--nested{padding:10px 0}.c-iid{color:var(--slate-400);flex-shrink:0;font-size:12px;width:64px}.c-iname{flex:1;font-size:14px}.c-iopen{color:var(--coral-700);white-space:nowrap}.c-iopen,.c-more{font-size:13px;font-weight:var(--fw-semibold)}.c-more{align-items:center;background:var(--line-100);border:1px solid var(--line-200);border-radius:10px;color:var(--ink-700);display:flex;gap:12px;justify-content:center;margin-top:8px;padding:11px 14px}.c-more:hover{background:var(--line-200)}.c-more span{font-size:11px;font-weight:var(--fw-medium)}.c-empty,.c-more span{color:var(--slate-400)}.c-empty{font-size:14.5px;padding:40px 0;text-align:center}.v-head{margin-bottom:20px;padding-top:32px}.v-h1{font-size:30px;font-weight:var(--fw-extra);letter-spacing:-.02em;margin:0 0 4px}.v-lead{color:var(--slate-500);font-size:14.5px;margin:0}.v-row,.v-rows{display:flex;flex-direction:column;gap:10px}.v-row{background:var(--surface);border:1.5px solid transparent;border-radius:var(--r-md);box-shadow:var(--shadow-sm);padding:14px 18px}.v-row.is-on{border-color:var(--coral-500)}.v-row-main{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.v-check{background:#fff;border:1.5px solid var(--line-300);border-radius:7px;color:#fff;display:grid;flex-shrink:0;height:22px;padding:0;place-items:center;width:22px}.v-check svg{height:12px;opacity:0;width:12px}.v-check.is-on{background:var(--coral-500);border-color:var(--coral-500)}.v-check.is-on svg{opacity:1}.v-rname{flex:1;font-size:14px;font-weight:var(--fw-semibold)}.v-row:not(.is-on) .v-rname{color:var(--slate-500)}.v-seg{background:var(--line-200);border-radius:var(--r-pill);display:inline-flex;gap:3px;padding:3px}.v-seg button{background:none;border:none;border-radius:var(--r-pill);color:var(--slate-500);font-size:12px;font-weight:var(--fw-medium);padding:5px 12px}.v-seg button.is-on{background:#fff;box-shadow:var(--shadow-xs);color:var(--coral-700);font-weight:var(--fw-semibold)}.v-pickrow{align-items:center;display:flex;flex-wrap:wrap;gap:10px;padding-left:34px}.v-pick{align-items:center;background:var(--coral-050);border:1.5px solid var(--coral-500);border-radius:var(--r-pill);color:var(--coral-700);display:inline-flex;font-size:13px;font-weight:var(--fw-semibold);gap:8px;padding:7px 14px}.v-pick button{color:inherit;font-weight:var(--fw-regular);line-height:1}.v-pick button,.v-picklink{background:none;border:none;padding:0}.v-picklink{color:var(--coral-700);font-size:13px;font-weight:var(--fw-semibold)}.v-note{color:var(--slate-400);font-size:13px;margin:14px 0 22px}.v-summary{align-items:center;background:var(--ink-900);border-radius:var(--r-lg);box-shadow:var(--shadow-rail);color:#fff;display:flex;flex-wrap:wrap;gap:18px;margin:28px 0 72px;padding:22px 24px}.v-summary-body{flex:1;min-width:240px}.v-summary-t{font-size:16px;font-weight:var(--fw-bold);margin-bottom:4px}.v-summary-s{color:#ffffff8c;font-size:13px}.v-btn--go{background:var(--coral-500);border:none;border-radius:var(--r-pill);box-shadow:0 4px 12px #20273333;color:#fff;font-size:14.5px;font-weight:var(--fw-semibold);padding:13px 26px;white-space:nowrap}.v-btn--go:hover:not(:disabled){background:var(--coral-600)}.v-btn--go:disabled{background:var(--slate-400);box-shadow:none;cursor:not-allowed}.v-overlay{background:#2027336b;display:grid;top:0;right:0;bottom:0;left:0;padding:24px;place-items:center;position:fixed;z-index:60}.v-modal{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:78vh;overflow:hidden;width:min(560px,100%)}.v-modal-head{align-items:center;border-bottom:1px solid var(--line-200);display:flex;gap:12px;padding:20px 24px}.v-modal-title{flex:1;font-size:17px;font-weight:var(--fw-bold);margin:0}.v-modal-close{background:var(--line-200);border:none;border-radius:var(--r-pill);color:var(--slate-500);display:grid;font-size:18px;height:32px;line-height:1;place-items:center;width:32px}.v-modal-body{overflow-y:auto;padding:4px 24px 20px}.v-id-search{background:var(--surface);border-bottom:1px solid var(--line-200);margin:0 -4px 6px;padding:14px 4px 12px;position:sticky;top:0;z-index:2}.v-id-search>label{color:var(--slate-500);display:block;font-size:11px;font-weight:var(--fw-bold);letter-spacing:.06em;margin-bottom:7px;text-transform:uppercase}.v-id-search-row{display:flex;gap:8px}.v-id-search-row input{border:1px solid var(--line-300);border-radius:10px;flex:1;font-size:14px;min-width:0;outline:none;padding:10px 13px}.v-id-search-row input:focus{border-color:var(--coral-500);box-shadow:var(--ring-coral)}.v-id-search-row button{background:var(--coral-500);border:none;border-radius:10px;color:#fff;font-size:13px;font-weight:var(--fw-semibold);padding:10px 15px}.v-id-search-row button:disabled{background:var(--line-300);color:var(--slate-400);cursor:not-allowed}.v-id-result{align-items:center;background:var(--coral-050);border-radius:10px;display:grid;font-size:12px;gap:10px;grid-template-columns:auto 1fr auto;margin-top:8px;padding:10px 12px}.v-id-result>span{color:var(--slate-400)}.v-id-result>strong{color:var(--ink-700);font-size:13px}.v-id-result>button{background:none;border:none;color:var(--coral-700);font-size:12px;padding:0}.v-id-empty{color:#a33b32;font-size:12px;margin:8px 2px 0}.v-picker-condition--direct{grid-column:1/-1;margin:0}.v-opt{align-items:center;background:none;border:none;border-bottom:1px solid var(--line-200);color:inherit;display:flex;gap:12px;padding:13px 0;text-align:left;width:100%}.v-opt:last-child{border-bottom:none}.v-opt.is-on .v-opt-name{color:var(--coral-700);font-weight:var(--fw-semibold)}.v-opt-id{color:var(--slate-400);flex-shrink:0;font-size:12px;width:64px}.v-opt-name{flex:1;font-size:14px}.v-subtopic{border-bottom:1px solid var(--line-200)}.v-subtopic:last-child{border-bottom:none}.v-subtopic-head{align-items:center;background:none;border:none;color:var(--ink-700);display:flex;font-size:14px;font-weight:var(--fw-semibold);gap:12px;padding:14px 0;text-align:left;width:100%}.v-subtopic-head>span{flex:1}.v-subtopic-head small{color:var(--slate-400);font-size:12px;font-weight:var(--fw-medium)}.v-subtopic-head svg{color:var(--slate-400);height:14px;transition:transform var(--dur) var(--ease-soft);width:14px}.v-subtopic-head svg.is-open{color:var(--coral-700);transform:rotate(180deg)}.v-subtopic-tasks{padding:0 0 10px 12px}.v-picker-task{border-top:1px solid var(--line-200)}.v-picker-task.is-on{background:var(--coral-050)}.v-picker-task-head{align-items:center;display:flex;gap:10px;min-height:46px;padding:6px 8px}.v-picker-task-head>button{background:none;border:none;color:var(--slate-500);font-size:12px;padding:5px 8px}.v-picker-task-head>button:hover{color:var(--coral-700)}.v-picker-task-head .v-picker-select{color:var(--coral-700);font-weight:var(--fw-semibold);margin-left:auto}.v-picker-condition{background:var(--line-100);border-radius:10px;color:var(--ink-700);font-size:13.5px;line-height:1.55;margin:0 8px 10px 72px;padding:12px 14px}.v-strip{padding:12px 0}.v-strip-inner{align-items:center;display:flex;flex-wrap:wrap;gap:14px}.v-timer{background:var(--ink-900);border-radius:12px;color:#fff;font-size:15px;font-variant-numeric:tabular-nums;font-weight:var(--fw-bold);letter-spacing:.06em;padding:7px 14px}.v-timer.is-urgent{background:#a33b32}.v-timer.is-idle{background:var(--line-200);color:var(--slate-400)}.v-toggle{align-items:center;background:none;border:none;display:inline-flex;gap:8px;padding:0}.v-switch{background:var(--line-300);flex-shrink:0;height:22px;position:relative;transition:background var(--dur) var(--ease-soft);width:38px}.v-switch,.v-switch:after{border-radius:var(--r-pill)}.v-switch:after{background:#fff;content:"";height:18px;left:2px;position:absolute;top:2px;transition:transform var(--dur) var(--ease-soft);width:18px}.v-toggle.is-on .v-switch{background:var(--leaf-500)}.v-toggle.is-on .v-switch:after{transform:translate(16px)}.v-toggle-lbl{color:var(--ink-700);font-size:13.5px;font-weight:var(--fw-medium);white-space:nowrap}.v-share{align-items:center;background:#fff;border:1.5px solid var(--line-300);border-radius:var(--r-pill);color:var(--ink-700);display:inline-flex;font-size:13px;font-weight:var(--fw-semibold);gap:7px;max-width:260px;padding:9px 15px}.v-share svg{flex-shrink:0;height:14px;width:14px}.v-share span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.v-share:hover{border-color:var(--coral-300);color:var(--coral-700)}.v-strip-actions{align-items:center;display:flex;gap:10px;margin-left:auto}.v-btn--check{background:var(--coral-500);border:none;border-radius:var(--r-pill);box-shadow:var(--shadow-sm);color:#fff;font-size:13.5px;font-weight:var(--fw-semibold);padding:10px 20px}.v-btn--check:hover{background:var(--coral-600)}.v-btn--ghost{background:#fff;border:1.5px solid var(--line-300);border-radius:var(--r-pill);color:var(--ink-700);font-size:13.5px;font-weight:var(--fw-semibold);padding:10px 18px;white-space:nowrap}.v-btn--ghost:hover{border-color:var(--coral-300);color:var(--coral-700)}.v-solve{align-items:start;display:grid;gap:22px;grid-template-columns:minmax(0,1fr) 180px;padding:28px 0 72px}.v-qhead{align-items:baseline;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:18px}.v-qh{font-size:26px;font-weight:var(--fw-extra);letter-spacing:-.02em;margin:0}.v-cards{gap:18px}.v-cards,.v-qcard{display:flex;flex-direction:column}.v-qcard{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-md);gap:13px;padding:24px 28px;scroll-margin-top:150px}.v-qcard.is-flash{box-shadow:0 0 0 3px var(--coral-300),var(--shadow-md)}.v-qtop{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.v-idx{background:var(--ink-900);border-radius:var(--r-pill);color:#fff;display:grid;flex-shrink:0;font-size:13px;font-weight:var(--fw-bold);height:30px;place-items:center;width:30px}.v-qmeta{color:var(--slate-400);font-size:12px}.v-prompt{font-size:16.5px;line-height:1.55;margin:0}.v-answer-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px}.v-answer{background:#fff;border:1.5px solid var(--line-300);border-radius:var(--r-pill);font-size:14.5px;max-width:300px;outline:none;padding:11px 18px;width:100%}.v-answer:focus{border-color:var(--coral-500);box-shadow:var(--ring-coral)}.v-answer.is-correct{background:#f3faf5;border-color:var(--leaf-500)}.v-answer.is-wrong{background:#fdf3f2;border-color:#d98b82}.v-verdict{align-items:center;color:var(--slate-500);display:inline-flex;font-size:13.5px;font-weight:var(--fw-semibold);gap:6px}.v-verdict svg{height:14px;width:14px}.v-verdict--ok{color:var(--leaf-600)}.v-verdict--no{color:#a33b32}.v-solution{border-top:1px solid var(--line-200);padding-top:14px}.v-sol-title{color:var(--slate-400);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.12em;margin:0 0 8px;text-transform:uppercase}.v-sol-body{color:var(--ink-700);font-size:14.5px;gap:8px;line-height:1.6;margin:0;padding-left:20px}.v-sol-body,.v-source{display:flex;flex-direction:column}.v-source{gap:10px}.v-source-btn{align-self:flex-start;background:none;border:none;color:var(--coral-700);font-size:13.5px;font-weight:var(--fw-semibold);padding:0;text-decoration:underline;text-underline-offset:3px}.v-source-body{background:var(--surface-cream);border-radius:var(--r-md);font-size:15px;line-height:1.65;max-height:340px;overflow-y:auto;padding:16px 18px}.v-side{display:flex;flex-direction:column;gap:12px;position:sticky;top:194px}.v-panel{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:18px}.v-panel-t{color:var(--slate-400);font-size:11px;font-weight:var(--fw-semibold);letter-spacing:.12em;margin-bottom:12px;text-transform:uppercase}.v-nums{display:grid;gap:6px;grid-template-columns:repeat(4,1fr)}.v-num{background:#fff;border:1.5px solid var(--line-300);border-radius:10px;color:var(--slate-500);display:grid;font-size:12.5px;font-weight:var(--fw-semibold);height:34px;place-items:center;text-decoration:none}.v-num.is-filled{background:var(--leaf-100);color:var(--leaf-600)}.v-num.is-filled,.v-num.is-wrong{border-color:transparent;font-weight:var(--fw-bold)}.v-num.is-wrong{background:#f9e7e5;color:#a33b32}.v-legend{color:var(--slate-500);display:flex;flex-direction:column;font-size:11.5px;gap:6px;margin-top:14px}.v-legend i{border-radius:3px;display:inline-block;height:10px;margin-right:6px;vertical-align:-1px;width:10px}.v-lg-filled{background:var(--leaf-100)}.v-lg-empty{background:#fff;border:1px solid var(--line-300)}.v-lg-wrong{background:#f9e7e5}.v-result{background:var(--ink-900);border-radius:var(--r-lg);box-shadow:var(--shadow-rail);color:#fff;padding:18px;text-align:center}.v-result-num{color:var(--coral-300);font-size:28px;font-weight:var(--fw-extra)}.v-result-sub{color:#fff9;font-size:12px}.p-shell{margin:0 auto;padding-bottom:72px;width:min(1180px,calc(100% - 56px))}.p-head{align-items:flex-end;display:flex;gap:20px;justify-content:space-between;margin-bottom:22px;padding-top:32px}.p-h1{font-size:30px;font-weight:var(--fw-extra);letter-spacing:-.02em;margin:0 0 4px}.p-sub{font-size:14.5px;margin:0}.p-logout,.p-sub{color:var(--slate-500)}.p-logout{background:none;border:none;font-size:13px;padding:0;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.p-stats{display:grid;gap:16px;grid-template-columns:repeat(4,1fr);margin-bottom:24px}.p-stat{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:20px 22px}.p-stat-num{font-size:34px;font-weight:var(--fw-extra);line-height:1.12}.p-stat-num--leaf{color:var(--leaf-600)}.p-stat-lbl{color:var(--slate-500);font-size:13px}.p-stat--dark{background:var(--ink-900);box-shadow:var(--shadow-rail);color:#fff}.p-stat--dark .p-stat-num{color:var(--coral-300)}.p-stat--dark .p-stat-lbl{color:#fff9}.p-cols{align-items:start;display:grid;gap:20px;grid-template-columns:1.4fr 1fr}.p-card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow-md);padding:24px}.p-card-head{align-items:baseline;display:flex;gap:12px;justify-content:space-between;margin-bottom:16px}.p-card-title{font-size:16px;font-weight:var(--fw-bold);margin:0}.p-card-note{color:var(--slate-400);font-size:12px}.p-card--accordion{padding-bottom:0;padding-top:0}.p-accordion-head{align-items:center;background:none;border:none;color:var(--ink-900);display:flex;gap:12px;justify-content:space-between;min-height:66px;padding:0;text-align:left;width:100%}.p-accordion-head svg{color:var(--slate-400);flex-shrink:0;height:16px;transition:transform var(--dur) var(--ease-soft);width:16px}.p-accordion-head svg.is-open{color:var(--coral-700);transform:rotate(180deg)}.p-card--accordion.is-open{padding-bottom:18px}.p-map{display:grid;gap:8px;grid-template-columns:repeat(7,1fr)}.p-map+.p-card-head{margin-top:18px}.p-cell{background:var(--line-200);border-radius:12px;display:block;padding:10px 6px;text-align:center;text-decoration:none;transition:transform var(--dur) var(--ease-soft)}.p-cell:hover{transform:translateY(-2px)}.p-cell-n{font-size:14px;font-weight:var(--fw-bold)}.p-cell-n,.p-cell-v{color:var(--slate-400)}.p-cell-v{font-size:11px}.p-cell--done{background:var(--leaf-100)}.p-cell--done .p-cell-n{color:var(--leaf-600)}.p-cell--done .p-cell-v{color:var(--slate-500)}.p-cell--prog{background:var(--sun-100)}.p-cell--prog .p-cell-n{color:#b98a00}.p-cell--prog .p-cell-v{color:var(--slate-500)}.p-cell--weak{background:var(--coral-100)}.p-cell--weak .p-cell-n{color:var(--coral-700)}.p-cell--weak .p-cell-v{color:var(--slate-500)}.p-side{display:flex;flex-direction:column;gap:16px}.p-item{align-items:center;border-bottom:1px solid var(--line-200);color:inherit;display:flex;gap:12px;padding:10px 0;text-decoration:none}.p-item:last-child{border-bottom:none}.p-item:hover .p-iaction{color:var(--coral-600)}.p-badge{border-radius:var(--r-pill);font-size:13px;font-weight:var(--fw-bold);padding:4px 10px;white-space:nowrap}.p-badge--coral{background:var(--coral-100);color:var(--coral-700)}.p-badge--sun{background:var(--sun-100);color:#b98a00}.p-iid{color:var(--slate-400);flex-shrink:0;font-size:12px;width:64px}.p-iname{flex:1;font-size:14px}.p-iaction{color:var(--coral-700);font-size:13px;font-weight:var(--fw-semibold);white-space:nowrap}.p-empty{color:var(--slate-400);font-size:13.5px;margin:0}@media(max-width:1080px){.p-shell{width:min(1180px,calc(100% - 32px))}.p-cols{grid-template-columns:1fr}.p-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.v-solve{grid-template-columns:1fr}.v-side{order:-1;position:static}.v-nums{grid-template-columns:repeat(8,1fr)}.p-map{grid-template-columns:repeat(5,1fr)}}@media(max-width:720px){.topbar-inner{gap:10px;padding:0 16px}.brand-name{display:none}.top-nav{gap:4px}.navlink{font-size:13px;padding:8px 11px}.t-task,.v-qcard{padding:20px 18px}.t-h1{font-size:24px}.c-h1,.p-h1,.v-h1{font-size:25px}.p-stats{grid-template-columns:1fr 1fr}.p-map{grid-template-columns:repeat(4,1fr)}.p-card{padding:18px}.v-pickrow{padding-left:0}.t-count,.v-strip-actions{margin-left:0;width:100%}.v-share{max-width:100%}}.auth-page{align-items:start;display:grid;gap:28px;grid-template-columns:minmax(0,1fr) 380px;padding:52px 0}.auth-copy h1{font-size:clamp(30px,5vw,48px);letter-spacing:-.02em;line-height:1.06;margin:0}.auth-copy p{color:var(--slate-500);font-size:17px;line-height:1.55;margin:14px 0 0;max-width:620px}.auth-card{padding:18px}.auth-card .segmented{margin-bottom:16px}.auth-legal-consents{color:var(--slate-600);display:grid;font-size:13px;gap:10px;line-height:1.55;margin:8px 0 16px}.auth-legal-consents label{align-items:flex-start;display:flex;gap:8px}.auth-legal-consents input{flex:0 0 auto;margin-top:4px}.auth-legal-consents p{color:var(--slate-500);margin:0}.p-delete-account{margin-top:20px}.p-delete-account p{color:var(--slate-500);line-height:1.6}.p-delete-account label{color:var(--ink-700);display:block;font-size:14px;font-weight:600;margin:16px 0 6px}.p-delete-account input{max-width:320px}.p-delete-button{background:#fff;border:1px solid #a33b32;border-radius:var(--r-sm);color:#a33b32;cursor:pointer;display:block;font:inherit;font-weight:600;margin-top:12px;padding:10px 14px}.p-delete-button:disabled{cursor:not-allowed;opacity:.5}.wide-button{margin-top:10px;width:100%}@media(max-width:860px){.auth-page{grid-template-columns:1fr}}.ai-box{background:linear-gradient(135deg,#f8f7ff,#fff);border:1px solid #d8d5ff;border-radius:18px;margin-top:18px;padding:18px}.ai-box__head{align-items:flex-start;display:flex;gap:14px;justify-content:space-between;margin-bottom:12px}.ai-box__head strong{display:block;font-size:17px}.ai-box__head span{color:#777;display:block;font-size:12px;margin-top:2px}.ai-box__tabs{background:#eceafd;border-radius:10px;display:flex;padding:3px}.ai-box__tabs button{background:transparent;border:0;border-radius:8px;cursor:pointer;padding:7px 10px}.ai-box__tabs button.is-on{background:#fff;box-shadow:0 1px 5px #0001}.ai-box textarea{border:1px solid #d7d3ee;border-radius:12px;box-sizing:border-box;font:inherit;margin:0 0 12px;padding:12px;resize:vertical;width:100%}.ai-box>p{color:#555;margin:0 0 12px}.ai-box__answer,.ai-box__error{border-radius:12px;margin-top:14px;padding:13px;white-space:pre-wrap}.ai-box__answer{background:#eef8f1;color:#183f27}.ai-box__error{background:#fff1f1;color:#8d2828}@media(max-width:700px){.ai-box__head{display:block}.ai-box__tabs{margin-top:10px;width:-moz-max-content;width:max-content}}.site-footer[data-v-170e311a]{background:var(--surface);border-top:1px solid var(--line-300);margin-top:48px}.site-footer__inner[data-v-170e311a]{align-items:center;color:var(--slate-500);display:flex;font-size:13px;gap:16px;justify-content:space-between;margin:0 auto;padding:20px 0;width:min(1180px,calc(100% - 48px))}.site-footer nav[data-v-170e311a]{display:flex;flex-wrap:wrap;gap:18px}.site-footer a[data-v-170e311a]{color:var(--ink-700);text-decoration:none}.site-footer a[data-v-170e311a]:hover{text-decoration:underline}@media(max-width:600px){.site-footer__inner[data-v-170e311a]{align-items:flex-start;flex-direction:column;width:calc(100% - 32px)}}
