.quality-toggle{letter-spacing:.02em;cursor:pointer;min-width:46px;font-size:11px}.quality-toggle.is-interactive{color:var(--muted,#8b93a3)}.quality-toggle.is-poster{color:var(--accent,#ffb020)}.wiz-backdrop{z-index:55;padding:var(--sp-5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:wiz-fade var(--dur-2) var(--ease);background:#06080b9e;place-items:center;display:grid;position:fixed;inset:0}.wiz{background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r-xl);width:min(1120px,100%);height:min(760px,100%);box-shadow:var(--shadow-3);animation:wiz-rise .24s var(--ease);flex-direction:column;display:flex;overflow:hidden}.wiz[data-step="1"],.wiz[data-step="2"]{height:auto;max-height:100%}.wiz-head{border-bottom:1px solid var(--line);background:linear-gradient(180deg, #1a1e25, var(--panel));align-items:center;gap:10px;padding:14px 18px;display:flex}.wiz-head h2{text-transform:none;color:var(--text);font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:-.01em;white-space:nowrap;margin:0}.wiz-mark{width:28px;height:28px;color:var(--accent);background:var(--accent-dim);border-radius:8px;place-items:center;display:grid}.wiz-close{color:var(--muted);margin-left:auto;padding:6px}.wiz-steps{gap:4px;margin:0 0 0 18px;padding:0;list-style:none;display:flex}.wiz-step-btn{height:26px;color:var(--faint);font:inherit;font-size:var(--fs-sm);font-weight:var(--fw-medium);background:0 0;border:0;border-radius:13px;align-items:center;gap:7px;padding:0 10px 0 5px;display:inline-flex}.wiz-step-btn:disabled{cursor:default}.wiz-step-btn:not(:disabled):hover{color:var(--text);background:var(--hover)}.wiz-step-n{border:1px solid var(--line-3);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;width:18px;height:18px;font-size:10.5px;display:grid}.wiz-step.is-current .wiz-step-btn{color:var(--text);background:var(--raised)}.wiz-step.is-current .wiz-step-n{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.wiz-step.is-done .wiz-step-n{background:var(--green-dim);border-color:var(--green);color:var(--green)}.wiz-body{flex:1;min-height:0;padding:16px 18px;overflow:auto}.wiz-lede{align-items:center;gap:var(--sp-4);margin-bottom:14px;display:flex}.wiz-lede p{color:var(--text-2);font-size:var(--fs-md);flex:1;margin:0;line-height:1.5}.wiz-foot{border-top:1px solid var(--line);background:var(--panel);align-items:center;gap:10px;padding:12px 18px;display:flex}.wiz-foot .spacer{flex:1}.wiz-foot-hint{color:var(--faint);font-size:var(--fs-xs)}.wiz-back-icon{transform:scaleX(-1)}.wiz-grid{gap:10px;display:grid}.wiz-bodies{grid-template-columns:repeat(auto-fill,minmax(236px,1fr))}.wiz-templates{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.wiz-card{text-align:left;background:var(--panel-2);min-width:0;color:var(--text);border:1px solid var(--line-2);border-radius:var(--r-lg);font:inherit;transition:border-color var(--dur-1), transform var(--dur-2) var(--ease), background-color var(--dur-1), box-shadow var(--dur-2);flex-direction:column;align-items:flex-start;gap:4px;padding:12px;display:flex}.wiz-card:hover,.wiz-card:focus-visible{border-color:var(--accent);background:var(--raised);outline:none;transform:translateY(-1px);box-shadow:0 10px 28px #0000004d}.wiz-card.is-selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.wiz-card-title{font-weight:var(--fw-semibold);align-items:center;gap:6px;font-size:13px;line-height:1.35;display:inline-flex}.wiz-card-title .icon{color:var(--muted)}.wiz-card-meta{color:var(--muted);font-size:var(--fs-sm);line-height:1.45}.wiz-card-stat{color:var(--accent);font-size:var(--fs-sm);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;margin-top:auto;padding-top:4px}.wiz-sil{width:100%;height:46px;margin-bottom:6px}.wiz-sil-body{fill:#232830;stroke:#4a5364;stroke-width:.8px}.wiz-sil-row{stroke:#ffb02059;stroke-width:1.4px}.wiz-sil-door{fill:var(--red);opacity:.85}.wiz-thumb{background:var(--bg);border-radius:6px;width:100%;height:56px;margin-bottom:6px}.wiz-tpl-card.is-custom{text-align:center;border-style:dashed;justify-content:center;align-items:center;min-height:150px}.wiz-tpl-card.is-custom .wiz-card-meta{max-width:240px}.wiz-custom-icon{width:40px;height:40px;color:var(--blue);background:var(--blue-dim);border-radius:10px;place-items:center;margin-bottom:4px;display:grid}.wiz-tune{grid-template-columns:minmax(300px,360px) minmax(0,1fr);gap:18px;min-height:100%;display:grid}.wiz-controls{flex-direction:column;gap:10px;min-width:0;display:flex}.wiz-field{font-size:var(--fs-sm);color:var(--muted);grid-template-columns:100px minmax(0,1fr);align-items:center;gap:8px;display:grid}.wiz-field-wide{grid-template-columns:100px minmax(0,1fr) auto}.wiz-field>span:first-child{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.wiz-field select{width:100%;min-width:0}.wiz-name{background:var(--bg);border:1px solid var(--line-2);width:100%;height:28px;color:var(--text);border-radius:var(--r-sm);font:var(--fs-md) var(--font);grid-column:2/4;padding:0 8px}.wiz-name:focus{border-color:var(--focus);outline:none;box-shadow:0 0 0 3px #7aa7ff29}.wiz-val{text-align:right;min-width:84px;color:var(--text-2);font-variant-numeric:tabular-nums;font-size:var(--fs-xs)}.wiz-range{width:100%;min-width:0;accent-color:var(--accent);cursor:pointer}.wiz-quick{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel-2);flex-direction:column;gap:8px;padding:10px;display:flex}.wiz-zones-head{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.wiz-zones-head h3{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--faint);font-weight:var(--fw-semibold);margin:0}.wiz-zone{border:1px solid var(--line-2);border-radius:var(--r-lg);background:var(--panel-2);flex-direction:column;gap:7px;padding:9px 10px;display:flex}.wiz-zone-head{align-items:center;gap:6px;display:flex}.wiz-zone-head .wiz-product{min-width:0;font-weight:var(--fw-medium);flex:1}.wiz-zone-fields{flex-direction:column;gap:6px;display:flex}.wiz-chip{border-radius:3px;flex:none;width:10px;height:10px}.wiz-options{color:var(--text-2);font-size:var(--fs-sm);flex-wrap:wrap;align-items:center;gap:8px 16px;padding-top:4px;display:flex}.wiz-options .wiz-field{grid-template-columns:auto 140px}.wiz-check-opt{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.wiz-preview{flex-direction:column;gap:12px;min-width:0;display:flex}.wiz-plan-wrap{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--canvas);padding:10px;position:relative}.wiz-plan{aspect-ratio:7;width:100%;display:block}.wiz-nose{color:var(--faint);font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:3px;display:inline-flex;position:absolute;top:6px;right:10px}.wiz-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.wiz-stat{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--panel-2);flex-direction:column;gap:2px;padding:9px 11px;display:flex}.wiz-stat-v{font-size:var(--fs-xl);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em}.wiz-stat:first-child .wiz-stat-v{color:var(--accent)}.wiz-stat-l{color:var(--muted);font-size:var(--fs-xs)}.wiz-zone-summary{flex-direction:column;gap:4px;display:flex}.wiz-check{font-size:var(--fs-sm);font-weight:var(--fw-medium);align-items:center;gap:6px;margin-bottom:4px;display:flex}.wiz-check.is-ok{color:var(--green)}.wiz-check.is-bad{color:var(--red)}.wiz-ms{color:var(--faint);font-weight:400;font-size:var(--fs-2xs);font-variant-numeric:tabular-nums;margin-left:auto}.wiz-zrow{border-radius:var(--r-sm);background:var(--panel-2);font-size:var(--fs-sm);grid-template-columns:10px minmax(0,1fr) auto 44px;align-items:center;gap:8px;padding:5px 8px;display:grid}.wiz-zname{font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.wiz-zmeta{color:var(--muted);font-variant-numeric:tabular-nums}.wiz-zseats{text-align:right;font-variant-numeric:tabular-nums;font-weight:var(--fw-semibold)}.wiz-notes{color:var(--muted);font-size:var(--fs-xs);margin:0;padding:0 0 0 16px;line-height:1.55}.wiz-notes:empty{display:none}.welcome-choice.is-primary{background:linear-gradient(90deg, #ffb0201a, var(--panel-2) 60%);border-color:#ffb02073;grid-column:1/-1;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:12px;padding:14px 40px 14px 14px;display:grid}.welcome-choice.is-primary .welcome-icon{grid-row:1/3;margin:0}.welcome-choice.is-primary .welcome-choice-go{top:50%;transform:translateY(-50%)}.welcome-choice.is-primary:hover .welcome-choice-go{transform:translate(2px,-50%)}.wiz-remix .btn{margin-top:2px}@keyframes wiz-fade{0%{opacity:0}}@keyframes wiz-rise{0%{opacity:0;transform:translateY(8px)scale(.99)}}@media (max-width:860px){.wiz-tune{grid-template-columns:1fr}.wiz-steps{display:none}}.brand-mark-svg{flex:none;display:inline-flex}.brand-mark-svg>svg{width:100%;height:100%;display:block}.brand-lockup{align-items:center;gap:calc(var(--lockup-size) * .32);min-width:0;display:inline-flex}.brand-lockup-text{flex-direction:column;gap:1px;min-width:0;display:flex}.brand-lockup-name{letter-spacing:-.015em;color:var(--text);font-weight:750;line-height:1.1;font-size:max(13px, calc(var(--lockup-size) * .46));text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand-lockup-tagline{color:var(--muted);font-size:max(11px, calc(var(--lockup-size) * .25));text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.brand-lockup.is-light .brand-lockup-name{color:#15181e}.brand-card .btn{cursor:pointer}.brand-card-body{border-radius:var(--r-lg);border:1px solid var(--line-2);background:var(--panel-2);width:100%;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color var(--dur-1), background-color var(--dur-1);justify-content:space-between;align-items:center;gap:8px;padding:12px;display:flex;position:relative;overflow:hidden}.brand-card-body:before{content:"";background:var(--brand-stripe);height:3px;position:absolute;top:0;left:0;right:0}.brand-card-body:hover{border-color:var(--line-3);background:var(--raised)}.brand-card-code{font:700 11px/1 var(--mono);letter-spacing:.08em;color:var(--muted);border:1px solid var(--line-2);border-radius:4px;flex:none;padding:4px 5px}.brand-backdrop{z-index:50;padding:var(--sp-5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:brand-fade var(--dur-2) var(--ease);background:#06080b9e;place-items:center;display:grid;position:fixed;inset:0}.brand-dialog{background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r-xl);width:min(960px,100%);max-height:min(860px,100vh - 48px);box-shadow:var(--shadow-3);animation:brand-rise .24s var(--ease);flex-direction:column;display:flex;overflow:hidden}.brand-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:18px 22px 14px;display:flex}.brand-head h2{font-size:17px;font-weight:var(--fw-semibold);letter-spacing:-.01em;text-transform:none;color:var(--text);margin:0}.brand-head p{color:var(--muted);font-size:var(--fs-sm);max-width:620px;margin:4px 0 0;line-height:1.5}.brand-close{color:var(--muted);cursor:pointer;padding:6px}.brand-body{flex:1;grid-template-columns:minmax(0,1fr) 360px;min-height:0;display:grid}.brand-form{min-height:0;padding:6px 22px 18px;overflow-y:auto}.brand-preview{border-left:1px solid var(--line);background:linear-gradient(180deg, #13161c, var(--panel));padding:18px 20px;overflow-y:auto}.brand-section{border-bottom:1px solid var(--line);padding:14px 0 16px}.brand-section:last-child{border-bottom:0}.brand-section h3,.brand-section-head h3{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:11px;font-weight:700}.brand-section-head{justify-content:space-between;align-items:center;display:flex}.brand-section-head h3{margin:0}.brand-suggest{color:var(--accent);cursor:pointer}.brand-suggest:hover:not(:disabled){color:var(--accent-hover)}.brand-section-head+.brand-field{margin-top:10px}.brand-note{color:var(--muted);font-size:var(--fs-sm);margin:-4px 0 10px;line-height:1.5}.brand-row{grid-template-columns:150px minmax(0,1fr);gap:12px;display:grid}.brand-field{flex-direction:column;gap:5px;min-width:0;margin-bottom:10px;display:flex}.brand-field-label{font-size:var(--fs-sm);color:var(--text-2)}.brand-field-hint{font-size:var(--fs-xs);color:var(--faint)}.brand-input{height:32px;font-size:var(--fs-md);padding:0 10px}.brand-input::placeholder{color:var(--faint)}.brand-code-input{width:96px;font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase}.brand-palettes{grid-template-columns:repeat(12,minmax(0,1fr));gap:6px;margin-bottom:12px;display:grid}.brand-palette{cursor:pointer;height:40px;transition:transform var(--dur-1) var(--ease), box-shadow var(--dur-1);background:0 0;border:1px solid #ffffff14;border-radius:8px;flex-direction:column;padding:0;display:flex;overflow:hidden}.brand-palette>span:first-child{flex:2.2}.brand-palette>span:last-child{flex:1}.brand-palette:hover{transform:translateY(-1px);box-shadow:0 6px 16px #00000059}.brand-palette.is-active{box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--text)}.brand-color{align-items:center;gap:6px;display:flex}.brand-swatch{border:1px solid var(--line-2);border-radius:var(--r-sm);cursor:pointer;background:0 0;flex:none;width:36px;height:32px;padding:0}.brand-swatch::-webkit-color-swatch-wrapper{padding:2px}.brand-swatch::-webkit-color-swatch{border:0;border-radius:3px}.brand-hex{width:100px;height:32px;font-family:var(--mono);text-transform:lowercase}.brand-shapes{grid-template-columns:repeat(8,minmax(0,1fr));gap:6px;margin-bottom:12px;display:grid}.brand-shape{border-radius:var(--r-lg);background:var(--panel-2);border:1px solid var(--line-2);color:var(--muted);font:inherit;cursor:pointer;transition:border-color var(--dur-1), background-color var(--dur-1), color var(--dur-1);flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;font-size:10.5px;display:flex}.brand-shape:hover{border-color:var(--line-3);color:var(--text-2);background:var(--raised)}.brand-shape.is-active{border-color:var(--accent);color:var(--text);box-shadow:inset 0 0 0 1px var(--accent)}.brand-classes{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.brand-class{grid-template-columns:110px minmax(0,1fr);align-items:center;gap:8px;display:grid}.brand-class-cat{font-size:var(--fs-sm);color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.brand-apply-actions{flex-wrap:wrap;gap:6px;display:flex}.brand-apply-actions .btn{cursor:pointer}.brand-apply-actions .btn:disabled{cursor:default}.brand-empty{flex-direction:column;align-items:flex-start;gap:8px;padding:34px 6px;display:flex}.brand-empty h3{font-size:18px;font-weight:var(--fw-semibold);letter-spacing:-.01em;text-transform:none;color:var(--text);margin:6px 0 0}.brand-empty p{color:var(--muted);max-width:440px;margin:0;line-height:1.55}.brand-empty-icon{width:44px;height:44px;color:var(--accent);background:var(--accent-dim);border-radius:12px;place-items:center;display:grid}.brand-empty-actions{gap:8px;margin-top:10px;display:flex}.brand-empty-actions .btn{cursor:pointer;height:34px;padding:0 14px}.brand-preview-label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:11px;font-weight:700}.brand-poster{background:radial-gradient(120% 90% at 100% 0%, color-mix(in srgb, var(--brand-glow) 55%, transparent), transparent 62%), linear-gradient(160deg, #181c23, #0f1216);border:1px solid #ffffff12;border-radius:14px;flex-direction:column;gap:18px;padding:30px 22px 20px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 40px #00000073}.brand-poster.is-sample{opacity:.8;margin-top:26px}.brand-poster .brand-lockup-name{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.brand-poster-stripe{background:linear-gradient(90deg, var(--brand-primary) 0 62%, var(--brand-accent) 62% 100%);height:5px;position:absolute;top:0;left:0;right:0}.brand-poster-classes{flex-wrap:wrap;gap:6px;display:flex}.brand-chip{height:24px;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:6px;max-width:100%;padding:0 9px;font-size:11.5px;display:inline-flex;overflow:hidden}.brand-chip>i{border-radius:50%;flex:none;width:6px;height:6px}.brand-pass{color:#15181e;background:#f6f3ee;border-radius:12px;grid-template-columns:minmax(0,1fr) 74px;margin-top:16px;display:grid;overflow:hidden;box-shadow:0 12px 30px #0006}.brand-pass-main{border-top:4px solid var(--brand-primary);flex-direction:column;gap:14px;min-width:0;padding:14px 14px 14px 16px;display:flex}.brand-pass-fields{grid-template-columns:auto minmax(0,1fr) auto;gap:12px;display:grid}.brand-pass-field{flex-direction:column;gap:2px;min-width:0;display:flex}.brand-pass-field>span{letter-spacing:.1em;text-transform:uppercase;color:#7b7f88;font-size:9px;font-weight:700}.brand-pass-field>strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.brand-pass-stub{background:var(--brand-primary);color:var(--brand-accent);font:700 12px/1 var(--mono);letter-spacing:.1em;border-left:2px dashed #ffffff59;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.brand-preview-note{font-size:var(--fs-xs);color:var(--faint);margin:14px 0 0;line-height:1.5}.brand-foot{border-top:1px solid var(--line);background:var(--panel);align-items:center;gap:10px;padding:12px 22px;display:flex}.brand-foot .btn{cursor:pointer}.brand-foot-spacer{flex:1}.brand-foot-hint{color:var(--faint);font-size:var(--fs-xs)}.brand-foot .btn-primary{height:32px;padding:0 18px}@keyframes brand-fade{0%{opacity:0}}@keyframes brand-rise{0%{opacity:0;transform:translateY(8px)scale(.99)}}@media (prefers-reduced-motion:reduce){.brand-backdrop,.brand-dialog{animation:none}}@media (max-width:860px){.brand-body{grid-template-columns:1fr;overflow-y:auto}.brand-form,.brand-preview{overflow:visible}.brand-preview{border-left:0;border-top:1px solid var(--line)}.brand-palettes{grid-template-columns:repeat(6,minmax(0,1fr))}.brand-shapes{grid-template-columns:repeat(4,minmax(0,1fr))}.brand-classes{grid-template-columns:1fr}}.walk-layer{pointer-events:none;z-index:2;display:none;position:absolute;inset:0}.walk-layer.is-on{display:block}.viewport-body canvas.is-walking{cursor:crosshair}.viewport-body canvas.is-walking:active{cursor:grabbing}.walk-crosshair{width:6px;height:6px;transition:transform var(--dur-2) var(--ease), background var(--dur-2) var(--ease);background:#ffffffd9;border-radius:50%;margin:-3px 0 0 -3px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 1.5px #00000059}.walk-layer.has-target .walk-crosshair{background:var(--accent);transform:scale(1.6)}.walk-layer.is-sitting .walk-crosshair{display:none}.walk-prompt{opacity:0;transition:opacity var(--dur-2) var(--ease);flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute;top:calc(50% + 22px);left:50%;transform:translate(-50%)}.walk-prompt.is-on{opacity:1}.walk-layer.is-sitting .walk-prompt{top:auto;bottom:64px}.walk-prompt-title{font-size:var(--fs-xs);color:#ffffffd1;text-shadow:0 1px 3px #000c;white-space:nowrap}.walk-prompt-row{white-space:nowrap;border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text);background:#101318cc;border-radius:999px;align-items:center;gap:7px;padding:4px 10px 4px 5px;font-size:12px;display:flex}.walk-prompt-row .kbd{color:var(--accent);background:#ffb02014;border-color:#ffb02073}.walk-head{color:#ffd48a;font-size:var(--fs-xs);white-space:nowrap;opacity:0;transition:opacity var(--dur-2) var(--ease);background:#3c280ad9;border:1px solid #ffb02080;border-radius:999px;padding:4px 12px;position:absolute;top:56px;left:50%;transform:translate(-50%)}.walk-head.is-on{opacity:1}.walk-hint{border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-2);font-size:var(--fs-xs);white-space:nowrap;opacity:0;background:#101318cc;border-radius:999px;align-items:center;gap:12px;padding:5px 12px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.walk-hint.is-showing{animation:walk-hint 7s var(--ease) forwards}@keyframes walk-hint{0%{opacity:0}6%{opacity:1}80%{opacity:1}to{opacity:0}}.walk-hint-item{align-items:center;gap:5px;display:inline-flex}.walk-layer.is-sitting .walk-hint{display:none}.walk-help{border-radius:var(--r-lg);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:320px;box-shadow:var(--shadow-2);pointer-events:auto;color:var(--text-2);background:#101318eb;flex-direction:column;gap:6px;padding:14px 16px;font-size:12px;display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.walk-layer.is-help .walk-help{display:flex}.walk-help-title{font-weight:var(--fw-semibold);color:var(--text);margin-bottom:4px}.walk-help-row{grid-template-columns:110px 1fr;align-items:center;gap:10px;display:grid}.walk-help .btn{cursor:pointer;align-self:flex-end;margin-top:6px}.walk-map{border-radius:var(--r-lg);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-2);pointer-events:auto;background:#101318c7;flex-direction:column;gap:3px;padding:5px;display:none;position:absolute;top:10px;right:10px}.walk-layer.is-map .walk-map{display:flex}.viewport-body .walk-map canvas{cursor:pointer;border-radius:4px;display:block;position:static;inset:auto}.walk-map-strip{opacity:.9}.walk-extras{align-items:center;gap:4px;display:flex}.walk-person{cursor:pointer}.view-tools{border-left:1px solid var(--line);flex:none;align-items:center;gap:2px;margin-left:auto;padding-left:6px;display:flex}.viewport-header .view-tools .btn-ghost{margin-left:0}.view-btn{white-space:nowrap;cursor:pointer}.view-btn.is-on{color:var(--text);border-color:var(--line-2);background:var(--panel-2)}.view-btn:disabled{cursor:default}.viewport-body canvas.is-first-person{cursor:grab}.viewport-body canvas.is-first-person:active{cursor:grabbing}.view-hud{pointer-events:none;z-index:2;position:absolute;inset:0}.view-hud>*{pointer-events:auto}.view-hud-panel{border-radius:var(--r-lg);border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:max-content;max-width:calc(100% - 20px);box-shadow:var(--shadow-2);animation:rise var(--dur-2) var(--ease);background:#101318d1;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 8px;display:flex;position:absolute;top:10px;left:10px;right:10px}.view-hud-title{font-weight:var(--fw-semibold);font-size:var(--fs-sm)}.view-hud-panel .btn{cursor:pointer}.view-hud-hint{pointer-events:none;border:1px solid var(--line-2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--text-2);font-size:var(--fs-xs);white-space:nowrap;background:#101318c7;border-radius:999px;padding:5px 12px;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.view-seats .seg-btn{cursor:pointer}.view-hud.is-recording{pointer-events:auto;cursor:progress}.view-hud-rec{z-index:3;font-variant-numeric:tabular-nums;background:#101318d9;border-radius:999px;align-items:center;gap:8px;padding:4px 10px;font-size:12px;display:flex;position:absolute;top:10px;left:10px}.rec-dot{background:#f26d6d;border-radius:50%;width:9px;height:9px;animation:1s ease-in-out infinite rec-pulse}@keyframes rec-pulse{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.rec-dot{animation:none}}.clip-group{align-items:center;display:inline-flex}.clip-group .clip-format{color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums;gap:2px;padding:0 5px 0 4px}.clip-group .clip-format:hover:not(:disabled){color:var(--text)}.clip-group .clip-format .btn-chevron{opacity:.7}.viewport-tools{align-items:center;gap:2px;margin-left:auto;display:flex}.viewport-tools .btn-ghost{margin-left:0}.viewport-tools .btn-ghost.is-on{color:var(--text);border-color:var(--line-2);background:var(--panel-2)}.plan-hint{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--faint);margin:0;overflow:hidden}.status-err{color:var(--red)}.status-ok{color:var(--green)}.check-chip{height:20px;font-size:var(--fs-xs);font-weight:var(--fw-medium);border:1px solid var(--line-2);white-space:nowrap;border-radius:10px;align-items:center;padding:0 8px;display:inline-flex}.check-chip.is-error{color:var(--red);background:#f26d6d14;border-color:#f26d6d73}.check-chip.is-warning{color:var(--accent);background:var(--accent-dim);border-color:#ffb02073}.check-chip.is-ok{color:var(--green);background:var(--green-dim);border-color:#4cc38a73}.metric-grid{margin-bottom:var(--sp-3);grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.metric{border-radius:var(--radius);background:var(--bg);border:1px solid var(--line);min-width:0;transition:border-color var(--dur-1);flex-direction:column;gap:1px;padding:8px 9px;display:flex}.metric:hover{border-color:var(--line-2)}.metric-value{font-size:17px;font-weight:var(--fw-semibold);letter-spacing:-.01em;font-variant-numeric:tabular-nums;line-height:1.2}.metric-label{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:10.5px;overflow:hidden}.metric-sub{color:var(--faint);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.metric.is-ok .metric-value{color:var(--green)}.metric.is-bad .metric-value{color:var(--accent)}.issue-list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.issue-group,.issue{border-radius:var(--r-sm);font-size:var(--fs-sm);transition:background-color var(--dur-1);align-items:baseline;gap:6px;padding:5px 6px;display:flex}.issue-group{font-weight:var(--fw-semibold);margin-top:6px}.issue-group:first-child{margin-top:0}.issue{color:var(--text-2);padding-left:20px}.issue-list>.issue:first-child{padding-left:6px}.issue-group:hover,.issue:hover{background:var(--hover)}.issue-group-title{flex:1}.issue-count{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.issue-message{flex:1;min-width:0}.issue-icon{text-align:center;flex:none;width:10px;font-size:9px}.is-error>.issue-icon{color:var(--red)}.is-warning>.issue-icon{color:var(--accent)}.is-info>.issue-icon{color:var(--blue)}.issue-more{margin:0;padding:2px 6px 2px 20px}.challenge-panel{border-bottom-color:var(--line-2);background:linear-gradient(#6ea0ff12,#0000)}.challenge-panel.is-complete{background:linear-gradient(#4cc38a24,#0000)}.challenge-head{justify-content:space-between;align-items:center;display:flex}.challenge-kicker{font-size:var(--fs-2xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--blue)}.is-complete .challenge-kicker{color:var(--green)}.challenge-progress{font-variant-numeric:tabular-nums;color:var(--text);font-size:12px;font-weight:650}.challenge-title{font-size:var(--fs-lg);font-weight:var(--fw-semibold);letter-spacing:-.005em;margin:2px 0 var(--sp-2)}.goal-list{flex-direction:column;gap:3px;margin:0 0 8px;padding:0;list-style:none;display:flex}.goal{grid-template-columns:16px 1fr auto;align-items:baseline;gap:6px;font-size:12px;display:grid}.goal-mark{color:var(--red);text-align:center;font-weight:700}.goal.is-met .goal-mark{color:var(--green)}.goal.is-met .goal-label{color:var(--muted)}.goal-actual{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.challenge-score{color:var(--muted);align-items:baseline;gap:6px;font-size:12px;display:flex}.challenge-score strong{color:var(--text);font-variant-numeric:tabular-nums;font-size:15px}.challenge-score .muted{margin:0}.challenge-hint{margin:8px 0 0}.btn-challenge-share{background:var(--green);border-color:var(--green);color:#0c1a13;width:100%;font-weight:var(--fw-semibold);margin-top:10px}.btn-challenge-share:hover:not(:disabled){background:#62d49c;border-color:#7de0b0}.challenge-pill{color:#a9c3ee;white-space:nowrap;background:#6ea0ff24}.challenge-pill.is-complete{color:var(--green);background:#4cc38a29}.tag-row{align-items:center;gap:4px;display:flex}.tag-challenge{color:#a9c3ee;border-color:#2e4468}.challenges-section{transition:background-color .4s var(--ease)}.challenges-section.is-flash{background:#6ea0ff1f}.challenge-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.challenge-item{align-items:center;gap:var(--sp-2);padding:5px var(--sp-2);border-radius:var(--radius);transition:background-color var(--dur-1);border:1px solid #0000;display:flex}.challenge-item:hover{background:var(--hover)}.challenge-item .btn{opacity:.8}.challenge-item:hover .btn,.challenge-item .btn:focus-visible{opacity:1}.challenge-item.is-active{background:#6ea0ff0f;border-color:#2e4468}.challenge-item-text{flex-direction:column;flex:1;min-width:0;display:flex}.challenge-item-text .muted{white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.cw-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;margin:6px 0 4px;display:grid}.cw-btn{background:var(--panel-2);border:1px solid var(--line-2);border-radius:var(--radius);color:var(--text);font:inherit;font-size:var(--fs-xs);text-align:left;cursor:pointer;min-width:0;transition:border-color var(--dur-1), background-color var(--dur-1), transform var(--dur-1);grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;gap:4px 6px;padding:5px;display:grid}.cw-btn:hover{border-color:var(--line-3);background:var(--raised)}.cw-btn.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.cw-swatch{border-radius:3px;grid-column:1/-1;height:18px;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0f}.cw-swatch>span{flex:1}.cw-swatch>span:first-child{flex:2.4}.cw-swatch>span:nth-child(2){flex:1.4}.cw-name{text-overflow:ellipsis;white-space:nowrap;line-height:1.2;overflow:hidden}.cw-tag{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border:1px solid var(--line-2);border-radius:3px;padding:0 3px;font-size:9px}.trim-rows{flex-direction:column;gap:3px;margin-top:8px;display:flex}.trim-row{grid-template-columns:26px minmax(0,1fr) minmax(90px,112px) 18px;align-items:center;gap:6px;display:grid}.trim-row.is-overridden .trim-label{color:var(--accent)}.trim-label{font-size:var(--fs-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trim-color{border:1px solid var(--line-2);border-radius:var(--r-sm);cursor:pointer;background:0 0;width:26px;height:22px;padding:0}.trim-color::-webkit-color-swatch-wrapper{padding:1px}.trim-color::-webkit-color-swatch{border:0;border-radius:2px}.trim-finish{height:24px;font-size:var(--fs-sm);cursor:pointer;background-position:right 5px center;padding:0 20px 0 6px}.trim-finish-static{padding-left:4px}.fit-tools{align-items:center;gap:4px;display:flex}.viewport-header .fit-tools .btn-ghost{margin-left:0}.fit-toggle.is-on{color:var(--text);border-color:var(--line-2);background:var(--panel-2)}.fit-person{padding-right:22px}.fit-body{margin:0 0 8px}.fit-note{margin:8px 0 0}.fit-summary{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.fit-chip{height:20px;font-size:var(--fs-xs);font-weight:var(--fw-medium);border:1px solid var(--line-2);white-space:nowrap;border-radius:10px;align-items:center;padding:0 8px;display:inline-flex}.fit-chip.is-pass{color:var(--green);background:var(--green-dim);border-color:#4cc38a73}.fit-chip.is-marginal{color:var(--accent);background:var(--accent-dim);border-color:#ffb02073}.fit-chip.is-fail{color:var(--red);background:var(--red-dim);border-color:#f26d6d73}.fit-list{flex-direction:column;gap:1px;margin:0;padding:0;list-style:none;display:flex}.fit-row{border-radius:var(--r-sm);font-size:var(--fs-sm);cursor:default;transition:background-color var(--dur-1);gap:7px;padding:5px 6px;display:flex}.fit-row:hover{background:var(--hover)}.fit-icon{text-align:center;flex:none;width:12px;font-weight:700}.fit-row.is-pass .fit-icon{color:var(--green)}.fit-row.is-marginal .fit-icon{color:var(--accent)}.fit-row.is-fail .fit-icon{color:var(--red)}.fit-main{flex:1;min-width:0}.fit-line{align-items:baseline;gap:8px;display:flex}.fit-label{flex:1;min-width:0}.fit-value{font-variant-numeric:tabular-nums;color:var(--text);white-space:nowrap;font-size:11.5px}.fit-row.is-fail .fit-value{color:var(--red)}.fit-row.is-marginal .fit-value{color:var(--accent)}.fit-detail{color:var(--muted);font-size:var(--fs-xs);margin-top:1px;line-height:1.35}.fit-tag{margin-left:5px;padding:0 5px;font-size:9.5px}.sim-panel .panel-heading{align-items:center}.sim-tag{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border:1px solid var(--line-2);border-radius:var(--r-lg);padding:0 var(--sp-1);margin-left:var(--sp-1)}.sim-panel button,.sim-panel [role=button],.sim-panel select,.sim-panel input[type=range],.sim-panel input[type=checkbox]{cursor:pointer}.sim-panel button:disabled{cursor:default}.sim-scenarios{margin:var(--sp-1) 0 var(--sp-2);width:max-content}.sim-row,.sim-range{align-items:center;gap:var(--sp-1) var(--sp-2);margin-bottom:var(--sp-1);font-size:var(--fs-sm);grid-template-columns:76px 1fr 38px;display:grid}.sim-row{grid-template-columns:76px 1fr}.sim-range-label{color:var(--muted)}.sim-range-value{color:var(--text);font-variant-numeric:tabular-nums;text-align:right;font-size:var(--fs-xs)}.sim-range input,.sim-scrub{width:100%;accent-color:var(--accent);margin:0}.sim-select{padding:2px var(--sp-1)}.sim-check{align-items:center;gap:var(--sp-2);font-size:var(--fs-sm);color:var(--muted);margin-bottom:var(--sp-2);display:flex}.sim-actions{align-items:center;gap:var(--sp-1);margin:var(--sp-2) 0 var(--sp-1);display:flex}.sim-run{background:var(--accent-dim);color:var(--accent);font-weight:var(--fw-semibold);border-color:#ffb02080}.sim-run:hover:not(:disabled){border-color:var(--accent)}.sim-run:disabled{opacity:.7}.sim-intro{margin:var(--sp-2) 0 0}.sim-error{color:var(--red);font-size:var(--fs-sm)}.sim-headline{align-items:baseline;gap:var(--sp-2);margin:var(--sp-3) 0 var(--sp-2);display:flex}.sim-time{font-size:26px;font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--text)}.sim-time-label{color:var(--muted);font-size:var(--fs-sm)}.sim-kv{font-size:var(--fs-sm);margin-bottom:var(--sp-2)}.sim-player{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sp-2);margin:var(--sp-2) 0 var(--sp-3)}.sim-player-row{align-items:center;gap:var(--sp-2);display:flex}.sim-play{text-align:center;flex:none;justify-content:center;width:32px}.sim-player-meta{margin-top:var(--sp-1);font-size:var(--fs-xs);color:var(--muted);font-variant-numeric:tabular-nums}.sim-clock{color:var(--text)}.sim-count{flex:1}.sim-speed .seg-btn{padding:1px var(--sp-2);font-size:var(--fs-xs);cursor:pointer}.sim-legend{gap:2px var(--sp-3);margin-top:var(--sp-2);font-size:var(--fs-xs);color:var(--muted);flex-wrap:wrap;display:flex}.sim-legend span{align-items:center;gap:var(--sp-1);display:inline-flex}.sim-legend i{border-radius:50%;width:8px;height:8px;display:inline-block;box-shadow:0 0 0 1px #0009}.sim-legend i.sim-legend-heat{border-radius:var(--r-xs);background:linear-gradient(90deg,#ffc83c59,#ff3214);width:16px}.sim-sub{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:var(--sp-3) 0 var(--sp-1)}.sim-sub .muted{text-transform:none;letter-spacing:0;font-weight:400}.sim-chart{margin-bottom:var(--sp-1)}.sim-bar-row{align-items:center;gap:var(--sp-2);padding:3px var(--sp-1);border-radius:var(--r-sm);font-size:var(--fs-sm);grid-template-columns:64px 1fr 58px;display:grid}.sim-bar-row:hover{background:var(--hover)}.sim-bar-label{color:var(--muted)}.sim-bar-row.is-selected .sim-bar-label{color:var(--text)}.sim-bar-track{height:10px;position:relative}.sim-bar{background:var(--line-3);border-radius:0 var(--r-sm) var(--r-sm) 0;position:absolute;top:0;bottom:0;left:0}.sim-bar-row.is-selected .sim-bar{background:var(--accent)}.sim-whisker{background:#e3e6ec8c;height:2px;margin-top:-1px;position:absolute;top:50%}.sim-bar-value{text-align:right;font-variant-numeric:tabular-nums;color:var(--text);font-size:var(--fs-xs);white-space:nowrap}.sim-bottlenecks{font-size:var(--fs-sm);margin:0;padding-left:18px}.sim-bottlenecks li{margin-bottom:2px}.sim-bottlenecks li span:first-child{color:var(--text)}.sim-bn-value{color:var(--muted);margin-left:var(--sp-2);font-size:var(--fs-xs)}.sim-notes{margin:var(--sp-3) 0 0;padding-left:var(--sp-4);color:var(--muted);font-size:var(--fs-xs);line-height:1.4}.sim-notes li{margin-bottom:3px}.share-pop{z-index:900;background:var(--panel-2);border:1px solid var(--line-3);border-radius:var(--r-lg);width:400px;max-width:calc(100vw - 16px);box-shadow:var(--shadow-3);font-size:var(--fs-md);animation:pop var(--dur-1) var(--ease);flex-direction:column;gap:10px;padding:12px 14px 14px;display:flex;position:fixed}.share-pop:focus{outline:none}.share-pop-head{align-items:flex-start;gap:8px;display:flex}.share-pop-title{min-width:0;font-size:var(--fs-lg);font-weight:var(--fw-semibold);color:var(--text);flex-direction:column;flex:1;gap:2px;display:flex}.share-pop-subject{font-size:var(--fs-sm);color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-weight:400;overflow:hidden}.share-pop-close{color:var(--muted);border-radius:var(--r-sm);background:0 0;border:0;margin:-2px -4px 0 0;padding:5px;display:inline-flex}.share-pop-close:hover{color:var(--text);background:var(--hover)}.share-pop-row{gap:6px;display:flex}.share-pop-url{min-width:0;height:var(--control-h-sm);background:var(--bg);border:1px solid var(--line-2);border-radius:var(--radius);color:var(--text-2);font:var(--fs-sm) var(--mono);flex:1;padding:0 8px}.share-pop-url:focus{border-color:var(--focus);outline:none}.share-pop-status{min-height:16px;font-size:var(--fs-sm);color:var(--muted);align-items:center;gap:6px;margin-top:-4px;display:flex}.share-pop-status:empty{display:none}.share-pop-status.is-ok{color:var(--green)}.share-pop-status.is-warn{color:var(--accent)}.share-pop-length{flex-direction:column;gap:5px;display:flex}.share-pop-meter{background:var(--line-2);border-radius:2px;height:4px;position:relative}.share-pop-meter span{background:var(--green);border-radius:2px;position:absolute;inset:0 auto 0 0}.share-pop-meter i{background:var(--faint);width:1px;position:absolute;top:-3px;bottom:-3px}.share-pop-length.is-long .share-pop-meter span{background:var(--accent)}.share-pop-length-text{font-size:var(--fs-sm);color:var(--muted);line-height:1.4}.share-pop-length-text strong{color:var(--text-2);font-weight:var(--fw-medium)}.share-pop-length.is-long .share-pop-length-text strong{color:var(--accent)}.share-pop-section{border-top:1px solid var(--line-2);flex-direction:column;gap:3px;padding-top:10px;display:flex}.share-pop-section .btn-row{margin-top:5px}.share-pop-label{font-size:var(--fs-xs);font-weight:var(--fw-semibold);letter-spacing:.04em;text-transform:uppercase;color:var(--faint)}.share-pop-note{font-size:var(--fs-sm);color:var(--muted);line-height:1.4}.btn-share.is-open{background:var(--accent-hover)}.review-panel .panel-heading{align-items:center}.review-panel button:not(:disabled),.review-panel [role=button]{cursor:pointer}.review-panel button:disabled{cursor:default}.review-chip{font-size:var(--fs-xs);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;padding:0 var(--sp-2);border-radius:var(--r-lg);border:1px solid var(--line-2);color:var(--muted);margin-left:auto}.review-chip:empty{display:none}.is-great{--tone:#0e9f6e}.is-good{--tone:#8cc63f}.is-mixed{--tone:#f5a524}.is-avoid{--tone:#e03b30}.review-chip.is-great,.review-chip.is-good,.review-chip.is-mixed,.review-chip.is-avoid{color:var(--tone);border-color:color-mix(in srgb, var(--tone) 45%, transparent)}.review-score{align-items:baseline;gap:var(--sp-2);margin:var(--sp-1) 0 var(--sp-2);display:flex}.review-score-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--tone,var(--text));font-size:30px;font-weight:700}.review-verdict{color:var(--text-2);font-size:var(--fs-sm);line-height:1.3}.review-mix{background:var(--line-2);border-radius:3px;gap:1px;height:6px;display:flex;overflow:hidden}.review-mix span{min-width:2px;display:block}.review-filters{gap:var(--sp-1);margin:var(--sp-2) 0 var(--sp-3);flex-wrap:wrap;display:flex}.review-filter{height:22px;padding:0 var(--sp-2);font-size:var(--fs-xs);color:var(--text-2);border:1px solid var(--line-2);border-radius:var(--r-lg);font-variant-numeric:tabular-nums;background:0 0;align-items:center;gap:5px;display:inline-flex}.review-filter i{background:var(--tone);border-radius:50%;width:8px;height:8px;display:inline-block}.review-filter:hover:not(:disabled){border-color:var(--line-3);color:var(--text)}.review-filter.is-on{border-color:var(--tone);color:var(--text);background:color-mix(in srgb, var(--tone) 14%, transparent)}.review-filter:disabled{opacity:.45}.review-classes{margin:0 0 var(--sp-3);gap:var(--sp-2);padding:0;list-style:none;display:grid}.review-classes li{gap:3px var(--sp-2);font-size:var(--fs-sm);grid-template-columns:1fr auto;display:grid}.review-class-name{color:var(--text);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.review-class-meta{color:var(--muted);font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.review-classes .review-mix{grid-column:1/-1;height:4px}.review-callouts{gap:var(--sp-1);margin-bottom:var(--sp-3);display:grid}.review-callout{align-items:center;gap:var(--sp-2);padding:var(--sp-2);border-radius:var(--radius);border:1px solid var(--line);background:var(--panel-2);display:flex}.review-callout:hover{border-color:var(--line-3)}.review-callout-text{min-width:0;display:grid}.review-callout-title{font-size:var(--fs-2xs);text-transform:uppercase;letter-spacing:.06em;font-weight:var(--fw-semibold);color:var(--muted)}.review-callout.is-best .review-callout-title{color:#3ecf95}.review-callout.is-avoid .review-callout-title{color:#ff7a70}.review-callout-reason{font-size:var(--fs-sm);color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.review-seat{border-radius:var(--r-sm);min-width:34px;height:20px;font-size:var(--fs-xs);font-variant-numeric:tabular-nums;background:var(--tone);color:#0c1014;flex:none;justify-content:center;align-items:center;padding:0 5px;font-weight:700;display:inline-flex}.review-seat.is-great,.review-seat.is-avoid{color:#fff}.review-actions{margin-bottom:var(--sp-3)}.review-list-head{font-size:var(--fs-xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:var(--sp-1)}.review-list-head .muted{letter-spacing:0}.review-list{max-height:280px;margin:0;padding:0;list-style:none;overflow-y:auto}.review-row{align-items:center;gap:var(--sp-2);padding:3px var(--sp-1);border-radius:var(--r-sm);font-size:var(--fs-sm);display:flex}.review-row:hover{background:var(--hover)}.review-row-text{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.review-rating{font-size:var(--fs-2xs);font-weight:var(--fw-semibold);text-transform:uppercase;letter-spacing:.06em;color:var(--tone);margin-left:auto}.review-reasons{margin:var(--sp-1) 0 0;font-size:var(--fs-sm);color:var(--text-2);gap:2px;padding:0;line-height:1.35;list-style:none;display:grid}.review-reasons li{grid-template-columns:12px 1fr;display:grid}.review-sign{color:var(--muted);font-weight:700}.review-reasons li.is-plus .review-sign{color:#3ecf95}.review-reasons li.is-minus .review-sign{color:#ff7a70}.review-plain{margin:var(--sp-1) 0 0;font-size:var(--fs-sm);color:var(--muted)}.review-unit-seat+.review-unit-seat{margin-top:var(--sp-3)}.review-tip{z-index:5;width:280px;padding:var(--sp-2) var(--sp-3);pointer-events:none;border:1px solid var(--line-2);border-radius:var(--radius);box-shadow:var(--shadow-2);background:#16191ff7;position:absolute;top:0;left:0}.review-tip-head{align-items:center;gap:var(--sp-2);display:flex}.review-tip-class{font-size:var(--fs-sm);color:var(--text);font-weight:var(--fw-medium);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gizmo-readout{z-index:3;pointer-events:none;white-space:nowrap;color:#ffd58a;background:#0c0e12eb;border:1px solid #ffb0208c;border-radius:4px;padding:2px 7px;font:600 10.5px/14px ui-monospace,SFMono-Regular,Menlo,monospace;position:absolute}.gizmo-readout.is-warn{color:#cfd5df;border-color:#6b7280}.measure-overlay{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;inset:0}.viewport-body canvas.is-measuring{cursor:crosshair}.tool-btn{cursor:pointer;white-space:nowrap}.tool-btn:disabled{cursor:default}.viewport-header .tool-btn.btn-ghost{margin-left:0}.tool-btn.is-on{color:#06222c;background:#3fd4ff;border-color:#3fd4ff}.tool-btn.is-on:hover:not(:disabled){color:#06222c;border-color:#8fe6ff}.tool-btn.tool-fill.is-on{color:#1b1300;background:var(--accent);border-color:var(--accent)}.tool-kbd{opacity:.6;margin-left:5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px}.arrange{border:1px solid var(--line-2);background:var(--bg);border-radius:6px;align-items:center;gap:1px;padding:1px;display:inline-flex}.arrange-btn{width:24px;height:22px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;place-items:center;padding:0;display:inline-grid}.arrange-btn:hover:not(:disabled){color:var(--text);background:var(--panel-2)}.arrange-btn:disabled{opacity:.35;cursor:default}.arrange-btn svg{width:16px;height:16px;display:block}.arrange-sep{background:var(--line-2);width:1px;height:14px;margin:0 2px}.welcome-backdrop{z-index:50;padding:var(--sp-5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:welcome-fade var(--dur-2) var(--ease);background:#06080b99;place-items:center;display:grid;position:fixed;inset:0}.welcome{background:var(--panel);border:1px solid var(--line-2);border-radius:var(--r-xl);width:min(680px,100%);box-shadow:var(--shadow-3);animation:welcome-rise .24s var(--ease);position:relative;overflow:hidden}.welcome-hero{background:radial-gradient(120% 140% at 50% 0%, #ffb02029, transparent 60%), linear-gradient(180deg, #1a1e25, var(--panel));border-bottom:1px solid var(--line);height:128px;position:relative;overflow:hidden}.welcome-hero:after{content:"";background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);opacity:.35;pointer-events:none;background-size:24px 24px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000,#0000);mask-image:linear-gradient(#000,#0000)}.welcome-art{z-index:1;width:600px;height:120px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.welcome-art .wa-wall{stroke:#3a414d;stroke-width:1.5px}.welcome-art .wa-aisle{stroke:#4cc38a8c;stroke-width:1.2px;stroke-dasharray:5 5}.welcome-art .wa-shell{fill:#232830;stroke:#3b4250;stroke-width:1px}.welcome-art .wa-seat{fill:#ffb02038;stroke:#ffb020bf;stroke-width:1px}.welcome-art .wa-console{fill:#2c323c;stroke:#4a5364;stroke-width:1px}.welcome-art .wa-dim{stroke:var(--blue);stroke-width:1px;opacity:.8}.welcome-close{z-index:2;color:var(--muted);border-radius:var(--radius);background:#0e101499;padding:6px;position:absolute;top:10px;right:10px}.welcome-content{padding:20px 26px 18px}.welcome-brand{font-size:20px;font-weight:var(--fw-semibold);letter-spacing:-.01em;align-items:center;gap:10px;display:flex}.welcome-brand .brand-mark{color:var(--accent);display:inline-flex}.welcome-lede{color:var(--text-2);margin:8px 0 20px;font-size:14px;line-height:1.55}.welcome-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.welcome-choice{--tone:var(--accent);--tone-dim:var(--accent-dim);text-align:left;background:var(--panel-2);color:var(--text);border:1px solid var(--line-2);border-radius:var(--r-lg);font:inherit;transition:border-color var(--dur-1), transform var(--dur-2) var(--ease), background-color var(--dur-1), box-shadow var(--dur-2);flex-direction:column;align-items:flex-start;gap:5px;padding:14px 14px 16px;display:flex;position:relative}.welcome-choice.tone-blue{--tone:var(--blue);--tone-dim:var(--blue-dim)}.welcome-choice.tone-green{--tone:var(--green);--tone-dim:var(--green-dim)}.welcome-choice:hover,.welcome-choice:focus-visible{border-color:var(--tone);background:var(--raised);border-radius:var(--r-lg);outline:none;transform:translateY(-2px);box-shadow:0 10px 28px #00000059}.welcome-icon{width:36px;height:36px;color:var(--tone);background:var(--tone-dim);border-radius:10px;place-items:center;margin-bottom:6px;display:grid}.welcome-choice-title{font-weight:var(--fw-semibold);font-size:13.5px}.welcome-choice-text{color:var(--muted);font-size:var(--fs-sm);line-height:1.45}.welcome-choice-go{color:var(--faint);transition:transform var(--dur-2) var(--ease), color var(--dur-1);position:absolute;top:16px;right:14px}.welcome-choice:hover .welcome-choice-go,.welcome-choice:focus-visible .welcome-choice-go{color:var(--tone);transform:translate(2px)}.welcome-foot{align-items:center;gap:var(--sp-4);border-top:1px solid var(--line);color:var(--faint);margin:18px 0 0;padding-top:14px;font-size:11.5px;display:flex}.welcome-foot>span{align-items:center;gap:4px;display:inline-flex}.welcome-foot-spacer{flex:1}@keyframes welcome-fade{0%{opacity:0}}@keyframes welcome-rise{0%{opacity:0;transform:translateY(8px)scale(.99)}}@media (max-width:640px){.welcome-choices{grid-template-columns:1fr}.welcome-foot{flex-wrap:wrap}}
