:root{--cable-left:calc(var(--tray-left,112px) + var(--space-4))}.cable-corner{left:var(--cable-left);bottom:var(--space-4);z-index:2;align-items:flex-start;gap:var(--space-2);pointer-events:none;max-width:380px;font-family:var(--font-ui);color:var(--text-primary);flex-direction:column;display:flex;position:absolute}body.has-tray .cable-corner{bottom:calc(var(--tray-height) + 2 * var(--space-4))}body.has-tray .info{bottom:calc(var(--tray-height) + 2 * var(--space-4) + 40px)}.cable-corner>*{pointer-events:auto}body.cable-panel-open .cable-corner{display:none}.cable-corner .honesty{padding:2px var(--space-3);border-radius:var(--radius-pill);background:var(--panel-bg);color:var(--text-secondary);font-size:var(--text-xs);line-height:var(--line-tight);text-wrap:pretty;margin:0}.cable-legend{width:300px;padding:0}.cable-legend .legend-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.cable-legend .legend-head b{font-size:var(--text-sm);font-weight:var(--weight-heavy)}.cable-legend ul{margin:var(--space-2) 0 0;gap:var(--space-1) var(--space-3);grid-template-columns:1fr 1fr;align-items:start;padding:0;list-style:none;display:grid}.cable-legend li{column-gap:var(--space-2);grid-template-columns:auto 1fr;align-content:start;align-items:center;display:grid}.cable-legend li .range{grid-column:2}.cable-legend .swatch{border-radius:var(--radius-pill);width:28px;height:6px}.cable-legend .swatch.band-calm{background:var(--state-ok)}.cable-legend .swatch.band-busy{background:var(--state-warn)}.cable-legend .swatch.band-over,.cable-legend .swatch.band-melting{background:linear-gradient(90deg, var(--swatch) 0 60%, transparent 60% 100%) 0 0 / 10px 6px repeat-x;border-radius:0}.cable-legend .swatch.band-over{--swatch:var(--state-over)}.cable-legend .swatch.band-melting{--swatch:var(--state-melting)}.toolbar .tool-icon-cable{width:24px;height:24px;display:block}.tool-icon-cable path{fill:none;stroke:var(--text-primary);stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round}.tool-icon-cable .wire{stroke:var(--state-warn);stroke-width:2.6px}.tool-icon-cable .cap{fill:var(--state-ok);stroke:var(--text-primary);stroke-width:1.4px}.cable-legend li b{font-size:var(--text-sm);font-weight:var(--weight-bold)}.cable-legend .range{font-size:var(--text-xs);color:var(--text-secondary);font-feature-settings:var(--numbers-feature)}.cable-legend .legend-note{margin:var(--space-2) 0 0;font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--line-body)}button.quiet{font-size:var(--text-xs);padding:2px var(--space-2)}.topbar .segmented,.topbar>.row{flex-wrap:nowrap;flex-shrink:0}.topbar .segmented button{white-space:nowrap}.topbar .brand{gap:0;min-width:0}.topbar .brand b,.topbar .brand .status{line-height:var(--line-tight)}.topbar .cables-over{color:var(--state-over);font-weight:var(--weight-bold);font-feature-settings:var(--numbers-feature);white-space:nowrap}.cable-panel{top:116px;left:var(--cable-left);z-index:3;width:300px;max-height:calc(100vh - 116px - var(--space-4));scrollbar-width:thin;gap:var(--space-2);font-family:var(--font-ui);color:var(--text-primary);flex-direction:column;padding:0;display:flex;position:absolute;overflow-y:auto}.cable-panel>*{flex-shrink:0}.cable-panel header{justify-content:space-between;align-items:flex-start;gap:var(--space-2);display:flex}.cable-panel h3{font-size:var(--text-md);font-weight:var(--weight-heavy);line-height:var(--line-tight);text-wrap:balance;margin:0}.cable-panel .close{padding:var(--space-1);line-height:0}.cable-panel .segmented{align-self:flex-start}.cable-panel .facts{font-size:var(--text-sm);color:var(--text-secondary);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);margin:0}.cable-panel .chart-label{margin:var(--space-1) 0 0;font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--text-secondary)}.cable-chart{background:var(--panel-raised);border-radius:var(--radius-sm);height:128px}.cable-panel .over-text{font-size:var(--text-sm);font-weight:var(--weight-bold);font-feature-settings:var(--numbers-feature);margin:0}.cable-panel .over-text.over{color:var(--state-over)}.cable-panel .open-point{align-items:center;gap:var(--space-2);font-size:var(--text-sm);cursor:pointer;display:flex}.cable-panel .open-point input{accent-color:var(--select);width:16px;height:16px}.cable-panel .danger{color:var(--state-over);align-self:flex-start}.cable-panel .honesty{font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--line-body);margin:0}.cable-tip{z-index:20;pointer-events:none;max-width:360px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--panel-raised);color:var(--text-primary);box-shadow:var(--shadow-low);font-family:var(--font-ui);font-size:var(--text-sm);font-feature-settings:var(--numbers-feature);position:fixed}.graphs-slot{top:116px;left:var(--cable-left);z-index:3;width:300px;max-height:calc(100vh - 116px - var(--space-4));scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent;gap:var(--space-2);font-family:var(--font-ui);color:var(--text-primary);-webkit-user-select:none;user-select:none;flex-direction:column;padding:0;display:flex;position:absolute;overflow-y:auto}.graphs-slot.hidden{display:none}.graphs-slot>header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.graphs-slot h2{font-size:var(--text-lg);font-weight:var(--weight-heavy);line-height:var(--line-tight);margin:0}.graphs-slot .close{background:0 0;border-color:#0000;place-items:center;width:32px;height:32px;padding:0;display:grid}.graphs-slot .close:hover{background:var(--chip-bg)}.graphs-slot :focus-visible{outline:2px solid var(--select);outline-offset:2px}.dock-panel{border-top:1px solid var(--divider);padding-top:var(--space-2)}.dock-panel h3{margin:0}.dock-head{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) var(--space-1);text-align:left;border-radius:var(--radius-sm);font-size:var(--text-md);font-weight:var(--weight-heavy);line-height:var(--line-tight);color:var(--text-primary);background:0 0;border:0;display:flex}.dock-head:hover{background:var(--chip-bg)}.dock-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dock-chevron{width:7px;height:7px;transition:transform var(--dur-fast);border-bottom:2px solid;border-right:2px solid;flex:none;margin:0 3px 0 1px;transform:rotate(45deg)}.dock-panel.collapsed .dock-chevron{transform:rotate(-45deg)}.dock-body{gap:var(--space-2);padding-top:var(--space-2);flex-direction:column;display:flex}.dock-body[hidden]{display:none}.panel-chart{background:var(--panel-raised);border-radius:var(--radius-sm);height:180px}.panel-chart[hidden]{display:none}.panel-totals{font-size:var(--text-sm);color:var(--text-secondary);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);margin:0}.panel-totals .item{white-space:nowrap}.panel-message{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-secondary);margin:0}.panel-message[hidden],.panel-totals[hidden]{display:none}.panel-honesty{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--line-body);margin:0}.peak-table{border-collapse:collapse;width:100%;font-size:var(--text-sm);font-feature-settings:var(--numbers-feature)}.peak-table[hidden]{display:none}.peak-table caption{text-align:left;font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--text-secondary);padding-bottom:var(--space-1)}.peak-table th{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--text-muted);text-align:left;padding:0 var(--space-1) var(--space-1)}.peak-table td{padding:var(--space-1);border-top:1px solid var(--divider);vertical-align:top}.peak-table .num{text-align:right;white-space:nowrap}.peak-table td.time{font-weight:var(--weight-bold);white-space:nowrap}.peak-table td.over{color:var(--state-over);font-weight:var(--weight-heavy)}.peak-table{table-layout:fixed}.peak-table th:first-child{width:44px}.peak-table th:nth-child(2){width:34px}.peak-table th:nth-child(3){width:38px}.peak-table td.who{color:var(--text-secondary);font-size:var(--text-xs);line-height:var(--line-body);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.peak-table tbody tr{cursor:pointer}.peak-table tbody tr:hover{background:var(--chip-bg)}.peak-table tbody tr:focus-visible{outline:2px solid var(--select);outline-offset:-2px}.well-footer{justify-content:flex-end;display:flex}.graphs-button{align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);background:0 0;border:0;display:inline-flex}.graphs-button:hover{background:var(--chip-bg)}.graphs-button .dock-chevron{width:6px;height:6px;transform:rotate(-45deg)}.graphs-button[aria-expanded=true] .dock-chevron{transform:rotate(135deg)}.chart-caption{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--text-secondary);margin:0}.chart-caption[hidden]{display:none}.dock-panel[data-panel=peak] .panel-chart{height:196px}body.graphs-open .cable-corner{display:none}.toolbar .tool-icon-overlay{width:24px;height:24px;display:block}.tool-icon-overlay path{fill:none;stroke:var(--text-primary);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.tool-icon-overlay .lens{fill:var(--text-muted);stroke:none}.tool-icon-overlay .under{stroke:var(--text-secondary);stroke-width:1.6px}.toolbar .overlay-trigger.on{background:var(--panel-bg);color:var(--text-primary);box-shadow:inset 0 0 0 2px var(--text-primary)}.overlay-trigger[data-lens=consumption] .lens{fill:var(--overlay-seq-3)}.overlay-trigger[data-lens=generation] .lens{fill:var(--overlay-gen-3)}.overlay-trigger[data-lens=net] .lens{fill:var(--overlay-div-p2)}.overlay-trigger[data-lens=flex] .lens{fill:var(--overlay-flex-3)}.overlay-trigger[data-lens=cable] .lens{fill:var(--state-warn)}.overlay-picker{z-index:4;gap:var(--space-1);width:220px;font-family:var(--font-ui);color:var(--text-primary);flex-direction:column;display:flex;position:absolute;top:116px;left:132px}.overlay-picker .picker-title{font-size:var(--text-sm);font-weight:var(--weight-heavy);margin:0 0 var(--space-1)}.overlay-picker .lens-list{flex-direction:column;gap:2px;display:flex}.overlay-picker button{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-1) var(--space-2);font-size:var(--text-sm);text-align:left;font-family:var(--font-ui);font-weight:var(--weight-regular);display:flex}.overlay-picker .dot{border-radius:var(--radius-pill);border:2px solid var(--text-secondary);background:0 0;flex-shrink:0;width:12px;height:12px}.overlay-picker button.on{font-weight:var(--weight-bold)}.overlay-picker button.on .dot{border-color:var(--text-primary);background:var(--select);box-shadow:inset 0 0 0 2px var(--panel-bg)}.overlay-picker .lens-off{margin-top:var(--space-1)}.overlay-legend{width:300px;font-family:var(--font-ui);color:var(--text-primary);padding:0}.overlay-legend .legend-title{font-size:var(--text-sm);font-weight:var(--weight-heavy);display:block}.overlay-legend ul{margin:var(--space-1) 0 0;flex-direction:column;gap:2px;padding:0;list-style:none;display:flex}.overlay-legend li{column-gap:var(--space-2);grid-template-columns:20px auto 1fr;align-items:center;display:grid}.overlay-legend .swatch{width:20px;height:12px;display:block}.overlay-legend .swatch polygon{stroke:var(--text-secondary);stroke-width:1px;stroke-linejoin:round}.overlay-legend li b{font-size:var(--text-xs);font-weight:var(--weight-bold);line-height:var(--line-tight)}.overlay-legend .range{font-size:var(--text-xs);color:var(--text-secondary);font-feature-settings:var(--numbers-feature);white-space:nowrap;justify-self:end}.overlay-legend .legend-note,.overlay-legend .legend-empty{margin:var(--space-1) 0 0;font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--line-tight);text-wrap:pretty}.overlay-legend .legend-empty{color:var(--text-primary);font-weight:var(--weight-bold)}.eg-scrim{z-index:30;padding:max(var(--space-5), 16vh) var(--space-5) var(--space-5);background:var(--scrim);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.eg-scrim.hidden{display:none}.eg-dialog{gap:var(--space-3);width:440px;max-width:100%;max-height:100%;color:var(--text-primary);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--line-body);flex-direction:column;display:flex;overflow:auto}.eg-dialog :focus-visible{outline:2px solid var(--select);outline-offset:2px}.eg-head{align-items:center;gap:var(--space-2);display:flex}.eg-head h2{font-size:var(--text-lg);font-weight:var(--weight-heavy);line-height:var(--line-tight);flex:auto;margin:0}.eg-stage{gap:var(--space-3);flex-direction:column;display:flex}.eg-stage.hidden{display:none}.eg-lead{margin:0}.eg-hint,.eg-privacy{color:var(--text-secondary);font-size:var(--text-xs);margin:0}.eg-form{gap:var(--space-3);flex-direction:column;display:flex}.eg-label{gap:var(--space-1);font-weight:var(--weight-bold);flex-direction:column;display:flex}.eg-email{font:inherit;font-size:var(--text-md);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);min-height:40px}.eg-email:focus{border-color:var(--select);box-shadow:0 0 0 2px var(--select);outline:none}.eg-email::placeholder{color:var(--text-muted)}.eg-error{color:var(--state-over);font-weight:var(--weight-bold);margin:0}.eg-error.hidden{display:none}.eg-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.eg-dialog button{font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);cursor:pointer;min-height:32px;transition:background var(--dur-fast), border-color var(--dur-fast);justify-content:center;align-items:center;display:inline-flex}.eg-dialog button:hover:not(:disabled){background:var(--chip-bg);border-color:var(--text-muted)}.eg-dialog .eg-close{padding:var(--space-1);background:0 0;border-color:#0000;min-width:28px;min-height:28px}.eg-dialog .eg-primary{background:var(--action);color:var(--text-on-action);border-color:#0000}.eg-dialog .eg-primary:hover:not(:disabled){background:var(--action);filter:brightness(1.06);border-color:#0000}.eg-dialog .eg-primary:disabled{background:var(--chip-bg);color:var(--text-muted);cursor:progress}.topbar .account-item{align-items:center;gap:var(--space-1);min-width:0;font-size:var(--text-sm);white-space:nowrap;flex-shrink:1;display:flex}.topbar .account-item .signed-in{text-overflow:ellipsis;min-width:0;max-width:22ch;color:var(--text-secondary);overflow:hidden}.topbar .account-item .signed-in b{color:var(--text-primary);font-weight:var(--weight-bold)}.topbar .account-item .sep{color:var(--text-muted)}.topbar .account-item .sign-in{font-size:var(--text-sm);font-weight:var(--weight-bold);padding:var(--space-1) var(--space-2)}.topbar .account-item .link-button{font:inherit;font-weight:var(--weight-bold);color:var(--text-primary);padding:var(--space-1);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;min-height:0;text-decoration:underline}body[data-top-bar=collapsed] .topbar .account-item .signed-in,body[data-top-bar=collapsed] .topbar .account-item .sep{display:none}.imp-scrim{z-index:20;padding:max(var(--space-5), 12vh) calc(var(--well-width,400px) + var(--space-6)) var(--space-5) var(--space-5);background:var(--scrim);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.imp-scrim.hidden{display:none}.imp-dialog{gap:var(--space-3);width:560px;max-width:100%;max-height:100%;color:var(--text-primary);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--line-body);flex-direction:column;display:flex;overflow:auto}.imp-dialog :focus-visible{outline:2px solid var(--select);outline-offset:2px}.imp-dialog ::selection{background:var(--map-hover);color:var(--text-primary)}.imp-dialog.dropping .imp-inputs{outline:2px dashed var(--select);outline-offset:var(--space-1);border-radius:var(--radius-sm)}.imp-head{align-items:center;gap:var(--space-2);display:flex}.imp-head h2{min-width:0;font-size:var(--text-lg);font-weight:var(--weight-heavy);line-height:var(--line-tight);text-overflow:ellipsis;white-space:nowrap;flex:auto;margin:0;overflow:hidden}.imp-privacy{margin:calc(-1 * var(--space-2)) 0 0;color:var(--text-secondary)}.imp-dialog button,.imp-choose{font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);cursor:pointer;justify-content:center;align-items:center;gap:var(--space-1);min-height:32px;transition:background var(--dur-fast), border-color var(--dur-fast);display:inline-flex}.imp-dialog button:hover:not(:disabled),.imp-choose:hover{background:var(--chip-bg);border-color:var(--text-muted)}.imp-dialog .imp-close{padding:var(--space-1);background:0 0;border-color:#0000;min-width:28px;min-height:28px}.imp-dialog .imp-confirm{background:var(--action);color:var(--text-on-action);border-color:#0000}.imp-dialog .imp-confirm:hover:not(:disabled){background:var(--action);filter:brightness(1.06);border-color:#0000}.imp-dialog .imp-confirm:disabled{opacity:1;background:var(--chip-bg);color:var(--text-muted);cursor:default}.imp-inputs{gap:var(--space-3);grid-template-columns:auto 1fr;align-items:start;display:grid}.imp-file{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.imp-file-input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.imp-choose{position:relative}.imp-choose:focus-within{outline:2px solid var(--select);outline-offset:2px}.imp-file-name{text-overflow:ellipsis;white-space:nowrap;max-width:14em;font-size:var(--text-xs);color:var(--text-secondary);overflow:hidden}.imp-paste-label{gap:var(--space-1);color:var(--text-secondary);flex-direction:column;min-width:0;display:flex}.imp-paste{box-sizing:border-box;resize:vertical;width:100%;min-height:72px;font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-xs);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2)}.imp-paste:hover{border-color:var(--text-muted)}.imp-paste::placeholder{color:var(--text-muted)}.imp-preview{gap:var(--space-2);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-3);flex-direction:column;min-height:96px;display:flex}.imp-preview p{margin:0}.imp-lead{color:var(--text-secondary)}.imp-loading{font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature)}.imp-formats{padding-left:var(--space-4);color:var(--text-secondary);margin:0}.imp-formats li+li{margin-top:2px}.imp-format{font-weight:var(--weight-bold);font-size:var(--text-md)}.imp-detail{color:var(--text-secondary)}.imp-format,.imp-detail,.imp-annual{font-feature-settings:var(--numbers-feature)}.imp-unit b{color:var(--text-primary)}.imp-hint{color:var(--text-muted)}.imp-units{gap:var(--space-1) var(--space-4);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.imp-units legend{margin-bottom:var(--space-1);font-weight:var(--weight-bold);color:var(--text-primary);padding:0}.imp-radio{align-items:center;gap:var(--space-1);cursor:pointer;display:inline-flex}.imp-radio input{accent-color:var(--select);width:16px;height:16px;margin:0}.imp-energy{gap:var(--space-3);grid-template-columns:auto 1fr;align-items:center;display:grid}.imp-annual{font-size:var(--text-md);white-space:nowrap}.imp-day{flex-direction:column;gap:2px;min-width:0;margin:0;display:flex}.imp-spark{width:100%;height:40px}.imp-day figcaption{font-size:var(--text-xs);color:var(--text-muted);text-align:right}.imp-warnings{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.imp-warning{align-items:flex-start;gap:var(--space-2);background:var(--state-warn);color:var(--text-on-state-dark);border-radius:var(--radius-sm);padding:var(--space-1) var(--space-2);display:flex}.imp-warning .icon{flex:none;margin-top:3px}.imp-error{color:var(--state-over);background:var(--panel-raised);flex-direction:column;gap:2px;margin:0;display:flex}.imp-error.hidden{display:none}.imp-error strong{font-weight:var(--weight-heavy);font-feature-settings:var(--numbers-feature)}.imp-error span{color:var(--text-secondary)}.imp-error .imp-recovery{color:var(--text-primary)}.imp-dialog>.imp-error{background:0 0}.imp-foot{justify-content:flex-end;gap:var(--space-2);display:flex}.imp-dialog.fb-dialog{width:480px}.fb-form{gap:var(--space-3);flex-direction:column;display:flex}.fb-label{gap:var(--space-1);font-weight:var(--weight-bold);flex-direction:column;display:flex}.fb-hint{color:var(--text-secondary);font-size:var(--text-xs);font-weight:400}.fb-message,.fb-email{font:inherit;font-size:var(--text-md);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-weight:400}.fb-message{resize:vertical;min-height:120px}.fb-email{min-height:40px}.fb-message:focus,.fb-email:focus{border-color:var(--select);box-shadow:0 0 0 2px var(--select);outline:none}.fb-message::placeholder,.fb-email::placeholder{color:var(--text-muted)}.fb-count{margin-top:calc(-1 * var(--space-2));color:var(--text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums;align-self:flex-end}.fb-check{align-items:center;gap:var(--space-2);cursor:pointer;display:flex}.fb-status{color:var(--text-secondary);margin:0}.fb-status:empty{display:none}.fb-status[data-state=error]{color:var(--state-over);font-weight:var(--weight-bold)}.fb-thanks{font-size:var(--text-lg);font-weight:var(--weight-heavy);margin:0}.fb-dialog .imp-foot{align-items:center}.fb-cookies{color:var(--text-secondary);font-size:var(--text-xs);flex:auto;margin:0}.topbar .feedback-button{font-size:var(--text-sm);font-weight:var(--weight-bold);padding:var(--space-1) var(--space-2)}.topbar .game-title{text-overflow:ellipsis;white-space:nowrap;max-width:18ch;color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-bold);overflow:hidden}.games-anchor{display:inline-flex;position:relative}.games-menu{top:calc(100% + var(--space-2));z-index:30;min-width:210px;padding:var(--space-1);background:var(--panel-bg);color:var(--text-primary);font-family:var(--font-ui);flex-direction:column;display:flex;position:absolute;left:0}.games-menu.hidden{display:none}.topbar .games-menu button{text-align:left;border-radius:var(--radius-md);width:100%;padding:var(--space-1) var(--space-3);min-height:32px;font-size:var(--text-sm);background:0 0;border:0;justify-content:flex-start}.topbar .games-menu button:hover:not(:disabled),.topbar .games-menu button:focus-visible{background:var(--chip-bg)}.topbar .games-menu button:disabled{color:var(--text-muted);cursor:default}.topbar .games-menu button[hidden]{display:none}.topbar .games-menu [data-action=publish]{border-top:1px solid var(--divider);margin-top:var(--space-1);border-radius:0}.imp-dialog.games-open{width:560px}.imp-dialog.games-name{width:400px}.games-lists{gap:var(--space-2);flex-direction:column;max-height:60vh;display:flex;overflow-y:auto}.games-lists h3{margin:var(--space-2) 0 0;font-size:var(--text-sm);font-weight:var(--weight-heavy);color:var(--text-secondary)}.games-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.games-list li{align-items:center;gap:var(--space-2);border-bottom:1px solid var(--divider);display:flex}.imp-dialog .games-file{justify-items:start;gap:0 var(--space-3);padding:var(--space-2);border-radius:var(--radius-md);text-align:left;background:0 0;border:0;flex:auto;grid-template-columns:1fr auto;grid-template-areas:"name date""tag date";min-height:44px;display:grid}.imp-dialog .games-file:hover{background:var(--chip-bg)}.games-name{font-weight:var(--weight-bold);grid-area:name}.games-tag{font-size:var(--text-xs);color:var(--text-muted);grid-area:tag;font-weight:400}.games-date{font-size:var(--text-xs);color:var(--text-secondary);font-weight:400;font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);grid-area:date;align-self:center}.imp-dialog .games-first{font-size:var(--text-xs);flex:none}.games-confirm .scn-confirm-buttons{flex:none}.games-form{gap:var(--space-3);flex-direction:column;display:flex}.games-form p{margin:0}.games-field{gap:var(--space-1);color:var(--text-secondary);flex-direction:column;display:flex}.games-input,.games-select{font:inherit;color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);min-height:32px}.games-position{width:6ch}.games-input:focus-visible,.games-select:focus-visible{outline:2px solid var(--select);outline-offset:1px}.games-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.frame,.panel.frame{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;filter:var(--shadow-high-painted);background:0 0;border:14px solid #0000;border-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='120'%20height='120'%20viewBox='0%200%20120%20120'%3e%3c!--%20The%20painted%20frame%20(05-ux%20'hand-drawn%20frames,%20crisp%20data'):%20a%20wobbly%20ink%20line%20round%20warm%20paper.%20Used%20as%20a%209-slice%20border-image%20with%20'round':%20the%20corners%20stay,%20the%20wobbly%20side%20pieces%20repeat%20along%20long%20edges%20instead%20of%20stretching%20flat.%20--%3e%3cpath%20d='M14%203.4%20C24%202.6%2030%204.1%2040%203.3%20C50%202.5%2056%204.2%2066%203.4%20C76%202.7%2084%204.0%2094%203.2%20C100%202.9%20104%203.4%20106.4%203.6%20C113.6%204.2%20116.7%207.9%20116.4%2015%20C115.8%2025%20117.2%2031%20116.5%2041%20C115.8%2051%20117.3%2057%20116.6%2067%20C115.9%2077%20117.2%2085%20116.5%2095%20C116.2%20101%20116.6%20104%20116.3%20106.6%20C115.8%20113.4%20112.2%20116.7%20105%20116.4%20C95%20115.7%2089%20117.3%2079%20116.5%20C69%20115.8%2063%20117.2%2053%20116.6%20C43%20115.9%2035%20117.3%2025%20116.5%20C19%20116.1%2016%20116.6%2013.4%20116.3%20C6.6%20115.7%203.3%20112.1%203.6%20105%20C4.3%2095%202.8%2089%203.5%2079%20C4.2%2069%202.7%2063%203.4%2053%20C4.1%2043%202.8%2035%203.5%2025%20C3.8%2019%203.3%2016%203.7%2013.4%20C4.2%206.7%207.5%203.7%2014%203.4%20Z'%20fill='%23FBF8F2'%20stroke='%231F2A33'%20stroke-width='2.2'%20stroke-linejoin='round'/%3e%3c/svg%3e") 16 fill/14px round;border-radius:0}.well{top:var(--space-4);right:var(--space-4);bottom:var(--space-4);width:var(--well-width,400px);gap:var(--space-2);color:var(--text-primary);font-family:var(--font-ui);-webkit-user-select:none;user-select:none;z-index:2;flex-direction:column;padding:0;display:flex;position:absolute}.well header h2{font-size:var(--text-lg);font-weight:var(--weight-heavy);line-height:var(--line-tight);margin:0}.well header .sub{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-secondary)}.well header .hint{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--text-secondary);text-wrap:pretty}.well-controls{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.well-controls .time{align-items:center;gap:var(--space-2);display:flex}.well .clock{font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-weight:var(--weight-heavy);font-size:var(--text-md);min-width:3.2em}.wall-label{align-items:center;gap:var(--space-1);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);display:inline-flex}.icon{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}button.play .icon path:first-child{fill:currentColor}.well-axis{top:var(--space-1);left:var(--space-2);right:var(--space-2);z-index:1;font-size:var(--text-xs);color:var(--text-muted);pointer-events:none;justify-content:space-between;display:flex;position:absolute}.well-axis span{background:var(--panel-raised);border-radius:var(--radius-sm);padding:0 var(--space-1)}.well-shaft{flex:1 1 0;min-height:384px;display:flex;position:relative}.well-hours{flex:0 0 48px;width:48px;position:relative}.well-hour.near-scrub{visibility:hidden}.well-hour{right:var(--space-2);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-xs);color:var(--text-muted);position:absolute;transform:translateY(-50%)}.well-mark{width:5px;position:absolute;right:0}.well-mark.over{background:var(--state-over);width:7px}.well-mark.margin{background:var(--state-warn)}.well-clock{z-index:1;background:var(--select);color:var(--text-on-select);border-radius:var(--radius-sm);padding:0 var(--space-1);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-xs);font-weight:var(--weight-heavy);pointer-events:none;position:absolute;left:0;transform:translateY(-50%)}.well-plot{background:var(--panel-raised);border-radius:var(--radius-sm);cursor:ns-resize;touch-action:none;flex:auto;position:relative}.well-svg{display:block;position:absolute;inset:0;overflow:visible}.well-svg path{shape-rendering:geometricprecision}.well-svg line{shape-rendering:crispedges}.well-svg .piece{stroke:var(--panel-raised);stroke-width:1px;stroke-linejoin:round;transition:opacity var(--dur-fast)}.well-svg .piece.dim{opacity:.28}.well-margin{fill:var(--state-warn);fill-opacity:.24}.well-headroom{fill:var(--state-ok);fill-opacity:.14;pointer-events:none}.well-total{fill:none;stroke:var(--text-primary);stroke-width:1.25px;stroke-linejoin:round;pointer-events:none}.well-over{pointer-events:none;stroke:var(--state-over);stroke-width:1px;stroke-linejoin:round}.piece-c0{fill:var(--piece-1);background:var(--piece-1)}.piece-c1{fill:var(--piece-2);background:var(--piece-2)}.piece-c2{fill:var(--piece-3);background:var(--piece-3)}.piece-c3{fill:var(--piece-4);background:var(--piece-4)}.piece-c4{fill:var(--piece-5);background:var(--piece-5)}.piece-c5{fill:var(--piece-6);background:var(--piece-6)}.piece-rest{fill:var(--piece-rest);background:var(--piece-rest)}.well-hatch-bg{fill:var(--badge-worse-bg)}.well-hatch-line{fill:var(--state-over)}.well-wall{fill:none;stroke:var(--text-primary);stroke-width:2.5px;shape-rendering:geometricprecision}.well-zero{stroke:var(--text-secondary);stroke-width:1px}.well-paper{stroke:var(--text-muted);stroke-width:1.5px;stroke-dasharray:5 4}.well-svg .well-scrub{stroke:var(--select);stroke-width:2.5px;shape-rendering:geometricprecision;pointer-events:none}.well-scrub-kw{z-index:1;pointer-events:none;white-space:nowrap;background:var(--select);color:var(--text-on-select);border-radius:var(--radius-sm);padding:0 var(--space-1);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-xs);font-weight:var(--weight-heavy);position:absolute;transform:translateY(-50%)}.well-scrub-kw.flip{transform:translate(-100%,-50%)}.well-scrub-kw[hidden]{display:none}.well-dlabels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.well-dlab{white-space:nowrap;background:var(--panel-raised);color:var(--text-primary);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--weight-heavy);font-feature-settings:var(--numbers-feature);transition:opacity var(--dur-fast);padding:0 4px;line-height:15px;position:absolute;transform:translate(-50%,-50%)}.well-dlab.two-line{white-space:pre;text-align:center}.well-dlab-probe{visibility:hidden;top:0;left:0}.well-dlab.dim{opacity:.35}.well-labels{left:0;right:0;bottom:calc(-1 * var(--space-5));height:var(--space-5);pointer-events:none;position:absolute}.well-label{top:var(--space-1);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;font-feature-settings:var(--numbers-feature);position:absolute}.well-label-paper{transform:translate(-100%)}.well-label-paper[title]{pointer-events:auto;cursor:help}.well-label-feed{left:0}.well-zones{pointer-events:none;position:absolute;inset:0}.well-label-margin{writing-mode:vertical-rl;font-size:var(--text-xs);font-weight:var(--weight-heavy);letter-spacing:.04em;color:var(--text-on-state-dark);white-space:nowrap;position:absolute;top:24px;transform:translate(-50%)}.verdict{margin:var(--space-5) 0 0;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:var(--text-md);font-weight:var(--weight-heavy);line-height:var(--line-tight);font-feature-settings:var(--numbers-feature);background:var(--panel-raised);align-items:center;gap:var(--space-2);display:flex}.verdict:before{content:"";flex:none;width:12px;height:12px}.verdict-text{flex:auto;min-width:0}.verdict-text .nowrap{white-space:nowrap}.verdict[data-state=fits]:before{background:var(--state-ok);border-radius:50%}.verdict[data-state=margin]:before{background:var(--state-warn);clip-path:polygon(50% 0,100% 100%,0 100%)}.verdict[data-state=over]{background:var(--badge-worse-bg);color:var(--badge-worse-text)}.verdict[data-state=over]:before{background:var(--state-over);clip-path:polygon(0 0,100% 0,100% 100%,0 100%)}.verdict[data-state=empty],.verdict[data-state=loading]{font-weight:var(--weight-bold);color:var(--text-secondary)}.verdict[data-state=empty]:before,.verdict[data-state=loading]:before{display:none}.verdict[data-state=error]{color:var(--text-primary);font-weight:var(--weight-bold)}.verdict[data-state=error]:before{display:none}.popover{z-index:5;width:272px;padding:var(--space-2);gap:var(--space-1);flex-direction:column;display:flex;position:absolute;top:112px;right:0}.popover label{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-secondary);margin-top:var(--space-2)}.popover label:first-child{margin-top:0}.popover input,.popover select{font:inherit;font-size:var(--text-md);font-feature-settings:var(--numbers-feature);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2)}.popover input.invalid{border:2px solid var(--state-over);background:var(--badge-worse-bg)}.popover .hint{font-size:var(--text-xs);color:var(--text-muted);margin:0}.popover .needs{margin:var(--space-2) 0 0;font-size:var(--text-sm);font-weight:var(--weight-bold);font-feature-settings:var(--numbers-feature);color:var(--text-primary)}@media (height<=760px){.well{gap:var(--space-1)}.verdict{margin-top:var(--space-5);padding:var(--space-1) var(--space-3)}}.well :focus-visible,.popover :focus-visible{outline:2px solid var(--select);outline-offset:2px}.inside{top:var(--space-4);right:var(--space-4);bottom:var(--space-4);width:var(--well-width,400px);z-index:3;gap:var(--space-3);color:var(--text-primary);font-family:var(--font-ui);flex-direction:column;display:flex;position:absolute}.inside:before{content:"";z-index:-1;pointer-events:none;background-image:linear-gradient(var(--divider) 1px, transparent 1px), linear-gradient(90deg, var(--divider) 1px, transparent 1px);opacity:.6;background-size:16px 16px;position:absolute;inset:0}.inside.hidden{display:none}.inside :focus-visible{outline:2px solid var(--select);outline-offset:2px}.inside input,.inside select,.inside .power,.inside .nb-share,.inside .nb-over,.inside .count{font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature)}.inside input,.inside select{font-size:var(--text-sm);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-sm);padding:2px var(--space-1);min-height:28px}.inside input:hover,.inside select:hover{border-color:var(--text-muted)}.inside input:disabled{color:var(--text-secondary);cursor:default;background:0 0;border-style:dashed}.inside input.invalid{border:2px solid var(--state-over);background:var(--badge-worse-bg)}.inside button{font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-sm);padding:2px var(--space-2);cursor:pointer;min-height:28px;transition:background var(--dur-fast), border-color var(--dur-fast)}.inside button:hover:not(:disabled){background:var(--chip-bg);border-color:var(--text-muted)}.inside button:disabled{opacity:1;color:var(--text-muted);cursor:default;background:0 0;border-style:dashed}.inside input[type=number]{appearance:textfield}.inside input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.inside input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.inside ::selection{background:var(--map-hover);color:var(--text-primary)}.nb-head{gap:var(--space-1);flex-direction:column;display:flex}.nb-title{align-items:center;gap:var(--space-2);display:flex}.inside .nb-name{min-width:0;font-family:var(--font-ui);font-feature-settings:normal;font-size:var(--text-lg);font-weight:var(--weight-heavy);line-height:var(--line-tight);padding:0 var(--space-1);margin-left:calc(-1 * var(--space-1));background:0 0;border:1px solid #0000;flex:auto}.inside .nb-name:hover{border-color:var(--divider);background:var(--panel-raised)}.inside .nb-name:focus{background:var(--panel-raised);border-color:var(--text-muted)}.inside .nb-close{background:0 0;border-color:#0000;flex:none;place-items:center;width:32px;height:32px;padding:0;display:grid}.inside .nb-close:hover{background:var(--chip-bg)}.nb-type{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.nb-settings{align-items:flex-end;gap:var(--space-2);margin-top:var(--space-1);display:flex}.nb-settings label{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--text-secondary);flex-direction:column;gap:2px;display:flex}.nb-settings label input{width:96px}.nb-settings .nb-import{margin-left:auto}.nb-profile{margin-top:var(--space-1);flex-direction:column;gap:2px;display:flex}.nb-profile.hidden{display:none}.nb-profile p{margin:0}.nb-profile-head{align-items:center;gap:var(--space-2);font-size:var(--text-sm);display:flex}.nb-source{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-secondary);flex:auto;overflow:hidden}.nb-profile-note{font-size:var(--text-sm);color:var(--text-secondary);text-wrap:pretty}.nb-over{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--badge-worse-text);margin:0}.nb-over.hidden{display:none}.nb-warn{align-items:center;gap:var(--space-1) var(--space-2);margin-top:var(--space-1);padding:var(--space-2);border-radius:var(--radius-sm);background:var(--state-warn);color:var(--text-on-state-dark);font-size:var(--text-sm);font-weight:var(--weight-bold);grid-template-columns:auto 1fr;display:grid}.nb-warn.hidden{display:none}.nb-warn .icon{width:18px;height:18px}.inside .nb-raise{background:var(--panel-raised);grid-column:2;justify-self:start}.nb-well{gap:var(--space-5);flex-direction:column;flex:none;display:flex}.inside .well-shaft{flex:none;height:clamp(168px,28vh,288px);min-height:0}.inside .well-hours{flex-basis:40px;width:40px}.nb-share{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.nb-share b{color:var(--text-primary);font-weight:var(--weight-heavy)}.nb-list{gap:var(--space-2);min-height:0;padding-right:var(--space-1);scrollbar-width:thin;scrollbar-color:var(--text-muted) transparent;flex-direction:column;flex:1 1 0;display:flex;overflow-y:auto}.nb-list h3{font-size:var(--text-md);font-weight:var(--weight-heavy);margin:0}.nb-list h3 .count{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-muted)}.nb-machines{border-top:1px solid var(--divider);flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.machine{gap:var(--space-1);padding:var(--space-2) var(--space-1);border-bottom:1px solid var(--divider);border-radius:var(--radius-sm);transition:background var(--dur-fast);flex-direction:column;display:flex}.machine.lit,.machine:hover{background:var(--panel-raised)}.machine .line{align-items:center;gap:var(--space-2);min-width:0;display:flex}.machine .line:first-child{align-items:flex-start}.machine .line:first-child>.swatch{margin-top:5px}.machine .swatch{border-radius:2px;flex:0 0 10px;height:10px}.machine .swatch.none{border:1px dashed var(--text-muted);background:0 0}.machine .name{align-items:center;gap:var(--space-1);min-width:0;font-size:var(--text-sm);font-weight:var(--weight-bold);cursor:pointer;flex:auto;align-items:flex-start;display:flex}.machine .name span{white-space:normal;line-height:var(--line-tight);padding-top:1px}.machine .name input{min-height:0;accent-color:var(--select);width:16px;height:16px;margin:0}.machine.off .name span,.machine.off .power{color:var(--text-muted);text-decoration:line-through}.machine .peak{font-size:var(--text-xs);font-weight:var(--weight-heavy);color:var(--text-primary);background:var(--chip-bg);border-radius:var(--radius-pill);padding:0 var(--space-2);flex:none}.machine .peak.hidden{display:none}.machine .figures{flex-direction:column;flex:none;align-items:flex-end;display:flex}.machine .power{font-size:var(--text-sm);font-weight:var(--weight-bold);white-space:nowrap}.machine .when{font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.inside .machine .remove{background:0 0;border-color:#0000;flex:none;place-items:center;width:28px;padding:0;display:grid}.inside .machine .remove:hover{background:var(--badge-worse-bg);color:var(--badge-worse-text)}.machine .controls{padding-left:calc(10px + var(--space-2));gap:var(--space-1);flex-wrap:wrap}.machine .custom{align-items:center;gap:2px;display:inline-flex}.machine .custom.hidden{display:none}.machine .custom .unit,.machine .times{font-size:var(--text-xs);color:var(--text-muted)}.machine input.kw{width:56px}.machine input.qty{width:44px}.inside .machine .shape{font-size:var(--text-xs);margin-left:auto}.nb-rest{align-items:center;gap:var(--space-2);padding:var(--space-1);font-size:var(--text-sm);color:var(--text-secondary);border-radius:var(--radius-sm);margin:0;display:flex}.nb-rest:hover{background:var(--panel-raised)}.nb-rest .swatch{border-radius:2px;flex:0 0 10px;height:10px}.nb-rest.hidden{display:none}.nb-empty{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.nb-empty.hidden{display:none}.nb-add-label{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-secondary);display:flex}.nb-add-label select{flex:auto;min-width:0}@media (height<=760px){.inside{gap:var(--space-2)}.inside .well-shaft{height:160px}}body[data-well=line]{--well-width:360px}body[data-well=gauge]{--well-width:272px}body[data-well=hidden]{--well-width:200px}body.inside-open[data-well]{--well-width:400px}.well[data-size=line],.well[data-size=gauge],.well[data-size=hidden]{bottom:auto}.well[data-size=hidden]{width:auto}.well:not([data-size=full]) .well-shaft,.well:not([data-size=full]) header .sub,.well:not([data-size=full]) header .hint,.well:not([data-size=line]) .well-line,.well:not([data-size=gauge]) .well-gauge,.well[data-size=gauge] header,.well[data-size=hidden] header,.well[data-size=gauge] .verdict,.well[data-size=hidden] .verdict,.well[data-size=gauge] .well-footer,.well[data-size=hidden] .well-footer,.well[data-size=gauge] .wall-label,.well[data-size=hidden] .wall-label{display:none}.well[data-size=line] header h2{font-size:var(--text-md)}.well[data-size=line] .verdict{font-size:var(--text-sm);padding:var(--space-1) var(--space-2);margin-top:0}.well[data-size=line] .verdict:before{width:10px;height:10px}.well-controls .well-size{margin-left:auto}.well-controls .wall-label+.well-size{margin-left:0}.slot-state{align-items:center;gap:var(--space-1);font-weight:var(--weight-heavy);white-space:nowrap;display:inline-flex}.slot-state:before{content:"";flex:none;width:10px;height:10px}.slot-state[data-state=room]:before{background:var(--state-ok);border-radius:50%}.slot-state[data-state=tight]:before{background:var(--state-warn);clip-path:polygon(50% 0,100% 100%,0 100%)}.slot-state[data-state=over]:before{background:var(--state-over)}.slot-state[data-state=over]{color:var(--badge-worse-text)}.slot-state[data-state=none]:before{display:none}.well-line{gap:var(--space-1);flex-direction:column;display:flex}.well-line-readout{align-items:baseline;gap:var(--space-2);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-sm);margin:0;display:flex}.well-line-time{color:var(--text-secondary);font-weight:var(--weight-bold)}.well-line-kw{font-weight:var(--weight-heavy);margin-right:auto}.well-line-plot{background:var(--panel-raised);border-radius:var(--radius-sm);cursor:ew-resize;touch-action:none;height:88px;position:relative}.well-line-svg{width:100%;height:100%;display:block;position:absolute;inset:0;overflow:visible}.well-line-svg path,.well-line-svg line{fill:none;vector-effect:non-scaling-stroke}.well-line-svg .line-import{stroke:var(--text-primary);stroke-width:2px;stroke-linejoin:round}.well-line-svg .line-export{stroke:var(--text-secondary);stroke-width:1.5px;stroke-linejoin:round}.well-line-svg .line-limit{stroke:var(--state-over);stroke-width:1.5px;stroke-dasharray:6 3;shape-rendering:crispedges}.well-line-svg .line-limit-export{stroke:var(--text-muted)}.well-line-svg .line-over{fill:var(--state-over);fill-opacity:.28;stroke:none}.well-line-svg .line-zero{stroke:var(--divider);stroke-width:1px;shape-rendering:crispedges}.well-line-svg .line-cursor{stroke:var(--select);stroke-width:2px}.well-line-ticks{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);justify-content:space-between;display:flex}.well-gauge{gap:var(--space-2);flex-direction:column;display:flex}.gauge-head{justify-content:space-between;align-items:baseline;gap:var(--space-2);display:flex}.gauge-number{font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-lg);font-weight:var(--weight-heavy);white-space:nowrap}.gauge-bar{height:12px;margin:var(--space-1) 0;background:var(--chip-bg);border-radius:var(--radius-pill);position:relative}.gauge-zone[hidden],.gauge-wall[hidden]{display:none}.gauge-zone{position:absolute;top:0;bottom:0}.gauge-room{background:var(--state-ok);border-radius:var(--radius-pill) 0 0 var(--radius-pill)}.gauge-tight{background:var(--state-warn)}.gauge-over{background:var(--state-over);border-radius:0 var(--radius-pill) var(--radius-pill) 0}.gauge-wall{background:var(--text-primary);width:2px;margin-left:-1px;position:absolute;top:-3px;bottom:-3px}.gauge-needle{border-radius:var(--radius-pill);background:var(--text-primary);width:4px;box-shadow:0 0 0 2px var(--panel-raised);transition:left var(--dur-fast) ease-out;margin-left:-2px;position:absolute;top:-6px;bottom:-6px}.gauge-needle[hidden]{display:none}.gauge-direction{font-size:var(--text-xs);color:var(--text-muted)}.transformer-chip{z-index:1;pointer-events:none;background:var(--panel-raised);color:var(--text-primary);border-radius:var(--radius-pill);padding:2px var(--space-2);font-size:var(--text-sm);box-shadow:var(--shadow-high);position:absolute;top:0;left:0}.transformer-chip[hidden]{display:none}.transformer-chip[data-state=over]{background:var(--badge-worse-bg)}.collapse-handle{justify-content:center;align-items:center;gap:var(--space-1);min-width:28px;height:28px;padding:0 var(--space-1);border:1px solid var(--divider);background:var(--panel-raised);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-bold);font-feature-settings:var(--numbers-feature);white-space:nowrap;display:inline-flex}.collapse-handle:hover{color:var(--text-primary)}.handle-chevron{width:7px;height:7px;transition:transform var(--dur-fast);border-bottom:2px solid;border-right:2px solid;flex:none;margin:2px 2px 0;transform:rotate(-135deg)}.collapse-handle[aria-expanded=false] .handle-chevron,.tray-handle .handle-chevron{margin:0 2px 3px;transform:rotate(45deg)}.tray-handle[aria-expanded=false] .handle-chevron{margin:2px 2px 0;transform:rotate(-135deg)}.rail-handle .handle-chevron,.zoom-handle .handle-chevron{margin:0 0 0 3px;transform:rotate(135deg)}.rail-handle[aria-expanded=false] .handle-chevron,.zoom-handle[aria-expanded=false] .handle-chevron{margin:0 3px 0 0;transform:rotate(-45deg)}.topbar .day-menu{display:none}.topbar .focus-button{font-size:var(--text-sm);font-weight:var(--weight-bold);padding:var(--space-1) var(--space-2)}.topbar .focus-button[aria-pressed=true]{background:var(--select);color:var(--text-on-select);border-color:#0000}body[data-top-bar=collapsed] .topbar{gap:var(--space-2);padding:0 var(--space-2);right:auto}body[data-top-bar=collapsed] .topbar .status,body[data-top-bar=collapsed] .topbar .segmented{display:none}body[data-top-bar=collapsed] .topbar .brand{margin-right:var(--space-2)}body[data-top-bar=collapsed] .topbar .brand b{font-size:var(--text-md)}body[data-top-bar=collapsed] .topbar .brand-mark svg{height:24px}body[data-top-bar=collapsed] .topbar .wordmark small{display:none}body[data-top-bar=collapsed] .topbar .row button{padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}body[data-top-bar=collapsed] .topbar .day-menu{font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-1) var(--space-2);display:inline-block}body[data-top-bar=collapsed] .toolbar,body[data-top-bar=collapsed] .networks{top:84px}.toolbar .rail-handle{width:64px;height:24px;padding:0}body[data-rail=collapsed] .toolbar small{display:none}body[data-rail=collapsed] .toolbar button{width:44px;padding:var(--space-1)}body[data-rail=collapsed] .toolbar .rail-handle{width:44px}body[data-rail=collapsed]{--tray-left:92px}body[data-rail=collapsed] .networks{left:112px}.tray>.tray-handle{top:var(--space-1);right:var(--space-1);z-index:1;position:absolute}body:not([data-palette=collapsed]) .tray-played-count{display:none}body[data-palette=collapsed]{--tray-height:36px}body[data-palette=collapsed] .tray{align-items:center;gap:var(--space-2);padding:0 var(--space-1);display:flex;right:auto}body[data-palette=collapsed] .tray .played,body[data-palette=collapsed] .tray .tray-cards,body[data-palette=collapsed] .tray .tray-empty,body[data-palette=collapsed] .tray .tuner{display:none}body[data-palette=collapsed] .tray>.tray-handle{position:static}body[data-palette=collapsed] .tray .tray-tab{padding:2px var(--space-3)}.zoom-handle .zoom-short,body[data-zoom=collapsed] .corner .row>:not(.zoom-handle){display:none}body[data-zoom=collapsed] .corner{padding:0}body[data-zoom=collapsed] .zoom-handle .zoom-short{display:inline}.honesty-row{align-items:center;gap:var(--space-2);display:flex}.honesty-handle{border-radius:50%;min-width:20px;height:20px;padding:0}.honesty-handle .handle-chevron{display:none}.honesty-i{font-weight:var(--weight-heavy);font-style:italic;font-family:var(--font-ui);line-height:1}body[data-honesty=collapsed] .cable-corner .honesty{display:none}body[data-honesty=collapsed] .cable-corner .honesty-row:hover .honesty,body[data-honesty=collapsed] .cable-corner .honesty-row:focus-within .honesty{display:block}@keyframes layout-unfold{0%{opacity:.4;translate:0 -4px}to{opacity:1;translate:0}}.layout-anim{animation:layout-unfold var(--dur-base) ease-out}@media (prefers-reduced-motion:reduce){.layout-anim,.collapse-handle,.handle-chevron,.gauge-needle,.well,.tray,.topbar,.toolbar,.corner,.honesty-row{transition:none!important;animation:none!important}}:root{--tray-height:220px;--tray-left:112px}.tray{left:var(--tray-left);right:calc(var(--well-width) + 2 * var(--space-4));bottom:var(--space-4);height:var(--tray-height);gap:var(--space-3);padding:var(--space-1) var(--space-2);color:var(--text-primary);font-family:var(--font-ui);-webkit-user-select:none;user-select:none;z-index:2;grid-template-columns:minmax(150px,190px) 1fr;display:grid;position:absolute}body.has-tray .corner{bottom:calc(var(--tray-height) + 2 * var(--space-4))}body.has-tray .info{bottom:calc(var(--tray-height) + 2 * var(--space-4));left:var(--tray-left)}.played{border-right:1px solid var(--divider);min-height:0;padding-right:var(--space-3);flex-direction:column;display:flex}.played-title{margin:0 0 var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-heavy);line-height:var(--line-tight)}.played-list{gap:var(--space-1);scrollbar-width:thin;flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.played-empty{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--line-body);margin:0}.played-row{align-items:stretch;gap:2px;display:flex}.played-row button{border:1px solid var(--divider);background:var(--panel-raised);border-radius:var(--radius-sm)}.played-open{column-gap:var(--space-2);text-align:left;min-width:0;padding:var(--space-1) var(--space-2);flex:auto;grid-template-rows:auto auto;grid-template-columns:auto 1fr;display:grid}.played-icon{font-size:var(--text-md);grid-row:1/3;align-self:center}.played-name{font-size:var(--text-xs);font-weight:var(--weight-bold);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.played-where{font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.played-open{grid-template-columns:auto minmax(0,1fr) auto}.played-name{grid-column:2/4}.played-effect{padding:0 var(--space-1);border-radius:var(--radius-sm);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-xs);font-weight:var(--weight-heavy);background:var(--chip-bg);color:var(--text-secondary);white-space:nowrap;grid-area:2/3;align-self:center}.played-effect.better{background:var(--badge-better-bg);color:var(--badge-better-text)}.played-effect.worse{background:var(--badge-worse-bg);color:var(--badge-worse-text)}.played-effect.pending{color:#0000;background:linear-gradient(90deg, var(--chip-bg) 25%, var(--panel-raised) 50%, var(--chip-bg) 75%) 0 0 / 200% 100%;min-width:3em;animation:1.1s linear infinite card-shimmer}.played-remove{color:var(--text-secondary);font-size:var(--text-sm);flex:0 0 28px;padding:0}.played-remove:hover{background:var(--badge-worse-bg);color:var(--badge-worse-text)}.tray-palette{flex-direction:column;min-width:0;min-height:0;display:flex}.tray-tabs{gap:var(--space-1);flex-wrap:nowrap;margin-bottom:0;display:flex}.tray-tab{border-radius:var(--radius-pill);background:var(--chip-bg);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-bold);padding:var(--space-1) var(--space-3);font-feature-settings:var(--numbers-feature);white-space:nowrap;border:0}.tray-tab:hover{background:var(--panel-raised);color:var(--text-primary)}.tray-tab.on{color:var(--text-on-mode)}.tray-tab.on.mode-generate{background:var(--mode-generate)}.tray-tab.on.mode-save{background:var(--mode-save)}.tray-tab.on.mode-shift{background:var(--mode-shift)}.tray-tab.on.mode-store{background:var(--mode-store)}.tray-tab.on.mode-cap{background:var(--mode-cap)}.tray-tab.on.mode-share{background:var(--mode-share)}.tray-empty{font-size:var(--text-sm);color:var(--text-muted);margin:auto}.tray-cards{gap:var(--space-2);padding:var(--space-2) 2px var(--space-1);scrollbar-width:thin;scrollbar-color:var(--chip-bg) transparent;display:flex;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000)}.mcard{color:var(--text-primary);filter:drop-shadow(0 2px 3px #141e2829);cursor:grab;transition:transform var(--dur-fast) ease-out, filter var(--dur-fast) ease-out;touch-action:none;border:9px solid #0000;border-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='120'%20height='120'%20viewBox='0%200%20120%20120'%3e%3c!--%20The%20painted%20frame%20(05-ux%20'hand-drawn%20frames,%20crisp%20data'):%20a%20wobbly%20ink%20line%20round%20warm%20paper.%20Used%20as%20a%209-slice%20border-image%20with%20'round':%20the%20corners%20stay,%20the%20wobbly%20side%20pieces%20repeat%20along%20long%20edges%20instead%20of%20stretching%20flat.%20--%3e%3cpath%20d='M14%203.4%20C24%202.6%2030%204.1%2040%203.3%20C50%202.5%2056%204.2%2066%203.4%20C76%202.7%2084%204.0%2094%203.2%20C100%202.9%20104%203.4%20106.4%203.6%20C113.6%204.2%20116.7%207.9%20116.4%2015%20C115.8%2025%20117.2%2031%20116.5%2041%20C115.8%2051%20117.3%2057%20116.6%2067%20C115.9%2077%20117.2%2085%20116.5%2095%20C116.2%20101%20116.6%20104%20116.3%20106.6%20C115.8%20113.4%20112.2%20116.7%20105%20116.4%20C95%20115.7%2089%20117.3%2079%20116.5%20C69%20115.8%2063%20117.2%2053%20116.6%20C43%20115.9%2035%20117.3%2025%20116.5%20C19%20116.1%2016%20116.6%2013.4%20116.3%20C6.6%20115.7%203.3%20112.1%203.6%20105%20C4.3%2095%202.8%2089%203.5%2079%20C4.2%2069%202.7%2063%203.4%2053%20C4.1%2043%202.8%2035%203.5%2025%20C3.8%2019%203.3%2016%203.7%2013.4%20C4.2%206.7%207.5%203.7%2014%203.4%20Z'%20fill='%23FBF8F2'%20stroke='%231F2A33'%20stroke-width='2.2'%20stroke-linejoin='round'/%3e%3c/svg%3e") 16 fill/9px round;flex-direction:column;flex:0 0 200px;display:flex}.mcard:hover,.mcard:focus-visible{filter:var(--shadow-high-painted);transform:translateY(-3px)}.mcard:focus-visible{outline:2px solid var(--select);outline-offset:0}.mcard.picked{filter:var(--shadow-high-painted);outline:2px solid var(--select);outline-offset:0;transform:translateY(-6px)}.mcard.dragging{cursor:grabbing;opacity:.85}.mcard-band{padding:2px var(--space-2);border-radius:var(--radius-sm);color:var(--text-on-mode);font-size:var(--text-xs);font-weight:var(--weight-heavy);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;display:flex}.mode-build .mcard-band{background:var(--mode-build)}.mode-generate .mcard-band{background:var(--mode-generate)}.mode-save .mcard-band{background:var(--mode-save)}.mode-shift .mcard-band{background:var(--mode-shift)}.mode-store .mcard-band{background:var(--mode-store)}.mode-cap .mcard-band{background:var(--mode-cap)}.mode-share .mcard-band{background:var(--mode-share)}.mcard-body{padding:var(--space-1) var(--space-1) 0;flex-direction:column;flex:auto;gap:2px;display:flex}.mcard-title{align-items:center;gap:var(--space-2);display:flex}.mcard-icon{font-size:var(--text-md)}.mcard-name{font-size:var(--text-sm);font-weight:var(--weight-heavy);line-height:var(--line-tight)}.mcard-line{font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--line-tight);margin:0}.mcard-foot{justify-content:space-between;align-items:flex-end;gap:var(--space-2);padding-top:var(--space-1);margin-top:auto;display:flex}.mcard-target{font-size:var(--text-xs);color:var(--text-secondary);min-width:0;line-height:var(--line-tight);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.mcard-target[hidden]{display:none}.mcard-hint{align-items:baseline;gap:var(--space-1);font-size:var(--text-xs);color:var(--text-primary);font-feature-settings:var(--numbers-feature);white-space:nowrap;min-height:1.3em;margin:0;display:flex}.mcard-hint[hidden]{display:none}.hint-label{color:var(--text-secondary);flex:none}.hint-name{text-overflow:ellipsis;min-width:0;font-weight:var(--weight-bold);overflow:hidden}.hint-delta,.hint-fits{font-family:var(--font-numbers);font-weight:var(--weight-heavy);flex:none}.hint-delta{padding:0 var(--space-1);border-radius:var(--radius-sm);background:var(--chip-bg);color:var(--text-secondary)}.hint-delta.better{background:var(--badge-better-bg);color:var(--badge-better-text)}.hint-delta.worse{background:var(--badge-worse-bg);color:var(--badge-worse-text)}.hint-delta:empty{display:none}.hint-fits{font-weight:var(--weight-bold);color:var(--text-secondary)}.mcard-hint.no-best .hint-label,.mcard-hint.no-best .hint-name{display:none}.mcard-reason{font-size:var(--text-xs);color:var(--text-muted);line-height:var(--line-tight);margin:auto 0 0}.effect{padding:2px var(--space-2);border-radius:var(--radius-md);background:var(--chip-bg);color:var(--text-secondary);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-md);font-weight:var(--weight-heavy);flex:none;align-items:center;gap:2px;display:inline-flex}.effect.better{background:var(--badge-better-bg);color:var(--badge-better-text)}.effect.worse{background:var(--badge-worse-bg);color:var(--badge-worse-text)}.effect-bolt{font-size:var(--text-xs)}.effect[hidden],.effect.none .effect-bolt{display:none}.effect.none{color:var(--text-muted);font-size:var(--text-sm);padding:0 var(--space-1);background:0 0}.effect.pending .effect-value,.mcard-hint.pending{color:#0000;border-radius:var(--radius-sm);background:linear-gradient(90deg, var(--chip-bg) 25%, var(--panel-raised) 50%, var(--chip-bg) 75%) 0 0 / 200% 100%;min-width:3em;animation:1.1s linear infinite card-shimmer}@keyframes card-shimmer{to{background-position:-200% 0}}.mcard.disabled{cursor:not-allowed;filter:none}.mcard.disabled:hover{transform:none}.mcard.disabled .mcard-band{background:var(--chip-bg);color:var(--text-muted)}.mcard.disabled .effect{display:none}.mcard.disabled .mcard-name,.mcard.disabled .mcard-line{color:var(--text-muted)}.mcard.landed{animation:card-land var(--dur-bounce) var(--ease-game)}@keyframes card-land{0%{transform:translateY(-10px)scale(.96)}to{transform:translateY(0)scale(1)}}.cards.measure-cards{gap:var(--space-3);padding:2px 2px var(--space-2)}.cards.measure-cards .mcard{flex-basis:200px}.tuner{left:0;bottom:calc(100% + var(--space-2));z-index:4;gap:var(--space-2);width:300px;padding:var(--space-1);flex-direction:column;display:flex;position:absolute}.tuner[hidden]{display:none}.tuner-head{align-items:baseline;gap:var(--space-2);display:flex}.tuner-head b{font-size:var(--text-sm);font-weight:var(--weight-heavy)}.tuner-where{font-size:var(--text-xs);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}.tuner-close{padding:0 var(--space-1);color:var(--text-secondary);background:0 0;border:0}.tuner-field{column-gap:var(--space-2);font-size:var(--text-sm);grid-template-rows:auto auto;grid-template-columns:1fr 96px;align-items:center;display:grid}.tuner-label{font-weight:var(--weight-bold)}.tuner-unit{font-size:var(--text-xs);color:var(--text-muted);font-feature-settings:var(--numbers-feature);grid-column:1/3}.tuner-field input[type=number]{font:inherit;font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);text-align:right;padding:var(--space-1) var(--space-2);border:1px solid var(--divider);border-radius:var(--radius-sm);background:var(--panel-raised);color:var(--text-primary)}.tuner-field input.invalid{border-color:var(--state-over);background:var(--badge-worse-bg)}.tuner-bool{gap:var(--space-2);display:flex}.tuner-bool input{accent-color:var(--select)}.tuner-none{font-size:var(--text-xs);color:var(--text-muted);margin:0}.tuner-remove{font-size:var(--text-sm);align-self:flex-start}.tuner-remove:hover{background:var(--badge-worse-bg);color:var(--badge-worse-text)}.play-preview{z-index:20;pointer-events:none;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);box-shadow:var(--shadow-low);font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-sm);font-weight:var(--weight-heavy);background:var(--badge-better-bg);color:var(--badge-better-text);position:fixed}.play-preview.worse{background:var(--badge-worse-bg);color:var(--badge-worse-text)}.play-preview.neutral{background:var(--chip-bg);color:var(--text-secondary)}.play-preview.refused{background:var(--badge-worse-bg);color:var(--badge-worse-text);font-family:var(--font-ui);font-weight:var(--weight-bold)}.play-preview[hidden]{display:none}body.card-playing canvas{cursor:copy}@media (prefers-reduced-motion:reduce){.mcard,.mcard.landed,.effect.pending .effect-value,.mcard-hint.pending{transition:none;animation:none}}.start-card{z-index:6;left:calc(var(--tray-left,112px) + var(--space-5));bottom:calc(var(--tray-height,220px) + 2 * var(--space-4) + 48px);width:380px;max-width:calc(100vw - var(--well-width,400px) - var(--tray-left,112px) - 4 * var(--space-5));gap:var(--space-3);color:var(--text-primary);font-family:var(--font-ui);font-size:var(--text-sm);line-height:var(--line-body);flex-direction:column;display:flex;position:absolute}.start-card[hidden]{display:none}.start-head{align-items:flex-start;gap:var(--space-2);display:flex}.start-head h2{font-size:var(--text-lg);font-weight:var(--weight-heavy);line-height:var(--line-tight);text-wrap:balance;flex:auto;margin:0}.start-doors{gap:var(--space-2);grid-template-columns:1fr;display:grid}.start-door{font:inherit;font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);padding:var(--space-1) var(--space-3);cursor:pointer;text-align:center;min-height:44px;transition:transform var(--dur-fast), filter var(--dur-fast);background:0 0;border:9px solid #0000;border-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='120'%20height='120'%20viewBox='0%200%20120%20120'%3e%3c!--%20The%20painted%20frame%20(05-ux%20'hand-drawn%20frames,%20crisp%20data'):%20a%20wobbly%20ink%20line%20round%20warm%20paper.%20Used%20as%20a%209-slice%20border-image%20with%20'round':%20the%20corners%20stay,%20the%20wobbly%20side%20pieces%20repeat%20along%20long%20edges%20instead%20of%20stretching%20flat.%20--%3e%3cpath%20d='M14%203.4%20C24%202.6%2030%204.1%2040%203.3%20C50%202.5%2056%204.2%2066%203.4%20C76%202.7%2084%204.0%2094%203.2%20C100%202.9%20104%203.4%20106.4%203.6%20C113.6%204.2%20116.7%207.9%20116.4%2015%20C115.8%2025%20117.2%2031%20116.5%2041%20C115.8%2051%20117.3%2057%20116.6%2067%20C115.9%2077%20117.2%2085%20116.5%2095%20C116.2%20101%20116.6%20104%20116.3%20106.6%20C115.8%20113.4%20112.2%20116.7%20105%20116.4%20C95%20115.7%2089%20117.3%2079%20116.5%20C69%20115.8%2063%20117.2%2053%20116.6%20C43%20115.9%2035%20117.3%2025%20116.5%20C19%20116.1%2016%20116.6%2013.4%20116.3%20C6.6%20115.7%203.3%20112.1%203.6%20105%20C4.3%2095%202.8%2089%203.5%2079%20C4.2%2069%202.7%2063%203.4%2053%20C4.1%2043%202.8%2035%203.5%2025%20C3.8%2019%203.3%2016%203.7%2013.4%20C4.2%206.7%207.5%203.7%2014%203.4%20Z'%20fill='%23FBF8F2'%20stroke='%231F2A33'%20stroke-width='2.2'%20stroke-linejoin='round'/%3e%3c/svg%3e") 16 fill/9px round;border-radius:0}.start-door:hover,.start-door:focus-visible{filter:var(--shadow-high-painted);background:0 0;transform:translateY(-2px)}.start-card:focus{outline:none}.start-close{min-width:28px;min-height:28px;padding:var(--space-1);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;display:inline-flex}.start-close:hover{background:var(--chip-bg)}.start-card :focus-visible{outline:2px solid var(--select);outline-offset:2px}.imp-dialog.scn-list{width:880px}.imp-dialog.scn-result{width:560px}.scn-body{gap:var(--space-3);flex-direction:column;display:flex}.scn-body p{margin:0}.scn-cards{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.imp-dialog .scn-card{font:inherit;text-align:left;color:var(--text-primary);cursor:pointer;justify-content:flex-start;align-items:stretch;gap:var(--space-2);min-height:150px;transition:transform var(--dur-fast);background:0 0;border:14px solid #0000;border-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='120'%20height='120'%20viewBox='0%200%20120%20120'%3e%3c!--%20The%20painted%20frame%20(05-ux%20'hand-drawn%20frames,%20crisp%20data'):%20a%20wobbly%20ink%20line%20round%20warm%20paper.%20Used%20as%20a%209-slice%20border-image%20with%20'round':%20the%20corners%20stay,%20the%20wobbly%20side%20pieces%20repeat%20along%20long%20edges%20instead%20of%20stretching%20flat.%20--%3e%3cpath%20d='M14%203.4%20C24%202.6%2030%204.1%2040%203.3%20C50%202.5%2056%204.2%2066%203.4%20C76%202.7%2084%204.0%2094%203.2%20C100%202.9%20104%203.4%20106.4%203.6%20C113.6%204.2%20116.7%207.9%20116.4%2015%20C115.8%2025%20117.2%2031%20116.5%2041%20C115.8%2051%20117.3%2057%20116.6%2067%20C115.9%2077%20117.2%2085%20116.5%2095%20C116.2%20101%20116.6%20104%20116.3%20106.6%20C115.8%20113.4%20112.2%20116.7%20105%20116.4%20C95%20115.7%2089%20117.3%2079%20116.5%20C69%20115.8%2063%20117.2%2053%20116.6%20C43%20115.9%2035%20117.3%2025%20116.5%20C19%20116.1%2016%20116.6%2013.4%20116.3%20C6.6%20115.7%203.3%20112.1%203.6%20105%20C4.3%2095%202.8%2089%203.5%2079%20C4.2%2069%202.7%2063%203.4%2053%20C4.1%2043%202.8%2035%203.5%2025%20C3.8%2019%203.3%2016%203.7%2013.4%20C4.2%206.7%207.5%203.7%2014%203.4%20Z'%20fill='%23FBF8F2'%20stroke='%231F2A33'%20stroke-width='2.2'%20stroke-linejoin='round'/%3e%3c/svg%3e") 16 fill/14px round;border-radius:0;flex-direction:column;padding:0;display:flex}.imp-dialog .scn-card:hover,.imp-dialog .scn-card:focus-visible{filter:var(--shadow-high-painted);background:0 0;border-color:#0000;transform:translateY(-3px)}.imp-dialog .scn-card:focus-visible{outline:2px solid var(--select);outline-offset:0}.scn-card-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.scn-card-name{font-size:var(--text-md);font-weight:var(--weight-heavy);line-height:var(--line-tight)}.scn-chip{background:var(--chip-bg);color:var(--text-secondary);border-radius:var(--radius-pill);padding:0 var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-bold);white-space:nowrap;flex:none}.scn-story{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--line-body);text-wrap:pretty}.scn-challenge{align-items:center;gap:var(--space-4);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);display:flex}.scn-challenge-text{gap:var(--space-1);flex-direction:column;flex:auto;min-width:0;display:flex}.scn-challenge-text b{font-size:var(--text-md);font-weight:var(--weight-heavy)}.scn-challenge-scores{font-size:var(--text-xs);color:var(--text-muted)}.imp-dialog .scn-play{flex:none;min-width:88px}.scn-confirm{align-items:center;gap:var(--space-3);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);flex-wrap:wrap;display:flex}.scn-confirm p{font-weight:var(--weight-bold);flex:260px}.scn-confirm-buttons{gap:var(--space-2);display:flex}.scn-rule{align-items:center;gap:var(--space-3);display:flex}.scn-rule-chip{border-radius:var(--radius-md);padding:2px var(--space-2);font-weight:var(--weight-heavy);font-size:var(--text-sm);flex:none}.scn-rule[data-met=true] .scn-rule-chip{background:var(--state-ok);color:var(--text-on-state-dark)}.scn-rule[data-met=false] .scn-rule-chip{background:var(--state-over);color:var(--text-on-state-light)}.scn-rule-text{font-feature-settings:var(--numbers-feature)}.scn-error{color:var(--state-over);font-weight:var(--weight-bold)}.scn-rule-hint{color:var(--text-secondary)}.scn-scores{gap:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.scn-score{gap:var(--space-1) var(--space-3);padding:0 var(--space-1);background:0 0;border:14px solid #0000;border-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20width='120'%20height='120'%20viewBox='0%200%20120%20120'%3e%3c!--%20The%20painted%20frame%20(05-ux%20'hand-drawn%20frames,%20crisp%20data'):%20a%20wobbly%20ink%20line%20round%20warm%20paper.%20Used%20as%20a%209-slice%20border-image%20with%20'round':%20the%20corners%20stay,%20the%20wobbly%20side%20pieces%20repeat%20along%20long%20edges%20instead%20of%20stretching%20flat.%20--%3e%3cpath%20d='M14%203.4%20C24%202.6%2030%204.1%2040%203.3%20C50%202.5%2056%204.2%2066%203.4%20C76%202.7%2084%204.0%2094%203.2%20C100%202.9%20104%203.4%20106.4%203.6%20C113.6%204.2%20116.7%207.9%20116.4%2015%20C115.8%2025%20117.2%2031%20116.5%2041%20C115.8%2051%20117.3%2057%20116.6%2067%20C115.9%2077%20117.2%2085%20116.5%2095%20C116.2%20101%20116.6%20104%20116.3%20106.6%20C115.8%20113.4%20112.2%20116.7%20105%20116.4%20C95%20115.7%2089%20117.3%2079%20116.5%20C69%20115.8%2063%20117.2%2053%20116.6%20C43%20115.9%2035%20117.3%2025%20116.5%20C19%20116.1%2016%20116.6%2013.4%20116.3%20C6.6%20115.7%203.3%20112.1%203.6%20105%20C4.3%2095%202.8%2089%203.5%2079%20C4.2%2069%202.7%2063%203.4%2053%20C4.1%2043%202.8%2035%203.5%2025%20C3.8%2019%203.3%2016%203.7%2013.4%20C4.2%206.7%207.5%203.7%2014%203.4%20Z'%20fill='%23FBF8F2'%20stroke='%231F2A33'%20stroke-width='2.2'%20stroke-linejoin='round'/%3e%3c/svg%3e") 16 fill/14px round;border-radius:0;grid-template-rows:auto auto;grid-template-columns:1fr auto;align-items:center;display:grid}.scn-score-label{font-size:var(--text-xs);font-weight:var(--weight-bold);color:var(--text-secondary);grid-column:1/-1}.scn-score-value{font-family:var(--font-numbers);font-feature-settings:var(--numbers-feature);font-size:var(--text-2xl);font-weight:var(--weight-heavy);line-height:var(--line-tight);white-space:nowrap}.scn-stars{gap:2px;display:inline-flex}.scn-star{width:22px;height:22px}.scn-star path{fill:none;stroke:var(--text-primary);stroke-opacity:.45;stroke-width:1.9px;stroke-linejoin:round}.scn-star.earned path{fill:var(--text-primary);stroke-opacity:1}.scn-estimate{font-size:var(--text-xs);color:var(--text-muted)}.scn-precise{font-size:var(--text-sm);font-weight:var(--weight-bold);color:var(--text-primary);background:var(--panel-raised);border:1px solid var(--divider);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);box-sizing:border-box;min-height:32px;transition:background var(--dur-fast), border-color var(--dur-fast);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.scn-precise:hover{background:var(--chip-bg);border-color:var(--text-muted)}.scn-precise.imp-confirm{background:var(--action);color:var(--text-on-action);border-color:#0000}.scn-precise.imp-confirm:hover{filter:brightness(1.06)}.topbar .play-title{background:var(--chip-bg);color:var(--text-primary);border-radius:var(--radius-pill);padding:0 var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-bold);white-space:nowrap}.check-result-button{min-height:32px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-md);background:var(--action);color:var(--text-on-action);font-size:var(--text-sm);font-weight:var(--weight-bold);border:0;align-items:center;margin-right:auto;display:inline-flex}.check-result-button:hover{background:var(--action);filter:brightness(1.06)}.check-result-button[hidden]{display:none}@media (prefers-reduced-motion:reduce){.imp-dialog .scn-card,.start-door{transition:none}.imp-dialog .scn-card:hover,.imp-dialog .scn-card:focus-visible,.start-door:hover,.start-door:focus-visible{transform:none}}@font-face{font-family:Gabarito;font-style:normal;font-display:swap;font-weight:400;src:url(/play/assets/gabarito-latin-400-normal-CICpwsWH.woff2)format("woff2"),url(/play/assets/gabarito-latin-400-normal-BC4n48n5.woff)format("woff")}@font-face{font-family:Gabarito;font-style:normal;font-display:swap;font-weight:700;src:url(/play/assets/gabarito-latin-700-normal-BAFSd0WX.woff2)format("woff2"),url(/play/assets/gabarito-latin-700-normal-D9o2lxqd.woff)format("woff")}@font-face{font-family:Gabarito;font-style:normal;font-display:swap;font-weight:800;src:url(/play/assets/gabarito-latin-800-normal-D42sqWtO.woff2)format("woff2"),url(/play/assets/gabarito-latin-800-normal-lpMBdeeE.woff)format("woff")}@font-face{font-family:Gabarito;font-style:normal;font-display:swap;font-weight:900;src:url(/play/assets/gabarito-latin-900-normal-Po6Gpd8E.woff2)format("woff2"),url(/play/assets/gabarito-latin-900-normal-hMPEBsD4.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:400;src:url(/play/assets/atkinson-hyperlegible-next-latin-400-normal-FfmJh7DR.woff2)format("woff2"),url(/play/assets/atkinson-hyperlegible-next-latin-400-normal-DPp7N0cD.woff)format("woff")}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-display:swap;font-weight:700;src:url(/play/assets/atkinson-hyperlegible-next-latin-700-normal-Dpiyiu63.woff2)format("woff2"),url(/play/assets/atkinson-hyperlegible-next-latin-700-normal-C2qZD_Q9.woff)format("woff")}:root{--brand-yours:#d0603c;--brand-neighbour:#2f7f8c;--brand-tile:#f6f6f3;--action:#d0603c;--text-on-action:#1e140e;--select:#2f7f8c;--text-on-select:#fff;--font-display:"Gabarito", "Atkinson Hyperlegible Next", system-ui, sans-serif;--font-ui:"Atkinson Hyperlegible Next", system-ui, "Segoe UI", sans-serif;--font-numbers:"Gabarito", "Atkinson Hyperlegible Next", system-ui, sans-serif;--numbers-feature:"tnum" 1, "lnum" 1;--map-sky:#c8d6e2;--map-grass:#709a50;--map-field:#aab84f;--map-road:#96948c;--map-water:#588496;--map-soil:#7a5c41;--map-cable:#2e3640;--map-transformer:#5e8c55;--map-select:#fff;--map-hover:#d3e6e9;--app-bg:#c8d6e2;--panel-bg:#fbf8f2;--panel-raised:#fff;--card-bg:#fffdf8;--chip-bg:#efeae0;--scrim:#161e2673;--divider:#1f2a331f;--text-primary:#1f2a33;--text-secondary:#46535f;--text-muted:#5c6873;--text-on-mode:#fff;--text-on-state-dark:#1c1a12;--text-on-state-light:#fff;--state-ok:#4fa35e;--state-warn:#e9a426;--state-over:#c63a2c;--state-melting:#7c1a12;--overlay-seq-0:#cbc9c3;--overlay-seq-1:#e3c3a3;--overlay-seq-2:#d49a68;--overlay-seq-3:#b36e3b;--overlay-seq-4:#7e3a17;--overlay-gen-0:#cbc9c3;--overlay-gen-1:#b4d8d3;--overlay-gen-2:#6cb0ac;--overlay-gen-3:#2c8a8c;--overlay-gen-4:#0d5e63;--overlay-flex-0:#cbc9c3;--overlay-flex-1:#bcd0ea;--overlay-flex-2:#86a9d6;--overlay-flex-3:#4e7dba;--overlay-flex-4:#234f8a;--overlay-div-n2:#0f6b70;--overlay-div-n1:#6cb0ac;--overlay-div-0:#cbc9c3;--overlay-div-p1:#d49a68;--overlay-div-p2:#94491f;--overlay-fade:#a3a8a6;--badge-better-bg:#dcefd9;--badge-better-text:#1e5a2b;--badge-worse-bg:#fbe1dc;--badge-worse-text:#8c2418;--mode-build:#8a5a35;--mode-generate:#9a6a00;--mode-save:#2e7a4e;--mode-shift:#2f68ac;--mode-store:#0d747c;--mode-cap:#a13c62;--mode-share:#5953b3;--piece-1:#4e7fa6;--piece-2:#c98b62;--piece-3:#6fa5a0;--piece-4:#7a6a58;--piece-5:#d2c08a;--piece-6:#9a7088;--piece-rest:#b8b2a6;--text-xs:12px;--text-sm:14px;--text-md:16px;--text-lg:20px;--text-xl:24px;--text-2xl:32px;--weight-regular:400;--weight-bold:700;--weight-heavy:800;--line-tight:1.2;--line-body:1.45;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--shadow-low:0 2px 6px #141e2829, 0 1px 2px #141e281a;--shadow-high:0 10px 28px #141e2838, 0 2px 6px #141e281f;--shadow-high-painted:drop-shadow(0 8px 14px #141e2833) drop-shadow(0 2px 3px #141e281f);--dur-fast:.12s;--dur-base:.2s;--dur-bounce:.32s;--dur-pulse:1.2s;--dur-pulse-melting:.6s;--ease-game:cubic-bezier(.34, 1.4, .64, 1);--ink:var(--text-primary);--ink-soft:var(--text-secondary);--paper:var(--panel-bg);--line:var(--divider);--good:var(--badge-better-text);--warn:var(--badge-worse-text);--radius:var(--radius-lg);--shadow:var(--shadow-high);--well-width:400px;font-family:var(--font-ui);color:var(--ink)}::selection{background:var(--map-hover);color:var(--text-primary)}*{box-sizing:border-box}h1,h2,h3,h4,.picker-title,.legend-title,.played-title,.mcard-name{font-family:var(--font-display)}html,body{background:#cfdbe3;height:100%;margin:0;overflow:hidden}#app{position:fixed;inset:0}canvas{touch-action:none;display:block}#loading{color:var(--ink-soft);place-items:center;font-size:18px;display:grid;position:absolute;inset:0}button{font:inherit;font-family:var(--font-display);font-weight:var(--weight-heavy);color:inherit;cursor:pointer;border:1px solid var(--line);background:#fff;border-radius:10px;padding:6px 10px;transition:transform 80ms,background .15s}button:hover{background:#fff6e6}button:active{transform:translateY(1px)scale(.98)}button.on{background:var(--select);color:var(--text-on-select);border-color:#0000}button:disabled,button:disabled:hover{cursor:default;color:var(--ink-soft);opacity:.5;background:#fff;transform:none}.panel{background:var(--paper);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:var(--radius);box-shadow:var(--shadow);-webkit-user-select:none;user-select:none;padding:10px;position:absolute}.row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.good{color:var(--good)}.warn{color:var(--warn)}.hidden{display:none!important}.topbar{top:var(--space-4);left:var(--space-4);right:calc(var(--well-width) + 2 * var(--space-4));align-items:center;gap:var(--space-4);padding:var(--space-2) var(--space-4);display:flex}.topbar .brand{flex-direction:column;gap:2px;margin-right:auto;display:flex}.topbar .brand-mark{flex:none;display:flex}.topbar .brand-mark svg{width:auto;height:34px}.topbar .wordmark{flex-direction:column;line-height:1;display:flex}.topbar .wordmark b{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:-.03em;font-weight:900}.topbar .wordmark small{font-size:var(--text-xs);color:var(--text-secondary)}.topbar .brand-title{align-items:center;gap:var(--space-2);display:flex}.preview-chip{background:var(--chip-bg);color:var(--text-secondary);border-radius:var(--radius-pill);padding:0 var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-bold);font-feature-settings:var(--numbers-feature);white-space:nowrap;pointer-events:none}.status{font-size:var(--text-xs);color:var(--text-secondary)}.segmented{background:var(--chip-bg);border-radius:var(--radius-pill);gap:2px;padding:2px;display:inline-flex}.segmented button{border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-bold);padding:var(--space-1) var(--space-3);color:var(--text-secondary);background:0 0;border:0}.segmented button:hover{background:var(--panel-raised)}.segmented button.on{background:var(--select);color:var(--text-on-select)}:focus-visible{outline:2px solid var(--select);outline-offset:2px}.toolbar{flex-direction:column;gap:6px;padding:8px;display:flex;top:116px;left:16px}.toolbar button{flex-direction:column;align-items:center;gap:2px;width:64px;padding:6px 4px;display:flex}.toolbar .ico{font-size:22px;line-height:1}.toolbar small{font-size:11px}.networks{z-index:3;width:250px;top:116px;left:132px}.networks h4{margin:4px 2px 6px;font-size:13px}.networks h4:not(:first-child){margin-top:10px}.networks button{padding:5px 9px;font-size:13px}.corner{right:calc(var(--well-width) + 2 * var(--space-4));flex-direction:column;gap:8px;display:flex;bottom:16px}.zoom-label{text-align:center;min-width:120px;font-size:13px}.play{place-items:center;width:34px;height:30px;padding:0;display:inline-grid}.palette{width:min(880px, calc(100vw - var(--well-width) - 140px));margin-left:calc(-1 * var(--well-width) / 2);background:var(--paper);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:var(--radius);box-shadow:var(--shadow);padding:8px 10px 10px;transition:transform .25s cubic-bezier(.2,.9,.3,1.2);position:absolute;bottom:16px;left:50%;transform:translate(-50%,140%)}.palette.open{transform:translate(-50%)}.tabs{gap:4px;margin-bottom:8px;display:flex}.tabs button{border-radius:999px;padding:4px 12px;font-size:13px}.cards{scrollbar-width:thin;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.card{flex-direction:column;flex:none;align-items:center;gap:4px;width:96px;padding:6px;display:flex;position:relative}.card .thumb{place-items:center;width:82px;height:64px;display:grid}.card img{object-fit:contain;image-rendering:auto;max-width:100%;max-height:100%}.card .name{text-align:center;font-size:12px;line-height:1.15}.card .badge{background:var(--ink);color:#fff;border-radius:6px;padding:1px 5px;font-size:10px;position:absolute;top:4px;right:4px}.big{font-size:30px}.info{flex-direction:column;gap:6px;min-width:220px;font-size:13px;display:flex;position:absolute;bottom:16px;left:100px}.info .title{align-items:center;gap:8px;font-size:16px;display:flex}.info .big{font-size:24px}.info:not(.hidden){background:var(--paper);border-radius:var(--radius);box-shadow:var(--shadow);padding:12px}.toast{top:88px;left:calc(50% - var(--well-width) / 2);background:var(--ink);color:#fff;pointer-events:none;opacity:0;border-radius:999px;padding:8px 14px;font-size:14px;transition:transform .25s,opacity .25s;position:absolute;transform:translate(-50%,-300%)}.toast.show{opacity:1;transform:translate(-50%)}@media (width<=760px){.networks{width:auto;inset:auto 16px 120px}.palette{width:calc(100vw - 32px)}}
