:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:#243236;background:#f7f7f3;font-synthesis:none;text-rendering:optimizeLegibility;--ink:#243236;--muted:#6e7a78;--paper:#fffefa;--line:#dfe5df;--teal:#0c756d;--teal-dark:#07544f;--coral:#ee755c;--shadow:0 20px 60px rgba(30,65,59,.1)}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top right,#edf5ec 0,transparent 36rem),#f7f7f3}button,input,select{font:inherit}button{border:0;border-radius:999px;background:var(--teal);color:#fff;padding:.8rem 1.2rem;cursor:pointer;font-weight:700}button:hover{background:var(--teal-dark)}button:disabled{opacity:.55;cursor:not-allowed}.app-shell{min-height:100vh}.topbar{max-width:1180px;margin:auto;padding:1.2rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.brand{display:flex;align-items:center;gap:.65rem;color:var(--ink);font-weight:800;text-decoration:none;font-size:1.15rem}.brand-mark{display:grid;place-items:center;width:2rem;height:2rem;background:var(--coral);color:#fff;border-radius:50%}.main-nav{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.main-nav a{color:var(--muted);text-decoration:none;font-size:.92rem}.main-nav a.active{color:var(--teal-dark);font-weight:800}.main-nav select{width:auto;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:.35rem}.content{max-width:1180px;margin:auto;padding:3rem 1.5rem}.footer{max-width:1180px;margin:auto;padding:2rem 1.5rem;color:var(--muted);font-size:.85rem;border-top:1px solid var(--line)}h1,h2,h3,p{margin:0}h1{font-size:clamp(2.2rem,5vw,4.8rem);line-height:.98;letter-spacing:-.06em;color:var(--ink)}h2{letter-spacing:-.03em}.stack{display:flex;flex-direction:column;gap:1rem}.hero-section{display:grid;grid-template-columns:1.25fr .75fr;gap:2rem;align-items:center}.hero-copy{padding:2rem 0 4rem}.hero-copy p{font-size:1.2rem;line-height:1.6;color:var(--muted);max-width:36rem;margin:1.5rem 0}.eyebrow{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;font-weight:800;color:var(--coral);margin-bottom:.8rem}.hero-card,.panel,.card{background:var(--paper);border:1px solid var(--line);border-radius:1.5rem;box-shadow:var(--shadow)}.hero-card{padding:2rem;min-height:19rem;display:flex;flex-direction:column;justify-content:end}.hero-icon{font-size:4rem;color:var(--coral)}.hero-card p,.card p,.panel p{color:var(--muted);line-height:1.55}.feature-grid{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;border-top:1px solid var(--line);padding-top:2rem}.feature-grid article{padding:1rem}.feature-grid strong{color:var(--coral)}.feature-grid p{color:var(--muted);margin-top:.5rem}.page-heading{display:flex;justify-content:space-between;gap:2rem;align-items:end;margin-bottom:2rem}.page-heading p{color:var(--muted);margin-top:.8rem}.search{max-width:19rem;border:1px solid var(--line);border-radius:999px;padding:.8rem 1rem;background:var(--paper)}.notice{padding:1rem 1.2rem;background:#eef6ee;border:1px solid #d8e8d6;border-radius:1rem;color:#356158;margin-bottom:2rem}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.card{padding:1.4rem;display:flex;flex-direction:column;gap:.8rem}.card-meta,.tag-row,.row-gap,.row-between{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap}.card-meta,small,.muted{color:var(--muted);font-size:.85rem}.tag{background:#eef1ea;padding:.25rem .55rem;border-radius:999px;font-size:.78rem}.button-link{display:inline-block;width:max-content;text-decoration:none;border-radius:999px;background:var(--teal);color:#fff;padding:.8rem 1.2rem;font-weight:700}.button-link.secondary,.secondary{background:#e8efea;color:var(--teal-dark)}.link-button{background:transparent;color:var(--teal-dark);padding:.25rem}.locked-card{opacity:.8}.panel{padding:2rem}.narrow{max-width:38rem;margin:auto}.auth-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;max-width:980px;margin:auto}.auth-intro p{color:var(--muted);font-size:1.15rem;line-height:1.6;margin:1.2rem 0}.check-list{padding:0;list-style:none;color:var(--muted);line-height:2}.check-list li:before{content:"✓";color:var(--teal);font-weight:700;margin-right:.6rem}label{display:flex;flex-direction:column;gap:.4rem;color:var(--ink);font-weight:700;font-size:.92rem}input,select{width:100%;border:1px solid var(--line);border-radius:.8rem;background:#fff;padding:.75rem;color:var(--ink)}input:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid rgba(238,117,92,.5);outline-offset:3px}.checkbox{display:grid;grid-template-columns:auto 1fr;align-items:start;font-weight:400}.checkbox input{width:auto}.error{padding:.7rem;background:#fff0ee;border:1px solid #f4c4bc;color:#a3473a;border-radius:.7rem}.status{color:var(--muted)}.runner{max-width:760px;margin:auto}.runner-top{display:flex;justify-content:space-between;gap:1rem}.progress{height:.5rem;background:#e5ebe5;border-radius:99px;overflow:hidden}.progress span{display:block;height:100%;background:var(--coral);transition:width .2s}.option-grid{display:grid;gap:.7rem}.option-card{display:flex;flex-direction:row;align-items:center;border:1px solid var(--line);border-radius:1rem;padding:1rem;cursor:pointer;background:#fff}.option-card.selected{border-color:var(--teal);background:#eef7f3}.option-card input{width:auto;margin-right:.7rem}.question-image{max-width:100%;border-radius:1rem}.result-hero{margin-bottom:2rem}.result-hero p{color:var(--muted);margin-top:.8rem}.result-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.score-panel{background:var(--teal-dark);color:#fff}.score-label{opacity:.8}.score{font-size:5rem;line-height:1;margin:.8rem 0}.score-panel p{color:#d6ebe4}.history-row{flex-direction:row;justify-content:space-between;align-items:center}.empty-state{text-align:center;padding:5rem 1rem;display:flex;flex-direction:column;gap:1rem;align-items:center}.avatar{width:4rem;height:4rem;border-radius:50%;object-fit:cover}.placeholder{display:grid;place-items:center;background:#e4eee8;color:var(--teal);font-size:1.5rem}.plan-card strong{font-size:1.8rem;color:var(--teal-dark)}.plan-card ul{padding-left:1.2rem;line-height:1.8;color:var(--muted)}@media (max-width:760px){.topbar{align-items:flex-start;flex-direction:column}.main-nav{gap:.7rem}.content{padding:2rem 1rem}.hero-section,.auth-grid,.result-grid{grid-template-columns:1fr}.hero-copy{padding:1rem 0}.feature-grid{grid-template-columns:1fr}.page-heading{align-items:stretch;flex-direction:column}.search{max-width:none}.history-row{align-items:flex-start;flex-direction:column}}
