:root{--bg:#fbf7f0;--bg-grad:radial-gradient(120% 80% at 50% -10%, #fff6ea 0%, #fbf7f0 55%, #f4eee4 100%);--surface:#fff;--chip:#f1ebe0;--line:#e7ded0;--ink:#2c2740;--ink-soft:#574f6b;--ink-faint:#948aa3;--accent:#6c5ce7;--accent-ink:#4a3fb0;--accent-ghost:#6c5ce71f;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg-grad);min-height:100vh;color:var(--ink);background-attachment:fixed;line-height:1.5}h1,h2,h3{font-weight:700}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}a{color:var(--accent-ink)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.wheel-wrap{-webkit-user-select:none;user-select:none;width:min(92vw,560px);margin:0 auto;position:relative}.wheel{cursor:grab;touch-action:none;width:100%;height:auto;display:block;overflow:visible}.wheel:active{cursor:grabbing}.wheel-ring{transform-origin:50%;animation:.36s cubic-bezier(.22,1,.36,1) ring-in}@keyframes ring-in{0%{opacity:0;transform:scale(.86)rotate(-6deg)}to{opacity:1;transform:scale(1)rotate(0)}}.wedge{cursor:pointer;outline:none}.wedge path{transform-origin:50%;stroke:#ffffff8c;stroke-width:1px;transition:filter .16s,transform .16s}.wedge:hover path,.wedge.is-active path,.wedge:focus-visible path{filter:brightness(1.06)saturate(1.08)}.wedge:active path{filter:brightness(.94)saturate(1.12);stroke:#1e1b2e;stroke-width:2px}.wedge:focus-visible path{stroke:#1e1b2e;stroke-width:2.5px}.wedge-label{fill:#2a2640;letter-spacing:.01em;pointer-events:none;paint-order:stroke;font-weight:600}.hub-selectable{cursor:pointer;outline:none}.hub circle{stroke:#fff9;stroke-width:1.5px;transition:filter .16s}.hub-selectable:hover circle,.hub-selectable:focus-visible circle{filter:brightness(1.06)}.hub-selectable:focus-visible circle{stroke:#1e1b2e;stroke-width:3px}.hub-word{fill:#211d34;letter-spacing:-.01em;font-weight:800}.hub-cta{fill:#211d34;opacity:.78;font-size:13px;font-weight:700}.hub-hint{fill:#211d34;opacity:.55;font-size:11.5px;font-style:italic}.hub-root-circle{fill:#fffaf3;stroke:#ece3d6;stroke-width:2px}.hub-root-title{fill:#3a3354;letter-spacing:-.01em;font-size:23px;font-weight:800}.wheel-back{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#4a4366;cursor:pointer;background:#ffffffd1;border:none;border-radius:999px;padding:.4rem .85rem;font-size:.92rem;font-weight:700;transition:transform .14s,background .14s;position:absolute;top:6px;left:6px;box-shadow:0 2px 10px #281e461f}.wheel-back:hover{background:#fff;transform:translate(-2px)}@media (prefers-reduced-motion:reduce){.wheel-ring{animation:none}.wedge path,.hub circle,.wheel-back{transition:none}}.wheel-screen{flex-direction:column;align-items:center;gap:1.25rem;padding:1rem 1rem 2rem;display:flex}.intro{text-align:center;max-width:32rem}.intro h1{letter-spacing:-.02em;margin:0 0 .5rem;font-size:clamp(1.6rem,5vw,2.4rem)}.intro p{color:var(--ink-soft);margin:0;line-height:1.55}.search{width:min(92vw,26rem);position:relative}.search input{border:1.5px solid var(--line);background:var(--surface);width:100%;color:var(--ink);border-radius:999px;padding:.75rem 1.1rem;font-size:1rem;box-shadow:0 1px 8px #281e460d}.search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ghost);outline:none}.search-results{z-index:5;background:var(--surface);border:1px solid var(--line);border-radius:1rem;margin:0;padding:.35rem;list-style:none;position:absolute;top:calc(100% + .4rem);left:0;right:0;box-shadow:0 12px 36px #281e4629}.search-results button{cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;border-radius:.6rem;justify-content:space-between;align-items:center;padding:.6rem .8rem;font-size:1rem;display:flex}.search-results button:hover{background:var(--accent-ghost)}.search-core{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-faint);font-size:.72rem}.search-empty{z-index:5;background:var(--surface);border:1px solid var(--line);color:var(--ink-faint);text-align:center;border-radius:1rem;padding:.8rem 1rem;font-size:.92rem;position:absolute;top:calc(100% + .4rem);left:0;right:0;box-shadow:0 12px 36px #281e461f}.breadcrumb{flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem;display:flex}.breadcrumb button{background:var(--chip);color:var(--ink-soft);cursor:pointer;border:none;border-radius:999px;padding:.3rem .7rem;font-size:.85rem;font-weight:600}.breadcrumb button[aria-current=true]{background:var(--accent);color:#fff}.wheel-tip{color:var(--ink-faint);text-align:center;margin:-.25rem 0 0;font-size:.85rem}.recents{text-align:center;width:min(92vw,32rem)}.recents h2{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin:0 0 .6rem;font-size:.8rem}.recent-chips{flex-wrap:wrap;justify-content:center;gap:.5rem;display:flex}.recent-chips button{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:.35rem .85rem;font-size:.9rem;transition:border-color .14s}.recent-chips button:hover{border-color:var(--accent);color:var(--ink)}.support{--feel:hsl(var(--hue) 48% 44%);--feel-soft:hsl(var(--hue) 58% 94%);--feel-ink:hsl(var(--hue) 46% 26%);max-width:44rem;margin:0 auto;padding:1rem 1.15rem 3rem}.support-top{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.back-link{background:var(--chip);color:var(--ink-soft);cursor:pointer;border:none;border-radius:999px;padding:.35rem .8rem;font-size:.88rem;font-weight:700}.support-crumb{color:var(--ink-faint);font-size:.85rem}.support-crumb a{color:var(--ink-soft);text-decoration:none}.support-crumb a:hover{text-decoration:underline}.support-crumb .sep{opacity:.5;margin:0 .35rem}.support-crumb strong{color:var(--feel-ink)}.support-hero{background:var(--feel-soft);border:1px solid hsl(var(--hue) 45% 86%);border-left:5px solid var(--feel);border-radius:1.4rem;margin-bottom:1.75rem;padding:1.75rem 1.6rem 1.75rem 1.85rem}.support-eyebrow{text-transform:uppercase;letter-spacing:.1em;color:var(--feel);font-size:.72rem;font-weight:700}.support-hero h1{letter-spacing:-.03em;color:var(--feel-ink);margin:.2rem 0 .7rem;font-size:clamp(2.2rem,8vw,3.2rem)}.support-validation{color:var(--ink);margin:0;font-size:1.18rem;line-height:1.55}.support-block{margin-bottom:1.9rem}.support-block h2{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin:0 0 .7rem;font-size:.82rem}.support-block>p{color:var(--ink);margin:0;font-size:1.06rem;line-height:1.65}.tool-grid{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:.85rem;display:grid}.tool-card{background:var(--surface);border:1px solid var(--line);border-left:3px solid var(--feel);border-radius:.9rem;padding:1rem 1.1rem}.tool-card h3{color:var(--feel-ink);margin:0 0 .35rem;font-size:1.04rem}.tool-card p{color:var(--ink-soft);margin:0;line-height:1.55}.advice-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.advice-list li{color:var(--ink);padding-left:1.7rem;line-height:1.55;position:relative}.advice-list li:before{content:"";background:var(--feel);opacity:.5;border-radius:50%;width:.7rem;height:.7rem;position:absolute;top:.45em;left:0}.reflect .prompt{color:var(--feel-ink);margin:0 0 .8rem;font-size:1.15rem;font-style:italic;line-height:1.5}.reflect textarea{border:1.5px solid var(--line);width:100%;font:inherit;resize:vertical;background:var(--surface);color:var(--ink);border-radius:.9rem;padding:.85rem 1rem;font-size:1rem}.reflect textarea:focus{border-color:var(--feel);box-shadow:0 0 0 3px hsl(var(--hue) 60% 90%);outline:none}.reflect-note{color:var(--ink-faint);margin:.4rem 0 0;font-size:.8rem}.why-toggle{border:1px solid var(--line);background:var(--surface);color:var(--ink-soft);cursor:pointer;border-radius:999px;margin-bottom:.5rem;padding:.5rem 1rem;font-weight:600}.support-why{background:var(--chip);color:var(--ink-soft);border-radius:1rem;margin:.6rem 0 1.5rem;padding:1.1rem 1.25rem;font-size:.96rem;line-height:1.6}.modalities{flex-wrap:wrap;gap:.4rem;margin:.7rem 0;display:flex}.modality-chip{background:var(--feel-soft);color:var(--feel-ink);border-radius:999px;padding:.2rem .7rem;font-size:.8rem;font-weight:600}.sources{margin:.5rem 0 0;padding-left:1.1rem;font-size:.9rem}.sources li{margin-bottom:.3rem}.support-related{border-top:1px solid var(--line);gap:1.2rem;margin-top:.5rem;padding-top:1.5rem;display:grid}.support-related h2{text-transform:uppercase;letter-spacing:.08em;color:var(--ink-faint);margin:0 0 .6rem;font-size:.82rem}.related-chips{flex-wrap:wrap;gap:.5rem;display:flex}.related-chips a{background:var(--surface);border:1px solid var(--line);color:var(--ink-soft);border-radius:999px;padding:.4rem .9rem;font-size:.92rem;text-decoration:none;transition:border-color .14s}.related-chips a:hover{border-color:var(--feel);color:var(--feel-ink)}.support-foot{text-align:center;margin-top:2rem}.btn{background:var(--feel);color:#fff;border-radius:999px;padding:.7rem 1.4rem;font-weight:700;text-decoration:none;display:inline-block}.not-found{text-align:center;padding-top:3rem}.admin{grid-template-columns:18rem 1fr;gap:1rem;min-height:80vh;padding:0 1rem 2rem;display:grid}@media (width<=720px){.admin{grid-template-columns:1fr}}.admin-list{background:var(--surface);border:1px solid var(--line);border-radius:1rem;flex-direction:column;gap:.6rem;max-height:85vh;padding:.8rem;display:flex;position:sticky;top:1rem}.admin-list-head{flex-direction:column;gap:.5rem;display:flex}.admin-exit{font-size:.85rem;font-weight:700;text-decoration:none}.admin-list-head input{border:1px solid var(--line);border-radius:.6rem;width:100%;padding:.5rem .7rem}.admin-groups{flex:1;overflow-y:auto}.admin-group h3{text-transform:uppercase;letter-spacing:.08em;margin:.7rem 0 .3rem;font-size:.72rem}.admin-item{text-align:left;cursor:pointer;width:100%;color:var(--ink-soft);background:0 0;border:none;border-radius:.45rem;align-items:center;gap:.4rem;padding:.3rem .5rem;font-size:.9rem;display:flex}.admin-item.r2{padding-left:1rem}.admin-item.r3{color:var(--ink-faint);padding-left:1.6rem;font-size:.85rem}.admin-item:hover{background:var(--accent-ghost)}.admin-item.is-sel{background:var(--accent);color:#fff}.admin-item .dot{background:#e8915a;border-radius:50%;width:7px;height:7px;margin-left:auto}.admin-export,.admin-reset-all{border:1px solid var(--line);background:var(--chip);cursor:pointer;border-radius:.6rem;padding:.55rem;font-size:.85rem;font-weight:600}.admin-reset-all{color:#b0463a;background:0 0}.admin-editor{background:var(--surface);border:1px solid var(--line);border-radius:1rem;padding:1.25rem 1.4rem 2rem}.admin-editor-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.1rem;padding-bottom:.9rem;display:flex}.admin-eyebrow{color:var(--ink-faint);text-transform:capitalize;font-size:.75rem}.admin-eyebrow code{text-transform:none}.admin-editor-head h2{margin:.2rem 0 0;font-size:1.5rem}.admin-actions{gap:.5rem;display:flex}.admin-actions button{cursor:pointer;border:1px solid var(--line);border-radius:.6rem;padding:.5rem 1rem;font-weight:700}.admin-actions .primary{background:var(--accent);color:#fff;border-color:var(--accent)}.admin-actions .primary:disabled{opacity:.45;cursor:default}.admin-actions .ghost{color:var(--ink-soft);background:0 0}.admin-field{margin-bottom:1rem;display:block}.admin-field>span{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-faint);margin-bottom:.35rem;font-size:.75rem;font-weight:700;display:block}.admin-field input,.admin-field textarea{border:1.5px solid var(--line);width:100%;font:inherit;color:var(--ink);resize:vertical;border-radius:.6rem;padding:.55rem .75rem;font-size:.95rem}.admin-field input:focus,.admin-field textarea:focus{border-color:var(--accent);outline:none}.row-card{border:1px solid var(--line);border-radius:.6rem;flex-direction:column;gap:.4rem;margin-bottom:.5rem;padding:.6rem;display:flex}.row-del{color:#b0463a;cursor:pointer;background:0 0;border:none;align-self:flex-end;font-size:.8rem}.row-add{border:1px dashed var(--line);cursor:pointer;width:100%;color:var(--ink-soft);background:0 0;border-radius:.6rem;padding:.45rem;font-weight:600}.admin-editor hr{border:none;border-top:1px solid var(--line);margin:1.4rem 0}.admin-note{color:var(--ink-faint);margin-top:1.5rem;font-size:.85rem;line-height:1.5}.admin-toast{background:var(--ink);color:#fff;z-index:50;border-radius:999px;padding:.6rem 1.1rem;font-size:.9rem;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000040}.about{max-width:42rem;margin:0 auto;padding:1.5rem 1.2rem 3rem}.about h1{letter-spacing:-.02em;margin:0 0 .8rem;font-size:clamp(1.8rem,6vw,2.6rem)}.about .lead{color:var(--ink);margin:0 0 2rem;font-size:1.15rem;line-height:1.6}.about section{margin-bottom:1.8rem}.about h2{color:var(--accent-ink);margin:0 0 .5rem;font-size:1.15rem}.about p{color:var(--ink-soft);margin:0 0 .7rem;line-height:1.65}.about ul{color:var(--ink-soft);padding-left:1.2rem;line-height:1.6}.about ul li{margin-bottom:.35rem}.about .safety{background:var(--chip);border-radius:1rem;padding:1.1rem 1.3rem}.about .safety h2{color:var(--ink)}.about-back{color:var(--accent-ink);margin-top:1rem;font-weight:700;text-decoration:none;display:inline-block}.app{flex-direction:column;min-height:100vh;display:flex}.app-header{justify-content:space-between;align-items:center;width:100%;max-width:64rem;margin:0 auto;padding:.9rem 1.25rem;display:flex}.brand{letter-spacing:-.01em;color:var(--ink);align-items:center;gap:.55rem;font-size:1.05rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{width:1.4rem;height:1.4rem;box-shadow:inset 0 0 0 3px var(--bg);background:conic-gradient(#e0bd52,#5cadd6,#64c48c,#9e75d7,#dd705f,#8cc464,#698cd3,#e0bd52);border-radius:50%}.app-nav a{color:var(--ink-soft);font-size:.95rem;font-weight:600;text-decoration:none}.app-nav a:hover{color:var(--ink)}.app-main{flex:1;width:100%;max-width:64rem;margin:0 auto}.app-footer{text-align:center;border-top:1px solid var(--line);max-width:44rem;margin:2rem auto 0;padding:1.5rem 1.25rem 2.5rem}.app-footer p{color:var(--ink-faint);margin:0 0 .5rem;font-size:.85rem;line-height:1.55}.app-footer-meta a{color:var(--ink-soft)}
