:root{color-scheme:dark;--room: #080d14;--desk: #161f2d;--plate: #0e141c;--plate-lit: #131b25;--accent: #4fd1ff;--lamp-red: #ff5a4e;--secondary: #a9b6c7;--cloth: #142a22;--chalk-white: #e6edf5;--dim: #7f8da0;--disabled: #4a5768;--go: #3ddc84;--amber: #f2b24a;--logo-green: #079037;--panel-top: rgba(34, 46, 62, .9);--panel-bottom: rgba(24, 33, 46, .9);--key-top: #26313f;--key-bottom: #1a2330;--primary-top: #1c3442;--primary-bottom: #132633;--go-top: #1e3a2e;--go-bottom: #142a22;--lamp-top: #3a2226;--lamp-bottom: #2a181a;--sub-plate: rgba(14, 20, 28, .7);--trough: #060a10;--lamp-ne: rgba(38, 104, 150, .38);--lamp-sw: rgba(24, 72, 110, .32);--keyline: rgba(230, 237, 245, .08);--keyline-soft: rgba(230, 237, 245, .12);--keyline-faint: rgba(230, 237, 245, .06);--row-rule: rgba(230, 237, 245, .05);--panel-shadow: 0 24px 60px rgba(0, 0, 0, .55);--panel-lip: inset 0 1px 0 rgba(255, 255, 255, .04);--key-shadow: 0 6px 16px rgba(0, 0, 0, .5);--key-shadow-pressed: 0 2px 4px rgba(0, 0, 0, .5);--plate-inset: inset 0 2px 8px rgba(0, 0, 0, .7);--trough-inset: inset 0 2px 8px rgba(0, 0, 0, .8);--font-label: "Barlow", "Helvetica Neue", Arial, sans-serif;--font-numeral: "Barlow Condensed", "Barlow", "Helvetica Neue", Arial, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--logo-light-display: none;--logo-dark-display: block}*{box-sizing:border-box}body{margin:0;min-height:100vh;background-color:var(--room);background-image:radial-gradient(ellipse 55% 45% at 72% 12%,var(--lamp-ne),transparent 70%),radial-gradient(ellipse 45% 55% at 12% 85%,var(--lamp-sw),transparent 70%);background-attachment:fixed;background-repeat:no-repeat;color:var(--secondary);font-family:var(--font-label);font-weight:500;font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased}#app{max-width:1180px;margin:0 auto;padding:36px 32px 96px}h1{margin:0;font-family:var(--font-numeral);font-size:42px;font-weight:600;line-height:1.05;letter-spacing:.04em;text-transform:uppercase;color:var(--chalk-white);text-wrap:pretty}h2,h3{color:var(--chalk-white)}p{margin:0 0 14px;max-width:76ch}a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(79,209,255,.35)}a:hover{color:var(--chalk-white);border-bottom-color:var(--chalk-white)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:1px solid var(--accent);outline-offset:3px;border-radius:6px}.muted{color:var(--dim)}.masthead{padding-bottom:18px;border-bottom:1px solid var(--keyline-soft);margin-bottom:32px}.brandline{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px}.brand{display:inline-flex;align-items:center;line-height:0;border-radius:6px;border-bottom:none}.logo{height:26px;width:auto}.logo-light{display:var(--logo-light-display)}.logo-dark{display:var(--logo-dark-display)}.brandline-right{display:flex;align-items:center;gap:10px}.plate{background:linear-gradient(180deg,var(--panel-top),var(--panel-bottom));border:1px solid var(--keyline);border-radius:10px;padding:20px 22px;margin:18px 0;box-shadow:var(--panel-lip),var(--panel-shadow)}.plate-title{margin:0 0 16px;font-family:var(--font-numeral);font-size:20px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--chalk-white)}.plate-subtitle,.field-label{margin:24px 0 10px;font-family:var(--font-numeral);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--dim)}.field-label{display:block;margin:0 0 6px}.badge-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.badge{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:4px;border:1px solid var(--keyline);background:var(--sub-plate);box-shadow:var(--plate-inset);font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);white-space:nowrap}.badge-accent{border-color:#3ddc8480;color:var(--go)}.badge-blue{border-color:#4fd1ff80;color:var(--accent)}.badge-amber{border-color:#f2b24a80;color:var(--amber)}.badge-red{border-color:#ff5a4e80;color:var(--lamp-red)}.coming-soon{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;min-height:calc(100vh - 132px);text-align:center}.coming-soon-mark{line-height:0}.coming-soon .logo{height:44px}.coming-soon-line{margin:0;font-family:var(--font-numeral);font-size:22px;font-weight:600;letter-spacing:.32em;text-indent:.32em;text-transform:uppercase;color:var(--secondary)}.page-links{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:30px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.page-links a{color:var(--dim);border-bottom-color:transparent}.page-links a:hover{color:var(--accent);border-bottom-color:var(--accent)}.key-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:14px}.key,.link-button,.app-store-badge,.button{font-family:var(--font-label);font-weight:600;text-transform:uppercase;border-style:solid;cursor:pointer;white-space:nowrap;text-decoration:none;transition:transform .08s ease-out,box-shadow .08s ease-out}.key,.link-button{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 14px;border-radius:6px;border-width:1px;border-color:var(--keyline);background:linear-gradient(180deg,var(--key-top),var(--key-bottom));box-shadow:var(--key-shadow);color:var(--chalk-white);font-size:11px;letter-spacing:.16em}.key:hover,.link-button:hover{border-color:#e6edf529;color:var(--chalk-white)}.key:active,.link-button:active,.button:active{transform:translateY(3px);box-shadow:var(--key-shadow-pressed)}.link-button{height:28px}.key:disabled,.button:disabled,.link-button:disabled{background:var(--plate);border-color:var(--keyline);box-shadow:var(--plate-inset);color:var(--disabled);cursor:default;transform:none;text-shadow:none}.button{display:inline-flex;align-items:center;justify-content:center;height:38px;padding:0 18px;border-radius:8px;border-width:1.5px;border-color:var(--accent);background:linear-gradient(180deg,var(--primary-top),var(--primary-bottom));box-shadow:var(--key-shadow),0 0 20px #4fd1ff4d;color:var(--chalk-white);font-size:12px;letter-spacing:.18em;text-shadow:0 0 12px rgba(79,209,255,.6);align-self:flex-start}.button:hover{box-shadow:var(--key-shadow),0 0 26px #4fd1ff6b}.button-danger{border-color:var(--lamp-red);background:linear-gradient(180deg,var(--lamp-top),var(--lamp-bottom));box-shadow:var(--key-shadow),0 0 20px #ff5a4e4d;text-shadow:0 0 12px rgba(255,90,78,.6)}.button-danger:hover{box-shadow:var(--key-shadow),0 0 26px #ff5a4e6b}.key-danger{color:var(--lamp-red);border-color:#ff5a4e66}.key-danger:hover{border-color:var(--lamp-red);color:var(--lamp-red)}.key-slot{display:inline-flex}.field{font-family:var(--font-label);font-size:14px;font-weight:500;padding:9px 12px;border-radius:6px;border:1px solid var(--keyline);background:var(--trough);box-shadow:var(--trough-inset);color:var(--chalk-white)}.field::placeholder{color:var(--disabled)}.field:focus-visible{outline:none;border-color:var(--accent);box-shadow:var(--trough-inset),0 0 0 1px var(--accent)}.signin-controls{display:flex;flex-direction:column;gap:24px;max-width:340px;margin-top:8px}.apple-button{width:100%;min-height:44px;cursor:pointer}.dev-identity{display:flex;flex-direction:column;gap:8px}.signin-failure{margin-top:20px;color:var(--lamp-red);font-size:14px}.meter-label{display:flex;align-items:baseline;gap:8px;font-variant-numeric:tabular-nums;margin-bottom:12px}.meter-used{font-family:var(--font-numeral);font-size:32px;font-weight:600;line-height:1;letter-spacing:.02em;color:var(--chalk-white)}.meter-of{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.meter-track{height:6px;border-radius:3px;background:var(--trough);border:1px solid var(--keyline-faint);box-shadow:var(--trough-inset);overflow:hidden}.meter-fill{height:100%;border-radius:3px;background:var(--accent);box-shadow:0 0 8px #4fd1ffb3}.meter-fill-amber{background:var(--amber);box-shadow:0 0 8px #f2b24ab3}.meter-fill-red{background:var(--lamp-red);box-shadow:0 0 8px #ff5a4eb3}.locked{margin:0;color:var(--dim)}.readonly-until{color:var(--amber)}.failure{border-color:#ff5a4e66}.failure .failure-line,.failure-line{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--lamp-red);font-size:14px}.failure-line:before{content:"";flex:none;width:10px;height:10px;border-radius:3px;background:var(--lamp-red);box-shadow:0 0 8px #ff5a4eb3}.empty-line{margin:0}.page-slot{margin-top:18px}.game-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 16px;width:100%;padding:0;border:none;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.game.is-open .game-head{padding-bottom:12px;border-bottom:1px solid var(--keyline-soft)}.game-head-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;min-width:0}.game-title{margin:0;font-size:16px;font-weight:600;color:var(--chalk-white);overflow-wrap:anywhere}.game-score{font-family:var(--font-numeral);font-size:20px;font-weight:600;letter-spacing:.04em;color:var(--accent);font-variant-numeric:tabular-nums}.chevron{flex:none;align-self:center;color:var(--dim);transition:transform .12s ease-out}.game.is-open .chevron{transform:rotate(180deg)}.game-head:hover .chevron{color:var(--chalk-white)}.game-body{padding-top:14px}.game-info:not(:empty){display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;margin-bottom:14px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.game-unfinished{color:var(--amber)}.game-description{text-transform:none;letter-spacing:.04em;color:var(--secondary)}.game-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,45%);gap:20px 24px}@media(max-width:720px){.game-grid{grid-template-columns:minmax(0,1fr)}}.player-column{align-self:start}.player-empty{display:flex;align-items:center;justify-content:center;aspect-ratio:16 / 9;border-radius:6px;background:var(--trough);box-shadow:var(--trough-inset),0 0 0 1px var(--keyline);color:var(--disabled)}.player-empty svg{width:34px;height:34px}.game-meta,.table-meta,.item-head{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.code{font-family:var(--font-mono);font-size:12px;letter-spacing:.06em;color:var(--secondary);overflow-wrap:anywhere}a.code{color:var(--accent)}.code-large{font-size:22px;letter-spacing:.18em;color:var(--chalk-white)}.object{padding:12px 0;border-bottom:1px solid var(--row-rule)}.object:last-child{border-bottom:none;padding-bottom:0}.object.is-playing{box-shadow:inset 2px 0 0 var(--accent);padding-left:12px}.object.is-playing .object-name{color:var(--accent)}.object-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}.object-row .icon-row{margin-top:0;margin-left:auto;gap:6px}.key-icon{width:32px;padding:0;justify-content:center}.object-name{font-weight:600;color:var(--chalk-white);overflow-wrap:anywhere}.object-bytes{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;color:var(--dim);font-variant-numeric:tabular-nums}.object-open:not(:empty){margin-top:12px}.player{width:100%;max-width:100%;border-radius:6px;background:#000;box-shadow:0 0 0 1px var(--keyline);display:block}.link-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px}.confirm{margin:0;border-color:#ff5a4e66}.confirm-line{margin:0 0 12px;color:var(--chalk-white);font-weight:600}.scorecard{margin-top:0}.thumbnail{display:block;width:100%;border-radius:6px;box-shadow:0 0 0 1px var(--keyline);margin-bottom:18px}.scoreline{margin:0;font-family:var(--font-numeral);font-size:34px;font-weight:600;line-height:1.1;letter-spacing:.02em;color:var(--chalk-white);font-variant-numeric:tabular-nums;text-wrap:balance}.roster{display:flex;flex-wrap:wrap;gap:4px 16px;margin-top:12px;color:var(--secondary);font-size:14px}.expired{font-family:var(--font-numeral);font-size:22px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim)}.badge-slot{margin-top:28px}.app-store-badge{display:inline-flex;align-items:center;justify-content:center;height:46px;padding:0 22px;border-radius:8px;border-width:1px;border-color:var(--keyline);background:linear-gradient(180deg,var(--key-top),var(--key-bottom));box-shadow:var(--key-shadow);color:var(--chalk-white);font-size:12px;letter-spacing:.18em}.app-store-badge:hover{color:var(--chalk-white);border-color:#e6edf529}.app-store-badge:active{transform:translateY(3px);box-shadow:var(--key-shadow-pressed)}.picker-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--row-rule);font-size:16px;color:var(--chalk-white);cursor:pointer}.picker-row:last-child{border-bottom:none;padding-bottom:0}.picker-row:first-child{padding-top:0}.picker-row input{width:20px;height:20px;accent-color:var(--accent);flex:none}.claim-action:not(:empty),.claim-result:not(:empty){margin-top:20px}.send{display:flex;flex-direction:column;align-items:stretch;gap:8px}.send .field,.send select.field{width:100%;max-width:420px}.send .field-label:not(:first-child){margin-top:14px}.send .button{margin-top:14px}.send-outcome:not(:empty){margin-top:12px}.item-head{padding-bottom:12px;border-bottom:1px solid var(--keyline-soft)}.item-from{flex:1 1 auto}.item .objects,.item .empty-line{margin-top:12px}.table-title{margin:0 0 8px;font-family:var(--font-numeral);font-size:20px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--chalk-white)}.tier{margin:0;font-family:var(--font-numeral);font-size:34px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--chalk-white)}.export-out:not(:empty),.delete-out:not(:empty){margin-top:14px}.manifest{display:flex;flex-direction:column;gap:8px}.manifest-row{color:var(--accent)}.delete-form{display:flex;flex-direction:column;gap:10px;align-items:flex-start;max-width:340px}.delete-form .field{width:100%}.delete-confirm{margin-top:4px}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:18px 0}.tile{background:var(--sub-plate);border:1px solid var(--keyline-faint);border-radius:8px;box-shadow:var(--plate-inset);padding:16px 18px}.tile-value{font-family:var(--font-numeral);font-size:32px;font-weight:600;line-height:1;letter-spacing:.02em;color:var(--chalk-white);font-variant-numeric:tabular-nums}.tile-label{margin-top:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.grid-scroll{overflow-x:auto;margin:0 0 4px;border-radius:8px}.grid{width:100%;border-collapse:collapse;font-size:14px}.grid th,.grid td{text-align:left;padding:10px 16px 10px 0;border-bottom:1px solid var(--row-rule);vertical-align:top;white-space:nowrap}.grid th{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);border-bottom-color:var(--keyline-soft)}.grid td{color:var(--secondary);font-variant-numeric:tabular-nums}.grid .num{text-align:right;padding-right:0}.grid tr:last-child td{border-bottom:none}.grid-out:not(:empty){margin-top:14px}.paged .key-row{margin-top:12px}.complete-since{margin:12px 0 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.search-form{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.search-form .field-label{margin:0}.search-form .field{flex:1 1 220px;min-width:0}.files{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.file-links{display:flex;flex-direction:column;gap:6px}.file-link{font-family:var(--font-mono);font-size:12px;color:var(--accent)}.plate-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:12px}.plate-head .plate-title{margin-bottom:0}.model-now{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:16px;padding:14px 16px;background:var(--sub-plate);border:1px solid var(--keyline-faint);border-radius:8px;box-shadow:var(--plate-inset)}.led{width:8px;height:8px;border-radius:50%;background:var(--disabled)}.led-go{background:var(--go);box-shadow:0 0 8px #3ddc84cc}.model-name{font-family:var(--font-numeral);font-size:18px;font-weight:600;letter-spacing:.04em;color:var(--chalk-white)}.model-fact{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.model-live{display:inline-flex;color:var(--go)}.model-open:not(:empty){margin-top:10px}.model-form:not(:empty){margin-top:16px}.model-staging{margin:0}.model-fields{display:flex;flex-wrap:wrap;gap:12px}.model-field{flex:1 1 200px;min-width:0}.model-field .field{width:100%}.model-picked,.model-progress{margin:14px 0 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.model-line:not(:empty){margin-top:12px}@media(max-width:560px){#app{padding:24px 16px 64px}h1{font-size:32px}.scoreline{font-size:26px}.tier{font-size:28px}.plate{padding:16px}.tiles{grid-template-columns:repeat(auto-fit,minmax(128px,1fr))}.tile-value{font-size:26px}.coming-soon-line{font-size:17px;letter-spacing:.26em;text-indent:.26em}.key,.link-button,.button,.app-store-badge{height:44px}.key-icon{width:44px}.claim .button{width:100%}.app-store-badge{display:flex}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}.storage{display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px 32px;align-items:center}.storage-ring{display:block;width:168px;height:168px;filter:drop-shadow(0 0 10px rgba(79,209,255,.12))}.storage-track{stroke:var(--trough);stroke-width:22}.storage-arc{stroke-linecap:butt}.storage-total{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;font-variant-numeric:tabular-nums;margin-bottom:14px}.storage-over{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--lamp-red)}.storage-legend{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 22px}.storage-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:10px;font-size:13.5px;color:var(--secondary)}.storage-row.is-empty{opacity:.5}.storage-swatch{width:10px;height:10px;border-radius:2px}.storage-swatch.is-free{border:1px solid rgba(230,237,245,.25);box-sizing:border-box}.storage-bytes{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);font-variant-numeric:tabular-nums}@media(max-width:560px){.storage{grid-template-columns:1fr;justify-items:center}.storage-side{width:100%}.storage-legend{grid-template-columns:1fr}}.tabs{display:flex;gap:4px;margin:26px 0 0;border-bottom:1px solid var(--keyline);font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;overflow-x:auto}.tabs a{padding:10px 14px 12px;margin-bottom:-1px;color:var(--dim);text-decoration:none;border-bottom:2px solid transparent;white-space:nowrap}.tabs a:hover{color:var(--chalk-white)}.tabs a.is-current{color:var(--chalk-white);border-bottom-color:var(--accent)}.tab-panel{padding-top:8px}.tab-panel>.plate:first-child,.tab-panel>.page-slot>.plate:first-child{margin-top:18px}.model-catalog .grid td{vertical-align:middle}.model-catalog .grid th,.model-catalog .grid td,.model-catalog .grid .num{padding-right:36px}.model-catalog .grid th:last-child,.model-catalog .grid td:last-child{width:100%;padding-right:0;text-align:right}.model-keys{display:flex;flex-direction:column;align-items:flex-end;gap:8px;white-space:nowrap}.model-keys .key-row{margin-top:0;flex-wrap:nowrap;justify-content:flex-end}.model-keys .model-open:empty{display:none}.model-drop-hint{margin-left:auto;margin-right:12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.plate.models.is-dropping{outline:1.5px solid var(--accent);outline-offset:-1.5px}
