:root{font-family:system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}}.app{max-width:1140px;margin:0 auto;padding:2rem 1rem}.calc-pane>div{margin:0 auto}.tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;border-bottom:1px solid #333;padding-bottom:.75rem}.tab{padding:.5rem 1rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:inherit;cursor:pointer;font-size:.9rem;transition:background .15s,border-color .15s}.tab:hover{border-color:#646cff}.tab.active{background:#646cff;border-color:#646cff;color:#fff}h1{font-size:1.8rem;margin-bottom:.25rem}h2{font-size:1.3rem;margin-top:2rem;margin-bottom:.25rem}h3{font-size:1rem;margin-bottom:.5rem}.subtitle{color:#888;margin-top:0;margin-bottom:1.5rem}.hint{color:#888;font-size:.85rem}.form{display:flex;gap:1.5rem;flex-wrap:wrap}.field{display:flex;flex-direction:column;gap:.4rem}.field label{font-weight:600;font-size:.9rem}.field input[type=number]{width:100px;padding:.5rem .6rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:inherit;font-size:1rem}.input-row{display:flex;gap:.5rem;align-items:center}.preset{padding:.5rem 1rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:inherit;cursor:pointer;font-size:.9rem;transition:background .15s,border-color .15s}.preset:hover{border-color:#646cff}.preset.active{background:#646cff;border-color:#646cff;color:#fff}.form-section{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #333}.form-section label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.5rem}.form-section .autocomplete{max-width:400px}.form-section input[type=text]{width:100%;padding:.5rem .6rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:inherit;font-size:1rem}.required{color:#ff8a8a}.autocomplete{position:relative}.autocomplete input{width:100%}.suggestions{position:absolute;top:calc(100% + 2px);left:0;right:0;z-index:10;margin:0;padding:.25rem;list-style:none;background:#1a1a1a;border:1px solid #555;border-radius:6px;max-height:240px;overflow-y:auto;box-shadow:0 6px 16px #0006;min-width:220px}.suggestions li{padding:.35rem .5rem;border-radius:4px;cursor:pointer;font-size:.9rem}.suggestions li:hover,.suggestions li.highlighted{background:#2a2a4a}.suggestions li.no-match{color:#888;cursor:default}.suggestions li.no-match:hover{background:transparent}.matrix-wrap{overflow-x:auto;overflow-y:visible}.matrix-table{width:100%;border-collapse:collapse;font-size:.88rem}.matrix-table th{text-align:left;padding:.4rem .5rem;border-bottom:2px solid #444;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:#aaa;white-space:nowrap}.th-hint{text-transform:none;letter-spacing:0;color:#666;font-weight:400}.matrix-table th.sub-col{border-bottom-width:3px}.matrix-table th.col-0{border-bottom-color:#5a9e63}.matrix-table th.col-1{border-bottom-color:#c06a55}.matrix-table th.col-2{border-bottom-color:#8b7fd4}.sub-name{background:none;border:none;color:inherit;font:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;padding:0}.sub-name:hover{color:#646cff}.badge-active{background:#646cff;color:#fff;border-radius:999px;padding:.05rem .5rem;font-size:.65rem;text-transform:none;letter-spacing:0;margin-left:.4rem}.sub-remove{background:none;border:none;color:#777;cursor:pointer;font-size:.8rem;margin-left:.4rem;padding:0 .15rem}.sub-remove:hover{color:#ff8a8a}.matrix-table td{padding:.25rem .3rem;border-bottom:1px solid #2a2a2a;vertical-align:top}.matrix-table td.num{color:#888;text-align:right;font-size:.8rem;font-variant-numeric:tabular-nums;padding-top:.6rem;width:1.8rem}.matrix-table input{padding:.35rem .5rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:inherit;font-size:.88rem;min-width:0;width:100%}.note-col,.tag-col{width:13%}.cell-td.active{background:#646cff14}.cell-td.flagged input{border-color:#e8a33d}.cell-td.dup input,.cell-td.notfound input{border-color:#d9534f}.cell-wrap{display:flex;gap:.25rem;align-items:center}.cell-wrap .autocomplete{flex:1}.suggest-btn{background:none;border:1px solid #555;border-radius:6px;cursor:pointer;font-size:.8rem;padding:.25rem .35rem;line-height:1}.suggest-btn:hover{border-color:#646cff}.cell-note{font-size:.72rem;margin-top:.15rem;line-height:1.3}.flag-note{color:#e8a33d}.dup-note{color:#ff8a8a}.dismiss{background:none;border:1px solid #e8a33d;color:#e8a33d;border-radius:4px;font-size:.68rem;cursor:pointer;margin-left:.35rem;padding:0 .3rem}.dismiss:hover{background:#e8a33d;color:#1a1a1a}.sugg-row td{background:#16161e;padding:.5rem .75rem}.sugg-strip{display:flex;gap:.75rem;align-items:flex-start;flex-wrap:wrap}.sugg-label{font-size:.8rem;color:#aaa;min-width:160px;max-width:300px;padding-top:.25rem}.sugg{border:1px solid #444;border-radius:6px;background:#1a1a2a;padding:.5rem .65rem;font-size:.83rem}.sugg a{color:#8b92ff;font-weight:500;text-decoration:none}.sugg a:hover{text-decoration:underline}.sugg .meta{color:#999;font-size:.76rem;margin:.15rem 0 .4rem}.take{border:1px solid #646cff;color:#8b92ff;background:transparent;border-radius:5px;padding:.15rem .55rem;font-size:.75rem;cursor:pointer;margin-right:.3rem}.take:hover{background:#646cff;color:#fff}.modal-overlay{position:fixed;inset:0;background:#0000008c;display:flex;align-items:center;justify-content:center;z-index:100;padding:1rem}.modal{background:#1e1e2e;border:1px solid #444;border-radius:10px;box-shadow:0 12px 34px #00000080;padding:1.1rem 1.25rem;max-width:480px}.modal h3{margin-top:0}.modal p{font-size:.88rem;color:#bbb}.modal .actions{display:flex;gap:.5rem;justify-content:flex-end}.dont-warn{display:block;margin-top:.8rem;font-size:.78rem;color:#888}.export-modal{max-width:520px;width:100%}.export-options{display:flex;flex-wrap:wrap;gap:.5rem 1rem;margin:.5rem 0 .75rem}.export-format{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;margin:.25rem 0 .5rem;padding-bottom:.5rem;border-bottom:1px solid #333}.import-error{color:#ff8a8a;font-size:.85rem;margin:.4rem 0 0}.picker-import{display:block;margin-top:.9rem;font-size:.85rem}.export-check{font-size:.85rem;display:inline-flex;align-items:center;gap:.3rem;cursor:pointer}.export-text{width:100%;padding:.5rem .6rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:inherit;font-size:.85rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}.export-count{margin-right:auto;align-self:center}@media(prefers-color-scheme:light){.export-text{background:#fff;border-color:#ccc}}.form-actions{display:flex;gap:.75rem;align-items:center;justify-content:flex-end;margin-top:1rem}.submit{padding:.5rem 1.25rem;border-radius:6px;border:1px solid #646cff;background:#646cff;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;transition:opacity .15s}.submit:disabled{opacity:.5;cursor:not-allowed}.error{color:#ff8a8a;margin-top:1rem}.static-row{cursor:default}.summary-table tbody tr.static-row:hover{background:transparent}.mana-cost{white-space:nowrap;font-variant-numeric:tabular-nums}.table-wrap{overflow-x:auto}.summary-table,.dist-table{width:100%;border-collapse:collapse;margin-top:.5rem;font-size:.9rem;font-variant-numeric:tabular-nums}.summary-table th,.dist-table th{text-align:left;padding:.5rem .75rem;border-bottom:2px solid #444;font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:#aaa}.summary-table td,.dist-table td{padding:.4rem .75rem;border-bottom:1px solid #333}.summary-table tbody tr{cursor:pointer;transition:background .1s}.summary-table tbody tr:hover{background:#2a2a3a}.summary-table tbody tr.selected{background:#2a2a4a}.bar-col{width:40%}.bar-cell{padding-right:1rem}.bar{height:16px;background:#646cff;border-radius:3px;min-width:1px;transition:width .2s}.detail{margin-top:1.5rem;padding:1rem;border:1px solid #333;border-radius:8px;background:#1e1e2e}.link-btn{display:inline-block;margin-top:.6rem;background:none;border:none;color:#8b92ff;cursor:pointer;font-size:.85rem;padding:0;text-decoration:underline}.paste-box{margin-top:.75rem;display:flex;flex-direction:column;gap:.5rem;max-width:400px}.paste-hint{margin:0;font-size:.82rem;line-height:1.4;color:#999}.paste-box textarea{width:100%;padding:.5rem .6rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:inherit;font-size:.9rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}.paste-box .submit{align-self:flex-start}.list-toolbar{display:flex;align-items:center;gap:1rem;margin:1.25rem 0 .5rem;flex-wrap:wrap}.group-toggle{display:flex;gap:0;margin-left:auto}.group-toggle .toggle{padding:.35rem .8rem;border:1px solid #555;background:#1a1a1a;color:inherit;cursor:pointer;font-size:.85rem}.group-toggle .toggle:first-child{border-radius:6px 0 0 6px}.group-toggle .toggle:last-child{border-radius:0 6px 6px 0;border-left:none}.group-toggle .toggle.on{background:#646cff;border-color:#646cff;color:#fff}.deck-group{margin-top:1.25rem}.group-head{display:flex;align-items:baseline;gap:.5rem;font-size:.95rem;border-bottom:1px solid #333;padding-bottom:.35rem;margin-bottom:.25rem}.group-count{color:#888;font-weight:400}.group-price{margin-left:auto;color:#888;font-weight:400;font-size:.85rem;font-variant-numeric:tabular-nums}.list-table{width:100%;min-width:700px;table-layout:fixed;border-collapse:collapse;font-size:.9rem}.list-table .col-qty{width:4.6rem}.list-table .col-mana{width:118px}.list-table .col-type{width:148px}.list-table .col-tag{width:7rem}.list-table .col-price{width:4.5rem}.list-table .col-actions{width:3.4rem}.list-table td{padding:.3rem .5rem;border-bottom:1px solid #262626;vertical-align:middle}.qty-cell{white-space:nowrap}.qty-cell .step{border:1px solid #555;background:#1a1a1a;color:inherit;width:1.3rem;height:1.3rem;border-radius:4px;cursor:pointer;line-height:1;font-size:.9rem}.qty-cell .qty{display:inline-block;min-width:1.2rem;text-align:center;font-variant-numeric:tabular-nums}.name-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-cell a{color:#8b92ff;text-decoration:none}.name-cell a:hover{text-decoration:underline}.crown{color:#e8a33d;margin-left:.35rem}.dup-flag{display:inline-block;margin-left:.4rem;padding:0 .35rem;border-radius:999px;font-size:.68rem;background:#3a1e1e;color:#ff8a8a;vertical-align:middle}.notfound-row .name-cell{color:#ff8a8a}.mana-cell{white-space:nowrap;overflow:hidden}.mana-cost-pips{display:inline-flex;align-items:center;gap:1px}.mana-pip{width:15px;height:15px;vertical-align:-2px}.mana-slash{margin:0 2px;color:#888}.type-cell{color:#aaa;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag-cell .tag-input{width:6.5rem;padding:.2rem .4rem;border-radius:5px;border:1px solid #444;background:#1a1a1a;color:inherit;font-size:.8rem}.price-cell{text-align:right;font-variant-numeric:tabular-nums;color:#ccc;white-space:nowrap}.actions-cell{white-space:nowrap;text-align:right}.icon-btn{background:none;border:none;color:#777;cursor:pointer;font-size:.9rem;padding:0 .25rem}.icon-btn:hover{color:#8b92ff}.icon-btn.on{color:#e8a33d}.deck-stats{margin-top:1rem}.stats-row{display:flex;gap:2rem;align-items:flex-start;flex-wrap:wrap}.stat-num{font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums}.stat-num .stat-sub{font-size:.9rem;font-weight:400;color:#888}.stat-num .ok{color:#6fdc8c}.stat-num .over{color:#ff8a8a}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:#888}.stat.colors{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}.color-count{display:inline-flex;align-items:center;gap:.2rem;font-variant-numeric:tabular-nums}.curve{margin-top:1rem}.curve-bars{display:flex;align-items:flex-end;gap:.4rem;height:70px;margin-top:.35rem}.curve-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end}.curve-bar{width:60%;background:#646cff;border-radius:3px 3px 0 0;min-height:2px}.curve-n{font-size:.7rem;color:#aaa;height:.9rem}.curve-mv{font-size:.7rem;color:#888;margin-top:.15rem}.group-legend{margin-top:1rem}@media(prefers-color-scheme:light){.field input[type=number]{background:#fff;border-color:#ccc}.link-btn{color:#4a52d4}.paste-box textarea,.group-toggle .toggle,.qty-cell .step,.tag-cell .tag-input{background:#fff;border-color:#ccc}.group-toggle .toggle.on{background:#646cff;border-color:#646cff;color:#fff}.name-cell a,.icon-btn:hover{color:#4a52d4}.error{color:#c03030}.crown,.icon-btn.on{color:#b07a1a}.list-table td{border-bottom-color:#eee}.group-head{border-bottom-color:#ddd}.dup-flag{background:#fde3e3;color:#c03030}.type-cell{color:#666}.price-cell{color:#333}.tabs{border-bottom-color:#ddd}.tab{background:#f0f0f0;border-color:#ccc}.tab.active{background:#646cff;border-color:#646cff;color:#fff}.form-section{border-bottom-color:#ddd}.form-section input[type=text]{background:#fff;border-color:#ccc}.required{color:#c03030}.suggestions{background:#fff;border-color:#ccc;box-shadow:0 6px 16px #00000026}.suggestions li:hover,.suggestions li.highlighted{background:#e8e8ff}.suggestions li.no-match:hover{background:transparent}.matrix-table th{border-bottom-color:#ccc;color:#666}.matrix-table td{border-bottom-color:#eee}.matrix-table input{background:#fff;border-color:#ccc}.cell-td.active{background:#646cff12}.cell-td.flagged input{border-color:#b07a1a}.flag-note{color:#b07a1a}.dup-note{color:#c03030}.dismiss{border-color:#b07a1a;color:#b07a1a}.dismiss:hover{background:#b07a1a;color:#fff}.suggest-btn{border-color:#ccc}.sugg-row td{background:#f4f4fa}.sugg{background:#fff;border-color:#ddd}.sugg a,.take{color:#4a52d4}.take:hover{color:#fff}.modal{background:#fff;border-color:#ddd}.modal p{color:#555}.preset{background:#f0f0f0;border-color:#ccc}.preset.active{background:#646cff;border-color:#646cff;color:#fff}.summary-table th,.dist-table th{border-bottom-color:#ccc;color:#666}.summary-table td,.dist-table td{border-bottom-color:#eee}.summary-table tbody tr:hover{background:#f0f0ff}.summary-table tbody tr.selected{background:#e8e8ff}.detail{background:#f8f8ff;border-color:#ddd}}.brew-picker{width:100%;max-width:520px;margin:6vh auto 0}.brand{display:flex;align-items:center;gap:12px;margin-bottom:6px}.brand-tile{width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,#5a9e63,#8b7fd4);display:inline-flex;align-items:center;justify-content:center;font-size:16px;color:#fff;flex-shrink:0}.brand-tile.lg{width:38px;height:38px;font-size:18px}.brand-name{font-size:22px;font-weight:700}.brand-intro{color:#888;font-size:.95rem;margin:0 0 16px}.brew-tenets{list-style:none;margin:0 0 24px;padding:12px 14px;border:1px solid #2f2f38;border-left:3px solid #646cff;border-radius:8px;background:#16161e;display:flex;flex-direction:column;gap:8px;font-size:.85rem;line-height:1.4;color:#b9b9c4}.brew-tenets strong{color:#e6e6ee}.picker-label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.5rem}.brew-picker .autocomplete input{width:100%;padding:.6rem .7rem;border-radius:8px;border:1px solid #555;background:#1a1a1a;color:inherit;font-size:1rem}.look-up{margin-top:18px;padding:.6rem 1.3rem;border-radius:8px;font-size:.95rem}.brew-workspace{width:1180px;max-width:100%;margin:0 auto;background:#242424;border:1px solid #333;border-radius:14px;overflow:hidden;box-shadow:0 20px 60px #00000073;color:#ffffffde}.ws-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:16px 20px;border-bottom:1px solid #2c2c2c;flex-wrap:wrap}.ws-commander{display:flex;align-items:center;gap:14px}.ws-commander-name{font-size:17px;font-weight:700}.ws-commander-sub{font-size:12px;color:#888}.ci-pips{display:inline-flex;gap:3px;margin-left:6px;vertical-align:middle}.ci-pip{width:14px;height:14px;border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 1px #0000004d}.ws-actions{display:flex;align-items:center;gap:20px}.ws-counter{text-align:right}.ws-count{font-size:22px;font-weight:700;font-variant-numeric:tabular-nums}.ws-count-total{color:#666;font-size:15px}.ws-count-label{font-size:11px;color:#888;text-transform:uppercase;letter-spacing:.06em}.ws-secondary{padding:.5rem 1.1rem;border-radius:6px;border:1px solid #555;background:#1a1a1a;color:inherit;font-weight:500;font-size:.85rem;cursor:pointer}.ws-secondary:hover{border-color:#646cff}.ws-clear{color:#888;margin-top:0}.ws-clear:hover{color:#8b92ff}.ws-body{display:flex}.ws-matrix{flex:1;padding:16px 20px;min-width:0;overflow-x:auto}.matrix-caption{font-size:13px;color:#aaa;margin-bottom:8px}.matrix-caption-hint{color:#666}.brew-workspace .matrix-table{width:100%;border-collapse:collapse;font-size:.86rem;font-variant-numeric:tabular-nums}.brew-workspace .matrix-table th{text-align:left;padding:.4rem .5rem;border-bottom:2px solid #444;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:#aaa;white-space:nowrap}.brew-workspace .matrix-table th.num-col{width:44px;text-align:center;color:#666;padding:.4rem .35rem}.brew-workspace .matrix-table th.tag-col,.brew-workspace .matrix-table th.note-col{width:15%}.brew-workspace .matrix-table th.sub-col{border-bottom-width:3px}.brew-workspace .matrix-table td{padding:.3rem;border-bottom:1px solid #2a2a2a;vertical-align:top}.brew-workspace .matrix-table td.num{color:#666;font-size:.78rem;padding-top:.55rem;width:44px;white-space:nowrap}.brew-workspace .drag-handle{cursor:grab;color:#555;font-size:.85rem;margin-right:.15rem;-webkit-user-select:none;user-select:none}.brew-workspace .drag-handle:hover{color:#8b92ff}.brew-workspace .drag-handle:active{cursor:grabbing}.brew-workspace tr.dragging>td{background:#646cff24}.brew-workspace tr.active-row>td{box-shadow:inset 0 0 0 0 transparent}.brew-workspace tr.active-row{outline:2px solid #646cff;outline-offset:-2px}.brew-workspace .matrix-table input,.brew-workspace .tag-input{width:100%;padding:.35rem .5rem;border-radius:6px;border:1px solid #444;background:#1a1a1a;color:inherit;font-size:.86rem}.brew-workspace .tag-input{font-size:.84rem;font-weight:600}.brew-workspace .tag-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:1.5rem;cursor:pointer;background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6"><path d="M1 1l4 4 4-4" fill="none" stroke="%23888" stroke-width="1.5" stroke-linecap="round"/></svg>');background-repeat:no-repeat;background-position:right .55rem center}.brew-workspace .otag-line{color:#666;font-size:.72rem;margin-top:.15rem;min-height:.9rem}.brew-workspace .note-input{width:100%;padding:.35rem .5rem;border-radius:6px;border:1px solid #3a3a3a;background:#181818;color:#bbb;font-size:.78rem;font-family:inherit;line-height:1.3;resize:vertical;overflow:hidden;min-height:2rem}.brew-workspace .cell-td{cursor:pointer}.brew-workspace .cell-td.active{background:#646cff14}.brew-workspace .cell-td.active input{border-color:#555}.brew-workspace .cell-td.flagged input{border-color:#e8a33d}.brew-workspace .cell-td.dup input,.brew-workspace .cell-td.notfound input{border-color:#d9534f}.brew-workspace .cell-note{font-size:.7rem;margin-top:.15rem;line-height:1.3}.brew-workspace .flag-note{color:#e8a33d}.brew-workspace .dup-note{color:#ff8a8a}.brew-workspace .dismiss{border-color:#e8a33d;color:#e8a33d}.brew-workspace .dismiss:hover{background:#e8a33d;color:#1a1a1a}.brew-workspace .suggestions{background:#1a1a1a;border-color:#555;box-shadow:0 8px 22px #00000080}.brew-workspace .suggestions li:hover,.brew-workspace .suggestions li.highlighted{background:#2a2a4a}.brew-workspace .sub-name:hover{color:#a7adff}.brew-workspace .badge-active{font-size:.6rem}.brew-workspace .sugg-row td{padding:0;border-bottom:none;background:#242424}.brew-workspace .sugg-strip{background:#16161e;padding:.6rem .8rem;border-radius:8px;border-left:2px solid #646cff;margin:.2rem 0 .5rem;display:block}.strip-label-row{font-size:.78rem;color:#aaa;margin-bottom:.5rem}.strip-meta{color:#666}.strip-empty{color:#666;font-size:.78rem}.strip-cards{display:flex;gap:.6rem;flex-wrap:wrap}.strip-card{border:1px solid #444;border-radius:6px;background:#1a1a2a;padding:.5rem .6rem;font-size:.8rem}.strip-card-name{font-weight:500;color:#8b92ff;display:block}.strip-card-meta{color:#999;font-size:.72rem;margin:.15rem 0 .4rem;font-variant-numeric:tabular-nums}.strip-card-actions{display:flex;flex-wrap:wrap;gap:.25rem}.brew-workspace .take{padding:.12rem .5rem;font-size:.72rem;margin:0}.ws-rail{width:280px;flex-shrink:0;border-left:1px solid #2c2c2c;padding:16px;background:#1e1e2e}.rail-heading{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#888;font-weight:600;margin-bottom:10px}.rail-sub{text-transform:none;letter-spacing:0;color:#666;font-weight:600}.rail-divider{height:1px;background:#333;margin:14px 0}.fill-bars{display:flex;flex-direction:column;gap:12px}.fill-bar-top{display:flex;justify-content:space-between;font-size:.8rem;margin-bottom:4px}.fill-active{color:#646cff}.fill-count{font-variant-numeric:tabular-nums}.fill-track{height:6px;background:#111;border-radius:3px;overflow:hidden}.fill-fill{height:100%;border-radius:3px;transition:width .2s}.attention{display:flex;flex-direction:column;gap:7px;font-size:.8rem}.attention-row{display:flex;gap:7px;align-items:flex-start}.attention-dot.red{color:#ff8a8a}.attention-dot.amber{color:#e8a33d}.attention-dot.empty{color:#888}.attention-dot.ok{color:#5a9e63}.mv-curve{display:flex;align-items:flex-end;gap:4px;height:54px}.mv-bar{flex:1;background:#5a9e63;border-radius:2px 2px 0 0;min-height:3%}.mv-axis{display:flex;gap:4px;font-size:.64rem;color:#666;margin-top:3px}.mv-axis span{flex:1;text-align:center}@media(max-width:860px){.ws-body{flex-direction:column}.ws-rail{width:auto;border-left:none;border-top:1px solid #2c2c2c}}@media(prefers-color-scheme:light){.brand-intro{color:#666}.brew-picker .autocomplete input{background:#fff;border-color:#ccc}}.hyp-head{text-align:center;margin-bottom:1.5rem}.hyp-head h1{margin-bottom:.5rem}.hyp-head .subtitle{max-width:620px;margin:0 auto}.hyp-grid{display:grid;grid-template-columns:320px 1fr;gap:1.5rem;align-items:start}.hyp-params,.hyp-results{border:1px solid #333;border-radius:12px;background:#1e1e2e;padding:1.25rem}.panel-title{margin:0 0 1rem;font-size:1.05rem}.hyp-field{margin-bottom:1rem}.hyp-field input[type=number]{width:100%}.preset-row{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.4rem}.preset-row .preset{padding:.25rem .5rem;font-size:.8rem}.play-toggle{margin-top:.4rem}.how-it-works{margin:1.25rem 0;padding:.85rem 1rem;border:1px solid #3a3a52;border-radius:8px;background:#646cff0f}.how-it-works h3{margin:0 0 .5rem;font-size:.9rem;color:#a7adff}.how-it-works p{margin:0 0 .6rem;font-size:.82rem;line-height:1.5;color:#aaa}.how-it-works p:last-child{margin-bottom:0}.how-it-works .formula{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.8rem;color:#cdd0ff;background:#00000040;padding:.4rem .5rem;border-radius:5px}.copy-link{width:100%;text-align:center}.headline{border:1px solid #333;border-radius:10px;padding:1.25rem;text-align:center;background:#646cff0f;margin-bottom:1.5rem}.headline-label{font-size:.9rem;color:#aaa}.headline-value{font-size:3rem;font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums;background:linear-gradient(135deg,#8b92ff,#b98bff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:.25rem 0}.headline-sub{font-size:.85rem;color:#888}.section-title{font-size:.95rem;margin:1.5rem 0 .5rem}.exact-table .num-cell,.turn-table .num-cell{text-align:right;font-variant-numeric:tabular-nums}.exact-table .dist-col{width:45%}.exact-table .bar-cell{padding-right:.75rem}.exact-table .bar.muted{background:#555}.summary-table td.strong{font-weight:600}.summary-table td.dim{color:#888}.curve-wrap{border:1px solid #333;border-radius:8px;padding:.75rem;background:#00000026}.curve-legend{display:flex;gap:1rem;justify-content:center;font-size:.75rem;margin-bottom:.25rem}.curve-legend .lg:before{content:"";display:inline-block;width:14px;height:0;border-top-width:2px;border-top-style:solid;vertical-align:middle;margin-right:.35rem}.curve-legend .lg.atleast{color:#8b92ff}.curve-legend .lg.atleast:before{border-top-color:#8b92ff}.curve-legend .lg.zero{color:#d98b8b}.curve-legend .lg.zero:before{border-top-style:dashed;border-top-color:#d98b8b}.curve-svg{width:100%;height:auto;display:block}.curve-grid{stroke:#333;stroke-width:1}.curve-axis{fill:#888;font-size:11px}.curve-line{fill:none;stroke-width:2}.curve-line.atleast{stroke:#8b92ff}.curve-line.zero{stroke:#d98b8b;stroke-dasharray:4 3}.quick-stats{margin-top:1.5rem;padding:1rem;border:1px solid #3a3a52;border-radius:8px;background:#646cff0f}.quick-stats h3{margin:0 0 .6rem;font-size:.9rem;color:#a7adff}.quick-stats div{font-size:.85rem;color:#ccc;margin-bottom:.3rem;font-variant-numeric:tabular-nums}.quick-stats div:last-child{margin-bottom:0}@media(max-width:780px){.hyp-grid{grid-template-columns:1fr}}@media(prefers-color-scheme:light){.hyp-params,.hyp-results,.headline,.curve-wrap{background:#f8f8ff;border-color:#ddd}.how-it-works,.quick-stats{background:#f0f0ff;border-color:#d5d5f0}.how-it-works h3,.quick-stats h3{color:#4a52d4}.how-it-works p{color:#555}.how-it-works .formula{color:#3a3f9e;background:#e6e6fb}.headline-value{background:linear-gradient(135deg,#5a63e0,#9a5ae0);-webkit-background-clip:text;background-clip:text}.quick-stats div{color:#333}.exact-table .bar.muted{background:#ccc}.curve-grid{stroke:#e2e2e2}}.playtest{position:fixed;inset:0;height:100dvh;z-index:200;display:flex;flex-direction:column;overflow:hidden;background:#171717;color:#ffffffde;--pt-cw: 120px;--pt-ch: 168px}.playtest .preset{background:#1a1a1a;border-color:#555;color:#ffffffe6}.playtest .modal{background:#1e1e2e;border-color:#444}.playtest .modal p{color:#bbb}.playtest .hint{color:#888}.pt-topbar{display:flex;align-items:center;gap:1.25rem;padding:10px 16px;border-bottom:1px solid #2c2c2c;background:#1e1e2e;flex-wrap:wrap}.pt-brand{display:inline-flex;align-items:center;gap:10px;font-size:17px;font-weight:700}.pt-life{display:inline-flex;align-items:center;gap:.4rem}.pt-life-btn{width:1.6rem;height:1.6rem;border-radius:50%;border:1px solid #555;background:#1a1a1a;color:inherit;cursor:pointer;font-size:1rem;line-height:1}.pt-life-btn:hover{border-color:#646cff}.pt-life-value{font-size:1.3rem;font-weight:700;min-width:2.2rem;text-align:center;font-variant-numeric:tabular-nums}.pt-turn{color:#aaa;font-size:.9rem;font-variant-numeric:tabular-nums}.pt-controls{margin-left:auto;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.pt-btn{padding:.4rem .9rem;border-radius:999px;border:1px solid #555;background:#1a1a1a;color:inherit;cursor:pointer;font-size:.85rem}.pt-btn:hover:not(:disabled){border-color:#646cff}.pt-btn:disabled{opacity:.4;cursor:not-allowed}.pt-btn.primary{background:#646cff;border-color:#646cff;color:#fff;font-weight:600}.pt-close{background:none;border:none;color:#888;cursor:pointer;font-size:1.2rem;padding:0 .4rem}.pt-close:hover{color:#ff8a8a}.pt-battlefield{flex:1;overflow:auto;padding:12px 16px;display:flex;flex-direction:column;background:linear-gradient(#646cff05,#646cff05),repeating-linear-gradient(0deg,transparent 0 39px,#1d1d1d 39px 40px),repeating-linear-gradient(90deg,transparent 0 39px,#1d1d1d 39px 40px)}.pt-zone-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:#888;font-weight:600;margin-bottom:6px}.pt-zone-view{display:block;background:none;border:none;padding:0;cursor:pointer;font-family:inherit}.pt-zone-view:hover{color:#a7adff}.pt-battlefield-cards{position:relative;flex:1;min-height:220px}.pt-battlefield-cards .pt-card-wrap{position:absolute;left:clamp(0px,var(--x, 0px),calc(100% - var(--pt-cw)));top:clamp(0px,var(--y, 0px),calc(100% - var(--pt-ch)))}.pt-marquee{position:absolute;z-index:40;border:1px dashed #b9b9c4;background:#b9b9c414;pointer-events:none}.pt-card-wrap.pt-selected .pt-card{outline:3px solid #f2c744;outline-offset:1px}.pt-empty-hint{color:#666;font-size:.85rem;padding:2rem 0}.pt-bottombar{display:flex;gap:1.5rem;align-items:flex-end;padding:10px 16px 14px;border-top:1px solid #2c2c2c;background:#1a1a1a;position:relative;z-index:10}.pt-hand{flex:1;min-width:0}.pt-hand-cards{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:4px}.pt-piles{display:flex;gap:1rem;flex-shrink:0}.pt-pile-card{width:var(--pt-cw);height:var(--pt-ch);position:relative}.pt-slot-empty{width:var(--pt-cw);height:var(--pt-ch);border:1px dashed #3a3a3a;border-radius:6px}.pt-cardback{width:var(--pt-cw);height:var(--pt-ch);border-radius:6px;border:1px solid #444;background:radial-gradient(circle at 50% 42%,#4a3b28 0 18%,transparent 19%),linear-gradient(135deg,#6b4f2e,#3d2b16)}.pt-card-wrap{position:relative;width:var(--pt-cw);flex-shrink:0}.pt-card-tap{position:relative;width:var(--pt-cw);height:var(--pt-ch);transition:transform .15s}.pt-card-tap.tapped{transform:rotate(-90deg)}.pt-card{display:block;width:var(--pt-cw);height:var(--pt-ch);padding:0;border:1px solid #444;border-radius:6px;background:#1a1a2a;color:inherit;cursor:grab;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.pt-card-wrap.pt-dragging{opacity:.4}.pt-card:hover{border-color:#646cff}.pt-card img{display:block;width:100%;height:100%;object-fit:cover}.pt-card-proxy{display:flex;flex-direction:column;justify-content:space-between;height:100%;padding:6px;text-align:left;font-size:.62rem;line-height:1.25}.pt-proxy-name{font-weight:600;font-size:.68rem}.pt-proxy-cost{color:#aaa}.pt-proxy-type{color:#888}.pt-card-menu-btn{position:absolute;top:4px;right:4px;width:1.25rem;height:1.25rem;border-radius:4px;border:1px solid #555;background:#141414d9;color:#ccc;cursor:pointer;font-size:.8rem;line-height:1}.pt-card-menu-btn:hover{border-color:#646cff;color:#fff}.pt-menu{position:absolute;left:0;bottom:calc(100% + 4px);z-index:20;margin:0;padding:.25rem;list-style:none;min-width:10rem;background:#1a1a1a;border:1px solid #555;border-radius:8px;box-shadow:0 8px 22px #00000080}.pt-battlefield .pt-menu{bottom:auto;top:calc(100% + 4px)}.pt-menu button{display:block;width:100%;padding:.35rem .6rem;border:none;background:none;color:inherit;text-align:left;font-size:.85rem;border-radius:5px;cursor:pointer}.pt-menu button:hover{background:#2a2a4a}.pt-popover-anchor{position:relative}.pt-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:30;min-width:12rem;padding:.35rem;background:#1a1a1a;border:1px solid #555;border-radius:8px;box-shadow:0 8px 22px #00000080}.pt-controls .pt-popover{left:auto;right:0}.pt-popover-item{display:block;width:100%;padding:.35rem .6rem;border:none;background:none;color:inherit;text-align:left;font-size:.85rem;border-radius:5px;cursor:pointer}.pt-popover-item:hover{background:#2a2a4a}.pt-token-item{display:flex;align-items:baseline;justify-content:space-between;gap:.75rem}.pt-token-pt{color:#8a8a9a;font-variant-numeric:tabular-nums;flex-shrink:0}.pt-counter-row{display:flex;align-items:center;gap:.45rem;padding:.25rem .4rem}.pt-counter-name{flex:1;font-size:.85rem}.pt-counter-value{min-width:1.4rem;text-align:center;font-variant-numeric:tabular-nums}.pt-counter-summary{color:#a7adff;font-size:.8rem}.pt-counter-badge{position:absolute;top:-6px;left:-6px;min-width:1.3rem;height:1.3rem;padding:0 .25rem;border-radius:999px;background:#5a9e63;color:#fff;font-size:.72rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 1px 4px #00000080}.pt-card.token{border-style:dashed;background:#16201a}.pt-drag-ghost{position:fixed;width:var(--pt-cw);z-index:1000;pointer-events:none;transform:translate(-50%,-50%) scale(1.05);filter:drop-shadow(0 10px 20px rgba(0,0,0,.6))}.pt-drag-ghost.tapped{transform:translate(-50%,-50%) scale(1.05) rotate(-90deg)}.pt-ghost-count{position:absolute;top:-8px;right:-8px;min-width:1.4rem;height:1.4rem;padding:0 .3rem;border-radius:999px;background:#646cff;color:#fff;font-size:.8rem;font-weight:700;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #00000080}.pt-drop-hover{outline:2px solid #646cff;outline-offset:-2px;border-radius:8px}.pt-pile.pt-drop-hover,.pt-hand.pt-drop-hover{background:#646cff14}.pt-preview{position:fixed;right:16px;top:50%;transform:translateY(-50%);width:min(240px,19vw);z-index:60;pointer-events:none}.pt-preview img{display:block;width:100%;border-radius:10px;box-shadow:0 12px 30px #0009}.pt-preview-proxy{display:flex;flex-direction:column;gap:.5rem;aspect-ratio:92 / 128;padding:1rem;border:1px solid #444;border-radius:10px;background:#1a1a2a;box-shadow:0 12px 30px #0009}.pt-preview-proxy .pt-proxy-name{font-size:1.1rem}.pt-confirm{max-width:380px}.pt-library-panel{position:fixed;top:0;right:0;bottom:0;width:min(320px,92vw);z-index:210;display:flex;flex-direction:column;background:#14141c;color:#ffffffe6;border-left:1px solid #33334a;box-shadow:-12px 0 30px #00000080}.pt-library-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #2a2a3a;font-weight:600}.pt-library-preview{display:flex;justify-content:center;padding:12px;border-bottom:1px solid #2a2a3a}.pt-library-preview img{width:78%;border-radius:8px;box-shadow:0 8px 20px #00000080}.pt-library-filter{padding:8px 12px;border-bottom:1px solid #2a2a3a}.pt-library-filter input{width:100%;padding:.4rem .55rem;border-radius:6px;border:1px solid #444;background:#0f0f16;color:#ffffffe6;font-size:.85rem}.pt-library-filter input::placeholder{color:#777}.pt-library-list{flex:1;overflow-y:auto}.pt-library-row{display:flex;align-items:center;gap:.5rem;padding:.3rem .6rem;border-bottom:1px solid #22222e;font-size:.85rem;cursor:grab;touch-action:none}.pt-library-row:hover{background:#20202e}.pt-library-pos{color:#888;min-width:1.6rem;text-align:right;font-variant-numeric:tabular-nums;font-size:.72rem}.pt-library-name{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffffffe6}.pt-library-actions{display:inline-flex;gap:.2rem}.pt-library-actions .take{padding:.1rem .3rem;font-size:.68rem}.pt-library-foot{display:flex;gap:.5rem;justify-content:flex-end;padding:10px 12px;border-top:1px solid #2a2a3a}button.pt-cardback{cursor:pointer;padding:0}button.pt-cardback:hover{border-color:#646cff}.deck-stats{margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #333}.deck-stats h3{margin:0 0 .75rem}.stats-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,1.4fr);gap:1.5rem;align-items:start}.stats-heading{font-size:.78rem;text-transform:uppercase;letter-spacing:.05em;color:#aaa;font-weight:600;margin-bottom:.6rem}.stats-sub{text-transform:none;letter-spacing:0;color:#777;font-weight:400}.curve-bars{display:flex;align-items:flex-end;gap:6px;height:120px}.curve-col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.curve-track{position:relative;flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}.curve-bar{width:100%;min-height:2px;border-radius:3px 3px 0 0;background:linear-gradient(#8b7fd4,#646cff)}.curve-n{position:absolute;top:-1.1rem;font-size:.7rem;color:#aaa;font-variant-numeric:tabular-nums}.curve-x{margin-top:.3rem;font-size:.72rem;color:#888}.color-rows{display:flex;flex-direction:column;gap:.4rem}.color-row{display:grid;grid-template-columns:1rem 4.2rem 1fr 2.6rem 5rem;align-items:center;gap:.5rem;font-size:.82rem}.color-dot{width:.9rem;height:.9rem;border-radius:50%;border:1px solid rgba(255,255,255,.2)}.color-bar-track{height:8px;border-radius:999px;background:#262630;overflow:hidden}.color-bar-fill{display:block;height:100%;border-radius:999px}.color-pct{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}.color-prod{color:#888;font-size:.76rem;text-align:right}@media(max-width:720px){.stats-grid{grid-template-columns:1fr}}.guide{max-width:860px;margin:0 auto;line-height:1.55}.guide-hero{text-align:center;padding:.5rem 0 1.5rem;border-bottom:1px solid #333;margin-bottom:2rem}.guide-hero .subtitle{max-width:44rem;margin:.25rem auto 1.25rem}.guide-eq{display:inline-flex;align-items:center;gap:.6rem;flex-wrap:wrap;justify-content:center;padding:.6rem 1.1rem;border:1px solid #3a3a55;border-radius:10px;background:#171728;font-size:1.05rem}.guide-eq-part{font-weight:600}.guide-eq-op{color:#888}.guide-eq-total{color:#fff;background:#646cff;border-radius:6px;padding:.1rem .6rem}.guide-lede{max-width:42rem;margin:1.25rem auto 0;color:#bbb}.guide-section{margin-bottom:2.5rem}.guide-section>h2{margin-top:0}.guide-note{color:#999;margin:.25rem 0 1.1rem;max-width:46rem}.guide-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.guide-cards-3{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.guide-card{border:1px solid #333;border-radius:10px;background:#1a1a1a;padding:1rem 1.1rem}.guide-card h3{margin:0 0 .35rem;color:#cbd0ff}.guide-card p{margin:0 0 .75rem;color:#bbb;font-size:.92rem}.guide-card p:last-of-type{margin-bottom:0}.guide-tenets,.guide-steps{list-style:none;padding:0;margin:0;display:grid;gap:.9rem}.guide-tenet,.guide-step{display:grid;grid-template-columns:2rem 1fr;gap:.9rem;align-items:start;border:1px solid #2c2c2c;border-radius:10px;padding:.85rem 1rem;background:#161616}.guide-num{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:50%;background:#646cff;color:#fff;font-weight:700;font-size:.95rem}.guide-tenet h3,.guide-step h3{margin:0 0 .2rem}.guide-tenet p,.guide-step p{margin:0;color:#aaa;font-size:.92rem}.guide-jump,.guide-cta{margin-top:.6rem;padding:.35rem .8rem;border-radius:6px;border:1px solid #646cff;background:transparent;color:#a9b0ff;cursor:pointer;font-size:.85rem;transition:background .15s,color .15s}.guide-jump:hover,.guide-cta:hover{background:#646cff;color:#fff}.guide-cta{font-weight:600}.guide-roles{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem}.guide-role{display:flex;align-items:center;gap:.7rem;border:1px solid #2c2c2c;border-radius:8px;padding:.5rem .75rem;background:#161616}.guide-role-count{min-width:2.6rem;text-align:center;font-weight:700;color:#cbd0ff;background:#23233a;border-radius:6px;padding:.15rem .3rem;font-size:.85rem;font-variant-numeric:tabular-nums}.guide-role-name{font-size:.92rem}.guide-footer{border-top:1px solid #333;padding-top:1rem;color:#888;font-size:.88rem}.guide-footer a{color:#a9b0ff}@media(prefers-color-scheme:light){.guide-eq{background:#eef0ff;border-color:#c7cbf0}.guide-lede{color:#444}.guide-note{color:#666}.guide-card,.guide-tenet,.guide-step,.guide-role{background:#fafafa;border-color:#ddd}.guide-card h3{color:#3a3f9e}.guide-card p,.guide-tenet p,.guide-step p{color:#555}.guide-role-count{color:#3a3f9e;background:#e7e9ff}.guide-cta,.guide-jump,.guide-footer a,.guide-card h3{color:#4a51d0}}@media(max-width:640px){.guide-eq{font-size:.95rem}}.game-plan{margin:.5rem 0 1rem}.game-plan-label{display:block;font-size:.82rem;font-weight:600;color:#ccc;margin-bottom:.35rem}.game-plan-input{width:100%;box-sizing:border-box;resize:vertical;padding:.55rem .7rem;border-radius:8px;border:1px solid #3a3a3a;background:#161616;color:inherit;font:inherit;font-size:.9rem;line-height:1.45}.game-plan-input:focus{outline:none;border-color:#646cff}.target-cell{white-space:nowrap}.target-input{width:3.2rem;padding:.2rem .35rem;border-radius:5px;border:1px solid #444;background:#1a1a1a;color:inherit;font:inherit;font-size:.85rem;text-align:center}.target-input:focus{outline:none;border-color:#646cff}.role-flag{font-size:.78rem;font-weight:600}.role-met{color:#6ac48a}.role-short{color:#e0a94a}.role-over{color:#d98a80}.add-role{margin-top:.6rem;padding:.35rem .6rem;border-radius:6px;border:1px dashed #555;background:transparent;color:#a9b0ff;cursor:pointer;font-size:.85rem}.add-role:hover{border-color:#646cff}@media(prefers-color-scheme:light){.game-plan-label{color:#333}.game-plan-input{background:#fff;border-color:#ccc}.target-input{background:#fff;border-color:#bbb}.role-met{color:#2e8b57}.role-short{color:#b7791f}.role-over{color:#c0564a}.add-role{color:#4a51d0}}
