@font-face{font-family:Barlow Condensed;src:url(/fonts/BarlowCondensed-SemiBold.ttf)format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Barlow Condensed;src:url(/fonts/BarlowCondensed-Bold.ttf)format("truetype");font-weight:700;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Regular.ttf)format("truetype");font-weight:400;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-Medium.ttf)format("truetype");font-weight:500;font-display:swap}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1511;--panel:#161e19;--border:#24302a;--text:#e8e6da;--text-muted:#93a296;--gain:#4fbe8c;--danger:#e0685c;--warn:#e4a93f;--accent:#c8a25e;--accent-hover:#d9b678;--ticket:#f2eddf;--ink:#201e18;--ink-dim:#6e685a;--ink-yes:#1e7a4c;--ink-no:#b3382e;--display:"Barlow Condensed", "Arial Narrow", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, "Cascadia Code", Consolas, monospace;--r-s:6px;--r-m:10px;--r-card:14px;--t-fast:.12s;--t-med:.16s;--t-slow:.24s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in:cubic-bezier(.32, 0, .67, 0);--ease-back:cubic-bezier(.34, 1.56, .64, 1);font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-size:15px;line-height:1.5}h1,h2,h3{margin:0;font-weight:600}h2{font-family:var(--display);letter-spacing:.01em}.brand{font-family:var(--display);letter-spacing:.08em;color:var(--accent);font-weight:700}.muted{color:var(--text-muted)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{font:inherit;border-radius:var(--r-s);background:var(--gain);color:#0f1511;cursor:pointer;min-height:44px;transition:background-color var(--t-fast) ease-out, border-color var(--t-fast) ease-out, color var(--t-fast) ease-out, transform 80ms ease-out;border:none;padding:.6rem 1rem}button:hover:not(:disabled){background:#63c996}button:active:not(:disabled){transform:translateY(1px)scale(.98)}button:disabled{opacity:.6;cursor:default}button.ghost{color:var(--text);border:1px solid var(--border);background:0 0;padding:.35rem .75rem}button.ghost:hover:not(:disabled){background:var(--panel);color:var(--text)}button.ghost.is-danger,button.ghost.is-danger:hover:not(:disabled){color:var(--danger)}input{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:var(--r-s);transition:border-color var(--t-fast), box-shadow var(--t-fast);padding:.55rem .7rem}input:focus-visible{outline:none}input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #c8a25e2e}.login-screen{justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background:var(--panel);border:1px solid var(--border);width:100%;max-width:22rem;animation:route-in var(--t-slow) var(--ease-out) both;border-radius:10px;flex-direction:column;gap:1rem;padding:2rem;display:flex}.login-card h1{font-size:1.5rem}.field{flex-direction:column;gap:.35rem;display:flex}.field span{color:var(--text-muted);font-size:.85rem}.form-error{color:var(--danger);margin:0;font-size:.9rem;animation:.24s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(4px)}75%{transform:translate(-2px)}}.screen-message{min-height:100vh;color:var(--text-muted);justify-content:center;align-items:center;display:flex}.shell{flex-direction:column;min-height:100vh;display:flex}.shell-header{border-bottom:1px solid var(--border);background:var(--panel);justify-content:space-between;align-items:center;padding:.75rem 1.25rem;display:flex}.shell-session{align-items:center;gap:.75rem;display:flex}.shell-main{flex:1;width:100%;max-width:64rem;margin:0 auto;padding:1.5rem 1.25rem}.shell-main>*{animation:route-in var(--t-med) ease-out both}@keyframes route-in{0%{opacity:0;transform:translateY(4px)}}@media (width<=640px){.shell-nav{z-index:20;background:var(--panel);border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:repeat(4,1fr);gap:0;display:grid;position:fixed;bottom:0;left:0;right:0}.shell-nav .nav-link{border-radius:0;justify-content:center;align-items:center;min-height:48px;display:flex}.shell-nav .nav-link:hover{background:0 0}.shell-nav .nav-link.is-active{box-shadow:inset 0 2px 0 var(--accent)}.shell-main{padding-bottom:calc(64px + env(safe-area-inset-bottom))}}.panel{background:var(--panel);border:1px solid var(--border);border-radius:10px;padding:1.5rem}a{color:var(--accent)}.mono{font-family:var(--mono);font-size:.85em}.pos{color:var(--gain)}.neg{color:var(--danger)}.list-controls{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-bottom:1rem;display:flex}.list-controls h2{margin-right:auto}.segmented{border:1px solid var(--border);border-radius:6px;display:inline-flex;overflow:hidden}.segmented button{color:var(--text-muted);transition:background-color var(--t-med), color var(--t-med);background:0 0;border-radius:0;padding:.35rem .75rem;font-size:.9rem}.segmented button:hover:not(:disabled){background:var(--bg);color:var(--text)}.segmented button.is-active{background:var(--bg);color:var(--text);box-shadow:inset 0 -2px 0 var(--accent)}.field-inline{align-items:center;gap:.5rem;display:inline-flex}.field-inline span{color:var(--text-muted);font-size:.85rem}.field-inline input{width:4.5rem;padding:.3rem .5rem}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:.9rem}.data-table th{text-align:left;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:.78rem;font-weight:500}.data-table th,.data-table td{border-bottom:1px solid var(--border);white-space:nowrap;padding:.55rem .6rem}.data-table tbody tr{transition:background-color var(--t-fast)}.data-table tbody tr:hover{background:#e8e6da08}.data-table tbody tr:last-child td{border-bottom:none}.data-table .num{text-align:right;font-variant-numeric:tabular-nums}.data-table button{padding:.3rem .75rem;font-size:.85rem}.wallet-link{color:var(--text);font-weight:500;text-decoration:none}.wallet-link:hover{color:var(--accent)}.badge{border:1px solid var(--border);color:var(--text-muted);border-radius:999px;padding:.05rem .45rem;font-size:.75rem;display:inline-block}.badge-warn{border-color:var(--danger);color:var(--danger);margin-left:.5rem}.badge-strategy{border-color:var(--accent);color:var(--accent-hover);margin-left:.5rem}.data-table .badge{margin-left:.5rem}.score-value{color:var(--text);font-variant-numeric:tabular-nums;cursor:help}.filter-row{border-top:1px solid var(--border);padding-top:.75rem;font-size:.9rem}.filter-row input[type=number]{width:5.5rem}.filter-row input[type=text]{width:7rem}.ranking-notice{border:1px solid var(--border);border-left:3px solid var(--warn);color:var(--text-muted);font-family:var(--mono);letter-spacing:.04em;font-variant-numeric:tabular-nums;border-radius:6px;flex-wrap:wrap;align-items:center;gap:.4rem .75rem;margin:0 0 1rem;padding:.45rem .7rem;font-size:.72rem;display:flex}.ranking-notice .badge{border-color:var(--warn);color:var(--warn)}.ranking-notice.is-skill{border-left-color:var(--gain)}.ranking-notice.is-skill .badge{border-color:var(--gain);color:var(--gain)}.state-chip{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:.5rem 0;font-size:.7rem;display:inline-block}.field-inline select{background:var(--bg);color:var(--text);border:1px solid var(--border);font:inherit;border-radius:6px;padding:.3rem .4rem}.back-link{font-size:.85rem;text-decoration:none}.back-link:hover{color:var(--text)}.detail-head{justify-content:space-between;align-items:flex-start;gap:1rem;margin:.5rem 0 1rem;display:flex}.detail-address{margin:.15rem 0 0}.section-title{margin:1.25rem 0 .5rem;font-size:1rem}.stats-grid{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.75rem;margin:0 0 .75rem;display:grid}.stats-grid>div{background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:.75rem}.stats-grid dt{color:var(--text-muted);font-size:.8rem}.stats-grid dd{margin:.15rem 0 0;font-size:1.1rem;font-weight:600}.shell-nav{gap:.25rem;display:flex}.nav-link{color:var(--text-muted);border-radius:var(--r-s);transition:color var(--t-fast);padding:.35rem .7rem;font-size:.9rem;text-decoration:none}.nav-link:hover{color:var(--text);background:var(--bg)}.nav-link.is-active{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent);background:0 0}.deck{max-width:26rem;margin:0 auto}.deck-head{justify-content:space-between;align-items:baseline;margin-bottom:.75rem;display:flex}.system-banner{border:1px solid var(--danger);color:var(--danger);font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;animation:route-in var(--t-med) ease-out both;background:#f0716c1f;border-left-width:4px;border-radius:6px;margin:0 0 1rem;padding:.6rem .9rem;font-size:.72rem;font-weight:600}.settings-form{flex-direction:column;gap:1rem;max-width:22rem;margin-bottom:1rem;display:flex}.settings-form button{align-self:flex-start;min-width:7rem}button.is-done{animation:save-flash var(--t-med) ease-out both}@keyframes save-flash{0%{background-color:#8fdcb6}}.deck-count{font-family:var(--display);font-variant-numeric:tabular-nums;font-size:1rem}.deck-chip{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .6rem;font-size:.7rem}.card-well{height:23rem;position:relative}.card{--text:var(--ink);--text-muted:var(--ink-dim);--gain:var(--ink-yes);--danger:var(--ink-no);--border:#201e1824;--panel:#201e180d;background:var(--ticket);color:var(--ink);border-radius:var(--r-card);touch-action:none;cursor:grab;perspective:900px;will-change:transform;border:1px solid #201e182e;flex-direction:column;padding:.9rem 1rem 1rem;display:flex;position:absolute;inset:0;overflow:hidden;box-shadow:0 1px 2px #00000059,0 12px 32px #00000073}.card-flip{transform-style:preserve-3d;flex-direction:column;flex:1;display:flex;position:relative}.card-peek{flex-direction:column;flex:1;min-height:0;display:flex}.card:active{cursor:grabbing}.card-behind{pointer-events:none;cursor:default}.card.is-committing{animation:.32s ease-out commit-glow}@keyframes commit-glow{0%{box-shadow:0 0 0 1px #1e7a4ce6,0 0 1.6rem -.2rem #1e7a4c99,0 1px 2px #00000059,0 12px 32px #00000073}to{box-shadow:0 0 0 1px #1e7a4c00,0 0 1.6rem -.2rem #1e7a4c00,0 1px 2px #00000059,0 12px 32px #00000073}}.card-face{backface-visibility:hidden;flex-direction:column;flex:1;gap:.65rem;display:flex}.card-face-back{background:var(--ticket);position:absolute;inset:0;transform:rotateY(180deg)}.fuse{background:#201e181f;border-radius:4px;flex:none;height:4px}.fuse-fill{border-radius:inherit;background:var(--accent);width:100%;height:100%}.fuse.is-amber .fuse-fill{background:var(--warn);animation:.9s ease-in-out infinite alternate fuse-burn}@keyframes fuse-burn{0%{box-shadow:0 0 #e4a93f00}to{box-shadow:0 0 8px 1px #e4a93f8c}}.intent{z-index:2;border-radius:var(--r-card);pointer-events:none;opacity:0;position:absolute;inset:0}.intent-copy{background:#1e7a4c0f}.intent-pass{background:#b3382e0f}.stamp{font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;background:0 0;border:4px solid;border-radius:8px;padding:2px 14px;font-size:2rem;font-weight:700;line-height:1.1;display:inline-block;position:absolute;top:1.4rem}.intent-copy .stamp{color:var(--ink-yes);left:1.1rem}.intent-pass .stamp{color:var(--ink-no);right:1.1rem}.card-who{align-items:center;gap:.4rem;margin-top:.15rem;display:flex}.card-handle{margin-right:auto;font-weight:600}.card-who .badge-warn{margin-left:0}.badge-key{font-family:var(--mono);letter-spacing:.09em;text-transform:uppercase;font-size:.62rem}.card-cred{font-family:var(--mono);color:var(--text-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:.15rem .7rem;margin:0;font-size:.7rem;display:flex}.card-question{-webkit-line-clamp:3;font-family:var(--display);letter-spacing:0;-webkit-box-orient:vertical;margin:.15rem 0 0;font-size:1.5rem;font-weight:600;line-height:1.15;display:-webkit-box;overflow:hidden}.card-side{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gain);background:#1e7a4c14;border:1px solid #1e7a4c59;border-radius:6px;align-self:flex-start;padding:.15rem .45rem;font-size:.72rem;font-weight:600}.card-side-sell{color:var(--danger);background:#b3382e14;border-color:#b3382e59}.card-ladder{flex-direction:column;gap:.5rem;margin-top:auto;display:flex}.card-prices{background:var(--border);border:1px solid var(--border);border-radius:10px;grid-template-columns:repeat(3,1fr);gap:1px;margin:0;display:grid;overflow:hidden}.card-prices>div{background:var(--ticket);padding:.45rem .55rem}.card-prices dt{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:.56rem}.card-prices dd{font-family:var(--mono);font-variant-numeric:tabular-nums;margin:.1rem 0 0;font-size:1rem;font-weight:500}.card-prices dd small{color:var(--text-muted);margin-left:.15rem;font-size:.6rem;font-weight:500}.card-depth{font-family:var(--mono);color:var(--text-muted);font-variant-numeric:tabular-nums;align-items:center;gap:.5rem;margin:0;font-size:.66rem;display:flex}.depth-bar{background:#201e181f;border-radius:3px;flex:1;height:3px;overflow:hidden}.depth-bar i{background:var(--ink);height:100%;display:block}.card-key{font-family:var(--display);letter-spacing:.14em;text-transform:uppercase;color:#8a6114;font-size:.8rem;font-weight:700}.swing{font-family:var(--mono);font-variant-numeric:tabular-nums;align-items:baseline;gap:.6rem;margin-top:.4rem;display:flex}.swing-from{color:var(--text-muted);font-size:1.2rem;text-decoration:line-through}.swing-to{font-family:var(--display);color:#8a6114;font-size:2rem;font-weight:700}.swing-delta{font-size:.9rem;font-weight:600}.deck-actions{grid-template-columns:1fr 1fr;gap:.6rem;margin-top:.9rem;display:grid}.deck-actions button{min-height:52px}.deck-actions button.is-halted{color:var(--warn);border:1px solid var(--warn);background:0 0}.receipt{--text:var(--ink);--text-muted:var(--ink-dim);--gain:var(--ink-yes);--danger:var(--ink-no);--border:#201e1824;background:var(--ticket);color:var(--ink);border-radius:var(--r-m);border-top:2px dashed #201e1840;margin:.9rem 0 0;padding:.7rem .8rem .8rem;position:relative;box-shadow:0 1px 2px #00000059,0 8px 22px #0006}.receipt-figures{background:var(--border);border:1px solid var(--border);border-radius:var(--r-s);grid-template-columns:repeat(4,1fr);gap:1px;margin:0;display:grid;overflow:hidden}.receipt-figures>div{background:var(--ticket);padding:.45rem .55rem}.receipt-figures dt{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);font-size:.56rem}.receipt-figures dd{font-family:var(--mono);font-variant-numeric:tabular-nums;margin:.1rem 0 0;font-size:.92rem;font-weight:500}.receipt-stamp{z-index:1;font-family:var(--display);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-yes);border:3px solid var(--ink-yes);background:var(--ticket);animation:stamp-slam .22s var(--ease-back) .12s both;border-radius:6px;padding:0 10px;font-size:1.05rem;font-weight:700;line-height:1.35;position:absolute;top:-.55rem;right:.9rem;transform:rotate(-8deg)}@keyframes stamp-slam{0%{opacity:0;transform:rotate(-8deg)scale(1.6)}to{opacity:1;transform:rotate(-8deg)scale(1)}}.receipt-chads{pointer-events:none;height:0;position:absolute;inset:0 0 auto}.receipt-chads i{top:0;left:calc(6% + var(--i) * 9%);background:var(--ticket);width:5px;height:7px;animation:chad .6s var(--ease-out) both;animation-delay:calc(var(--i) * 30ms);border-radius:1px;position:absolute}.receipt-chads i:nth-child(3n+2){background:var(--ink-yes)}.receipt-chads i:nth-child(3n){background:var(--accent)}@keyframes chad{0%{opacity:1;transform:translate(0)rotate(0)}to{transform:translate(var(--dx), var(--dy)) rotate(var(--rz));opacity:0}}.empty-mark{place-items:center;height:100%;min-height:4.5rem;display:grid}.empty-mark-ring{border:1px solid var(--border);border-radius:50%;width:3.25rem;height:3.25rem;animation:3.2s ease-in-out infinite mark-pulse}.empty-mark-ticket{border:1.5px dashed var(--border);border-radius:var(--r-card);width:100%;height:100%;animation:3.2s ease-in-out infinite ticket-breathe}@keyframes ticket-breathe{0%,to{opacity:.5}50%{opacity:.9}}@keyframes mark-pulse{0%,to{border-color:var(--border);transform:scale(1);box-shadow:0 0 #c8a25e40}50%{border-color:var(--accent);transform:scale(1.08);box-shadow:0 0 0 .65rem #c8a25e00}}.loading-pulse{background:linear-gradient(90deg, var(--border) 0%, var(--accent) 50%, var(--border) 100%);background-size:220% 100%;border-radius:3px;width:100%;max-width:16rem;height:3px;margin:.75rem 0;animation:1.4s linear infinite pulse-slide}@keyframes pulse-slide{0%{background-position:100% 0}to{background-position:-100% 0}}.account-grid dd{font-family:var(--mono);font-variant-numeric:tabular-nums;font-weight:500}.tile-ack{border-radius:var(--r-s);animation:.4s ease-out tile-ack}@keyframes tile-ack{0%{background-color:#4fbe8c1f}to{background-color:#0000}}.stats-footnote{margin:0 0 1rem;font-size:.8rem}@media (prefers-reduced-motion:reduce){.card.is-committing{box-shadow:0 0 0 1px var(--ink-yes);animation:none}.fuse.is-amber .fuse-fill{animation:none}.receipt-stamp{opacity:1;animation:none}.receipt-chads i{opacity:0;animation:none}.empty-mark-ring{border-color:var(--accent);animation:none}.empty-mark-ticket{opacity:.7;animation:none}.loading-pulse{background-position:50% 0;animation:none}.shell-main>*,.login-card,.system-banner,.form-error,button.is-done,.tile-ack{animation:none}button:active:not(:disabled){transform:none}}
