@font-face{font-family:Nunito Sans;src:url(../../../font/NunitoSans-Variable.woff2)format("woff2");font-weight:200 1000;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(../../../font/JetBrainsMono-Variable.woff2)format("woff2");font-weight:100 800;font-style:normal;font-display:swap}:root{--brand-primary:#1a824a;--brand-primary-hover:#136236;--brand-primary-soft:#1a824a14;--brand-primary-ring:#1a824a38;--bg-page:#edf0e8;--bg-surface:#fff;--bg-surface-muted:#f6f5f2;--bg-surface-hover:#f9fafb;--border-default:#695f592e;--border-strong:#695f598c;--text-primary:#1f1b17;--text-secondary:#695f59;--text-muted:#746a65;--text-on-brand:#fff;--status-danger:#af3939;--status-danger-soft:#d645451f;--status-warning:#e2a43a;--status-warning-soft:#e2a43a26;--status-warning-text:#835f22;--status-success:#1a824a;--status-success-soft:#1a824a26;--font-sans:"Nunito Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono:"JetBrains Mono", Consolas, Menlo, monospace;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--shadow-sm:0 1px 2px #1f1b170d;--shadow-md:0 6px 18px #1f1b1714;--shadow-lg:0 12px 32px #1f1b171f;--shadow-sheet:0 -8px 30px #1f1b1733;--scrim:#1f1b1766;--border-tile:#695f5952;--tracking-wide:.05em;--hover-overlay:#1f1b170f;--press-overlay:#1f1b171f;--dur-press:80ms;--dur-state:.15s;--dur-pop:.18s;--dur-flash:.7s;--ease-out:cubic-bezier(.2, .7, .2, 1);--bg:var(--bg-page);--floor:var(--bg-surface-muted);--surface:var(--bg-surface);--surface-2:var(--bg-surface-muted);--text:var(--text-primary);--muted:var(--text-secondary);--line:var(--border-default);--line-strong:var(--border-strong);--accent:var(--brand-primary);--accent-hover:var(--brand-primary-hover);--accent-text:var(--text-on-brand);--accent-tint:color-mix(in srgb, var(--brand-primary) 9%, var(--bg-surface));--ok:var(--status-success);--ok-solid:var(--status-success);--danger:var(--status-danger);--danger-solid:var(--status-danger);--warn:var(--status-warning);--warn-solid:var(--status-warning);--warn-text:var(--status-warning-text);--warn-tint:color-mix(in srgb, var(--status-warning) 15%, var(--bg-surface));--grey:var(--bg-surface-muted);--rack:var(--text-secondary);--rack-hi:color-mix(in srgb, var(--text-secondary) 75%, var(--bg-surface));--rack-text:var(--text-on-brand);--rack-post:#8c847d;--rack-beam:#b5afa8;--rack-edge:#9d968f;--bay-bg:#e5e8de;--sticker-a:var(--bg-surface);--sticker-b:#fff1a8;--sticker-text:var(--text-primary);--radius:var(--radius-lg);--shadow:var(--shadow-lg);--font:var(--font-sans);--font-sign:var(--font-mono);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html.regeom .app{opacity:0;animation:0s linear 2s forwards reveal}@keyframes reveal{to{opacity:1}}html{-webkit-text-size-adjust:100%;font-size:18px}@media (width>=700px) and (pointer:coarse){html{font-size:20px}}body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;line-height:1.4}a{color:var(--accent)}h1{text-wrap:balance;margin:4px 0 16px;font-size:1.5rem;font-weight:700;line-height:1.2}h2{margin:24px 0 8px;font-size:1.15rem;font-weight:700}.label-upper{letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--muted);font-size:.8rem;font-weight:700}p{margin:8px 0}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin-bottom:12px;padding:16px}.muted{color:var(--muted)}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.stack>*+*{margin-top:12px}.grow{flex:1;min-width:0}.code{font-family:var(--font-sign);font-variant-numeric:tabular-nums;letter-spacing:0;white-space:nowrap;font-weight:700}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}label{margin-bottom:4px;font-weight:600;display:block}input,select,textarea{font:inherit;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);width:100%;min-height:56px;color:var(--text);padding:10px 14px}input:focus,select:focus,textarea:focus{border-color:var(--accent);outline:2px solid var(--brand-primary-ring);outline-offset:0}input[type=checkbox]{width:24px;height:24px;min-height:0;accent-color:var(--accent);padding:0}input[aria-invalid=true]{border-color:var(--danger)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.on-solid :focus-visible{outline-color:var(--text-on-brand);box-shadow:0 0 0 4px #1f1b1773}button,.button{font:inherit;border-radius:var(--radius-md);border:1px solid var(--line-strong);background:var(--surface);min-height:56px;color:var(--text);transition:background-color var(--dur-state) ease, border-color var(--dur-state) ease, color var(--dur-state) ease, transform .12s var(--ease-out);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;justify-content:center;align-items:center;gap:8px;padding:8px 18px;font-weight:700;text-decoration:none;display:inline-flex}button.primary,.button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text)}@media (hover:hover){button:not([data-tile]):hover:not(:disabled),.button:hover{background-image:linear-gradient(var(--hover-overlay), var(--hover-overlay))}button.primary:hover:not(:disabled),.button.primary:hover{background-color:var(--accent-hover);border-color:var(--accent-hover)}}button:not([data-tile]):active:not(:disabled),.button:active{background-image:linear-gradient(var(--press-overlay), var(--press-overlay));transition-duration:var(--dur-press);transform:scale(.97)}.seg button:active:not(:disabled){transform:none}button.danger,.button.danger{border-color:var(--danger);color:var(--danger)}button.danger.solid{background:var(--danger-solid);border-color:var(--danger-solid);color:var(--text-on-brand)}button.warn,.button.warn{border-color:var(--warn);color:var(--warn-text);background:var(--warn-tint)}button.ghost,.button.ghost{background:0 0;border-color:#0000}button.small,.button.small{min-height:44px;padding:4px 14px;font-size:.9rem}button.link{min-height:0;color:var(--accent);background:0 0;border:0;padding:0;font-weight:600;text-decoration:underline}button:disabled{opacity:.5;cursor:default}.big{width:100%;min-height:72px;font-size:1.2rem}.seg{vertical-align:top;display:inline-flex}.seg.fill{display:flex}.seg.fill>button{flex:1 1 0;min-width:0}.seg>button{border-radius:0;min-height:48px;padding:4px 12px}.seg>button:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.seg>button:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.seg>button+button{border-left-width:0}.seg>button.on,.seg>button[aria-checked=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.seg>button:has(+.on,+[aria-checked=true]){border-right-color:var(--accent)}.seg.sm>button{min-height:44px;padding:2px 12px;font-size:.9rem}.chip{border-radius:var(--radius-pill);border:1px solid var(--line-strong);background:var(--surface);gap:6px;min-height:44px;padding:4px 14px;font-weight:700}.chip.on,.chip[aria-pressed=true],.chip[aria-checked=true]{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}@media (pointer:coarse){.seg>button,.seg.sm>button,.chip{min-height:56px}}.error{background:color-mix(in srgb, var(--danger) 12%, var(--surface));border:2px solid var(--danger);border-radius:var(--radius);margin:12px 0;padding:12px 16px}.success{background:color-mix(in srgb, var(--ok) 12%, var(--surface));border:2px solid var(--ok);border-radius:var(--radius);margin:12px 0;padding:12px 16px}.notice{background:var(--warn-tint);color:var(--text);border:2px solid var(--warn-solid);border-radius:var(--radius);margin:12px 0;padding:12px 16px}.pill{border-radius:var(--radius-pill);white-space:nowrap;background:var(--grey);color:var(--text);padding:3px 12px;font-weight:700;display:inline-block}.pill.place{background:var(--accent-tint);color:var(--accent-hover);font-family:var(--font-sign);font-variant-numeric:tabular-nums}.pill.warn{background:var(--warn-tint);color:var(--warn-text)}.pill.bad{background:color-mix(in srgb, var(--danger) 16%, var(--surface));color:var(--danger)}input,textarea,select{scroll-margin-top:16px;scroll-margin-bottom:120px}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:8px 6px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}button:active:not(:disabled),.button:active{transform:none}}
