:root{color-scheme:light dark;--bg: #f7f6f3;--bg-glow: rgb(99 102 241 / .08);--surface: #ffffff;--surface-2: #f3f2ee;--surface-3: #fafaf8;--surface-hover: #f5f5ff;--border: #e7e5df;--border-strong: #d4d1c9;--text: #1a1a19;--text-2: #3f3e3a;--muted: #6c6a64;--faint: #a8a59d;--accent: #4f46e5;--accent-hover: #4338ca;--accent-soft: #eef0ff;--accent-soft-2: #e0e3ff;--accent-text: #4338ca;--accent-muted: #8b91f0;--accent-ring: rgb(79 70 229 / .22);--on-accent: #ffffff;--good: #15803d;--good-soft: #eaf7ee;--good-border: #b9e2c5;--bad: #c62828;--bad-soft: #fdeeee;--bad-border: #f3c4c4;--warn: #b45309;--warn-soft: #fff5e6;--warn-border: #f6d6a8;--star: #f5a524;--radius-lg: 18px;--radius: 12px;--radius-sm: 8px;--shadow-xs: 0 1px 2px rgb(24 24 20 / .05);--shadow: 0 1px 2px rgb(24 24 20 / .04), 0 4px 12px -2px rgb(24 24 20 / .06);--shadow-md: 0 2px 4px rgb(24 24 20 / .04), 0 12px 28px -6px rgb(24 24 20 / .12);--shadow-lg: 0 24px 64px -12px rgb(24 24 20 / .28), 0 4px 12px rgb(24 24 20 / .06);--overlay: rgb(22 22 20 / .4);--ease: cubic-bezier(.2, .8, .2, 1);--tap: 40px;font-family:Inter var,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif;font-size:15px;line-height:1.55;font-feature-settings:"cv11","ss01","ss03";color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}@media(prefers-color-scheme:dark){:root{--bg: #111113;--bg-glow: rgb(99 102 241 / .14);--surface: #1a1a1d;--surface-2: #242428;--surface-3: #1e1e22;--surface-hover: #22223a;--border: #2d2d33;--border-strong: #3d3d45;--text: #ededee;--text-2: #cfcfd3;--muted: #9b9ba3;--faint: #62626b;--accent: #6366f1;--accent-hover: #7477f4;--accent-soft: #25264a;--accent-soft-2: #2f3160;--accent-text: #a9abff;--accent-muted: #5f63c9;--accent-ring: rgb(124 127 245 / .35);--on-accent: #ffffff;--good: #4ade80;--good-soft: #15291d;--good-border: #22573a;--bad: #f87171;--bad-soft: #321a1b;--bad-border: #6b2a2c;--warn: #fbbf24;--warn-soft: #30240f;--warn-border: #654a17;--star: #f5b83d;--shadow-xs: 0 1px 2px rgb(0 0 0 / .3);--shadow: 0 1px 2px rgb(0 0 0 / .3), 0 4px 12px -2px rgb(0 0 0 / .3);--shadow-md: 0 2px 4px rgb(0 0 0 / .3), 0 12px 28px -6px rgb(0 0 0 / .5);--shadow-lg: 0 24px 64px -12px rgb(0 0 0 / .7), 0 0 0 1px rgb(255 255 255 / .05);--overlay: rgb(0 0 0 / .6)}}@media(pointer:coarse){:root{--tap: 44px}}*{box-sizing:border-box}html{scroll-padding-top:72px}body{margin:0;min-height:100vh;min-height:100dvh;background:radial-gradient(1200px 520px at 50% -180px,var(--bg-glow),transparent 70%),var(--bg);background-repeat:no-repeat}::selection{background:var(--accent-soft-2)}h1,h2,h3{margin:0;line-height:1.2;letter-spacing:-.02em;font-weight:680;color:var(--text)}h1{font-size:1.75rem;letter-spacing:-.028em}h2{font-size:1.28rem}h3{font-size:1rem;letter-spacing:-.01em}p{margin:0}strong{font-weight:620}a{color:var(--accent-text);text-decoration:none}a:hover{color:var(--accent)}button{font:inherit;color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.4}input,select,textarea{font:inherit;color:inherit;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:9px 12px;width:100%;min-width:0;min-height:var(--tap);box-shadow:var(--shadow-xs);transition:border-color .15s,box-shadow .15s}textarea{min-height:0;line-height:1.5}input::placeholder,textarea::placeholder{color:var(--faint)}input:hover:not(:focus):not(:disabled),select:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled){border-color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring)}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}select{appearance:none;-webkit-appearance:none;padding-right:34px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%23888' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 11px center;cursor:pointer}input[type=checkbox],input[type=radio]{width:16px;height:16px;min-height:0;margin:0;accent-color:var(--accent);box-shadow:none;flex-shrink:0;cursor:pointer}input[type=date]{font-variant-numeric:tabular-nums}kbd{font:500 10.5px ui-monospace,SFMono-Regular,Menlo,monospace;min-width:18px;padding:1px 5px;border:1px solid var(--border-strong);border-bottom-width:2px;border-radius:5px;color:var(--muted);background:var(--surface);margin-left:6px;display:inline-block;text-align:center;line-height:1.5}details>summary{list-style:none}details>summary::-webkit-details-marker{display:none}details>summary:before{content:"";display:inline-block;width:7px;height:7px;margin:0 10px 2px 2px;border-right:1.6px solid currentColor;border-bottom:1.6px solid currentColor;transform:rotate(-45deg);transition:transform .2s var(--ease);vertical-align:middle}details[open]>summary:before{transform:rotate(45deg);margin-bottom:4px}.muted{color:var(--muted)}.small{font-size:.85rem}.spacer{flex:1}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.error{color:var(--bad);margin:8px 0;padding:10px 14px;background:var(--bad-soft);border:1px solid var(--bad-border);border-radius:var(--radius-sm);font-size:.9rem}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px max(24px,env(safe-area-inset-right)) 10px max(24px,env(safe-area-inset-left));padding-top:max(10px,env(safe-area-inset-top));min-height:60px;border-bottom:1px solid color-mix(in srgb,var(--border) 70%,transparent);background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:saturate(180%) blur(14px);backdrop-filter:saturate(180%) blur(14px);position:sticky;top:0;z-index:20}.topbar>.row{gap:6px;flex-wrap:nowrap}.topbar .muted.small{margin-right:10px;display:inline-flex;align-items:center;gap:6px;font-size:.8rem}.topbar .muted.small:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--good);box-shadow:0 0 0 3px var(--good-soft)}.topbar .link-btn{white-space:nowrap;padding:7px 12px;border-radius:999px;color:var(--text-2);font-weight:550;font-size:.86rem}.topbar .link-btn:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.brand{font-weight:720;font-size:1.02rem;letter-spacing:-.02em;color:var(--text);display:flex;gap:10px;align-items:center}.brand:hover{color:var(--text)}.brand-mark{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:8px;color:#fff;background:linear-gradient(140deg,#6d6af8,#4f46e5 55%,#3730a3);box-shadow:inset 0 1px #ffffff40,0 2px 6px -1px #4f46e580}.brand-mark svg{width:16px;height:16px;display:block}.page{max-width:1040px;margin:0 auto;padding:40px 24px 96px;display:flex;flex-direction:column;gap:40px}.page-wide{max-width:1200px;gap:24px;padding-top:28px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;flex-wrap:wrap}.btn-icon{width:16px;height:16px;flex-shrink:0}.btn{display:inline-flex;align-items:center;gap:7px;justify-content:center;min-height:var(--tap);padding:8px 16px;border-radius:10px;border:1px solid transparent;font-weight:580;font-size:.92rem;letter-spacing:-.005em;white-space:nowrap;line-height:1.2;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;text-decoration:none}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:inset 0 1px #ffffff29,0 1px 2px #18183c33,0 2px 8px -2px color-mix(in srgb,var(--accent) 60%,transparent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--on-accent)}.btn-secondary{background:var(--surface);border-color:var(--border-strong);color:var(--text);box-shadow:var(--shadow-xs)}.btn-secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--faint);color:var(--text)}.btn-ghost{background:transparent;color:var(--text-2)}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn-danger-ghost{background:transparent;color:var(--bad)}.btn-danger-ghost:hover{background:var(--bad-soft);color:var(--bad)}.btn.disabled{opacity:.4;pointer-events:none;box-shadow:none}.icon-btn{border:none;background:transparent;width:34px;height:34px;border-radius:8px;display:inline-grid;place-items:center;color:var(--muted);flex-shrink:0;transition:background .15s,color .15s}.icon-btn:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.icon-btn.sm{width:28px;height:28px;font-size:.8rem}.link-btn{border:none;background:none;padding:0;color:var(--accent-text);font-size:.86rem;font-weight:550}.link-btn:hover{text-decoration:underline;text-underline-offset:3px}.hero{display:flex;flex-direction:column;gap:16px;padding-top:16px}.hero h1{font-size:clamp(2rem,1.3rem + 2.6vw,3rem);font-weight:750;letter-spacing:-.035em;line-height:1.08;max-width:780px}.lead{font-size:1.1rem;line-height:1.6;color:var(--muted);max-width:640px}.flow{list-style:none;padding:0;margin:16px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;counter-reset:flow}.flow li{position:relative;display:flex;flex-direction:column;gap:4px;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);font-size:.9rem;box-shadow:var(--shadow-xs)}.flow li strong{font-size:.95rem}.flow li span:last-child{color:var(--muted);line-height:1.5}.flow-n{width:28px;height:28px;border-radius:8px;background:var(--accent-soft);color:var(--accent-text);display:grid;place-items:center;font-size:.8rem;font-weight:750;margin-bottom:8px;font-variant-numeric:tabular-nums}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.card{display:flex;flex-direction:column;gap:8px;text-align:left;padding:18px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);color:var(--text);transition:border-color .18s,box-shadow .18s}a.card:hover{color:var(--text)}.decision-card{min-height:164px}.decision-card strong{font-size:1.05rem;letter-spacing:-.01em}.decision-card>.muted.small:last-child{margin-top:auto;padding-top:10px;border-top:1px solid var(--border);font-size:.8rem}.decision-emoji{font-size:1.5rem;line-height:1}.decision-card .decision-emoji{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);font-size:1.35rem;margin-bottom:4px}.decision-stats{display:flex;gap:6px;font-size:.8rem;color:var(--muted);flex-wrap:wrap}.decision-stats>span{padding:2px 8px;background:var(--surface-2);border-radius:999px}.empty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:48px 24px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--surface) 50%,transparent);color:var(--muted);width:100%;transition:border-color .18s,background .18s}.empty strong{color:var(--text);font-size:1.05rem}.empty-cta:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--muted)}.empty-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;font-size:1.4rem;color:var(--accent);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);margin-bottom:6px}.overlay{position:fixed;inset:0;background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;display:flex;animation:fade .18s}.overlay-center{justify-content:center;align-items:center;padding:4vh 16px}.modal{background:var(--surface);border-radius:var(--radius-lg);width:100%;max-width:640px;max-height:92vh;max-height:92dvh;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:pop .22s var(--ease);overflow:hidden}.drawer-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:22px 24px 14px}.drawer-head h2{font-size:1.2rem}.drawer-head p{margin-top:4px;font-size:.9rem}.drawer-head .icon-btn{margin:-4px -8px 0 0}.drawer-body{padding:8px 24px 24px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.drawer-foot{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:14px 24px;border-top:1px solid var(--border);background:var(--surface-3)}.modal-lg{max-width:860px}.modal .drawer-body{min-height:0}.modal-subtitle{margin-top:4px;font-size:.9rem}.toast{display:flex;align-items:center;gap:8px;padding:9px 14px;border-radius:var(--radius-sm);background:var(--good-soft);border:1px solid var(--good-border);color:var(--good);font-size:.9rem;font-weight:580;animation:pop .25s var(--ease)}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{transform:translateY(6px) scale(.98);opacity:0}}@keyframes sheet{0%{transform:translateY(100%)}}.field{display:flex;flex-direction:column;gap:7px}.field-label{font-weight:600;font-size:.88rem;color:var(--text)}.field-hint{font-size:.8rem;color:var(--muted);line-height:1.45}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.grid-emoji{display:grid;grid-template-columns:80px 1fr;gap:14px}.emoji-input{text-align:center;font-size:1.3rem;padding:4px}.form-section{display:flex;flex-direction:column;gap:16px;padding-top:22px;border-top:1px solid var(--border)}.form-section:first-of-type{border-top:none;padding-top:0}.form-section h3{font-size:.98rem;font-weight:680}.advanced summary{cursor:pointer;font-weight:600;font-size:.92rem;color:var(--muted);padding:4px 0;border-radius:6px}.advanced summary:hover{color:var(--text)}.advanced[open] summary{margin-bottom:8px;color:var(--text)}.input-unit{display:flex;align-items:center;position:relative}.input-unit input{padding-right:52px;font-variant-numeric:tabular-nums}.unit{position:absolute;right:12px;color:var(--muted);font-size:.85rem;pointer-events:none}.range{display:flex;align-items:center;gap:8px}.range>span{color:var(--muted)}.checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;min-height:28px}.select-inline{width:auto;min-height:34px;padding:5px 30px 5px 12px;font-size:.84rem;font-weight:550;color:var(--text-2);border-radius:999px;background-color:transparent;box-shadow:none;border-color:var(--border);background-position:right 10px center}.select-inline:hover{background-color:var(--surface-2)}.question{display:flex;flex-direction:column;gap:8px}.question-q{font-weight:580}.question-a{margin-top:2px}.segmented{display:inline-flex;flex-wrap:wrap;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:3px;gap:2px;max-width:100%}.segmented button{border:none;background:transparent;min-height:calc(var(--tap) - 8px);padding:6px 14px;border-radius:7px;font-size:.9rem;font-weight:520;color:var(--muted);transition:background .15s,color .15s,box-shadow .15s}.segmented button:hover{color:var(--text)}.segmented button.on{background:var(--surface);color:var(--text);font-weight:620;box-shadow:0 1px 2px #00000014,0 1px 6px -1px #00000014}.segmented-sm button{min-height:0;padding:4px 10px;font-size:.84rem}.radio-list{display:flex;flex-direction:column;gap:8px}.radio-card{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.radio-card:hover{border-color:var(--border-strong)}.radio-card input{margin-top:3px}.radio-card span{display:flex;flex-direction:column}.radio-card.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 1px var(--accent) inset}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--border-strong);background:var(--surface);border-radius:999px;min-height:32px;padding:4px 13px;font-size:.87rem;transition:background .15s,border-color .15s,color .15s}.chip:hover{border-color:var(--accent)}.chip-on{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.chip-strike{text-decoration:line-through;opacity:.7}.chip-sm{min-height:0;padding:2px 9px;font-size:.76rem;color:var(--muted);white-space:nowrap}.chip-bad{background:var(--bad-soft);border-color:var(--bad-border);color:var(--bad)}.chip-good{background:var(--good-soft);border-color:var(--good-border);color:var(--good)}.rating{display:flex;gap:4px;flex-wrap:wrap}.rating button{min-width:34px;height:34px;border-radius:8px;border:1px solid var(--border-strong);background:var(--surface);color:var(--muted);font-size:.9rem;font-variant-numeric:tabular-nums;transition:background .12s,border-color .12s,color .12s}.rating button:hover{border-color:var(--star)}.rating button.on{background:var(--star);border-color:var(--star);color:#fff;font-weight:650}.optlist{display:flex;flex-direction:column;gap:8px}.optlist ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.optlist li{display:flex;align-items:center;gap:6px}.optlist li input{padding:6px 12px}.optlist li.flag-bad input{text-decoration:line-through;color:var(--bad)}.optlist-rank{width:22px;text-align:right;color:var(--muted);font-size:.8rem;flex-shrink:0;font-variant-numeric:tabular-nums}.optlist-add{display:flex;gap:8px}.type-picker{display:flex;flex-direction:column;gap:22px}.group-title{font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:10px}.type-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.type-card{display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto auto;column-gap:12px;row-gap:2px;text-align:left;padding:14px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .15s,background .15s,box-shadow .15s}.type-card:hover{border-color:var(--accent);background:var(--accent-soft)}.type-card .type-icon{grid-row:1 / 4}.type-name{font-weight:620}.type-hint{font-size:.85rem;color:var(--text-2)}.type-examples{font-size:.78rem;color:var(--muted)}.type-icon{width:34px;height:34px;border-radius:9px;background:var(--accent-soft);color:var(--accent-text);display:inline-grid;place-items:center;font-weight:700;flex-shrink:0}.type-icon.sm{width:22px;height:22px;border-radius:6px;font-size:.72rem;vertical-align:middle}.type-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}.type-badge{background:var(--accent-soft);color:var(--accent-text);border-radius:999px;padding:2px 10px;font-size:.84rem;font-weight:600}.config-layout{display:grid;grid-template-columns:1fr 220px;gap:22px;align-items:start}.config-questions{display:flex;flex-direction:column;gap:18px}.curve-preview{margin:0;padding:14px;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius);position:sticky;top:0}.curve-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);margin-bottom:6px}.curve{fill:none;stroke:var(--accent);stroke-width:2.5;stroke-linejoin:round;stroke-linecap:round}.curve-dashed{stroke-dasharray:4 3}.axis{stroke:var(--border-strong);stroke-width:1}.bar{fill:var(--accent);opacity:.85}.bar-unknown{fill:var(--border-strong);opacity:1}.bar-struck{fill:var(--bad);opacity:.25}.bar-q{font-size:10px;fill:var(--muted);text-anchor:middle}.bar-label{font-size:8px;fill:var(--muted);text-anchor:middle}.curve-x{display:flex;justify-content:space-between;font-size:.72rem;color:var(--muted);padding:0 6px}.curve-caption{font-size:.78rem;color:var(--muted);margin-top:8px;line-height:1.45}.summary-box{padding:12px 16px;background:var(--accent-soft);border:1px solid var(--accent-soft-2);border-radius:var(--radius-sm);font-size:.9rem}.summary-warn{background:var(--warn-soft);border-color:var(--warn-border);color:var(--warn)}.decision-head{display:grid;grid-template-columns:1fr auto;grid-template-areas:"back back" "title actions";gap:10px 16px;align-items:center}.back{grid-area:back;justify-self:start;display:inline-flex;align-items:center;gap:4px;font-size:.85rem;font-weight:550;color:var(--muted);padding:4px 10px 4px 8px;margin-left:-8px;border-radius:999px;transition:background .15s,color .15s}.back:hover{color:var(--text);background:var(--surface-2)}.decision-title{grid-area:title;display:flex;align-items:center;gap:14px;min-width:0}.decision-title>div{min-width:0}.decision-title h1{overflow-wrap:anywhere}.decision-title .decision-emoji{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;flex-shrink:0;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);font-size:1.45rem}.decision-title p{margin-top:3px}.decision-head>.row{grid-area:actions;gap:4px}.stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:6px;background:color-mix(in srgb,var(--surface-2) 70%,transparent);border:1px solid var(--border);border-radius:calc(var(--radius) + 6px)}.step{position:relative;display:flex;gap:12px;align-items:center;padding:10px 12px;border-radius:var(--radius);background:transparent;border:1px solid transparent;color:var(--text);min-width:0;transition:background .15s,border-color .15s,box-shadow .15s}.step:hover{color:var(--text)}.step-n{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border-strong);font-size:.78rem;font-weight:700;color:var(--muted);flex-shrink:0;font-variant-numeric:tabular-nums;transition:background .15s,color .15s,border-color .15s}.step-text{display:flex;flex-direction:column;min-width:0;line-height:1.3}.step-text strong{font-size:.9rem;font-weight:620;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step-text span{font-size:.77rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.step.done .step-n{background:var(--good-soft);border-color:var(--good-border);color:var(--good)}.step.blocked:not(.active){opacity:.55}.step.active{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow)}.step.active .step-n{background:var(--accent);border-color:var(--accent);color:var(--on-accent);box-shadow:0 0 0 3px var(--accent-ring)}.step-page{display:flex;flex-direction:column;gap:20px;padding-top:4px}.step-intro{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.step-intro h2{font-size:1.4rem}.step-intro p{margin-top:8px;max-width:680px;line-height:1.6}.step-intro>.row{flex-wrap:nowrap}.next-step{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:22px;border-top:1px solid var(--border);margin-top:12px}.param-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.param-card{display:flex;align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs);transition:border-color .15s,box-shadow .15s}.param-main{flex:1;display:flex;align-items:center;gap:14px;padding:14px 16px;border:none;background:none;text-align:left;min-width:0;border-radius:var(--radius) 0 0 var(--radius)}.param-text{display:flex;flex-direction:column;flex:1;min-width:0;gap:1px}.param-text>strong{font-size:.98rem}.param-badges{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.param-actions{display:flex;flex-direction:column;padding-right:8px}.badge{font-size:.74rem;font-weight:620;padding:2px 9px;border-radius:999px;white-space:nowrap;border:1px solid transparent}.badge-hard{background:var(--surface-2);border-color:var(--border);color:var(--text-2)}.badge-warn{background:var(--warn-soft);border-color:var(--warn-border);color:var(--warn)}.badge-bad{background:var(--bad-soft);border-color:var(--bad-border);color:var(--bad)}.importance{display:inline-flex;gap:3px;padding:4px}.importance span{width:6px;height:16px;border-radius:2px;background:var(--border)}.importance span.on{background:var(--accent)}.progress{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden;box-shadow:inset 0 0 0 1px var(--border)}.progress.thin{height:4px}.progress>div{height:100%;background:linear-gradient(90deg,var(--accent-muted),var(--accent));border-radius:999px;transition:width .4s var(--ease)}.item-card-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.item-card.is-excluded{background:var(--surface-3)}.item-card.is-excluded strong{color:var(--muted)}.kv{margin:0;display:flex;flex-direction:column;gap:3px;font-size:.87rem}.kv>div{display:flex;justify-content:space-between;gap:12px}.kv dt{color:var(--muted)}.kv dd{margin:0;font-weight:550;text-align:right}.kv-missing dd{color:var(--faint)}.kv-bad dd{color:var(--bad)}.violation{color:var(--bad);font-size:.85rem}.value-rows{display:flex;flex-direction:column}.value-row{display:grid;grid-template-columns:220px 1fr;gap:8px 18px;padding:14px 0;border-bottom:1px solid var(--border);align-items:center}.value-row:last-child{border-bottom:none}.value-row-label{display:flex;gap:10px;align-items:center;font-weight:580}.value-row-input{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.value-row-input .input-unit{max-width:220px}.value-row-input input[type=date]{max-width:200px}.value-row .violation{grid-column:2}.has-violation .value-row-label{color:var(--bad)}.table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-xs);-webkit-overflow-scrolling:touch}.data-table{border-collapse:separate;border-spacing:0;width:100%;font-size:.87rem;font-variant-numeric:tabular-nums}.data-table th,.data-table td{padding:11px 14px;text-align:left;border-bottom:1px solid var(--border);white-space:nowrap}.data-table thead th{background:var(--surface-3);font-weight:620;font-size:.82rem;color:var(--text-2);position:sticky;top:0}.data-table tbody th{font-weight:560}.data-table tr:last-child>*{border-bottom:none}.sticky-col{position:sticky;left:0;background:var(--surface);z-index:1;border-right:1px solid var(--border)}thead .sticky-col{background:var(--surface-3);z-index:2}.clickable{cursor:pointer}.clickable:hover td,.clickable:hover th{background:var(--surface-hover)}.cell-missing{color:var(--faint)}.cell-bad{color:var(--bad);background:var(--bad-soft);font-weight:600}.cell-best{background:var(--good-soft);color:var(--good);font-weight:620}.col-excluded:not(.cell-bad){opacity:.5}.compare-table th .badge,.ext-link{margin-left:6px}.wyr-progress{display:flex;flex-direction:column;gap:8px}.wyr{display:flex;flex-direction:column;align-items:center;gap:16px;padding:32px 28px 24px;background:var(--surface);border:1px solid var(--border);border-radius:22px;box-shadow:var(--shadow-md);background-image:radial-gradient(600px 200px at 50% 0%,var(--accent-soft),transparent 70%)}.wyr-options{display:grid;grid-template-columns:1fr auto 1fr;gap:18px;align-items:center;width:100%;max-width:780px}.wyr-or{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-xs);color:var(--muted);font-size:.8rem;font-weight:650;font-style:normal;text-transform:lowercase}.wyr-card{display:flex;flex-direction:column;gap:14px;text-align:left;padding:20px;border:1.5px solid var(--border);border-radius:16px;background:var(--surface);box-shadow:var(--shadow);transition:border-color .18s,box-shadow .18s;min-height:150px}.wyr-label{display:flex;align-items:center;font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:720}.wyr-card dl{margin:0;display:flex;flex-direction:column;gap:8px}.wyr-card dl>div{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:10px;background:var(--surface-2);border:1px solid transparent}.wyr-card dt{font-size:.8rem;color:var(--muted);display:flex;align-items:center;gap:6px}.wyr-card dd{margin:0;font-size:1.18rem;font-weight:680;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.wyr-good{background:var(--good-soft)!important;border-color:var(--good-border)!important}.wyr-good dd{color:var(--good)}.wyr-bad dd{color:var(--text)}.wyr-same{text-align:center;max-width:640px}.wyr-secondary{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.note{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;font-size:.9rem}.note summary{cursor:pointer;color:var(--muted);font-weight:550}.note summary:hover{color:var(--text)}.reason-list{margin:10px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:4px;text-align:left;font-size:.9rem}.history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.history-list li{display:grid;grid-template-columns:1fr auto 1fr auto auto;gap:10px;align-items:center;padding:9px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85rem}.history-vs{color:var(--faint);font-weight:700;font-size:.78rem}.side-summary{color:var(--muted)}.side-summary.picked{color:var(--good);font-weight:620}.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stat{display:flex;flex-direction:column;gap:2px;padding:16px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs);font-size:.85rem;color:var(--muted)}.stat-n{font-size:1.75rem;font-weight:740;letter-spacing:-.03em;color:var(--text);font-variant-numeric:tabular-nums;line-height:1.15}.stat-bad .stat-n{color:var(--bad)}.stat-warn .stat-n{color:var(--warn)}.ranking-placeholder{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:22px;border:1.5px dashed var(--border-strong);border-radius:var(--radius-lg);align-items:center}.ranking-placeholder p{margin-top:6px;font-size:.9rem}.skeleton-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.skeleton-list li{display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:center;font-size:.88rem;color:var(--muted)}.skeleton-rank{font-weight:700}.skeleton-bar{height:8px;border-radius:999px;background:linear-gradient(90deg,var(--surface-2),var(--border),var(--surface-2));background-size:200% 100%;animation:shimmer 1.6s infinite linear}@keyframes shimmer{to{background-position:-200% 0}}.legend{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.legend span{display:inline-block;width:12px;height:12px;border-radius:4px;margin-left:10px}.legend span:first-child{margin-left:0}.legend-best{background:var(--good-soft);border:1px solid var(--good)}.legend-bad{background:var(--bad-soft);border:1px solid var(--bad)}.legend-missing{background:var(--surface);border:1px solid var(--border-strong)}.weights{display:flex;flex-direction:column;gap:8px}.bar-list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;max-width:660px}.bar-list li{display:grid;grid-template-columns:200px 1fr 90px;gap:6px 14px;align-items:center;font-size:.88rem}.bar-list-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-list-track{height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}.template-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.template-card{display:flex;flex-direction:column;gap:4px;text-align:left;padding:14px;border:1.5px solid var(--border);border-radius:var(--radius);background:var(--surface);transition:border-color .15s,background .15s,box-shadow .15s}.template-card .decision-emoji{margin-bottom:4px}.template-card:hover{border-color:var(--border-strong)}.template-card.on{border-color:var(--accent);background:var(--accent-soft);box-shadow:0 0 0 3px var(--accent-ring)}.callout{padding:14px 18px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);font-size:.92rem;line-height:1.55}.callout-good{background:var(--good-soft);border-color:var(--good-border)}.callout-good strong{color:var(--good)}.callout-warn{background:var(--warn-soft);border-color:var(--warn-border)}.learning{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px 22px;box-shadow:var(--shadow-xs)}.learning .section-head h2,.learning .section-head h3{font-size:1.05rem}.learning>p{line-height:1.55}.weights-list{display:flex;flex-direction:column;gap:10px}.weight-track{position:relative;height:12px;overflow:visible;background:var(--surface-2)}.weight-range{position:absolute;top:0;bottom:0;background:var(--accent-soft-2);border-radius:999px}.weight-bar{position:absolute;left:0;top:3px;height:6px;background:var(--accent);border-radius:999px}.weight-declared{position:absolute;top:-3px;width:2px;height:18px;background:var(--text);opacity:.45;border-radius:1px}.weight-value{font-weight:650;font-variant-numeric:tabular-nums}.option-values{grid-column:2 / 4;display:flex;flex-wrap:wrap;gap:4px}.option-value{font-size:.78rem;padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--good) calc(var(--v) * 30%),var(--surface-2))}.option-value.neg{background:color-mix(in srgb,var(--bad) calc(var(--v) * 30%),var(--surface-2))}.legend-weight{background:var(--accent)}.legend-range{background:var(--accent-soft-2)}.legend-declared{width:3px!important;background:var(--text);opacity:.45}.history-flag{border-color:var(--warn-border)!important;background:var(--warn-soft)!important}.ranking{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.rank-card{display:grid;grid-template-columns:44px 1fr 220px;gap:8px 18px;align-items:center;padding:16px 20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-xs)}.rank-card.top{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),var(--shadow-md);background-image:linear-gradient(100deg,var(--accent-soft),transparent 55%)}.rank-n{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:780;background:var(--surface-2);color:var(--muted);grid-row:1 / 3;font-variant-numeric:tabular-nums}.rank-card.top .rank-n{background:var(--accent);color:var(--on-accent);box-shadow:0 0 0 4px var(--accent-ring)}.rank-name{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.rank-name strong{font-size:1.08rem;letter-spacing:-.01em}.reasons{grid-column:2}.rank-score{display:flex;flex-direction:column;gap:6px;grid-row:1 / 3;grid-column:3}.rank-score-top{display:flex;justify-content:space-between;align-items:baseline}.rank-score-n{font-size:1.65rem;font-weight:780;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1}.score-track{position:relative;height:10px;background:var(--surface-2);border-radius:999px}.score-range{position:absolute;top:0;bottom:0;background:var(--accent-soft-2);border-radius:999px}.score-bar{position:absolute;left:0;top:2px;height:6px;background:var(--accent);border-radius:999px}.reasons{display:flex;flex-wrap:wrap;gap:6px}.reason{font-size:.78rem;font-weight:520;padding:3px 10px;border-radius:999px;background:var(--surface-2);font-variant-numeric:tabular-nums}.reason.pos{background:var(--good-soft);color:var(--good)}.reason.neg{background:var(--bad-soft);color:var(--bad)}.reason.missing{background:var(--warn-soft);color:var(--warn)}.excluded-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.excluded-list li{display:flex;gap:10px;flex-wrap:wrap;align-items:baseline;padding:11px 16px;border:1px dashed var(--border-strong);border-radius:var(--radius-sm);font-size:.9rem}.score-row th,.score-row td{font-weight:720;background:var(--accent-soft);color:var(--accent-text)}.grid-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow);-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}.item-grid{display:grid;grid-template-columns:230px repeat(var(--cols),minmax(var(--col-min),1fr)) 140px}.ig-row{display:contents}.ig-cell{padding:18px 20px;border-bottom:1px solid var(--border);min-width:0;background:var(--surface);transition:background .12s}.ig-row:last-child>.ig-cell{border-bottom:none}.ig-corner,.ig-param{position:sticky;left:0;z-index:2;background:var(--surface-3);border-right:1px solid var(--border);box-shadow:8px 0 12px -10px #0000002e}.ig-corner{display:flex;flex-direction:column;justify-content:center;gap:6px}.ig-eyebrow{font-size:.7rem;font-weight:720;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-text);font-variant-numeric:tabular-nums}.ig-corner .ig-eyebrow{color:var(--muted)}.ig-head{display:flex;flex-direction:column;justify-content:flex-start;gap:4px;padding-top:22px;padding-bottom:18px}.ig-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.ig-title strong{font-size:1.12rem;font-weight:680;letter-spacing:-.015em;line-height:1.3;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:anywhere}.ig-edit{color:var(--muted);font-size:1.05rem}.ig-sub{color:var(--muted);font-size:.87rem}.ig-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;min-height:0}.ig-meta:empty{display:none}.ig-head.excluded .ig-title strong{color:var(--muted)}.ig-param{display:flex;flex-direction:column;justify-content:center;gap:5px}.ig-param strong{font-weight:620}.ig-pref{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:.84rem;line-height:1.35}.ig-value{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:4px;border:none;border-bottom:1px solid var(--border);text-align:left;font:inherit;color:inherit;cursor:pointer}.ig-row:last-child>.ig-value{border-bottom:none}.ig-cell.hover{background:var(--surface-hover)}.ig-value.bad{background:var(--bad-soft)}.ig-violation{font-size:.75rem;color:var(--bad)}.ig-add-head{display:flex;align-items:stretch;padding:12px}.ig-add{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1.5px dashed var(--border-strong);border-radius:var(--radius);background:transparent;color:var(--muted);font-weight:580;font-size:.86rem;transition:border-color .15s,color .15s,background .15s}.ig-add span{font-size:1.3rem;line-height:1;color:var(--accent)}.ig-add:hover{border-color:var(--accent);color:var(--accent-text);background:var(--accent-soft)}.ig-add-col{background:transparent}.gv-number{font-size:1.28rem;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.02em}.gv-unit{font-size:.84rem;font-weight:450;color:var(--muted);margin-left:4px;letter-spacing:0}.gv-date{font-size:1.05rem;font-variant-numeric:tabular-nums}.gv-missing{color:var(--faint);font-size:.9rem}.gv-rating{display:flex;align-items:center;gap:12px}.gv-meter{width:80px;height:4px;border-radius:999px;background:var(--surface-2);overflow:hidden}.gv-meter span{display:block;height:100%;background:var(--accent-muted);border-radius:999px}.gv-ordinal{display:flex;align-items:center;gap:10px}.gv-steps{display:flex;gap:3px}.gv-steps span{width:6px;height:6px;border-radius:50%;background:var(--border)}.gv-steps span.on{background:var(--accent-muted)}.gv-tags{display:flex;flex-wrap:wrap;gap:4px}.pill{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:999px;font-size:.9rem;font-weight:560}.pill-sm{padding:2px 9px;font-size:.78rem}.pill-yes{background:var(--accent-soft);color:var(--accent-text)}.pill-no{background:var(--surface-2);color:var(--muted)}.pill-outline{background:var(--surface-2);border:1px solid var(--border);border-radius:8px}.option-scores{grid-column:1 / -1;margin:2px 0 10px 16px;padding:10px 16px;border-left:2px solid var(--border);display:flex;flex-direction:column;gap:6px}.option-scores ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.option-scores li{display:grid;grid-template-columns:150px minmax(120px,1fr) 64px 90px;gap:10px;align-items:center;font-size:.85rem}.option-scores-empty{color:var(--warn);background:var(--warn-soft);padding:7px 12px;border-radius:var(--radius-sm)}.os-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.is-ref .os-label{color:var(--muted)}.os-track{position:relative;height:12px}.os-zero{position:absolute;top:-2px;bottom:-2px;width:1px;background:var(--border-strong)}.os-range{position:absolute;top:0;bottom:0;background:var(--good-soft);border-radius:999px}.os-bar{position:absolute;top:3px;height:6px;background:var(--good);border-radius:999px;min-width:2px}.os-bar.neg{background:var(--bad)}.os-points{font-weight:650;font-variant-numeric:tabular-nums;text-align:right}.is-ref .os-points{color:var(--muted);font-weight:500}.os-evidence{font-size:.78rem}.param-fav{color:var(--good);font-weight:580}@media(hover:hover){a.card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:var(--shadow-md)}.flow li:hover{border-color:var(--border-strong)}.param-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:var(--shadow)}.wyr-card:hover{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-ring),var(--shadow-md)}.step:not(.active):hover{background:color-mix(in srgb,var(--surface) 70%,transparent)}.step:not(.active):hover .step-n{border-color:var(--faint)}}.onboarding-overlay{background:var(--overlay);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:100}.onboarding{position:relative;width:100%;max-width:420px;height:min(640px,92vh);display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,var(--accent-soft) 0%,var(--surface) 58%);border-radius:28px;box-shadow:var(--shadow-lg);animation:pop .3s var(--ease);touch-action:pan-y;user-select:none;-webkit-user-select:none}.onboarding-top{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 0 24px;min-height:52px}.onboarding-slide{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 28px}.slide-next{animation:slide-next .35s var(--ease)}.slide-prev{animation:slide-prev .35s var(--ease)}@keyframes slide-next{0%{opacity:0;transform:translate(40px)}}@keyframes slide-prev{0%{opacity:0;transform:translate(-40px)}}.onboarding-art{flex:1;min-height:160px;display:grid;place-items:center}.onboarding-art svg{width:100%;max-height:100%;overflow:visible}.onboarding-text{display:flex;flex-direction:column;gap:10px;text-align:center;padding:8px 0 12px;min-height:150px}.onboarding-text h2{font-size:1.55rem;font-weight:740;letter-spacing:-.03em}.onboarding-text p{color:var(--muted);font-size:1rem;line-height:1.55}.onboarding-foot{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:12px 20px max(22px,env(safe-area-inset-bottom))}.onboarding-foot>.btn:first-child{justify-self:start}.onboarding-foot>.btn:last-child{justify-self:end;min-width:100px;border-radius:999px;padding:10px 22px}.onboarding-dots{display:flex;gap:6px}.onboarding-dots button{width:8px;height:8px;padding:0;border:none;border-radius:999px;background:var(--border-strong);transition:width .25s var(--ease),background .25s}.onboarding-dots button.on{width:24px;background:var(--accent)}.onboarding svg *{transform-box:fill-box;transform-origin:center}.ob-blob{fill:var(--surface);opacity:.7;animation:breathe 5s ease-in-out infinite}.ob-spark{fill:var(--accent);opacity:0;animation:twinkle 2.6s ease-in-out infinite}.ob-card{fill:var(--surface);stroke:var(--border);stroke-width:1.2;filter:drop-shadow(0 4px 10px rgb(0 0 0 / .08))}.ob-card.top{stroke:var(--accent);stroke-width:2}.ob-line{fill:var(--accent);opacity:.8}.ob-line.soft{fill:var(--border-strong);opacity:.7}.ob-line.bad{fill:var(--bad)}.ob-chosen .ob-card{stroke:var(--accent);stroke-width:2}.ob-badge{fill:var(--good)}.ob-badge.bad{fill:var(--bad)}.ob-badge-text{fill:#fff;font-weight:800;font-size:13px}.ob-check{fill:none;stroke:#fff;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.ob-icon{fill:var(--accent-soft)}.ob-icon-text{font-size:11px;font-weight:700;fill:var(--accent-text)}.ob-chip{fill:var(--accent-soft)}.ob-chip.warn{fill:var(--warn-soft)}.ob-chip-text{font-size:8.5px;font-weight:700;fill:var(--accent-text)}.ob-chip-text.warn{fill:var(--warn)}.ob-axis{stroke:var(--border);stroke-width:1.2}.ob-draw{fill:none;stroke:var(--accent);stroke-width:3;stroke-linecap:round;stroke-dasharray:140;stroke-dashoffset:140;animation:draw 1s ease-out forwards}.ob-dot{fill:var(--accent);stroke:var(--surface);stroke-width:2}.ob-cell{fill:var(--surface-2)}.ob-cell.bad{fill:var(--bad-soft)}.ob-letter{font-weight:800;font-size:18px;fill:var(--muted)}.ob-vs{fill:var(--surface);stroke:var(--border)}.ob-vs-text{font-size:12px;font-weight:700;fill:var(--muted)}.ob-track{fill:var(--surface-2)}.ob-bar{fill:var(--accent);transform-origin:left center}.ob-bar.soft{fill:var(--accent-muted)}.ob-range{fill:var(--accent-soft);transform-origin:left center}.ob-rank{fill:var(--surface-2)}.ob-rank.top{fill:var(--accent)}.ob-rank-text{font-size:11px;font-weight:800;fill:var(--muted)}.ob-rank-text.top{fill:#fff}.ob-pointer path{fill:var(--text);stroke:var(--surface);stroke-width:1.5;stroke-linejoin:round}.ob-rise{animation:rise .55s var(--ease) both}.ob-slide-in{animation:slide-in .5s var(--ease) both}.ob-pop{animation:ob-pop .45s cubic-bezier(.3,1.6,.5,1) both}.ob-float{animation:float 3.2s ease-in-out 1s infinite}.ob-grow{animation:grow .8s var(--ease) both}.ob-trace{animation:trace 3.2s linear 1s infinite both;transform-box:view-box!important;transform-origin:0 0!important}.ob-pointer{animation:pointer 4s ease-in-out .5s infinite both;transform-box:view-box!important;transform-origin:0 0!important}.ob-pick-a{animation:pick 4s ease-in-out .5s infinite}.ob-pick-a .ob-choice{animation:pick-stroke 4s ease-in-out .5s infinite}.ob-weight{animation:weight-up 4s ease-in-out .5s infinite both}.ob-weight-2{animation:weight-down 4s ease-in-out .5s infinite both}@keyframes breathe{50%{transform:scale(1.05)}}@keyframes twinkle{0%,to{opacity:0;transform:scale(.4)}50%{opacity:.55;transform:scale(1)}}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}@keyframes slide-in{0%{opacity:0;transform:translate(-18px)}}@keyframes ob-pop{0%{opacity:0;transform:scale(.3)}}@keyframes float{50%{transform:translateY(-5px)}}@keyframes draw{to{stroke-dashoffset:0}}@keyframes grow{0%{transform:scaleX(0)}}@keyframes pointer{0%{transform:translate(250px,200px);opacity:0}10%{opacity:1}35%{transform:translate(92px,118px)}40%{transform:translate(92px,118px) scale(.85)}45%,85%{transform:translate(92px,118px);opacity:1}to{transform:translate(250px,200px);opacity:0}}@keyframes trace{0%{transform:translate(208px,158px);opacity:0}4%{opacity:1}6%{transform:translate(212.8px,142.5px)}12%{transform:translate(217.5px,128.5px)}18%{transform:translate(222.3px,115.9px)}24%{transform:translate(227.4px,104.8px)}30%{transform:translate(232.8px,95.2px)}36%{transform:translate(238.5px,87.2px)}42%{transform:translate(244.8px,80.6px)}48%{transform:translate(251.8px,75.5px)}54%{transform:translate(259.5px,72px)}60%,to{transform:translate(268px,70px)}92%{opacity:1}to{opacity:0}}@keyframes pick{0%,38%,92%,to{transform:none}45%,85%{transform:translateY(-6px) scale(1.04)}}@keyframes pick-stroke{0%,38%,92%,to{stroke:var(--border);stroke-width:1.2}45%,85%{stroke:var(--accent);stroke-width:2.5}}@keyframes weight-up{0%,40%,95%,to{transform:scaleX(.5)}55%,85%{transform:scaleX(.78)}}@keyframes weight-down{0%,40%,95%,to{transform:scaleX(.5)}55%,85%{transform:scaleX(.32)}}@media(max-width:760px){.page{padding:24px 16px 72px;gap:32px}.page-wide{padding-top:16px;gap:20px}.topbar{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));min-height:56px}.topbar .muted.small{display:none}.flow,.stat-row{grid-template-columns:repeat(2,1fr)}.flow{gap:8px}.flow li{padding:14px}.grid-2,.config-layout,.ranking-placeholder,.template-grid{grid-template-columns:1fr}.curve-preview{position:static;display:grid;grid-template-columns:minmax(0,200px) 1fr;column-gap:14px;align-items:center}.curve-preview>*{grid-column:1}.curve-preview>.curve-title{grid-column:1 / -1}.curve-preview>.curve-caption{grid-column:2;grid-row:2 / span 2;margin:0}.card-grid{grid-template-columns:1fr}.section-head>h2{width:100%}.section-head>.row{width:100%}.section-head>.row>.btn-primary,.section-head>.row>.btn-secondary{flex:1}.decision-head{grid-template-columns:1fr;grid-template-areas:"back" "title" "actions";gap:8px}.decision-head>.row{flex-wrap:nowrap;margin-left:-12px}.decision-title{gap:12px}.decision-title h1{font-size:1.45rem}.decision-title .decision-emoji{width:42px;height:42px;font-size:1.25rem;border-radius:12px}.stepper{grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;border-radius:calc(var(--radius) + 4px)}.step{padding:9px 10px;gap:10px}.step-n{width:26px;height:26px}.step-text strong{font-size:.86rem;white-space:normal}.step-text span{font-size:.74rem}.step-intro{flex-direction:column;gap:16px}.step-intro h2{font-size:1.25rem}.step-intro>.row{width:100%;flex-wrap:wrap}.step-intro>.row>.btn{flex:1 1 auto}.next-step{flex-direction:column-reverse;align-items:stretch;text-align:center}.next-step>.btn{width:100%}.next-step>span:empty{display:none}.param-main{padding:12px 12px 12px 14px;gap:12px}.param-badges{flex-direction:column;align-items:flex-end;gap:4px}.param-actions{padding-right:4px}.value-row{grid-template-columns:1fr}.value-row .violation{grid-column:1}.value-row-input .input-unit{max-width:none;flex:1 1 160px}.wyr{padding:18px 14px 16px;border-radius:18px;gap:14px}.wyr-options{grid-template-columns:1fr;gap:10px}.wyr-or{justify-self:center;margin:-4px 0}.wyr-card{padding:16px;gap:12px;min-height:0}.wyr-card dd{font-size:1.08rem}.wyr-secondary{width:100%}.wyr-secondary>.btn{flex:1 1 auto}.learning{padding:16px;border-radius:var(--radius)}.bar-list li{grid-template-columns:minmax(0,110px) 1fr 48px;gap:6px 10px}.weight-value{text-align:right}.history-list li{grid-template-columns:1fr auto}.rank-card{grid-template-columns:36px 1fr;gap:10px 12px;padding:14px}.rank-n{grid-row:auto;width:34px;height:34px}.reasons,.rank-score{grid-column:1 / -1;grid-row:auto}.rank-score{flex-direction:row;align-items:center;gap:12px}.rank-score-top{flex-direction:column;align-items:flex-end;gap:2px;order:2;min-width:56px}.rank-score-n{font-size:1.4rem}.score-track{flex:1}.option-scores{margin-left:0;padding-right:0}.option-scores li{grid-template-columns:minmax(0,90px) 1fr 56px}.os-evidence{display:none}.item-grid{grid-template-columns:132px repeat(var(--cols),minmax(170px,1fr)) 120px}.ig-cell{padding:14px}.ig-head{padding-top:16px;padding-bottom:14px}.ig-title strong{font-size:1rem}.gv-number{font-size:1.12rem}.ig-pref{font-size:.78rem}.data-table th,.data-table td{padding:10px 12px}kbd{display:none}}@media(max-width:560px){.overlay-center:not(.onboarding-overlay){align-items:flex-end;padding:0}.modal{max-width:none;max-height:94dvh;border-radius:20px 20px 0 0;animation:sheet .3s var(--ease)}.modal:before{content:"";display:block;width:36px;height:4px;border-radius:999px;background:var(--border-strong);margin:8px auto 0;flex-shrink:0}.drawer-head{padding:12px 18px 10px}.drawer-body{padding:6px 18px 20px}.drawer-foot{padding:12px 18px max(12px,env(safe-area-inset-bottom))}.drawer-foot>.btn-primary{flex:1 1 auto}.type-grid{grid-template-columns:1fr}.onboarding-overlay{padding:0}.onboarding{max-width:none;height:100%;border-radius:0;padding-top:env(safe-area-inset-top)}.flow{grid-template-columns:1fr}.flow li{display:grid;grid-template-columns:28px 1fr;column-gap:12px;row-gap:2px}.flow-n{grid-row:1 / 3;margin:0}.stat{padding:12px 14px}.stat-n{font-size:1.45rem}}@media(max-width:760px)and (pointer:coarse){input:not([type=checkbox]):not([type=radio]),select,textarea{font-size:16px}.icon-btn{width:40px;height:40px}.icon-btn.sm{width:36px;height:32px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.01ms!important}.ob-draw{stroke-dashoffset:0}.ob-trace{animation:none!important;transform:translate(268px,70px)}}
