:root{--bg:#fff;--ink:#14110d;--ink-2:#525049;--ink-3:#9a948c;--ink-4:#d6d2cb;--rule:#f0eee9;--tint:#f9f7f3;--accent:#b85e31;--accent-soft:#ffeee6;--ok:#47944c;--warn:#c8942d;--sans:var(--font-inter), system-ui, -apple-system, sans-serif;--c-doc:#bc5a29;--c-aci:#868604;--c-cre:#0086b4;--c-gra:#9256a0;--c-aro:#cb6570;--c-per:#008474}@supports (color:lab(0% 0 0)){:root{--accent:lab(50.383% 34.8278 41.7112);--accent-soft:lab(95.2262% 6.02415 6.85958);--ok:lab(55.1805% -36.459 30.1293);--warn:lab(65.2305% 13.5109 58.7919);--c-doc:lab(50.2963% 37.772 46.137);--c-aci:lab(54.4222% -9.93067 57.2182);--c-cre:lab(51.4922% -20.8783 -35.9582);--c-gra:lab(45.8572% 35.0733 -30.231);--c-aro:lab(55.651% 42.1852 14.0089);--c-per:lab(49.0547% -35.1139 -.255632)}}[data-theme=dark]{--bg:#100e0a;--ink:#f5f1e8;--ink-2:#b8b1a4;--ink-3:#7a7468;--ink-4:#44403a;--rule:#25221d;--tint:#1b1814;--accent:#eb8656;--accent-soft:#4a200c;--ok:#6dba70;--warn:#d9a440;--c-doc:#eb8656;--c-aci:#b1b239;--c-cre:#32b3e6;--c-gra:#c282d0;--c-aro:#f58a93;--c-per:#4bb3a1}@supports (color:lab(0% 0 0)){[data-theme=dark]{--accent:lab(66.5848% 37.0286 43.2594);--accent-soft:lab(18.3123% 18.8247 22.1925);--ok:lab(69.124% -36.4091 29.6359);--warn:lab(71.0527% 13.1371 57.365);--c-doc:lab(66.5848% 37.0286 43.2594);--c-aci:lab(70.7726% -11.411 58.393);--c-cre:lab(67.7961% -22.4327 -36.2343);--c-gra:lab(63.3151% 34.8235 -30.4101);--c-aro:lab(69.5758% 42.2144 13.8552);--c-per:lab(66.4549% -34.804 -.270081)}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--sans);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;font-feature-settings:"cv11", "ss01", "tnum";font-size:14px;line-height:1.5;transition:background .15s,color .15s}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,select{color:inherit;font-family:inherit}.mono{font-variant-numeric:tabular-nums}.shell{grid-template-columns:240px 1fr;min-height:100vh;display:grid}aside.side{border-right:1px solid var(--rule);flex-direction:column;gap:44px;height:100vh;padding:28px 24px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:0 4px;display:flex}.brand .mark{background:var(--ink);width:28px;height:28px;color:var(--bg);letter-spacing:-.02em;border-radius:6px;place-items:center;font-size:14px;font-weight:600;display:grid}.brand .word{letter-spacing:-.02em;font-size:15.5px;font-weight:600}nav.main{flex-direction:column;gap:2px;display:flex}nav.main a{color:var(--ink-2);cursor:pointer;letter-spacing:-.005em;border-radius:6px;padding:9px 12px;font-size:14px;font-weight:500}nav.main a:hover{background:var(--tint);color:var(--ink)}nav.main a.active{background:var(--ink);color:var(--bg)}.side-bottom{flex-direction:column;gap:4px;margin-top:auto;display:flex}.side-foot{cursor:pointer;border-radius:7px;align-items:center;gap:10px;padding:8px;transition:background .15s;display:flex}.side-foot:hover,.side-foot.active{background:var(--tint)}.side-foot-row{align-items:center;gap:4px;display:flex}.side-foot-row .side-foot{flex:1;min-width:0}.side-foot-row .who{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.side-logout{width:32px;height:32px;color:var(--ink-3);border-radius:7px;flex:none;place-items:center;transition:background .15s,color .15s;display:grid}.side-logout:hover{background:var(--tint);color:var(--ink)}.side-logout svg{width:16px;height:16px}.avatar{color:#fff;background:linear-gradient(135deg,#c9a973,#b4685c);background:linear-gradient(135deg,lab(71.109% 6.76909 32.3085),lab(52.7095% 30.2062 20.7353));border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;font-size:11px;font-weight:600;display:grid}.side-foot .who{font-size:13.5px;font-weight:500}.prefs{align-items:center;gap:8px;padding:8px 4px 4px;display:flex}.pref-btn{border:1px solid var(--rule);color:var(--ink-2);border-radius:7px;align-items:center;gap:8px;padding:7px 10px;font-size:12.5px;font-weight:500;transition:border .15s,color .15s;display:inline-flex}.pref-btn:hover{border-color:var(--ink-4);color:var(--ink)}.pref-btn svg{flex:0 0 14px;width:14px;height:14px}.theme-toggle .i-moon,[data-theme=dark] .theme-toggle .i-sun{display:none}[data-theme=dark] .theme-toggle .i-moon{display:inline-block}.lang-switch{border:1px solid var(--rule);border-radius:7px;margin-left:auto;padding:2px;display:flex}.lang-switch button{color:var(--ink-3);letter-spacing:.02em;border-radius:5px;padding:5px 9px;font-size:11.5px;font-weight:600}.lang-switch button.on{background:var(--ink);color:var(--bg)}.btn-primary{background:var(--ink);color:var(--bg);letter-spacing:-.005em;border-radius:7px;align-items:center;gap:8px;padding:11px 18px;font-size:13.5px;font-weight:500;display:inline-flex}.btn-primary:hover{opacity:.88}.btn-primary .plus{font-size:15px;line-height:1}.btn-primary .arrow{background:currentColor;width:14px;height:1.5px;position:relative}.btn-primary .arrow:after{content:"";border-top:1.5px solid;border-right:1.5px solid;width:7px;height:7px;position:absolute;top:-3.5px;right:0;transform:rotate(45deg)}.btn-ghost{background:var(--bg);color:var(--ink-2);border:1px solid var(--rule);border-radius:7px;padding:11px 16px;font-size:13.5px;font-weight:500}.btn-ghost:hover{border-color:var(--ink);color:var(--ink)}.page-head{justify-content:space-between;align-items:flex-end;margin-bottom:48px;display:flex}.page-head h1{font-family:var(--sans);letter-spacing:-.025em;margin:0 0 6px;font-size:32px;font-weight:600}.page-head h1 .accent{color:var(--accent);font-weight:600}.subtitle{color:var(--ink-3);font-size:14px}main.page{max-width:1320px;padding:80px 80px 96px}.stats{border:1px solid var(--rule);border-radius:10px;grid-template-columns:repeat(4,1fr);margin-bottom:36px;display:grid;overflow:hidden}.stat{border-right:1px solid var(--rule);flex-direction:column;gap:6px;padding:22px 24px;display:flex}.stat:last-child{border-right:0}.stat .v{letter-spacing:-.025em;color:var(--ink);font-size:32px;font-weight:600;line-height:1}.stat .v small{color:var(--ink-3);margin-left:4px;font-size:14px;font-weight:500}.stat .k{color:var(--ink-3);font-size:12.5px;font-weight:500}.stat.accent .v{color:var(--accent)}.toolbar{align-items:center;gap:12px;margin-bottom:18px;display:flex}.filters{gap:6px;display:flex}.chip{color:var(--ink-3);cursor:pointer;border-radius:7px;align-items:center;gap:6px;padding:7px 12px;font-size:13px;font-weight:500;transition:background .15s,color .15s;display:inline-flex}.chip:hover{color:var(--ink);background:var(--tint)}.chip.on{color:var(--bg);background:var(--ink)}.chip .c{color:var(--ink-3);font-size:11px;font-weight:500}.chip.on .c{color:color-mix(in oklab, var(--bg), transparent 50%)}.search{border:1px solid var(--rule);border-radius:7px;align-items:center;gap:8px;width:260px;margin-left:auto;padding:8px 12px;display:flex}.search input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;font-size:13px}.search .icn{color:var(--ink-3);font-size:13px}.list-foot{color:var(--ink-3);justify-content:space-between;margin-top:18px;font-size:13px;display:flex}.list-foot a{color:var(--ink);text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--ink-4);text-decoration-color:var(--ink-4);cursor:pointer}.list-foot a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.status{color:var(--ink-2);align-items:center;gap:8px;font-size:13.5px;display:inline-flex}.status .d{background:var(--ink-4);border-radius:50%;width:6px;height:6px}.status.run .d{background:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent), transparent 82%)}.status.done .d{background:var(--ink)}.status.review .d{background:var(--warn)}.status.draft .d{background:var(--ink-4)}.section-label{color:var(--ink-3);margin-bottom:16px;font-size:12.5px;font-weight:500}.methods{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.method{border:1px solid var(--rule);text-align:left;background:var(--bg);cursor:pointer;border-radius:10px;flex-direction:column;gap:8px;min-height:132px;padding:24px 22px;transition:border .15s,background .15s;display:flex;position:relative}.method:hover{border-color:var(--ink-4);background:var(--tint)}.method.selected{background:var(--ink);border-color:var(--ink);color:var(--bg)}.method .code{color:var(--ink-3);letter-spacing:.04em;font-size:11.5px;font-weight:600}.method.selected .code{color:color-mix(in oklab, var(--bg), transparent 50%)}.method .name{letter-spacing:-.015em;margin-top:auto;font-size:18px;font-weight:500;line-height:1.2}.method .check{background:var(--accent);opacity:0;border-radius:50%;place-items:center;width:16px;height:16px;transition:opacity .18s,transform .18s;display:grid;position:absolute;top:22px;right:22px;transform:scale(.6)}.method.selected .check{opacity:1;transform:scale(1)}.method.selected .check:after{content:"";border-left:1.5px solid var(--bg);border-bottom:1.5px solid var(--bg);width:6px;height:4px;transform:rotate(-45deg)translate(1px,-1px)}.continue{justify-content:flex-end;margin-top:28px;display:flex}section.recent{margin-top:96px}.recent-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.recent-head h2{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:600}.recent-head a{color:var(--ink-3);cursor:pointer;font-size:13px}.recent-head a:hover{color:var(--ink)}.studies-card{border:1px solid var(--rule);border-radius:10px;overflow:hidden}.study{border-bottom:1px solid var(--rule);cursor:pointer;grid-template-columns:1fr 80px 130px 100px;align-items:center;gap:24px;padding:18px 22px;transition:background .15s;display:grid}.study:last-child{border-bottom:0}.study:hover{background:var(--tint)}.study .name{letter-spacing:-.005em;font-size:14.5px;font-weight:500}.study .method-tag{color:var(--ink-2);letter-spacing:.04em;font-size:11.5px;font-weight:600}.study .when{color:var(--ink-3);text-align:right;font-size:13px}.list{border:1px solid var(--rule);border-radius:10px;overflow:hidden}.list-row{border-bottom:1px solid var(--rule);cursor:pointer;grid-template-columns:1.8fr 70px 140px 160px 120px 32px;align-items:center;gap:18px;padding:18px 22px;transition:background .15s;display:grid}.list-row:last-child{border-bottom:0}.list-row:hover{background:var(--tint)}.list-row.head{background:var(--tint);cursor:default;padding:12px 22px}.list-row.head:hover{background:var(--tint)}.list-row.head>*{color:var(--ink-3);letter-spacing:.02em;font-size:11.5px;font-weight:500}.name-col{flex-direction:column;gap:3px;min-width:0;display:flex}.sname{letter-spacing:-.005em;font-size:14.5px;font-weight:500}.sid{color:var(--ink-3);font-size:12px}.method-tag{color:var(--ink-2);letter-spacing:.04em;font-size:11.5px;font-weight:600}.progress-cell{align-items:center;gap:10px;display:flex}.progress{background:var(--rule);border-radius:3px;flex:1;height:6px;overflow:hidden}.progress i{background:var(--ink);border-radius:3px;height:100%;display:block}.progress.run i{background:var(--accent)}.progress.done i{background:var(--ink)}.progress.draft i{background:var(--ink-4)}.progress-pct{color:var(--ink-3);text-align:right;min-width:32px;font-size:12px}.when-cell{color:var(--ink-3);font-size:13px}.more{color:var(--ink-3);text-align:center;cursor:pointer;z-index:2;background:0 0;border:none;border-radius:6px;padding:6px 10px;font-size:17px;line-height:1;transition:color .12s,background .12s;position:relative}.more:hover{color:var(--ink);background:var(--rule)}.row-link{z-index:1;position:absolute;inset:0}.row-link>span{width:100%;height:100%;display:block}.row-menu{background:var(--bg);border:1px solid var(--rule);min-width:160px;box-shadow:0 8px 24px -6px color-mix(in oklab, var(--ink), transparent 78%);z-index:20;border-radius:10px;flex-direction:column;padding:4px;display:flex;position:absolute;top:100%;right:8px}.row-menu-item{text-align:left;cursor:pointer;color:var(--ink);background:0 0;border:none;border-radius:6px;padding:8px 12px;font-size:13.5px;transition:background .12s}.row-menu-item:hover{background:var(--tint)}.row-menu-item.danger{color:#c53637;color:lab(45.9853% 56.8958 34.8481)}.row-menu-item.danger:hover{background:#c5363714;background:lab(45.9853% 56.8958 34.8481/.08)}.row-menu-item:disabled{opacity:.5;cursor:default}.panel-row{border-bottom:1px solid var(--rule);cursor:pointer;grid-template-columns:44px 1.4fr 1.6fr 80px 120px 28px;align-items:center;gap:18px;padding:16px 22px;transition:background .15s;display:grid}.panel-row:last-child{border-bottom:0}.panel-row:hover{background:var(--tint)}.panel-row.head{background:var(--tint);cursor:default;padding:12px 22px}.panel-row.head>*{color:var(--ink-3);letter-spacing:.02em;font-size:11.5px;font-weight:500}.ava{width:36px;height:36px;color:var(--bg);background:var(--ink);border-radius:50%;place-items:center;font-size:13px;font-weight:600;display:grid}.ava.a{background:#b85e31;background:lab(50.383% 34.8278 41.7112)}.ava.b{background:#58905a;background:lab(54.841% -27.9948 22.6667)}.ava.c{background:#4f84ba;background:lab(53.262% -5.97107 -34.0481)}.ava.d{background:#ae7c00;background:lab(55.9083% 14.2142 62.5614)}.ava.e{background:#90589d;background:lab(46.0261% 32.2911 -27.9609)}.ava.f{background:#1c989e;background:lab(56.8875% -31.3092 -12.8605)}.pname{letter-spacing:-.005em;font-size:14.5px;font-weight:500}.email{color:var(--ink-3);font-size:12.5px}.tags{flex-wrap:wrap;gap:6px;display:flex}.tag{background:var(--tint);color:var(--ink-2);border-radius:4px;padding:3px 8px;font-size:11.5px;font-weight:500}.tag.trained{background:var(--accent-soft);color:#723311;color:lab(29.6911% 27.0723 33.4589)}[data-theme=dark] .tag.trained{color:#fea47c;color:lab(76.0389% 31.0794 35.5137)}.tag.cert{background:var(--ink);color:var(--bg)}.studies-c{font-size:14px;font-weight:500}.when{color:var(--ink-3);font-size:13px}.main-col{flex-direction:column;min-width:0;display:flex}.topbar{border-bottom:1px solid var(--rule);align-items:center;gap:12px;padding:20px 56px;display:flex}.back{color:var(--ink-3);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.back:hover{color:var(--ink)}.back:before{content:"";border-bottom:1.5px solid;border-left:1.5px solid;width:6px;height:6px;transform:rotate(45deg)}.topbar .right{align-items:center;gap:14px;margin-left:auto;display:flex}.saved{color:var(--ink-3);align-items:center;gap:8px;font-size:12.5px;display:flex}.saved .dot{background:var(--ok);border-radius:50%;width:6px;height:6px}.setup-head{flex-direction:column;gap:12px;padding:56px 56px 36px;display:flex}.setup-head h1{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.method-pill{color:var(--ink-3);align-items:center;gap:8px;font-size:12px;font-weight:500;display:inline-flex}.method-pill .dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.steps{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--bg);z-index:10;gap:6px;padding:14px 56px;display:flex;position:sticky;top:0}.step{color:var(--ink-3);cursor:pointer;border-radius:7px;align-items:center;gap:10px;padding:8px 14px;font-size:13.5px;display:flex}.step:hover{background:var(--tint)}.step.current{background:var(--ink);color:var(--bg)}.step.done{color:var(--ink-2)}.step .num{border:1.5px solid;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10.5px;font-weight:600;line-height:1;display:grid}.step.done .num{background:var(--ink);border-color:var(--ink);color:var(--bg);position:relative}.step.done .num:after{content:"";border-left:1.5px solid var(--bg);border-bottom:1.5px solid var(--bg);width:6px;height:4px;position:absolute;transform:rotate(-45deg)translateY(-1px)}.step.done .num span{display:none}.body{grid-template-columns:1fr 320px;display:grid}.sections{border-right:1px solid var(--rule);flex-direction:column;gap:72px;max-width:880px;padding:56px 56px 96px;display:flex}.section{flex-direction:column;gap:20px;display:flex}.section-head{justify-content:space-between;align-items:center;padding-bottom:4px;display:flex}.section-head h2{letter-spacing:-.015em;margin:0;font-size:18px;font-weight:600}.section-add{color:var(--ink-3);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:inline-flex}.section-add:hover{color:var(--ink)}.section-add .plus{color:var(--accent);font-size:15px;line-height:1}.products{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.product{border:1px solid var(--rule);cursor:pointer;border-radius:10px;grid-template-columns:36px 1fr auto auto;align-items:center;gap:14px;padding:16px 18px;transition:border .15s;display:grid}.product:hover{border-color:var(--ink-4)}.product .row-x{color:var(--ink-4);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:2px 6px;font-size:18px;line-height:1;transition:color .15s,background .15s}.product .row-x:hover{color:var(--ink);background:var(--rule)}.product .row-x:disabled{opacity:.4;cursor:default}.swatch{background:repeating-linear-gradient(135deg, color-mix(in oklab, var(--p), white 10%) 0 4px, color-mix(in oklab, var(--p), black 5%) 4px 8px);border-radius:8px;width:36px;height:36px}.product .pname{letter-spacing:-.005em;font-size:14.5px;font-weight:500}.product .pblind{color:var(--accent);letter-spacing:.04em;font-size:16px;font-weight:600}.product-add{border:1px dashed var(--ink-4);color:var(--ink-3);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:68px;padding:16px;font-size:13.5px;display:flex}.product-add:hover{border-color:var(--ink);color:var(--ink);border-style:solid}.product-add .plus{color:var(--accent);font-size:16px}.product-card-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-top:12px;display:grid}.product-card{border:1px solid var(--rule);background:var(--bg);color:inherit;cursor:pointer;border-radius:12px;gap:10px;padding:14px;text-decoration:none;transition:border-color .15s,transform .12s,box-shadow .15s;display:grid}.product-card:hover{border-color:var(--ink-4);box-shadow:0 4px 12px -8px color-mix(in oklab, var(--ink), transparent 80%);transform:translateY(-1px)}.product-card:active{box-shadow:none;transform:translateY(0)}.pick-card-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-top:16px;display:grid}.pick-card{border:1px solid var(--rule);background:var(--bg);color:inherit;text-align:left;cursor:pointer;border-radius:12px;gap:6px;padding:16px 18px;transition:border-color .15s,transform .12s,box-shadow .15s,background .15s;display:grid}.pick-card:hover{border-color:var(--ink-4);box-shadow:0 4px 12px -8px color-mix(in oklab, var(--ink), transparent 80%);transform:translateY(-1px)}.pick-card:active{box-shadow:none;transform:translateY(0)}.pick-card.on{border-color:var(--ink);background:var(--tint);box-shadow:0 0 0 1px var(--ink) inset}.pick-card .pc-eyebrow{color:var(--ink-3);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:600}.pick-card .pc-title{letter-spacing:-.005em;font-size:15px;font-weight:600}.pick-card .pc-hint{color:var(--ink-3);font-size:12.5px}.pick-card[disabled]{opacity:.5;cursor:default;box-shadow:none;border-color:var(--rule);transform:none}.product-card .pc-swatch{border-radius:8px;height:64px}.product-card .pc-name{letter-spacing:-.005em;font-size:14.5px;font-weight:600}.product-card .pc-meta{color:var(--ink-3);font-size:12.5px}.product-card .pc-uses{color:var(--ink-3);margin-top:2px;font-size:12px}.attrs-card{border:1px solid var(--rule);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.attr{border-bottom:1px solid var(--rule);cursor:pointer;grid-template-columns:1fr 90px 28px;align-items:center;gap:14px;padding:14px 18px;font-size:14px;display:grid}.attr:last-of-type{border-bottom:0}.attr:hover{background:var(--tint)}.attr .name{font-weight:500}.attr .dim{color:var(--ink-3);font-size:12px}.attr .x{color:var(--ink-4);text-align:center;cursor:pointer;font-size:16px}.attr .x:hover{color:var(--ink)}.attr-input{background:var(--tint);align-items:center;gap:10px;padding:12px 18px;display:flex}.attr-input input{background:var(--bg);border:1px solid var(--rule);border-radius:6px;outline:none;flex:1;padding:8px 12px;font-size:13.5px}.attr-input input:focus{border-color:var(--ink)}.attr-input select{background:var(--bg);border:1px solid var(--rule);border-radius:6px;outline:none;padding:8px 12px;font-size:13.5px}.attr-input button{background:var(--ink);color:var(--bg);border-radius:6px;padding:8px 14px;font-size:13.5px;font-weight:500}.panelists{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.pl{border:1px solid var(--rule);cursor:pointer;border-radius:8px;align-items:center;gap:12px;padding:12px 14px;transition:border .15s;display:flex}.pl:hover{border-color:var(--ink-4)}.pl.selected{background:var(--ink);color:var(--bg);border-color:var(--ink)}.pl .pl-ava{background:var(--tint);width:28px;height:28px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.pl.selected .pl-ava{background:color-mix(in oklab, var(--bg), transparent 80%);color:var(--bg)}.pl .pname{flex:1;font-size:14px;font-weight:500}.pl .role{background:var(--accent-soft);color:#662703;color:lab(25.0312% 27.3595 34.6759);border-radius:4px;padding:2px 7px;font-size:11px;font-weight:500}.pl.selected .role{background:color-mix(in oklab, var(--bg), transparent 85%);color:var(--bg)}.pl.semi .role{background:var(--tint);color:var(--ink-3)}.pl.selected.semi .role{background:color-mix(in oklab, var(--bg), transparent 85%);color:var(--bg)}[data-theme=dark] .pl .role{color:#fea47c;color:lab(76.0389% 31.0794 35.5137)}.sessions{flex-direction:column;gap:10px;display:flex}.session{border:1px solid var(--rule);cursor:pointer;border-radius:10px;grid-template-columns:90px 1fr auto;align-items:center;gap:20px;padding:14px 18px;transition:border .15s;display:grid}.session:hover{border-color:var(--ink-4)}.session .date{font-size:14.5px;font-weight:500}.session .desc{color:var(--ink-2);font-size:13.5px}.session .more-i{color:var(--ink-3);font-size:18px;line-height:1}.session-add{border:1px dashed var(--ink-4);color:var(--ink-3);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:13.5px;display:flex}.session-add:hover{border-color:var(--ink);color:var(--ink);border-style:solid}.session-add .plus{color:var(--accent);font-size:16px}aside.rail{flex-direction:column;align-self:start;gap:32px;max-height:calc(100vh - 53px);padding:56px 32px 96px;display:flex;position:sticky;top:53px}.summary{border:1px solid var(--rule);border-radius:10px;overflow:hidden}.summary-row{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding:14px 18px;font-size:13.5px;display:flex}.summary-row:last-child{border-bottom:0}.summary-row .k{color:var(--ink-3)}.summary-row .v{color:var(--ink);font-weight:500}.launch{flex-direction:column;gap:10px;display:flex}.launch .btn-primary,.launch .btn-ghost{justify-content:center;width:100%;padding:12px 16px;font-size:14px}.head-meta{align-items:center;gap:12px;margin-bottom:12px;display:flex}.pill{background:var(--ink);color:var(--bg);letter-spacing:.02em;border-radius:5px;align-items:center;gap:7px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-flex}.pill.status-pill{color:var(--ink-2);border:1px solid var(--rule);background:0 0}.pill.status-pill .d{background:var(--ink);border-radius:50%;width:6px;height:6px}.section-label-row{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.section-label-row h2{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:600}.section-label-row .right{color:var(--ink-3);font-size:12.5px}.chart-card{border:1px solid var(--rule);border-radius:10px;margin-bottom:48px;padding:20px 24px 24px}.chart-tabs{border-bottom:1px solid var(--rule);gap:4px;margin-bottom:24px;padding-bottom:16px;display:flex}.ctab{cursor:pointer;color:var(--ink-3);border:1px solid #0000;border-radius:7px;flex-direction:column;flex:1;padding:10px 14px;display:flex}.ctab:hover{background:var(--tint);color:var(--ink)}.ctab.on{border-color:var(--rule);color:var(--ink);background:var(--bg)}.ctab .code{letter-spacing:.04em;font-size:11px;font-weight:600}.ctab .nm{letter-spacing:-.005em;margin-top:2px;font-size:14.5px;font-weight:500}.ctab.on .code{color:var(--accent)}svg.chart{width:100%;height:320px;display:block}svg.chart .grid{stroke:var(--rule);stroke-width:1px}svg.chart .axis-line{stroke:var(--ink-4);stroke-width:1px}svg.chart .axis-label{font-family:var(--sans);fill:var(--ink-3);font-size:11px}svg.chart path.line{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}svg.chart .ln-doc{stroke:var(--c-doc)}svg.chart .ln-aci{stroke:var(--c-aci)}svg.chart .ln-cre{stroke:var(--c-cre)}svg.chart .ln-gra{stroke:var(--c-gra)}svg.chart .ln-aro{stroke:var(--c-aro)}svg.chart .ln-per{stroke:var(--c-per)}.legend{flex-wrap:wrap;gap:6px 16px;margin-top:20px;display:flex}.leg{color:var(--ink-2);align-items:center;gap:8px;padding:4px 0;font-size:13px;display:inline-flex}.leg .sw{border-radius:2px;width:12px;height:3px}.leg.doc .sw{background:var(--c-doc)}.leg.aci .sw{background:var(--c-aci)}.leg.cre .sw{background:var(--c-cre)}.leg.gra .sw{background:var(--c-gra)}.leg.aro .sw{background:var(--c-aro)}.leg.per .sw{background:var(--c-per)}.sheet-card{border:1px solid var(--rule);border-radius:10px;margin-bottom:36px;overflow:hidden}.sheet-tabs{border-bottom:1px solid var(--rule);background:var(--tint);gap:0;padding:0 8px;display:flex}.stab{color:var(--ink-3);cursor:pointer;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 16px;font-size:12.5px;font-weight:500}.stab.on{color:var(--ink);border-bottom-color:var(--accent)}.stab:hover{color:var(--ink)}table.sheet{border-collapse:collapse;width:100%;font-size:13.5px}table.sheet th,table.sheet td{text-align:right;border-bottom:1px solid var(--rule);border-right:1px solid var(--rule);padding:12px 16px}table.sheet th:last-child,table.sheet td:last-child{border-right:0}table.sheet tr:last-child td{border-bottom:0}table.sheet th{background:var(--bg);color:var(--ink-3);letter-spacing:.02em;font-size:11.5px;font-weight:500}table.sheet th:first-child,table.sheet td:first-child{text-align:left;background:var(--tint);color:var(--ink);font-weight:500}table.sheet td .bar{background:var(--accent);vertical-align:middle;border-radius:2px;height:4px;margin-right:8px;display:inline-block}table.sheet td.high{color:var(--accent);font-weight:600}table.sheet td.low{color:var(--ink-3)}table.sheet td.sig{color:var(--ink);font-weight:500}table.sheet td.nsig{color:var(--ink-3)}.export{border:1px solid var(--rule);border-radius:10px;align-items:center;gap:12px;padding:20px 24px;display:flex}.export .label{color:var(--ink-2);flex:1;font-size:13.5px}.export .label b{color:var(--ink);font-weight:600}.export-btn{border:1px solid var(--rule);color:var(--ink-2);background:var(--bg);border-radius:7px;align-items:center;gap:8px;padding:9px 14px;font-size:13px;font-weight:500;display:inline-flex}.export-btn:hover{border-color:var(--ink);color:var(--ink)}.export-btn .ext{color:var(--accent);font-size:11px;font-weight:600}.profile-head{padding:64px 80px 0}.profile-back{color:var(--ink-3);align-items:center;gap:6px;margin-bottom:24px;font-size:13px;display:inline-flex}.profile-back:hover{color:var(--ink)}.profile-back:before{content:"";border-bottom:1.5px solid;border-left:1.5px solid;width:6px;height:6px;transform:rotate(45deg)}main.profile-main{max-width:1100px;padding:64px 80px 96px}.profile-hero{align-items:center;gap:28px;margin-bottom:56px;display:flex}.hero-avatar{color:#fff;letter-spacing:-.02em;background:linear-gradient(135deg,#c9a973,#b4685c);background:linear-gradient(135deg,lab(71.109% 6.76909 32.3085),lab(52.7095% 30.2062 20.7353));border-radius:50%;flex:0 0 96px;place-items:center;width:96px;height:96px;font-size:32px;font-weight:600;display:grid;position:relative}.hero-avatar .edit{background:var(--ink);border:2px solid var(--bg);width:28px;height:28px;color:var(--bg);cursor:pointer;border-radius:50%;place-items:center;font-size:12px;display:grid;position:absolute;bottom:0;right:0}.hero-info{flex-direction:column;flex:1;gap:6px;display:flex}.profile-hero h1{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.hero-role{color:var(--ink-3);font-size:14px}.hero-role b{color:var(--ink);font-weight:500}.hero-actions{gap:8px;display:flex}.profile-tabs{border-bottom:1px solid var(--rule);gap:0;margin-bottom:40px;display:flex}.profile-tab{color:var(--ink-3);cursor:pointer;border-bottom:2px solid #0000;margin-bottom:-1px;padding:12px 18px;font-size:13.5px;font-weight:500}.profile-tab.on{color:var(--ink);border-bottom-color:var(--accent)}.profile-tab:hover{color:var(--ink)}.profile-section{flex-direction:column;gap:20px;margin-bottom:56px;display:flex}.psec-head{justify-content:space-between;align-items:center;display:flex}.psec-head h2{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:600}.psec-head .add{color:var(--ink-3);cursor:pointer;font-size:13px}.psec-head .add:hover{color:var(--ink)}.fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.field{border:1px solid var(--rule);background:var(--bg);border-radius:8px;flex-direction:column;gap:6px;padding:14px 16px;transition:border .15s;display:flex}.field:hover{border-color:var(--ink-4)}.field label{color:var(--ink-3);letter-spacing:.02em;font-size:11.5px;font-weight:500}.field .value{color:var(--ink);letter-spacing:-.005em;padding:1px 0;font-size:14.5px;font-weight:500}.field .value .muted{color:var(--ink-3);font-weight:400}.pref-row{border:1px solid var(--rule);background:var(--bg);border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:18px;padding:18px 20px;display:grid}.pref-row+.pref-row{margin-top:10px}.pref-row .pname-r{letter-spacing:-.005em;font-size:14.5px;font-weight:500}.pref-row .pdesc{color:var(--ink-3);margin-top:2px;font-size:13px}.segmented{border:1px solid var(--rule);background:var(--bg);border-radius:7px;padding:2px;display:flex}.segmented button{color:var(--ink-3);border-radius:5px;padding:6px 11px;font-size:12.5px;font-weight:500}.segmented button.on{background:var(--ink);color:var(--bg)}.tswitch{background:var(--ink-4);cursor:pointer;border-radius:12px;width:36px;height:20px;transition:background .15s;position:relative}.tswitch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.tswitch.on{background:var(--accent)}.tswitch.on:after{transform:translate(16px)}.activity{flex-direction:column;display:flex}.act{border-bottom:1px solid var(--rule);grid-template-columns:28px 1fr auto;align-items:start;gap:14px;padding:14px 0;display:grid}.act:last-child{border-bottom:0}.act .icn-r{background:var(--tint);width:28px;height:28px;color:var(--ink-2);border-radius:50%;place-items:center;font-size:13px;display:grid}.act .icn-r.accent{background:var(--accent-soft);color:var(--accent)}.act .icn-r.ok{background:color-mix(in oklab, var(--ok), white 85%);color:var(--ok)}[data-theme=dark] .act .icn-r.ok{background:color-mix(in oklab, var(--ok), black 65%)}.act .body-r{flex-direction:column;gap:3px;min-width:0;display:flex}.act .title-r{letter-spacing:-.005em;font-size:14px;font-weight:500}.act .meta-r{color:var(--ink-3);font-size:12.5px}.act .time-r{color:var(--ink-3);padding-top:2px;font-size:12px}.danger{border:1px solid var(--rule);border-radius:8px;grid-template-columns:1fr auto;align-items:center;gap:16px;margin-top:64px;padding:20px 22px;display:grid}.danger h3{margin:0 0 4px;font-size:14px;font-weight:600}.danger p{color:var(--ink-3);margin:0;font-size:13px}.btn-out{border:1px solid var(--rule);color:var(--ink-2);background:var(--bg);border-radius:7px;padding:9px 16px;font-size:13px;font-weight:500}.btn-out:hover{border-color:var(--ink);color:var(--ink)}.btn-out.red{color:#b94739;color:lab(46.4025% 46.0952 33.6262)}.btn-out.red:hover{border-color:#b94739;border-color:lab(46.4025% 46.0952 33.6262)}body.collect-body{height:100dvh;overflow:hidden}.collect-page{flex-direction:column;height:100dvh;min-height:0;display:flex}header.collect-top{border-bottom:1px solid var(--rule);align-items:center;gap:24px;padding:20px 40px;display:flex}.progress-pill{border:1px solid var(--rule);color:var(--ink-2);border-radius:999px;align-items:center;gap:12px;margin-left:20px;padding:8px 14px;font-size:13px;font-weight:500;display:inline-flex}.progress-pill .dots{gap:4px;display:inline-flex}.progress-pill .dot{background:var(--ink-4);border-radius:50%;width:8px;height:8px}.progress-pill .dot.done{background:var(--ink)}.progress-pill .dot.now{background:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent), transparent 82%)}.collect-top .right{align-items:center;gap:12px;margin-left:auto;display:flex}.exit-link{color:var(--ink-3);border-radius:7px;padding:7px 12px;font-size:13px}.exit-link:hover{color:var(--ink);background:var(--tint)}.collect-main{flex-direction:column;flex:1;align-items:center;min-height:0;padding:32px 40px 24px;display:flex;overflow-y:auto}.sample-block{flex-direction:column;flex-shrink:0;align-items:center;gap:10px;margin-bottom:20px;display:flex}.sample-eyebrow{color:var(--ink-3);font-size:13px;font-weight:500}.sample-code{letter-spacing:-.04em;color:var(--ink);font-size:clamp(56px,8vh,88px);font-weight:800;line-height:.95}.timer-wrap{flex-direction:column;flex-shrink:0;gap:10px;width:100%;max-width:720px;margin-bottom:20px;display:flex}.timer-meta .v{color:var(--ink);font-size:14px;font-weight:600}.timer-fill{background:var(--accent);border-radius:6px;height:100%;transition:width .1s linear}.instruction{color:var(--ink-2);letter-spacing:-.005em;flex-shrink:0;margin-bottom:16px;font-size:16px;font-weight:500}.attrs-grid{flex:1;grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr;gap:12px;width:100%;max-width:880px;min-height:0;margin-bottom:20px;display:grid}.attr-btn{border:1.5px solid var(--rule);background:var(--bg);cursor:pointer;text-align:center;height:100%;min-height:64px;color:var(--ink);border-radius:14px;justify-content:center;align-items:center;padding:12px 16px;transition:transform 80ms,border .15s,background .15s,color .15s;display:flex;position:relative}.attr-btn:hover{border-color:var(--ink-4);transform:translateY(-1px)}.attr-btn:active{transform:scale(.98)}.attr-btn .label{letter-spacing:-.015em;font-size:clamp(16px,2.2vh,22px);font-weight:600;line-height:1.1}.attr-btn.dominant{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(1.02)}[data-theme=dark] .attr-btn.dominant{color:var(--bg)}.attr-btn.dominant:before{content:"";background:#fff;border-radius:50%;width:12px;height:12px;animation:1.4s ease-out infinite pulse-d;position:absolute;top:12px;right:14px}[data-theme=dark] .attr-btn.dominant:before{background:var(--bg)}@keyframes pulse-d{0%{box-shadow:0 0 #ffffff80;box-shadow:0 0 lab(100% -.0000298023 .0000119209/.5)}to{box-shadow:0 0 0 14px #0000;box-shadow:0 0 0 14px lab(0% 0 0/0)}}.controls{flex-shrink:0;align-items:center;gap:12px;margin-bottom:0;display:flex}.ctl{color:var(--ink-2);border:1px solid var(--rule);background:var(--bg);border-radius:8px;align-items:center;gap:8px;padding:11px 18px;font-size:13.5px;font-weight:500;display:inline-flex}.ctl:hover{border-color:var(--ink);color:var(--ink)}.ctl.none{color:var(--ink-3);background:0 0;border-style:dashed}.ctl.none:hover{color:var(--ink);border-color:var(--ink)}.ctl.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.ctl.primary:hover{opacity:.88}.done-overlay{background:color-mix(in oklab, var(--bg), transparent 8%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:fixed;inset:0}.done-overlay .check-c{background:var(--accent);border-radius:50%;place-items:center;width:80px;height:80px;display:grid}.done-overlay .check-c:after{content:"";border-bottom:3px solid #fff;border-left:3px solid #fff;width:32px;height:18px;transform:rotate(-45deg)translate(2px,-3px)}.done-overlay h2{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.done-overlay p{color:var(--ink-3);margin:0 0 12px;font-size:15px}.ti-main{flex:1;grid-template-columns:1fr 1fr;align-items:center;gap:56px;padding:40px 56px 32px;display:grid;overflow-y:auto}.ti-left{flex-direction:column;align-items:center;gap:28px;display:flex}.sample-eyebrow-sm{color:var(--ink-3);letter-spacing:.02em;font-size:12px;font-weight:500}.sample-code-md{letter-spacing:-.04em;color:var(--ink);font-size:76px;font-weight:800;line-height:.95}.attribute-block{flex-direction:column;align-items:center;gap:6px;display:flex}.attribute-name{letter-spacing:-.025em;color:var(--accent);font-size:28px;font-weight:600}.intensity-block{flex-direction:column;align-items:center;gap:14px;width:100%;max-width:460px;display:flex}.intensity-display{letter-spacing:-.05em;color:var(--ink);font-size:92px;font-weight:800;line-height:.9}.intensity-display small{color:var(--ink-3);margin-left:6px;font-size:24px;font-weight:500}.slider-wrap{width:100%;padding:0 8px}input.ti-slider{appearance:none;background:linear-gradient(to right, var(--accent) 0%, var(--accent) var(--p,0%), var(--tint) var(--p,0%), var(--tint) 100%);cursor:pointer;border-radius:7px;outline:none;width:100%;height:14px;margin:0}input.ti-slider::-webkit-slider-thumb{appearance:none;background:var(--ink);border:3px solid var(--bg);width:40px;height:40px;box-shadow:0 0 0 1px var(--ink-4), 0 4px 14px #0000002e;cursor:grab;border-radius:50%;transition:transform 80ms}input.ti-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.08)}input.ti-slider::-moz-range-thumb{background:var(--ink);border:3px solid var(--bg);width:40px;height:40px;box-shadow:0 0 0 1px var(--ink-4), 0 4px 14px #0000002e;cursor:grab;border-radius:50%}.scale-row{width:100%;color:var(--ink-3);justify-content:space-between;padding:0 4px;font-size:12px;font-weight:500;display:flex}.ti-right{flex-direction:column;gap:18px;display:flex}.chart-eyebrow{color:var(--ink-3);justify-content:space-between;align-items:center;font-size:12px;font-weight:500;display:flex}.chart-eyebrow .recording{color:var(--accent);align-items:center;gap:8px;font-weight:600;display:inline-flex}.chart-eyebrow .recording .dot{background:var(--accent);border-radius:50%;width:8px;height:8px;animation:1s ease-in-out infinite blink-ti}.chart-eyebrow .recording.paused .dot{background:var(--ink-4);animation:none}.chart-eyebrow .recording.paused{color:var(--ink-3)}@keyframes blink-ti{50%{opacity:.3}}.live-chart{width:100%;height:260px;display:block}.live-chart .grid{stroke:var(--rule);stroke-width:1px}.live-chart .axis-line{stroke:var(--ink-4);stroke-width:1px}.live-chart .axis-label{font-family:var(--sans);fill:var(--ink-3);font-size:10.5px}.live-chart path.curve{fill:none;stroke:var(--accent);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round}.live-chart path.curve-fill{fill:var(--accent);fill-opacity:.1;stroke:none}.live-chart .peak-marker{fill:var(--ink);stroke:var(--bg);stroke-width:2px}.live-chart .peak-label{font-family:var(--sans);fill:var(--ink);font-size:10.5px;font-weight:600}.live-chart .now-line{stroke:var(--accent);stroke-width:1px;stroke-dasharray:3 3;opacity:.6}.live-chart .now-dot{fill:var(--accent)}.metrics{border:1px solid var(--rule);border-radius:10px;grid-template-columns:repeat(3,1fr);display:grid;overflow:hidden}.metric{border-right:1px solid var(--rule);flex-direction:column;gap:4px;padding:14px 18px;display:flex}.metric:last-child{border-right:0}.metric .k{color:var(--ink-3);letter-spacing:.02em;font-size:11px;font-weight:500}.metric .v{letter-spacing:-.02em;color:var(--ink);font-size:22px;font-weight:600;line-height:1}.metric.accent .v{color:var(--accent)}footer.foot{border-top:1px solid var(--rule);align-items:center;gap:16px;padding:20px 56px 28px;display:flex}.timer-block{flex-direction:column;flex:1;gap:8px;display:flex}.timer-meta{color:var(--ink-3);justify-content:space-between;align-items:center;font-size:12px;font-weight:500;display:flex}.timer-meta .v{color:var(--ink);font-weight:600}.timer-bar{background:var(--tint);border-radius:4px;height:8px;overflow:hidden}.timer-fill.paused{background:var(--ink-4)}.done-overlay-ti{background:color-mix(in oklab, var(--bg), transparent 8%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:fixed;inset:0}.done-overlay-ti .check-c{background:var(--accent);border-radius:50%;place-items:center;width:80px;height:80px;display:grid}.done-overlay-ti .check-c:after{content:"";border-bottom:3px solid #fff;border-left:3px solid #fff;width:32px;height:18px;transform:rotate(-45deg)translate(2px,-3px)}.done-overlay-ti h2{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.done-overlay-ti p{color:var(--ink-3);text-align:center;max-width:440px;margin:0 0 8px;font-size:14.5px}.done-overlay-ti .recap{border:1px solid var(--rule);background:var(--bg);border-radius:10px;gap:24px;margin-bottom:8px;padding:14px 22px;display:flex}.done-overlay-ti .recap .k{color:var(--ink-3);font-size:11px;font-weight:500}.done-overlay-ti .recap .v{letter-spacing:-.02em;margin-top:2px;font-size:22px;font-weight:600}.qda-page{flex-direction:column;min-height:100vh;display:flex}.qda-main{flex:1;width:100%;max-width:1100px;margin:0 auto;padding:40px 56px}.qda-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:36px;padding-bottom:28px;display:flex}.sample-code-h{letter-spacing:-.04em;color:var(--ink);font-size:56px;font-weight:800;line-height:.95}.qda-head .intro{text-align:right;flex-direction:column;gap:4px;max-width:460px;display:flex}.qda-head .intro .title{letter-spacing:-.015em;font-size:16px;font-weight:600}.qda-head .intro .desc{color:var(--ink-3);font-size:13.5px}.qda-list{flex-direction:column;gap:24px;display:flex}.qda-row{border:1px solid var(--rule);background:var(--bg);border-radius:10px;flex-direction:column;gap:14px;padding:22px 24px;transition:border .15s;display:flex}.qda-row.rated{border-color:var(--ink-4)}.qda-row-head{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.qda-name{letter-spacing:-.015em;font-size:18px;font-weight:600}.qda-value{letter-spacing:-.02em;color:var(--ink-3);font-size:22px;font-weight:700}.qda-row.rated .qda-value{color:var(--accent)}.qda-value .val{font-variant-numeric:tabular-nums}.qda-scale{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;touch-action:none;height:56px;position:relative}.qda-track{background:var(--ink-4);height:2px;position:absolute;top:50%;left:12px;right:12px;transform:translateY(-50%)}.qda-tick{background:var(--ink-2);width:2px;height:16px;position:absolute;top:50%;transform:translateY(-50%)}.qda-tick.left{left:12px}.qda-tick.right{right:12px}.qda-thumb{background:var(--accent);border:3px solid var(--bg);width:24px;height:24px;box-shadow:0 0 0 1.5px var(--accent), 0 2px 8px #0000002e;pointer-events:none;border-radius:50%;transition:left .12s ease-out;position:absolute;top:50%;left:12px;transform:translate(-50%,-50%)}.qda-thumb.hidden{display:none}.qda-scale:hover .qda-track{background:var(--ink-3)}.qda-anchors{color:var(--ink-3);justify-content:space-between;padding:0 4px;font-size:12.5px;font-weight:500;display:flex}footer.qda-foot{background:var(--bg);border-top:1px solid var(--rule);align-items:center;gap:24px;padding:18px 40px;display:flex;position:sticky;bottom:0}.progress-bar-wrap{flex-direction:column;flex:1;gap:6px;display:flex}.progress-bar-meta{color:var(--ink-3);justify-content:space-between;font-size:12.5px;font-weight:500;display:flex}.progress-bar-meta .v{color:var(--ink);font-weight:600}.progress-bar{background:var(--tint);border-radius:3px;height:6px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:3px;height:100%;transition:width .2s}.qda-foot .controls{align-items:center;gap:10px;display:flex}.qda-foot .ctl{color:var(--ink-2);border:1px solid var(--rule);background:var(--bg);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.qda-foot .ctl:hover{border-color:var(--ink);color:var(--ink)}.qda-foot .ctl.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.qda-foot .ctl.primary:hover{opacity:.88}.qda-foot .ctl.primary:disabled{background:var(--ink-4);border-color:var(--ink-4);cursor:not-allowed;opacity:1}.qda-foot .ctl.primary:disabled:hover{opacity:1}.done-overlay-qda{background:color-mix(in oklab, var(--bg), transparent 8%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex;position:fixed;inset:0}.done-overlay-qda .check-c{background:var(--accent);border-radius:50%;place-items:center;width:80px;height:80px;display:grid}.done-overlay-qda .check-c:after{content:"";border-bottom:3px solid #fff;border-left:3px solid #fff;width:32px;height:18px;transform:rotate(-45deg)translate(2px,-3px)}.done-overlay-qda h2{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.done-overlay-qda p{color:var(--ink-3);text-align:center;max-width:440px;margin:0 0 4px;font-size:14.5px}.done-overlay-qda .done-recap{border:1px solid var(--rule);background:var(--bg);border-radius:10px;width:100%;max-width:480px;padding:8px 16px}.done-overlay-qda .done-recap .row{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding:8px 0;font-size:13.5px;display:flex}.done-overlay-qda .done-recap .row:last-child{border-bottom:0}.done-overlay-qda .done-recap .row .n{color:var(--ink-2);font-weight:500}.done-overlay-qda .done-recap .row .v{color:var(--accent);letter-spacing:-.01em;font-size:16px;font-weight:700}.done-overlay-qda .ctl.primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.page-c{flex-direction:column;min-height:100vh;display:flex}.collect-top .mode-switch{border:1px solid var(--rule);border-radius:7px;padding:2px;display:inline-flex}.collect-top .mode-switch button{color:var(--ink-3);letter-spacing:.04em;border-radius:5px;padding:6px 12px;font-size:12px;font-weight:600}.collect-top .mode-switch button.on{background:var(--ink);color:var(--bg)}.cata-main{flex:1;width:100%;max-width:1240px;margin:0 auto;padding:40px 56px 32px}.cata-head{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:36px;padding-bottom:28px;display:flex}.cata-head .intro{text-align:right;flex-direction:column;gap:6px;max-width:560px;display:flex}.cata-head .eyebrow-accent{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:600}.cata-head .question{letter-spacing:-.02em;font-size:22px;font-weight:600;line-height:1.25}.cata-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.cata-grid .chip{border:1.5px solid var(--rule);background:var(--bg);text-align:center;letter-spacing:-.005em;color:var(--ink);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;padding:16px 18px;font-size:15px;font-weight:500;transition:border .1s,background .1s,transform 80ms}.cata-grid .chip:hover{border-color:var(--ink-4)}.cata-grid .chip:active{transform:scale(.98)}.cata-grid .chip.selected{background:var(--accent);color:#fff;border-color:var(--accent)}[data-theme=dark] .cata-grid .chip.selected{color:var(--bg)}.rata-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.rcard{border:1.5px solid var(--rule);background:var(--bg);border-radius:10px;align-items:center;gap:16px;padding:16px 18px;transition:border .1s;display:flex}.rcard:hover{border-color:var(--ink-4)}.rcard.selected{border-color:var(--ink-4);background:var(--accent-soft)}[data-theme=dark] .rcard.selected{background:var(--tint)}.rcard .check{border:1.5px solid var(--ink-4);cursor:pointer;border-radius:5px;flex:0 0 22px;place-items:center;width:22px;height:22px;display:grid}.rcard.selected .check{background:var(--accent);border-color:var(--accent)}.rcard.selected .check:after{content:"";border-bottom:2px solid #fff;border-left:2px solid #fff;width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.rcard .rname{letter-spacing:-.005em;cursor:pointer;flex:1;font-size:15px;font-weight:500}.rcard .rscale{opacity:.4;pointer-events:none;gap:4px;transition:opacity .15s;display:flex}.rcard.selected .rscale{opacity:1;pointer-events:auto}.rcard .rscale button{border:1px solid var(--rule);width:30px;height:30px;color:var(--ink-2);background:var(--bg);border-radius:6px;font-size:13px;font-weight:600}.rcard .rscale button:hover{border-color:var(--ink);color:var(--ink)}.rcard .rscale button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}footer.cata-foot{background:var(--bg);border-top:1px solid var(--rule);align-items:center;gap:24px;padding:18px 40px;display:flex;position:sticky;bottom:0}.cata-foot .count-block{flex-direction:column;flex:1;gap:4px;display:flex}.cata-foot .count-meta{color:var(--ink-3);justify-content:space-between;font-size:12.5px;font-weight:500;display:flex}.cata-foot .count-meta .v{color:var(--ink);font-weight:600}.cata-foot .count-bar{background:var(--tint);border-radius:2px;height:4px;overflow:hidden}.cata-foot .count-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .2s}.cata-foot .controls{align-items:center;gap:10px;display:flex}.cata-foot .ctl{color:var(--ink-2);border:1px solid var(--rule);background:var(--bg);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.cata-foot .ctl:hover{border-color:var(--ink);color:var(--ink)}.cata-foot .ctl.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.cata-foot .ctl.primary:hover{opacity:.88}.done-overlay-cata{background:color-mix(in oklab, var(--bg), transparent 8%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex;position:fixed;inset:0}.done-overlay-cata .checkbig{background:var(--accent);border-radius:50%;place-items:center;width:80px;height:80px;display:grid}.done-overlay-cata .checkbig:after{content:"";border-bottom:3px solid #fff;border-left:3px solid #fff;width:32px;height:18px;transform:rotate(-45deg)translate(2px,-3px)}.done-overlay-cata h2{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.done-overlay-cata p{color:var(--ink-3);text-align:center;max-width:440px;margin:0 0 4px;font-size:14.5px}.done-recap-c{border:1px solid var(--rule);background:var(--bg);border-radius:10px;flex-wrap:wrap;gap:6px;width:100%;max-width:520px;padding:14px 18px;display:flex}.done-recap-c.rata{flex-direction:column;gap:6px}.done-recap-c .term-tag{background:var(--accent);color:#fff;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500}.done-recap-c .term-row{border-bottom:1px dashed var(--rule);justify-content:space-between;align-items:center;padding:6px 0;font-size:13.5px;display:flex}.done-recap-c .term-row:last-child{border-bottom:0}.done-recap-c .term-row .v{color:var(--accent);font-weight:700}.done-overlay-cata .ctl.primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.napping-page{flex-direction:column;height:100vh;display:flex}.collect-top .session-pill{border:1px solid var(--rule);color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;margin-left:20px;padding:7px 14px;font-size:13px;font-weight:500;display:inline-flex}.collect-top .session-pill .dot{background:var(--accent);border-radius:50%;width:8px;height:8px}.napping-main{flex:1;grid-template-columns:1fr 280px;gap:24px;min-height:0;padding:20px 32px;display:grid;overflow:hidden}.canvas-wrap{flex-direction:column;gap:12px;min-height:0;display:flex}.canvas-wrap .instruction{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.canvas-wrap .eyebrow-accent{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:600}.canvas-wrap h1{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:600;line-height:1.25}.canvas-wrap .legend{color:var(--ink-3);gap:16px;font-size:12px;display:inline-flex}.canvas-wrap .legend .item{align-items:center;gap:6px;display:inline-flex}.canvas-wrap .legend .item:before{content:"";background:var(--accent);border-radius:1px;width:14px;height:2px}.canvas-wrap .legend .item.dist:before{background:linear-gradient(to right, var(--accent) 30%, transparent 30%, transparent 60%, var(--accent) 60%)}:root{--paper:#fbf9f3}[data-theme=dark]{--paper:#18150f}.canvas{background:var(--paper);border:1.5px solid var(--ink-4);background-image:linear-gradient(to right, color-mix(in oklab, var(--ink-4), transparent 78%) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in oklab, var(--ink-4), transparent 78%) 1px, transparent 1px);cursor:default;touch-action:none;background-position:0 0;background-size:48px 48px;border-radius:6px;flex:1;position:relative;overflow:hidden}.canvas:before,.canvas:after{content:"";background:var(--ink-3);opacity:.3;position:absolute}.canvas:before{width:1px;top:12px;bottom:12px;left:50%;transform:translate(-50%)}.canvas:after{height:1px;top:50%;left:12px;right:12px;transform:translateY(-50%)}.axis-label{color:var(--ink-3);letter-spacing:.03em;background:var(--paper);border-radius:3px;padding:2px 6px;font-size:11px;font-weight:500;position:absolute}.axis-label.top{top:8px;left:50%;transform:translate(-50%)}.axis-label.bot{bottom:8px;left:50%;transform:translate(-50%)}.axis-label.left{top:50%;left:8px;transform:translateY(-50%)}.axis-label.right{top:50%;right:8px;transform:translateY(-50%)}.canvas .product{border:2.5px solid var(--bg);width:64px;height:64px;box-shadow:0 0 0 1.5px var(--ink), 0 4px 12px #0000002e;cursor:grab;color:#fff;letter-spacing:.02em;-webkit-user-select:none;user-select:none;touch-action:none;border-radius:50%;justify-content:center;align-items:center;font-size:15px;font-weight:700;transition:transform 80ms,box-shadow .12s;display:flex;position:absolute}.canvas .product.dragging{cursor:grabbing;z-index:10;box-shadow:0 0 0 1.5px var(--ink), 0 8px 22px #00000047;transform:scale(1.06)}.canvas .product:hover{transform:scale(1.04)}.canvas .product:active{transform:scale(.98)}.napping-side{flex-direction:column;gap:18px;min-height:0;display:flex}.napping-side .side-card{border:1px solid var(--rule);background:var(--bg);border-radius:10px;padding:16px 18px}.napping-side .side-card h3{color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;margin:0 0 12px;font-size:11.5px;font-weight:500}.napping-side .side-card .desc{color:var(--ink-3);margin:0;font-size:12.5px;line-height:1.45}.napping-side .product-list{flex-direction:column;gap:8px;display:flex}.napping-side .product-list-row{grid-template-columns:28px 1fr 22px;align-items:center;gap:10px;padding:6px 4px;font-size:13px;display:grid}.napping-side .pchip{color:#fff;border-radius:50%;place-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:grid}.napping-side .code{font-weight:500}.napping-side .state{background:var(--ink-4);border-radius:50%;width:18px;height:18px;position:relative}.napping-side .product-list-row.placed .state{background:var(--accent)}.napping-side .product-list-row.placed .state:after{content:"";border-bottom:1.5px solid #fff;border-left:1.5px solid #fff;width:7px;height:4px;margin:auto;position:absolute;inset:0;transform:rotate(-45deg)translate(1px,-1px)}footer.napping-foot{background:var(--bg);border-top:1px solid var(--rule);flex:none;align-items:center;gap:24px;padding:16px 32px;display:flex}.napping-foot .progress-block{flex-direction:column;flex:1;gap:4px;display:flex}.napping-foot .progress-meta{color:var(--ink-3);justify-content:space-between;font-size:12.5px;font-weight:500;display:flex}.napping-foot .progress-meta .v{color:var(--ink);font-weight:600}.napping-foot .progress-bar{background:var(--tint);border-radius:2px;height:4px;overflow:hidden}.napping-foot .progress-fill{background:var(--accent);border-radius:2px;height:100%;transition:width .2s}.napping-foot .controls{gap:10px;display:flex}.napping-foot .ctl{color:var(--ink-2);border:1px solid var(--rule);background:var(--bg);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.napping-foot .ctl:hover{border-color:var(--ink);color:var(--ink)}.napping-foot .ctl.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.napping-foot .ctl.primary:hover{opacity:.88}.napping-foot .ctl.primary:disabled{background:var(--ink-4);border-color:var(--ink-4);cursor:not-allowed;opacity:1}.done-overlay-napping{background:color-mix(in oklab, var(--bg), transparent 8%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex;position:fixed;inset:0}.done-overlay-napping .check-c{background:var(--accent);border-radius:50%;place-items:center;width:80px;height:80px;display:grid}.done-overlay-napping .check-c:after{content:"";border-bottom:3px solid #fff;border-left:3px solid #fff;width:32px;height:18px;transform:rotate(-45deg)translate(2px,-3px)}.done-overlay-napping h2{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.done-overlay-napping p{color:var(--ink-3);text-align:center;max-width:440px;margin:0;font-size:14.5px}.coords-preview{border:1px solid var(--rule);background:var(--paper);background-image:linear-gradient(to right, color-mix(in oklab, var(--ink-4), transparent 78%) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in oklab, var(--ink-4), transparent 78%) 1px, transparent 1px);background-size:24px 24px;border-radius:8px;width:320px;height:240px;margin:8px 0;position:relative}.coords-preview .mini-dot{border:2px solid var(--bg);width:22px;height:22px;box-shadow:0 0 0 1px var(--ink), 0 1px 4px #00000026;color:#fff;border-radius:50%;place-items:center;font-size:9px;font-weight:700;display:grid;position:absolute;transform:translate(-50%,-50%)}.done-overlay-napping .ctl.primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.fp-page{flex-direction:column;min-height:100vh;display:flex}.collect-top .phase-pill{border:1px solid var(--rule);color:var(--ink-2);border-radius:999px;align-items:center;gap:12px;margin-left:20px;padding:8px 14px;font-size:13px;font-weight:500;display:inline-flex}.collect-top .phase-pill .dots{gap:4px;display:inline-flex}.collect-top .phase-pill .dot{background:var(--ink-4);border-radius:50%;width:8px;height:8px}.collect-top .phase-pill .dot.now{background:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--accent), transparent 82%)}.collect-top .phase-pill .dot.done{background:var(--ink)}.fp-main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:40px 56px}.fp-head{border-bottom:1px solid var(--rule);flex-direction:column;gap:14px;margin-bottom:32px;padding-bottom:28px;display:flex}.fp-head .eyebrow-accent{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:600}.fp-head h1{letter-spacing:-.025em;max-width:720px;margin:0;font-size:26px;font-weight:600;line-height:1.2}.fp-head .desc{color:var(--ink-3);max-width:720px;margin:0;font-size:14px}.samples-strip{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.sample-chip{border:1px solid var(--rule);color:var(--ink-2);border-radius:999px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-size:13px;display:inline-flex}.sample-chip .swatch{color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;font-weight:700;display:grid}.vocab-card{border:1px solid var(--rule);border-radius:10px;padding:22px 24px}.vocab-card h2{letter-spacing:-.01em;margin:0 0 4px;font-size:16px;font-weight:600}.vocab-card .hint{color:var(--ink-3);margin-bottom:18px;font-size:13px}.vocab-input{align-items:center;gap:8px;margin-bottom:14px;display:flex}.vocab-input input{background:var(--bg);border:1px solid var(--rule);color:var(--ink);border-radius:8px;outline:none;flex:1;padding:11px 14px;font-size:14.5px}.vocab-input input:focus{border-color:var(--accent)}.vocab-input button{background:var(--ink);color:var(--bg);border-radius:8px;padding:11px 16px;font-size:13.5px;font-weight:500}.vocab-input button:hover{opacity:.88}.vocab-list{flex-wrap:wrap;gap:8px;min-height:44px;display:flex}.vocab-tag{border:1px solid var(--rule);background:var(--accent-soft);color:#662703;color:lab(25.0312% 27.3595 34.6759);border-radius:999px;align-items:center;gap:8px;padding:7px 8px 7px 12px;font-size:13.5px;font-weight:500;display:inline-flex}[data-theme=dark] .vocab-tag{color:var(--ink)}.vocab-tag button{background:var(--bg);width:18px;height:18px;color:var(--ink-3);border-radius:50%;place-items:center;font-size:13px;line-height:1;display:grid}.vocab-tag button:hover{color:var(--ink)}.vocab-empty{color:var(--ink-3);padding:8px 0;font-size:13px;font-style:italic}.vocab-suggestions{border-top:1px dashed var(--rule);margin-top:18px;padding-top:16px}.vocab-suggestions .label{color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;font-size:11.5px;font-weight:500}.vocab-suggestions .chips{flex-wrap:wrap;gap:6px;display:flex}.vocab-suggestions .chip{border:1px solid var(--rule);background:var(--bg);color:var(--ink-2);border-radius:999px;padding:5px 10px;font-size:12.5px}.vocab-suggestions .chip:hover{border-color:var(--ink);color:var(--ink)}.vocab-suggestions .chip:before{content:"+ ";color:var(--accent);font-weight:600}.rank-list{flex-direction:column;gap:18px;display:flex}.rank-row{border:1px solid var(--rule);background:var(--bg);border-radius:10px;padding:18px 22px}.rank-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.rank-name{letter-spacing:-.01em;font-size:16px;font-weight:600}.rank-count{color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;font-size:11.5px;font-weight:500}.rank-anchors{color:var(--ink-3);justify-content:space-between;margin-top:10px;padding:0 4px;font-size:12px;font-weight:500;display:flex}.rank-anchors .arrow-l:before{content:"← "}.rank-anchors .arrow-r:after{content:" →"}.rank-track{-webkit-user-select:none;user-select:none;gap:10px;padding:6px 0;display:flex}.fp-card{border:1.5px solid var(--rule);background:var(--bg);min-width:0;height:64px;color:var(--ink);cursor:grab;touch-action:none;border-radius:10px;flex:1 1 0;place-items:center;font-size:15px;font-weight:700;transition:border .12s,transform .18s;display:grid;position:relative}.fp-card:hover{border-color:var(--ink-4)}.fp-card.dragging{cursor:grabbing;z-index:2;transform:scale(1.04);box-shadow:0 6px 20px #0000002e;background:var(--accent)!important;color:#fff!important;border-color:var(--accent)!important}[data-theme=dark] .fp-card.dragging{color:var(--bg)!important}.fp-card .pos{color:var(--ink-3);letter-spacing:.04em;font-size:10px;font-weight:600;position:absolute;top:6px;left:8px}.fp-card.dragging .pos{color:#ffffffb3;color:lab(100% -.0000298023 .0000119209/.7)}footer.fp-foot{background:var(--bg);border-top:1px solid var(--rule);align-items:center;gap:24px;padding:18px 40px;display:flex;position:sticky;bottom:0}.fp-foot .foot-meta{color:var(--ink-3);flex:1;font-size:13px}.fp-foot .foot-meta b{color:var(--ink);font-weight:600}.fp-foot .controls{align-items:center;gap:10px;display:flex}.fp-foot .ctl{color:var(--ink-2);border:1px solid var(--rule);background:var(--bg);border-radius:8px;align-items:center;gap:8px;padding:11px 18px;font-size:13.5px;font-weight:500;display:inline-flex}.fp-foot .ctl:hover{border-color:var(--ink);color:var(--ink)}.fp-foot .ctl.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.fp-foot .ctl.primary:hover{opacity:.88}.fp-foot .ctl.primary:disabled{background:var(--ink-4);border-color:var(--ink-4);cursor:not-allowed;opacity:1}.fp-foot .ctl .arrow{background:currentColor;width:12px;height:1.5px;position:relative}.fp-foot .ctl .arrow:after{content:"";border-top:1.5px solid;border-right:1.5px solid;width:6px;height:6px;position:absolute;top:-3px;right:0;transform:rotate(45deg)}.fp-foot .ctl .arrow.back{transform:scaleX(-1)}.done-overlay-fp{background:color-mix(in oklab, var(--bg), transparent 8%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex;position:fixed;inset:0}.done-overlay-fp .check-c{background:var(--accent);border-radius:50%;place-items:center;width:80px;height:80px;display:grid}.done-overlay-fp .check-c:after{content:"";border-bottom:3px solid #fff;border-left:3px solid #fff;width:32px;height:18px;transform:rotate(-45deg)translate(2px,-3px)}.done-overlay-fp h2{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.done-overlay-fp p{color:var(--ink-3);text-align:center;max-width:440px;margin:0 0 4px;font-size:14.5px}.done-overlay-fp .done-summary{border:1px solid var(--rule);background:var(--bg);border-radius:10px;width:100%;max-width:480px;padding:10px 16px}.done-overlay-fp .summary-row{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding:8px 0;font-size:13.5px;display:flex}.done-overlay-fp .summary-row:last-child{border-bottom:0}.done-overlay-fp .summary-row .k{color:var(--ink-3)}.done-overlay-fp .summary-row .v{color:var(--ink);font-weight:600}.done-overlay-fp .ctl.primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.fcp-page{flex-direction:column;min-height:100vh;display:flex}.fcp-main{flex:1;width:100%;max-width:1280px;margin:0 auto;padding:40px 56px}.fcp-main .head-block{border-bottom:1px solid var(--rule);flex-direction:column;gap:14px;margin-bottom:32px;padding-bottom:28px;display:flex}.fcp-main h1{letter-spacing:-.025em;max-width:760px;margin:0;font-size:26px;font-weight:600;line-height:1.2}.fcp-main .desc{color:var(--ink-3);max-width:760px;margin:0;font-size:14px}.product-nav{border:1px solid var(--rule);border-radius:10px;align-items:center;gap:18px;margin-bottom:24px;padding:18px 24px;display:flex}.product-current{flex:1;align-items:center;gap:16px;display:flex}.product-current .swatch{color:#fff;border-radius:50%;place-items:center;width:56px;height:56px;font-size:16px;font-weight:700;display:grid}.product-current .info{flex-direction:column;gap:2px;display:flex}.product-current .eyebrow-sm{color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:500}.product-current .code{letter-spacing:-.02em;font-size:24px;font-weight:700}.product-pager{gap:6px;display:flex}.product-pager button{border:1px solid var(--rule);width:36px;height:36px;color:var(--ink-2);border-radius:8px;font-size:16px}.product-pager button:hover{border-color:var(--ink);color:var(--ink)}.product-pager button:disabled{opacity:.4;cursor:not-allowed}.product-dots{align-items:center;gap:6px;display:flex}.product-dots .pdot{border:1.5px solid var(--rule);background:var(--bg);width:28px;height:28px;color:var(--ink-3);cursor:pointer;border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid}.product-dots .pdot:hover{border-color:var(--ink-4);color:var(--ink)}.product-dots .pdot.current{border-color:var(--accent);color:var(--accent)}.product-dots .pdot.complete{background:var(--accent);border-color:var(--accent);color:#fff}.scales{flex-direction:column;gap:14px;display:flex}.scale-row{border:1px solid var(--rule);background:var(--bg);border-radius:10px;grid-template-columns:220px 1fr 50px;align-items:center;gap:18px;padding:16px 20px;transition:border .15s;display:grid}.scale-row.rated{border-color:var(--ink-4)}.scale-attr{letter-spacing:-.005em;font-size:15px;font-weight:600}.scale-val{text-align:right;letter-spacing:-.02em;color:var(--ink-3);font-size:18px;font-weight:700}.scale-row.rated .scale-val{color:var(--accent)}.scale-line{cursor:pointer;touch-action:none;height:40px;position:relative}.scale-track{background:var(--ink-4);height:2px;position:absolute;top:50%;left:10px;right:10px;transform:translateY(-50%)}.scale-tick{background:var(--ink-2);width:2px;height:14px;position:absolute;top:50%;transform:translateY(-50%)}.scale-tick.left{left:10px}.scale-tick.right{right:10px}.scale-thumb{background:var(--accent);border:2.5px solid var(--bg);width:20px;height:20px;box-shadow:0 0 0 1.5px var(--accent), 0 2px 6px #00000026;pointer-events:none;border-radius:50%;transition:left .12s ease-out;position:absolute;top:50%;left:10px;transform:translate(-50%,-50%)}.scale-thumb.hidden{display:none}footer.fcp-foot{background:var(--bg);border-top:1px solid var(--rule);align-items:center;gap:24px;padding:18px 40px;display:flex;position:sticky;bottom:0}.fcp-foot .foot-meta{color:var(--ink-3);flex:1;font-size:13px}.fcp-foot .controls{align-items:center;gap:10px;display:flex}.fcp-foot .ctl{color:var(--ink-2);border:1px solid var(--rule);background:var(--bg);border-radius:8px;align-items:center;gap:8px;padding:11px 18px;font-size:13.5px;font-weight:500;display:inline-flex}.fcp-foot .ctl:hover{border-color:var(--ink);color:var(--ink)}.fcp-foot .ctl.primary{background:var(--ink);color:var(--bg);border-color:var(--ink)}.fcp-foot .ctl.primary:hover{opacity:.88}.fcp-foot .ctl.primary:disabled{background:var(--ink-4);border-color:var(--ink-4);cursor:not-allowed;opacity:1}.fcp-foot .ctl .arrow{background:currentColor;width:12px;height:1.5px;position:relative}.fcp-foot .ctl .arrow:after{content:"";border-top:1.5px solid;border-right:1.5px solid;width:6px;height:6px;position:absolute;top:-3px;right:0;transform:rotate(45deg)}.fcp-foot .ctl .arrow.back{transform:scaleX(-1)}.done-overlay-fcp{background:color-mix(in oklab, var(--bg), transparent 8%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:18px;padding:24px;display:flex;position:fixed;inset:0}.done-overlay-fcp .check-c{background:var(--accent);border-radius:50%;place-items:center;width:80px;height:80px;display:grid}.done-overlay-fcp .check-c:after{content:"";border-bottom:3px solid #fff;border-left:3px solid #fff;width:32px;height:18px;transform:rotate(-45deg)translate(2px,-3px)}.done-overlay-fcp h2{letter-spacing:-.025em;margin:0;font-size:32px;font-weight:600}.done-overlay-fcp p{color:var(--ink-3);text-align:center;max-width:440px;margin:0;font-size:14.5px}.done-overlay-fcp .done-summary{border:1px solid var(--rule);background:var(--bg);border-radius:10px;width:100%;max-width:480px;padding:10px 16px}.done-overlay-fcp .summary-row{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding:8px 0;font-size:13.5px;display:flex}.done-overlay-fcp .summary-row:last-child{border-bottom:0}.done-overlay-fcp .summary-row .k{color:var(--ink-3)}.done-overlay-fcp .summary-row .v{color:var(--ink);font-weight:600}.done-overlay-fcp .ctl.primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.method-selector{background:var(--tint);border:1px solid var(--rule);border-radius:7px;padding:3px;display:inline-flex}.method-selector button{color:var(--ink-3);letter-spacing:.04em;border-radius:5px;padding:6px 11px;font-size:11.5px;font-weight:600}.method-selector button.on{background:var(--ink);color:var(--bg)}svg.chart polygon.radar-bg{fill:none;stroke:var(--rule);stroke-width:1px}svg.chart line.radar-axis{stroke:var(--rule);stroke-width:1px}svg.chart polygon.radar-data{fill-opacity:.18;stroke-width:2px}svg.chart .radar-label{fill:var(--ink-3);font-size:11px;font-family:var(--sans)}svg.chart polygon.r-a{fill:var(--c-doc);stroke:var(--c-doc)}svg.chart polygon.r-b{fill:var(--c-aci);stroke:var(--c-aci)}svg.chart polygon.r-c{fill:var(--c-cre);stroke:var(--c-cre)}svg.chart .biplot-axis{stroke:var(--ink-4);stroke-width:1px}svg.chart .product-dot circle{stroke:var(--bg);stroke-width:2px}svg.chart .product-dot text{fill:#fff;font-size:10px;font-weight:700;font-family:var(--sans)}[data-theme=dark] svg.chart .product-dot text{fill:var(--bg)}svg.chart .attr-vector line{stroke:var(--ink-3);stroke-width:1.2px;opacity:.55}svg.chart .attr-vector text{fill:var(--ink-2);font-size:10.5px;font-family:var(--sans)}svg.chart .axis-num{fill:var(--ink-3);font-size:10px;font-family:var(--sans)}svg.chart .bar{fill:var(--c-doc)}svg.chart .bar.b{fill:var(--c-aci)}svg.chart .bar.c{fill:var(--c-cre)}svg.chart .bar.doc{fill:var(--c-doc)}svg.chart .bar.aci{fill:var(--c-aci)}svg.chart .bar.cre{fill:var(--c-cre)}svg.chart .bar.gra{fill:var(--c-gra)}svg.chart .bar.aro{fill:var(--c-aro)}svg.chart .bar.per{fill:var(--c-per)}svg.chart .bar-label{fill:var(--ink-2);font-size:11px;font-family:var(--sans)}svg.chart .bar-grid{stroke:var(--rule);stroke-width:1px}svg.chart .jar-seg.lvl-1{fill:#ce4522;fill:lab(49.6868% 54.0385 50.3606)}svg.chart .jar-seg.lvl-2{fill:#ed9658;fill:lab(70.3879% 29.2392 46.3747)}svg.chart .jar-seg.lvl-3{fill:#25984d;fill:lab(55.4741% -45.4549 30.1606)}svg.chart .jar-seg.lvl-4{fill:#9d99ed;fill:lab(66.1636% 15.8845 -41.949)}svg.chart .jar-seg.lvl-5{fill:#7250ba;fill:lab(41.8715% 32.8869 -51.7229)}[data-theme=dark] svg.chart .jar-seg.lvl-1{fill:#f07456;fill:lab(63.8481% 47.1989 40.2961)}[data-theme=dark] svg.chart .jar-seg.lvl-2{fill:#f9a870;fill:lab(76.2632% 26.5133 41.6681)}[data-theme=dark] svg.chart .jar-seg.lvl-3{fill:#4eb068;fill:lab(64.6528% -42.1632 27.6794)}[data-theme=dark] svg.chart .jar-seg.lvl-4{fill:#afacff;fill:lab(73.153% 15.4932 -42.0472)}[data-theme=dark] svg.chart .jar-seg.lvl-5{fill:#8e71d6;fill:lab(53.8143% 28.8751 -48.7691)}.leg.jar-leg .sw{border-radius:3px;width:14px;height:10px}.leg.jar-leg.lvl-1 .sw{background:#ce4522;background:lab(49.6868% 54.0385 50.3606)}.leg.jar-leg.lvl-2 .sw{background:#ed9658;background:lab(70.3879% 29.2392 46.3747)}.leg.jar-leg.lvl-3 .sw{background:#25984d;background:lab(55.4741% -45.4549 30.1606)}.leg.jar-leg.lvl-4 .sw{background:#9d99ed;background:lab(66.1636% 15.8845 -41.949)}.leg.jar-leg.lvl-5 .sw{background:#7250ba;background:lab(41.8715% 32.8869 -51.7229)}[data-theme=dark] .leg.jar-leg.lvl-1 .sw{background:#f07456;background:lab(63.8481% 47.1989 40.2961)}[data-theme=dark] .leg.jar-leg.lvl-2 .sw{background:#f9a870;background:lab(76.2632% 26.5133 41.6681)}[data-theme=dark] .leg.jar-leg.lvl-3 .sw{background:#4eb068;background:lab(64.6528% -42.1632 27.6794)}[data-theme=dark] .leg.jar-leg.lvl-4 .sw{background:#afacff;background:lab(73.153% 15.4932 -42.0472)}[data-theme=dark] .leg.jar-leg.lvl-5 .sw{background:#8e71d6;background:lab(53.8143% 28.8751 -48.7691)}.laudo-section{border:1px solid var(--rule);border-radius:10px;flex-direction:column;align-items:flex-start;gap:0;margin-bottom:36px;padding:20px 24px;display:flex}.badge-ok{color:#004919;color:lab(26.0586% -36.9368 25.2761);background:#d0f7d6;background:lab(93.8347% -17.7932 11.3956);border:1px solid #95d7a2;border:1px solid lab(80.4199% -29.8207 19.2662);border-radius:5px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:500;display:inline-flex}.badge-warn{color:#753000;color:lab(29.5958% 31.2915 48.6377);background:#ffe9d7;background:lab(94.0275% 10.1204 16.0984);border:1px solid #ffbd90;border:1px solid lab(82.1858% 21.5144 33.6821);border-radius:5px;align-items:center;gap:6px;padding:5px 12px;font-size:12.5px;font-weight:500;display:inline-flex}[data-theme=dark] .badge-ok{color:#7ccd8e;color:lab(76.0243% -35.9096 23.3287);background:#062911;background:lab(13.7519% -18.1553 11.9108);border-color:#00481d;border-color:lab(25.8361% -30.4723 20.4276)}[data-theme=dark] .badge-warn{color:#f9a870;color:lab(76.2632% 26.5133 41.6681);background:#341a07;background:lab(12.7514% 11.4624 16.1635);border-color:#683100;border-color:lab(27.5227% 23.8667 41.356)}.report-error{word-break:break-word;color:#753000;color:lab(29.5958% 31.2915 48.6377);background:#ffe9d7;background:lab(94.0275% 10.1204 16.0984);border:1px solid #ffbd90;border:1px solid lab(82.1858% 21.5144 33.6821);border-radius:5px;padding:5px 12px;font-size:12.5px;font-weight:500;display:block}[data-theme=dark] .report-error{color:#f9a870;color:lab(76.2632% 26.5133 41.6681);background:#341a07;background:lab(12.7514% 11.4624 16.1635);border-color:#683100;border-color:lab(27.5227% 23.8667 41.356)}.laudo-text{width:100%;max-width:720px;margin-top:18px}.laudo-lead{margin-bottom:10px}.laudo-acc{border-top:1px solid var(--rule)}.laudo-acc:last-child{border-bottom:1px solid var(--rule)}.laudo-acc-head{cursor:pointer;text-align:left;width:100%;font:inherit;background:0 0;border:0;align-items:center;gap:9px;padding:13px 2px;display:flex}.laudo-acc-chevron{color:var(--ink-3);font-size:11px;line-height:1;transition:transform .15s}.laudo-acc.open .laudo-acc-chevron{transform:rotate(90deg)}.laudo-acc-title{letter-spacing:.05em;text-transform:uppercase;color:var(--ink);font-size:12px;font-weight:700}.laudo-acc-head:hover .laudo-acc-title{color:var(--accent,#5a6cff)}.laudo-acc-body{padding:0 2px 14px 22px}.laudo-p{color:var(--ink-2);margin:0 0 12px;font-size:13.5px;line-height:1.72}.laudo-p:last-child{margin-bottom:0}.laudo-p strong{color:var(--ink);font-weight:600}.landing-page{flex-direction:column;min-height:100vh;display:flex}.landing-main{flex:1;width:100%;max-width:960px;margin:0 auto;padding:48px 32px 64px}.landing-cta-top{background:var(--ink);color:var(--bg);border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:13.5px;font-weight:500;display:inline-flex}.landing-hero{text-align:center;padding:56px 0 48px}.landing-hero h1{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(34px,6vw,54px);font-weight:600;line-height:1.08}.landing-hero h1 .accent{color:var(--accent)}.landing-sub{color:var(--ink-3);max-width:560px;margin:0 auto 32px;font-size:16.5px;line-height:1.55}.landing-cta-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;display:flex}.landing-cta-row .btn-primary{background:var(--ink);color:var(--bg);border-radius:9px;align-items:center;gap:8px;padding:13px 22px;font-size:14.5px;font-weight:500;display:inline-flex}.landing-cta-row .btn-ghost{padding:13px 18px;font-size:14px}.landing-features{grid-template-columns:repeat(3,1fr);gap:18px;margin:40px 0 56px;display:grid}.landing-feature{border:1px solid var(--rule);border-radius:12px;padding:22px 20px}.landing-feature h3{letter-spacing:-.01em;margin:0 0 8px;font-size:15.5px;font-weight:600}.landing-feature p{color:var(--ink-3);margin:0;font-size:13.5px;line-height:1.55}.landing-methods{margin-top:8px}.landing-methods-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-top:14px;display:grid}.landing-method{border:1px solid var(--rule);border-radius:10px;padding:14px 16px}.landing-method .code{color:var(--ink-3);letter-spacing:.06em;margin-bottom:4px;font-size:11px;font-weight:600}.landing-method .name{letter-spacing:-.01em;font-size:14px;font-weight:500}@media (max-width:720px){.landing-features{grid-template-columns:1fr}.landing-cta-top{display:none}}.auth-page,.invite-page{flex-direction:column;min-height:100vh;display:flex}.auth-top{align-items:center;gap:16px;padding:24px 32px;display:flex}.auth-top .right{align-items:center;gap:10px;margin-left:auto;display:flex}.auth-main{flex:1;place-items:center;padding:24px;display:grid}.auth-card{background:var(--bg);border:1px solid var(--rule);width:100%;max-width:420px;box-shadow:0 1px 0 var(--rule);border-radius:14px;padding:40px 36px 32px}.auth-eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px;font-size:11.5px;font-weight:600}.auth-h1{letter-spacing:-.025em;margin:0 0 8px;font-size:28px;font-weight:600;line-height:1.15}.auth-sub{color:var(--ink-3);margin:0 0 28px;font-size:14px}.auth-tabs{border-bottom:1px solid var(--rule);gap:0;margin-bottom:24px;display:flex}.auth-tab{color:var(--ink-3);cursor:pointer;text-align:center;border-bottom:2px solid #0000;flex:1;margin-bottom:-1px;padding:10px 0;font-size:13.5px;font-weight:500}.auth-tab.on{color:var(--ink);border-bottom-color:var(--accent)}.auth-tab:hover{color:var(--ink)}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-form .field{flex-direction:column;gap:6px;display:flex}.auth-form .field label{color:var(--ink-3);letter-spacing:.02em;font-size:11.5px;font-weight:500}.auth-form .field input{background:var(--bg);border:1px solid var(--rule);color:var(--ink);border-radius:8px;outline:none;padding:11px 14px;font-size:14.5px}.auth-form .field input:focus{border-color:var(--ink)}.auth-row{justify-content:space-between;align-items:center;margin-top:2px;font-size:13px;display:flex}.auth-row label{color:var(--ink-2);cursor:pointer;align-items:center;gap:8px;display:inline-flex}.auth-row input[type=checkbox]{accent-color:var(--ink)}.auth-row a{color:var(--ink-3);text-underline-offset:3px;cursor:pointer;text-decoration:underline}.auth-form .btn-primary{background:var(--ink);color:var(--bg);border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:8px;padding:12px 18px;font-size:14px;font-weight:500;display:inline-flex}.magic-help{background:var(--accent-soft);color:var(--ink-2);border-radius:8px;align-items:start;gap:10px;padding:12px 14px;font-size:13px;line-height:1.5;display:flex}[data-theme=dark] .magic-help{background:var(--tint);color:var(--ink-2)}.magic-help svg{width:16px;height:16px;color:var(--accent);flex:0 0 16px;margin-top:2px}.auth-divider{color:var(--ink-3);align-items:center;gap:12px;margin:28px 0 18px;font-size:12px;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--rule);flex:1;height:1px}.panelist-link{text-align:center;color:var(--ink-2);font-size:13px}.panelist-link a{color:var(--accent);text-underline-offset:3px;font-weight:500;text-decoration:underline}.below-card{text-align:center;color:var(--ink-3);margin-top:24px;font-size:13px}.below-card a{color:var(--ink);text-underline-offset:3px;cursor:pointer;text-decoration:underline}.auth-footer{text-align:center;color:var(--ink-3);padding:18px 32px;font-size:12px}.auth-footer span{margin:0 8px}.invite-card{background:var(--bg);border:1px solid var(--rule);width:100%;max-width:560px;box-shadow:0 1px 0 var(--rule);border-radius:14px;overflow:hidden}.invite-head{border-bottom:1px solid var(--rule);align-items:center;gap:18px;padding:36px 40px 24px;display:flex}.invite-head .i-ava{color:#fff;background:linear-gradient(135deg,#c9a973,#b4685c);background:linear-gradient(135deg,lab(71.109% 6.76909 32.3085),lab(52.7095% 30.2062 20.7353));border-radius:50%;place-items:center;width:56px;height:56px;font-size:18px;font-weight:700;display:grid}.invite-head .who{flex-direction:column;gap:3px;display:flex}.invite-head .greet{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;font-size:12px;font-weight:600}.invite-head .name{letter-spacing:-.02em;font-size:24px;font-weight:600}.invite-head .lab{color:var(--ink-3);margin-top:2px;font-size:13px}.invite-body{flex-direction:column;gap:22px;padding:28px 40px 8px;display:flex}.invite-intro{color:var(--ink-2);font-size:14.5px;line-height:1.55}.invite-intro b{color:var(--ink);font-weight:600}.study-card-i{border:1px solid var(--rule);background:var(--tint);border-radius:10px;padding:18px 20px}.study-card-i .row1{align-items:center;gap:10px;margin-bottom:8px;display:flex}.i-method-pill{background:var(--ink);color:var(--bg);letter-spacing:.04em;border-radius:5px;align-items:center;gap:6px;padding:4px 9px;font-size:11px;font-weight:600;display:inline-flex}.study-card-i .duration{color:var(--ink-3);font-size:12px;font-weight:500}.study-card-i h3{letter-spacing:-.015em;margin:0 0 14px;font-size:17px;font-weight:600;line-height:1.25}.i-meta{grid-template-columns:1fr 1fr;gap:16px 24px;font-size:13px;display:grid}.i-meta .k{color:var(--ink-3);letter-spacing:.02em;margin-bottom:2px;font-size:11.5px;font-weight:500}.i-meta .v{color:var(--ink);font-weight:500}.checklist{flex-direction:column;gap:10px;display:flex}.check-row{grid-template-columns:18px 1fr;align-items:start;gap:12px;font-size:13.5px;display:grid}.check-row .icn{background:var(--ok);border-radius:50%;place-items:center;width:18px;height:18px;margin-top:1px;display:grid;position:relative}.check-row .icn:after{content:"";border-bottom:1.5px solid #fff;border-left:1.5px solid #fff;width:7px;height:4px;position:absolute;transform:rotate(-45deg)translateY(-1px)}.check-row .body .t{font-weight:500}.check-row .body .d{color:var(--ink-3);margin-top:1px;font-size:12.5px}.invite-foot{border-top:1px solid var(--rule);background:var(--tint);flex-direction:column;gap:12px;padding:22px 40px 32px;display:flex}.invite-foot .btn-primary{background:var(--ink);color:var(--bg);letter-spacing:-.005em;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:14px 18px;font-size:15px;font-weight:600;display:inline-flex}.invite-foot .btn-primary:hover{opacity:.88}.invite-foot .btn-ghost{background:var(--bg);color:var(--ink-2);border:1px solid var(--rule);border-radius:8px;padding:11px 18px;font-size:13.5px;font-weight:500}.invite-foot .btn-ghost:hover{border-color:var(--ink);color:var(--ink)}.actions-row{gap:10px;display:flex}.actions-row .btn-primary{flex:1}.helper{text-align:center;color:var(--ink-3);margin-top:4px;font-size:12.5px}.helper a{color:var(--ink-2);text-underline-offset:3px;cursor:pointer;text-decoration:underline}.mbackdrop{background:color-mix(in oklab, var(--ink), transparent 60%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:200;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.mbackdrop.show{display:flex}.mdialog{background:var(--bg);border:1px solid var(--rule);border-radius:12px;flex-direction:column;width:100%;max-width:480px;display:flex;overflow:hidden;box-shadow:0 24px 60px #00000047}.mdialog.wide{max-width:560px}.mhead{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:center;padding:18px 22px 14px;display:flex}.mhead h2{letter-spacing:-.01em;margin:0;font-size:16px;font-weight:600}.mhead .x{width:28px;height:28px;color:var(--ink-3);border-radius:6px;place-items:center;font-size:16px;display:grid}.mhead .x:hover{background:var(--tint);color:var(--ink)}.mbody{flex-direction:column;gap:14px;padding:20px 22px;display:flex}.mfield{flex-direction:column;gap:6px;display:flex}.mfield label{color:var(--ink-3);letter-spacing:.02em;font-size:11.5px;font-weight:500}.mfield input,.mfield select,.mfield textarea{background:var(--bg);border:1px solid var(--rule);color:var(--ink);border-radius:7px;outline:none;padding:9px 12px;font-family:inherit;font-size:14px}.mfield input:focus,.mfield select:focus,.mfield textarea:focus{border-color:var(--ink)}.mfield .help{color:var(--ink-3);font-size:12px}.mfield-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.swatch-pick{gap:8px;display:flex}.swatch-pick button{border:2px solid var(--bg);width:28px;height:28px;box-shadow:0 0 0 1px var(--rule);cursor:pointer;border-radius:50%;transition:box-shadow .12s}.swatch-pick button.on{box-shadow:0 0 0 2px var(--ink)}.blind-row{align-items:center;gap:10px;display:flex}.blind-num{min-width:0;color:var(--accent);letter-spacing:.04em;font-variant-numeric:tabular-nums;flex:1;font-family:ui-monospace,monospace;font-size:26px;font-weight:700}input.blind-num{border:1px solid var(--rule);background:var(--bg);border-radius:8px;outline:none;width:100%;padding:6px 10px}input.blind-num:focus{border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb, var(--accent) 25%, transparent)}.blind-regen{border:1px solid var(--rule);color:var(--ink-2);background:var(--bg);border-radius:6px;padding:6px 12px;font-size:12.5px}.blind-regen:hover{border-color:var(--ink);color:var(--ink)}.mtabs{border-bottom:1px solid var(--rule);gap:0;margin:-4px -22px 8px;padding:0 22px;display:flex}.mtab{color:var(--ink-3);cursor:pointer;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-size:13px;font-weight:500}.mtab.on{color:var(--ink);border-bottom-color:var(--accent)}.booth-list{flex-wrap:wrap;gap:6px;display:flex}.booth-chip{border:1px solid var(--rule);color:var(--ink-2);cursor:pointer;border-radius:6px;padding:6px 11px;font-size:12.5px}.booth-chip:hover{border-color:var(--ink-4)}.booth-chip.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}.panelist-pick{border:1px solid var(--rule);background:var(--bg);border-radius:7px;max-height:240px;overflow-y:auto}.panelist-pick .ppr{border-bottom:1px solid var(--rule);cursor:pointer;align-items:center;gap:10px;padding:10px 12px;display:flex}.panelist-pick .ppr:last-child{border-bottom:0}.panelist-pick .ppr:hover{background:var(--tint)}.panelist-pick .ppr.on{background:var(--accent-soft)}.panelist-pick .pp-ava{background:var(--ink);width:26px;height:26px;color:var(--bg);border-radius:50%;place-items:center;font-size:10.5px;font-weight:700;display:grid}.panelist-pick .pp-name{flex:1;font-size:13.5px;font-weight:500}.panelist-pick .pp-tag{color:var(--ink-3);font-size:11px}.mfoot{border-top:1px solid var(--rule);background:var(--tint);align-items:center;gap:10px;padding:14px 22px 18px;display:flex}.mfoot .grow{flex:1}.mbtn{border-radius:7px;padding:9px 16px;font-size:13.5px;font-weight:500}.mbtn.ghost{color:var(--ink-2);border:1px solid var(--rule);background:var(--bg)}.mbtn.ghost:hover{border-color:var(--ink);color:var(--ink)}.mbtn.primary{background:var(--ink);color:var(--bg);border:1px solid var(--ink)}.mbtn.primary:hover{opacity:.88}.mbtn.danger{color:#fff;background:#cc272e;background:lab(45.7636% 63.3818 40.1799);border:1px solid #cc272e;border:1px solid lab(45.7636% 63.3818 40.1799)}.mbtn.danger:hover{opacity:.9}.mbtn:disabled{opacity:.5;cursor:default}.confirm-dialog{max-width:420px}.confirm-dialog .mbody{padding:14px 22px}.attr-presets{border:1px solid var(--rule);border-radius:8px;gap:10px;max-height:220px;padding:4px;display:grid;overflow-y:auto}.attr-presets-group{gap:6px;display:grid}.attr-presets-label{color:var(--ink-3);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.attr-presets-chips{flex-wrap:wrap;gap:6px;display:flex}.attr-presets-chips .chip{padding:4px 10px;font-size:12.5px}.qda-head{border-bottom:1px solid var(--rule);grid-template-columns:1fr 1fr;align-items:flex-start;gap:24px;width:100%;max-width:1080px;margin-bottom:24px;padding-bottom:16px;display:grid}.qda-head-left{flex-direction:column;gap:6px;display:flex}.qda-head-right{text-align:right}.qda-head-title{letter-spacing:-.01em;color:var(--ink);font-size:17px;font-weight:700}.qda-head-sub{color:var(--ink-2);margin-top:4px;font-size:14px}.qda-cards{flex-direction:column;gap:16px;width:100%;max-width:1080px;margin-bottom:16px;display:flex}.qda-card{border:1px solid var(--rule);background:var(--bg);border-radius:12px;padding:22px 28px 18px}.qda-card-head{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:18px;display:flex}.qda-card-name{letter-spacing:-.005em;color:var(--ink);font-size:17px;font-weight:700}.qda-card-value{color:var(--accent);letter-spacing:-.01em;font-size:22px;font-weight:800}.qda-card-unit{color:var(--ink-3);margin-left:2px;font-size:15px;font-weight:500}.qda-rate-track{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:none;background:0 0;outline:none;height:36px;position:relative}.qda-rate-track:focus-visible{box-shadow:0 0 0 2px color-mix(in oklab, var(--accent), transparent 60%);border-radius:6px}.qda-rate-line{background:var(--ink-4);pointer-events:none;height:1.5px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.qda-rate-end{background:var(--ink-4);pointer-events:none;width:1.5px;height:14px;position:absolute;top:50%;transform:translateY(-50%)}.qda-rate-end-l{left:0}.qda-rate-end-r{right:0}.qda-rate-thumb{background:var(--bg);border:3.5px solid var(--accent);pointer-events:none;border-radius:50%;width:22px;height:22px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 1px 2px #0000001f}.qda-rate-anchors{color:var(--ink-3);justify-content:space-between;margin-top:14px;padding:0;font-size:17.5px;display:flex}.hedonic-scale{outline:none;justify-content:space-between;align-items:center;gap:6px;padding:4px 0;display:flex}.hedonic-scale:focus-visible{box-shadow:0 0 0 2px color-mix(in oklab, var(--accent), transparent 60%);border-radius:8px}.hedonic-dot{border:1px solid var(--rule);min-width:0;height:44px;color:var(--ink-2);cursor:pointer;background:0 0;border-radius:10px;flex:1 1 0;padding:0;font-size:16px;font-weight:600;transition:background .12s,color .12s,border-color .12s}.hedonic-dot:hover{border-color:var(--ink-3);color:var(--ink)}.hedonic-dot.on{background:var(--accent);border-color:var(--accent);color:#fff}.hedonic-legend{border:1px solid var(--rule);background:color-mix(in srgb, var(--ink) 3%, transparent);width:100%;max-width:1080px;color:var(--ink-2);border-radius:12px;margin:0 auto 18px;padding:12px 16px 14px;font-size:14px}.hedonic-legend>summary{cursor:pointer;color:var(--ink);letter-spacing:-.005em;padding:2px 0;font-weight:700}.hedonic-legend>summary::marker{color:var(--ink-3)}.hedonic-legend ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 18px;margin:0;padding:10px 0 0;list-style:none;display:grid}.hedonic-legend li{align-items:baseline;gap:8px;line-height:1.35;display:flex}.hedonic-legend-num{background:var(--ink);min-width:22px;height:22px;color:var(--bg);border-radius:6px;justify-content:center;align-items:center;padding:0 6px;font-size:12px;font-weight:700;display:inline-flex}.hedonic-legend-text{color:var(--ink-2)}@media (max-width:768px){.hedonic-legend ul{grid-template-columns:1fr}.qda-card{padding:18px 14px 14px}.hedonic-scale{gap:4px}.hedonic-dot{height:40px;font-size:14px}}.jar-anchors{color:var(--ink-3);text-align:center;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:14px;font-size:13px;line-height:1.25;display:grid}.jar-anchors>span{overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;min-width:0}@media (max-width:768px){.jar-anchors{gap:4px;font-size:12px}}.page-head-actions{gap:8px;display:flex}.side-toggle{z-index:60;background:var(--bg);width:40px;height:40px;color:var(--ink);border:1px solid var(--rule);border-radius:9px;justify-content:center;align-items:center;display:none;position:fixed;top:12px;left:12px;box-shadow:0 1px 2px #0000000f}.side-toggle svg{width:20px;height:20px}.side-close,.side-backdrop{display:none}.side-head{display:contents}@media (max-width:768px){.shell{grid-template-columns:1fr;min-height:100vh}.side-toggle{display:inline-flex}aside.side{background:var(--bg);border-right:1px solid var(--rule);z-index:70;gap:28px;width:280px;max-width:86vw;height:100vh;padding:18px 18px 24px;transition:transform .2s ease-out;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%);box-shadow:0 10px 30px #0000002e}aside.side.open{transform:translate(0)}.side-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.side-close{width:32px;height:32px;color:var(--ink-3);border:1px solid var(--rule);background:0 0;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.side-close:hover{color:var(--ink)}.side-close svg{width:16px;height:16px}.side-backdrop{background:color-mix(in oklab, var(--ink), transparent 55%);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:65;display:block;position:fixed;inset:0}main.page{padding:64px 16px 40px}.page-head{flex-wrap:wrap;align-items:stretch;gap:12px;margin-bottom:24px}.page-head>div:first-child{flex:100%}.page-head h1{font-size:22px}.stats,.methods{grid-template-columns:repeat(2,1fr);gap:10px}.method{padding:14px}.method .name{font-size:15px}main.page>h1{font-size:26px;line-height:1.15}.continue{justify-content:stretch}.continue .btn-primary{justify-content:center;width:100%}.recent{margin-top:32px}.study{grid-template-columns:1fr auto;grid-template-areas:"name when""tag status";gap:6px 12px;padding:14px 16px}.study .name{grid-area:name}.study .method-tag{grid-area:tag}.study .status{grid-area:status;justify-self:end}.study .when{grid-area:when}.mfield-row{grid-template-columns:1fr}.list-row{grid-template-columns:1fr auto;grid-template-areas:"name more""method when""progress progress""status status";gap:8px 12px;padding:14px 16px}.list-row.head{display:none}.list-row>.name-col{grid-area:name;min-width:0}.list-row>.name-col .sname{font-size:15px}.list-row>.name-col .sid{font-size:12px}.list-row>.method-tag{grid-area:method;align-self:center}.list-row>.when-cell{grid-area:when;place-self:center end;font-size:12.5px}.list-row>.progress-cell{grid-area:progress}.list-row>.status{grid-area:status;justify-self:start}.list-row>.more{grid-area:more;justify-self:end}.page-head .btn-primary{justify-content:center;width:100%}.toolbar{flex-direction:column;align-items:stretch;gap:12px}.toolbar .filters{flex-wrap:wrap}.toolbar .search,.toolbar .search input{width:100%}.page-head-actions{flex-direction:column;align-items:stretch;gap:8px;width:100%}.page-head-actions>*{text-align:center;justify-content:center;width:100%}.products,.panelists{grid-template-columns:1fr}.session{flex-wrap:wrap}.panel-row{grid-template-columns:36px 1fr auto;gap:10px;padding:14px}.panel-row.head,.panel-row>.tags,.panel-row>.studies-c,.panel-row>.when{display:none}.body{grid-template-columns:1fr}aside.rail{height:auto;max-height:none;position:static}.product-card-grid{grid-template-columns:1fr}.mdialog,.mdialog.wide{max-width:95vw;max-height:90vh;overflow-y:auto}.mbody{padding:16px}.mhead{padding:14px 16px 10px}.mfoot{padding:12px 16px}.profile-hero{grid-template-columns:1fr;gap:14px;padding:20px 16px}.profile-main{padding:0}.profile-section{padding:16px}.profile-tabs{padding:0 16px;overflow-x:auto}header.collect-top{flex-wrap:wrap;gap:8px;padding:10px 14px}.progress-pill{margin-left:0;padding:4px 10px;font-size:12px}.collect-main{padding:12px 12px 40px}.collect-main:has(.attrs-grid){padding-bottom:12px}.collect-main:has(.attrs-grid){overflow:hidden}.attrs-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:minmax(0,1fr);gap:6px;max-width:100%;margin-bottom:10px}.attr-btn{border-radius:10px;height:100%;min-height:0;padding:4px 8px}.attr-btn .label{font-size:clamp(10px,3vw,16px)}.sample-block{gap:4px;margin-bottom:8px}.sample-code{font-size:clamp(36px,10vw,56px)}.sample-eyebrow{font-size:11px}.timer-wrap{gap:4px;margin-bottom:8px}.timer-bar{height:6px}.timer-meta{font-size:12px}.instruction{margin-bottom:8px;font-size:13px}.controls{margin-top:6px}.qda-head{text-align:left;grid-template-columns:1fr;gap:8px}.qda-head-right{text-align:left}.chart-card{padding:16px;overflow-x:auto}.chart-card svg.chart{width:100%;height:auto}.chart-tabs{flex-wrap:wrap;gap:6px}.sheet-card{overflow-x:auto}.sheet{font-size:12.5px}.sheet th,.sheet td{padding:8px 10px}.head-meta{flex-wrap:wrap;gap:10px}.section-label-row{flex-wrap:wrap;gap:6px}.export{flex-direction:column;align-items:stretch;gap:10px;padding:14px 16px}.export .label{text-align:center}.export-btn{justify-content:center;width:100%}.back{margin-bottom:8px;display:inline-block}}
