:root{--ground:#fff;--tone:#fef0ec;--ink:#2b1f1c;--body:#6b5a55;--muted:#7d6e69;--line:#eee6e3;--line-tone:#f4d8d0;--acc:#d4654e;--acc-d:#a84634;--acc-tint:#fdeae4;--acc-line:#f0c4b8;--elev-1:0 3px 10px #d4654e1f;--font:"Rubik", system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}html,body{max-width:100%;overflow-x:hidden}body{font-family:var(--font);background:var(--ground);color:var(--body);-webkit-font-smoothing:antialiased;overflow-wrap:break-word;font-size:17px;line-height:1.75}::selection{background:var(--acc-tint)}:focus-visible{outline:3px solid var(--acc);outline-offset:2px}strong{color:var(--ink);font-weight:700}a{color:var(--acc-d);text-underline-offset:.2em;font-weight:500;text-decoration-thickness:1px}.topbar{z-index:10;background:var(--ground);border-bottom:1px solid var(--line);position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:.6rem;padding:12px 20px;display:flex}.topbar .brand{letter-spacing:-.02em;color:var(--ink);font-size:.95rem;font-weight:700;text-decoration:none}.topbar .progress-pill{color:var(--muted);font-size:.85rem}.progress-track{background:var(--line);height:3px}.progress-bar{background:var(--acc);width:0%;height:100%;transition:width .4s}main{max-width:720px;margin:0 auto;padding:40px 20px 90px}.card{background:var(--ground);border:1px solid var(--line-tone);box-shadow:var(--elev-1);border-radius:16px;margin-bottom:20px;padding:28px 24px}.card.opening{box-shadow:none;border:none;border-radius:0;margin-bottom:8px;padding:8px 0 6px}h1{color:var(--ink);letter-spacing:-.02em;text-wrap:balance;margin-bottom:12px;font-size:clamp(1.9rem,4.5vw,2.5rem);font-weight:700;line-height:1.2}.h1-underline{background:var(--acc);border-radius:0;width:44px;height:5px;margin-bottom:18px}.opening p{margin-bottom:12px}.opening p:last-child{margin-bottom:0}.phase{align-items:center;gap:10px;margin:44px 0 18px;display:flex}.phase:before{content:"";background:var(--acc);flex:none;width:22px;height:4px}.phase span{color:var(--acc-d);font-size:15px;font-weight:500}.task-head{align-items:baseline;gap:12px;display:flex}.task-num{background:var(--acc);color:#fff;border-radius:50%;flex-shrink:0;align-self:center;place-items:center;width:30px;height:30px;font-size:.95rem;font-weight:700;display:grid}.task h2{color:var(--ink);flex:1;font-size:19px;font-weight:700}.task .time{color:var(--muted);white-space:nowrap;font-size:.8rem}.task-body{margin-top:12px;font-size:.96rem}.task-body ul{gap:10px;margin-top:8px;list-style:none;display:grid}.task-body ul li{padding-inline-start:24px;position:relative}.task-body ul li:before{content:"";inset-inline-start:0;background:var(--acc);width:12px;height:3px;position:absolute;top:.62em}.callout{border-inline-start:2px solid var(--line);color:var(--ink);margin-top:14px;padding-inline-start:1.1rem;font-size:.95rem}.callout.warn{border:1px solid var(--acc-line);border-inline-start:4px solid var(--acc);background:var(--acc-tint);border-radius:16px;padding:13px 16px}.callout .w-icon{margin-inline-end:6px}details.branch{border:1px solid var(--line);background:var(--ground);border-radius:12px;margin-top:12px}details.branch summary{cursor:pointer;color:var(--ink);padding:10px 14px;font-size:.92rem;font-weight:500}details.branch summary:focus-visible{outline:3px solid var(--acc);outline-offset:2px;border-radius:12px}details.branch[open] summary{border-bottom:1px solid var(--line)}details.branch .b-body{color:var(--body);gap:8px;padding:10px 14px;font-size:.92rem;display:grid}.check-row{border-top:1px solid var(--line-tone);margin-top:18px;padding-top:14px}.check-row .how{color:var(--acc-d);margin-bottom:8px;font-size:.9rem;font-weight:500}.check-row label{cursor:pointer;color:var(--ink);align-items:center;gap:10px;font-size:1rem;font-weight:500;display:flex}.check-row input{width:20px;height:20px;accent-color:var(--acc);flex-shrink:0}.big-link{background:var(--acc);border-radius:12px;justify-content:center;align-items:center;min-height:46px;margin-top:10px;padding:10px 26px;font-weight:500;text-decoration:none;transition:background-color .15s;display:inline-flex;color:#fff!important}.big-link:hover,.big-link:focus-visible{background:var(--acc-d)}h2.sec{color:var(--ink);margin-bottom:10px;font-size:19px;font-weight:700}.card.support{background:var(--tone);box-shadow:none;border:none}.support p{font-size:.96rem}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
