:root{--bg: #15161e;--bg-surface: #1e1f2b;--bg-raised: #2a2b38;--bg-hover: #343544;--fg: #eae6de;--fg-dim: #9e9a92;--fg-muted: #6e6b64;--border: #32333f;--border-light: #3e3f4e;--accent: #34d399;--accent-hover: #6ee7b7;--accent-dim: rgba(52, 211, 153, .12);--gold: #d4a853;--gold-dim: rgba(212, 168, 83, .15);--error: #f87171;--error-dim: rgba(248, 113, 113, .12);--success: #34d399;--success-dim: rgba(52, 211, 153, .12);--felt: #1a3a2a;--felt-light: #224434;--radius: 10px;--radius-sm: 6px;--radius-lg: 14px;--shadow: 0 2px 8px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .4), 0 2px 8px rgba(0, 0, 0, .3);font-family:Bricolage Grotesque,system-ui,-apple-system,sans-serif;line-height:1.55;font-optical-sizing:auto}[data-theme=light]{--bg: #f0ebe1;--bg-surface: #faf7f2;--bg-raised: #e8e2d6;--bg-hover: #ddd6c8;--fg: #2a2520;--fg-dim: #6b6358;--fg-muted: #9b9387;--border: #d4cdc0;--border-light: #c4bdb0;--accent: #0d9668;--accent-hover: #0b7d56;--accent-dim: rgba(13, 150, 104, .1);--gold: #a07830;--gold-dim: rgba(160, 120, 48, .12);--error: #dc2626;--error-dim: rgba(220, 38, 38, .08);--success: #0d9668;--success-dim: rgba(13, 150, 104, .08);--felt: #2a5440;--felt-light: #345e4a;--shadow: 0 2px 8px rgba(42, 37, 32, .08), 0 1px 2px rgba(42, 37, 32, .04);--shadow-lg: 0 8px 32px rgba(42, 37, 32, .12), 0 2px 8px rgba(42, 37, 32, .06)}*{box-sizing:border-box;margin:0}::selection{background:var(--accent-dim);color:var(--accent)}body{margin:0;background:var(--bg);color:var(--fg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-light)}h1{font-family:Playfair Display,Georgia,serif;font-weight:700;font-size:28px;letter-spacing:-.5px;color:var(--fg)}h2{font-weight:600;font-size:15px;color:var(--fg-dim)}h3{font-family:Playfair Display,Georgia,serif;font-weight:600;font-size:17px;color:var(--fg);letter-spacing:-.2px}a{color:var(--accent);text-decoration:none;transition:color .15s}a:hover{color:var(--accent-hover)}.layout{max-width:480px;margin:0 auto;padding:60px 40px 48px;display:flex;flex-direction:column;min-height:100vh;justify-content:center;position:relative}body:has(.layout):before{content:"♠ ♥ ♦ ♣";position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-size:20vw;letter-spacing:3vw;color:var(--fg);opacity:.02;pointer-events:none;white-space:nowrap;z-index:0}.layout h1{font-size:36px;margin-bottom:4px;background:linear-gradient(135deg,var(--fg) 0%,var(--gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.subtitle{color:var(--fg-muted);font-size:14px}.error{color:var(--error);font-size:13px}.status{margin-top:24px;padding:16px;background:var(--bg-surface);border-radius:var(--radius);border:1px solid var(--border)}.form{display:flex;flex-direction:column;gap:16px;margin-top:32px}.form label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:500;color:var(--fg-dim);text-transform:uppercase;letter-spacing:.5px}.form input,.form select{padding:10px 14px;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:15px;font-family:inherit;color:var(--fg);outline:none;transition:border-color .2s,box-shadow .2s}.form input:focus,.form select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-dim)}.form button{padding:12px 20px;background:#4a8bf5;color:#fff;border:none;border-radius:var(--radius-sm);font-size:15px;font-weight:600;font-family:inherit;cursor:pointer;box-shadow:0 4px #3060c0,inset 0 1px #fff3;transition:transform .1s,box-shadow .1s,filter .1s}.form button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px #3060c0,inset 0 1px #fff3;filter:brightness(1.08)}.form button:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #3060c0,inset 0 1px #fff3}.form button:disabled{opacity:.5;cursor:not-allowed}.slug-row{display:flex;gap:8px;align-items:center}.slug-row input{flex:1}.slug-refresh{width:40px;height:40px;padding:0;background:#e8a030;border:none;border-radius:var(--radius-sm);color:#fff;font-size:16px;cursor:pointer;box-shadow:0 3px #b07818,inset 0 1px #ffffff26;transition:transform .1s,box-shadow .1s,filter .1s;flex-shrink:0;display:flex;align-items:center;justify-content:center;line-height:1}.slug-refresh:hover{transform:translateY(-1px);box-shadow:0 4px #b07818,inset 0 1px #ffffff26;filter:brightness(1.08)}.slug-refresh:active{transform:translateY(2px);box-shadow:0 1px #b07818}.recent{margin-top:40px;padding-top:24px;border-top:1px solid var(--border)}.recent h2{font-size:12px;color:var(--fg-muted);margin:0 0 10px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.recent ul{list-style:none;padding:0;margin:0}.recent li{padding:0}.recent li a{display:block;padding:8px 12px;border-radius:var(--radius-sm);color:var(--fg-dim);font-family:JetBrains Mono,monospace;font-size:13px;transition:background .15s,color .15s}.recent li a:hover{background:var(--bg-raised);color:var(--fg)}.room{display:flex;flex-direction:column;height:100vh;background:var(--bg)}.room-header{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:var(--bg-surface);border-bottom:1px solid var(--border);font-size:13px;font-weight:500;color:var(--fg-dim)}.poker-brand{font-family:Playfair Display,Georgia,serif;font-weight:700;font-size:16px;font-style:italic;letter-spacing:-.3px;color:var(--fg);text-decoration:none;transition:color .15s}.poker-brand:hover{color:var(--accent)}.header-sep{color:var(--fg-muted);margin:0 2px}.room-body{flex:1;display:grid;grid-template-columns:240px 1fr 220px;gap:0;overflow:hidden}.sidebar,.voters{background:var(--bg-surface);border-right:1px solid var(--border);padding:16px;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.voters{border-right:none;border-left:1px solid var(--border)}.main-col{background:var(--bg);padding:24px;overflow-y:auto}.main-col.main-felt{background:var(--felt);position:relative;transition:background .4s}.main-col.main-felt:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.3;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/%3E%3C/svg%3E");background-size:256px 256px;pointer-events:none;z-index:0}.main-col.main-felt>*{position:relative;z-index:1}.main-col.main-felt .issue-head{color:#e8e4dc}.main-col.main-felt .issue-link{color:var(--accent-hover)}.main-col.main-felt .placeholder{color:#8bab9a}.main-col.main-felt .issue-desc{background:#0003;border-color:#ffffff1a;color:#ddd8d0}.main-col.main-felt .issue-desc a{color:var(--accent-hover)}.main-col.main-felt .issue-desc strong{color:#f0ece4}.main-col.main-felt .issue-desc code{background:#00000040;color:#ddd8d0}.main-col.main-felt .issue-desc pre{background:#00000040}.main-col.main-felt .issue-desc blockquote{border-left-color:#fff3;color:#c8c0b4}.main-col.main-felt .issue-desc h1,.main-col.main-felt .issue-desc h2,.main-col.main-felt .issue-desc h3{color:#e8e4dc}.main-col.main-felt .cross-team-banner{background:#d4a85326;border-color:#d4a85333}.sec-label{font-size:10px;color:var(--fg-muted);font-weight:600;text-transform:uppercase;letter-spacing:.8px;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.vote-tally{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;color:var(--fg-dim);text-transform:none;letter-spacing:0}.queue-list,.voter-list{list-style:none;padding:0;margin:0}.queue-list li{padding:0 5px 0 0;margin-bottom:6px}.queue-chip{display:flex;align-items:center;gap:10px;background:var(--bg-raised);border-radius:20px;padding:10px 16px 10px 12px;box-shadow:0 2px #0003;transition:background .15s}.queue-chip:hover{background:var(--bg-hover)}.chip{background:#3a8a5c;color:#fff;font-family:JetBrains Mono,monospace;font-size:10px;font-weight:700;padding:4px 8px;border-radius:12px;white-space:nowrap;flex-shrink:0;box-shadow:inset 0 -2px #0003,inset 0 1px #ffffff1a;transition:background .2s,transform .1s;cursor:default}.chip-current{background:var(--gold)}.chip-parked{background:#e85050}.chip-label{transition:opacity .2s}.chip-remove{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1;opacity:0;transition:opacity .2s}.chip:not(.chip-current):not(.chip-parked){position:relative}.chip:not(.chip-current):not(.chip-parked):hover{background:#e85050;box-shadow:inset 0 -2px #00000040,inset 0 1px #ffffff1a;cursor:pointer}.chip:not(.chip-current):not(.chip-parked):hover .chip-label{opacity:0}.chip:not(.chip-current):not(.chip-parked):hover .chip-remove{opacity:1}.chip:not(.chip-current):not(.chip-parked):active{transform:scale(.95)}.chip-title{font-size:12px;color:var(--fg-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.drag-handle{color:var(--fg-muted);font-size:11px;flex-shrink:0;-webkit-user-select:none;user-select:none;letter-spacing:1px;cursor:grab;opacity:.5;transition:opacity .15s}.queue-chip:hover .drag-handle{opacity:1}.drag-handle:active{cursor:grabbing}.queue-chip.sortable{touch-action:none}@keyframes queue-depart{0%{background:var(--gold-dim)}to{background:var(--bg-raised)}}.queue-chip.current{animation:queue-depart .8s ease-out}.queue-chip.current-active{background:var(--bg-hover);box-shadow:0 2px #0003,inset 0 0 0 1px #d4a85326}.chip-requeue{background:#a56c01;border:none;color:#fff;font-size:10px;font-weight:600;font-family:inherit;padding:4px 10px;border-radius:12px;cursor:pointer;box-shadow:inset 0 -2px #0003,inset 0 1px #ffffff1a;flex-shrink:0;margin-left:auto;transition:transform .1s,filter .1s}.chip-requeue:hover{transform:scale(1.05);filter:brightness(1.08)}.chip-requeue:active{transform:scale(.95)}.issue{max-width:1000px;margin:0 auto}.issue-head{font-size:22px;margin-bottom:12px;font-weight:600}.issue-link{color:var(--accent);text-decoration:none;font-family:JetBrains Mono,monospace}.issue-link:hover{text-decoration:underline}.existing-estimate{display:inline-block;margin-left:8px;padding:2px 8px;font-family:JetBrains Mono,monospace;font-size:12px;font-weight:700;color:var(--gold);background:var(--gold-dim);border:1px solid rgba(212,168,83,.25);border-radius:4px;vertical-align:middle}.issue-desc{font-size:16px;color:var(--fg-dim);line-height:1.55;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px}.issue-desc p{margin:0 0 8px}.issue-desc p:last-child{margin-bottom:0}.issue-desc ul,.issue-desc ol{margin:0 0 8px;padding-left:20px}.issue-desc li{margin-bottom:2px}.issue-desc code{font-family:JetBrains Mono,monospace;font-size:12px;background:var(--bg-raised);padding:1px 4px;border-radius:3px}.issue-desc pre{background:var(--bg-raised);padding:10px;border-radius:var(--radius-sm);overflow-x:auto;margin:0 0 8px}.issue-desc pre code{background:none;padding:0}.issue-desc h1,.issue-desc h2,.issue-desc h3{font-weight:600;color:var(--fg);margin:16px 0 6px}.issue-desc h1{font-size:22px}.issue-desc h2{font-size:19px}.issue-desc h3{font-size:16px}.issue-desc h1:first-child,.issue-desc h2:first-child,.issue-desc h3:first-child{margin-top:0}.issue-desc a{color:var(--accent)}.issue-desc blockquote{border-left:3px solid var(--border);margin:0 0 8px;padding:4px 12px;color:var(--fg-muted)}.issue-desc hr{border:none;border-top:1px solid var(--border);margin:12px 0}.issue-desc strong{color:var(--fg)}.issue-desc img{display:block;max-width:100%;height:auto;margin:12px auto;border-radius:6px}.placeholder{color:var(--fg-muted);font-size:15px;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;text-align:center}.placeholder-icon{font-size:48px;opacity:.15;display:block;line-height:1}.placeholder-suits{display:inline-flex;gap:18px;opacity:.22}.placeholder-suits .suit{line-height:1}.placeholder-suits .suit-black{color:currentColor}.placeholder-suits .suit-red{color:#b04a4a}.voter{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:var(--radius-sm);font-size:13px;transition:background .15s}.voter:hover{background:var(--bg-raised)}.dot{width:8px;height:8px;border-radius:50%;background:var(--border-light);flex-shrink:0;transition:background .3s,box-shadow .3s;position:relative}.dot.voted{background:var(--accent);box-shadow:0 0 6px var(--accent-dim);animation:dot-pop .35s cubic-bezier(.34,1.56,.64,1)}.dot.voted:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--accent);animation:dot-ripple .6s cubic-bezier(0,.55,.45,1) forwards;pointer-events:none}.check{color:var(--accent);margin-left:auto;font-size:12px;animation:check-appear .3s cubic-bezier(.34,1.56,.64,1)}.card-inline{margin-left:auto;font-family:JetBrains Mono,monospace;font-weight:700;font-size:13px;color:var(--gold);background:var(--gold-dim);padding:2px 8px;border-radius:4px;animation:card-reveal .4s cubic-bezier(.34,1.56,.64,1) both}.muted{color:var(--fg-muted)}button.ghost{background:#a56c01;border:none;padding:8px 14px;border-radius:var(--radius-sm);font-size:12px;font-family:inherit;font-weight:600;color:#fff;cursor:pointer;box-shadow:0 4px #7a5001,inset 0 1px #ffffff26;transition:transform .1s,box-shadow .1s,filter .1s}button.ghost:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px #7a5001,inset 0 1px #ffffff26;filter:brightness(1.08)}button.ghost:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #7a5001,inset 0 1px #ffffff26}button.ghost:disabled{opacity:.5;cursor:not-allowed}button.primary{background:#4a8bf5;color:#fff;border:none;padding:8px 14px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;box-shadow:0 4px #3060c0,inset 0 1px #fff3;transition:transform .1s,box-shadow .1s,filter .1s}button.primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px #3060c0,inset 0 1px #fff3;filter:brightness(1.08)}button.primary:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #3060c0,inset 0 1px #fff3}button.primary:disabled{opacity:.5;cursor:not-allowed}.deck-footer,.hist-footer{background:linear-gradient(180deg,var(--felt) 0%,#152e22 100%);color:var(--fg-dim);padding:10px 24px 14px;display:flex;align-items:flex-end;gap:20px;border-top:1px solid #2a5440;overflow:visible}.deck-footer .left,.deck-footer .right{font-size:12px;flex:0 0 auto;min-width:130px;color:#b8d4c6;padding-bottom:4px}.deck{flex:1;position:relative;height:100px;perspective:1200px}.dcard{width:80px;height:112px;border-radius:10px;background:linear-gradient(170deg,#faf8f4,#eee8dc);color:#1a1a2e;border:2.5px solid #d4cfc4;font-size:0;cursor:pointer;box-shadow:0 4px 12px #00000059,inset 0 1px #fff9;transition:box-shadow .2s,border-color .2s,transform .25s cubic-bezier(.34,1.56,.64,1);position:absolute;left:50%;bottom:20px;margin-left:-40px;transform:translateY(var(--hover-lift, 0px)) rotate(var(--rest-rotate, 0deg)) rotateX(var(--tilt-rx, 0deg)) rotateY(var(--tilt-ry, 0deg));transform-origin:center 220%;transform-style:preserve-3d;animation:card-deal .4s cubic-bezier(.34,1.56,.64,1) both;display:flex;align-items:center;justify-content:center;overflow:hidden}.dcard:after{content:"";position:absolute;top:4px;right:4px;bottom:4px;left:4px;border:1.5px solid rgba(0,0,0,.05);border-radius:7px;pointer-events:none}.dcard-value{font-family:Playfair Display,Georgia,serif;font-weight:800;font-size:28px;color:#1a3a2a;line-height:1}.dcard-corner{position:absolute;font-family:JetBrains Mono,monospace;font-weight:700;font-size:10px;color:#6b8a7a;line-height:1}.dcard-corner-top{top:6px;left:7px}.dcard-corner-bottom{bottom:6px;right:7px;transform:rotate(180deg)}.dcard:hover{box-shadow:0 12px 24px #0006,inset 0 1px #ffffff80;border-color:var(--gold)}.dcard.dcard-selected{border-color:var(--gold);box-shadow:0 12px 24px #0006,inset 0 1px #ffffff80,0 0 0 3px var(--gold),0 0 16px #d4a8534d;background:linear-gradient(170deg,#faf5ed,#f0e8d8);animation:card-deal .4s cubic-bezier(.34,1.56,.64,1) both,select-punch .25s cubic-bezier(.34,1.56,.64,1),glow-pulse 2s ease-in-out .25s infinite}.ghost-light{background:#e85050;border:none;color:#fff;padding:8px 14px;border-radius:var(--radius-sm);font-size:12px;font-family:inherit;font-weight:600;cursor:pointer;box-shadow:0 4px #b03030,inset 0 1px #ffffff26;transition:transform .1s,box-shadow .1s,filter .1s}.ghost-light:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px #b03030,inset 0 1px #ffffff26;filter:brightness(1.08)}.ghost-light:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #b03030,inset 0 1px #ffffff26}.ghost-light:disabled{opacity:.5;cursor:not-allowed}.reveal-btn{background:#e8a030;border:none;color:#fff;padding:8px 18px;border-radius:var(--radius-sm);font-size:13px;font-family:inherit;font-weight:600;cursor:pointer;box-shadow:0 4px #b07818,inset 0 1px #ffffff26;transition:transform .1s,box-shadow .1s,filter .1s}.reveal-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px #b07818,inset 0 1px #ffffff26;filter:brightness(1.08)}.reveal-btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #b07818,inset 0 1px #ffffff26}.deck-secondary{display:flex;gap:6px;margin-top:6px}.hist-chart{flex:1;display:flex;align-items:flex-end;gap:12px;height:150px}.hist-col{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;justify-content:flex-end;height:100%}.hist-stack{display:flex;flex-direction:column-reverse;gap:4px;width:85%;max-height:100%}.hist-chip{padding:4px 8px;font-size:11px;font-weight:500;border-radius:4px;background:#2a5440;color:#b8d4c6;text-align:center;transition:background .2s}.hist-chip.mode{background:var(--gold);color:#1a1a12;font-weight:600}.hist-label{font-size:16px;font-family:JetBrains Mono,monospace;font-weight:700;color:#6b8a7a;cursor:pointer;border:none;background:transparent;padding:6px 12px;border-radius:var(--radius-sm);transition:background .15s,color .15s}.hist-label:hover{background:#34d39914}.hist-label.mode{color:var(--gold)}.hist-label.selected{background:var(--accent);color:#0a1a12;border-radius:var(--radius-sm)}.hist-actions{flex:0 0 auto;min-width:160px;text-align:right;font-size:12px;color:#6b8a7a}.accept-panels{flex:0 0 auto;min-width:190px;display:flex;flex-direction:column;gap:8px}.accept-panel-primary{background:var(--bg-surface);border-radius:var(--radius);padding:12px;display:flex;flex-direction:column;gap:8px;align-items:center;box-shadow:0 2px #0000004d,inset 0 1px #ffffff08}.accept-panel-secondary{background:var(--bg-surface);border-radius:var(--radius);padding:8px;display:flex;gap:4px;justify-content:center;box-shadow:0 2px #0000004d,inset 0 1px #ffffff08}.accept-modifiers{display:flex;gap:6px}.accept-btn{background:#4a8bf5;color:#fff;border:none;padding:12px 24px;border-radius:var(--radius-sm);font-size:16px;font-weight:700;font-family:inherit;cursor:pointer;width:100%;box-shadow:0 4px #3060c0,inset 0 1px #fff3;transition:transform .1s,box-shadow .1s,filter .1s}.accept-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 5px #3060c0,inset 0 1px #fff3;filter:brightness(1.08)}.accept-btn:active:not(:disabled){transform:translateY(2px);box-shadow:0 2px #3060c0,inset 0 1px #fff3}.accept-btn:disabled{opacity:.5;cursor:not-allowed}.comment-input{background:#1a3a2a;border:1px solid #2a5440;color:#eae6de;padding:6px 10px;border-radius:var(--radius-sm);font-size:13px;font-family:inherit;width:100%;outline:none}.comment-input::placeholder{color:#eae6de73}.comment-input:focus{border-color:var(--accent)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:100}.modal{background:var(--bg-surface);border:1px solid var(--border);padding:24px;border-radius:var(--radius-lg);width:480px;max-width:95%;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-lg)}.modal h3{margin:0 0 8px}.modal textarea,.add-modal textarea{width:100%;padding:10px;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:JetBrains Mono,monospace;font-size:13px;color:var(--fg);resize:vertical;outline:none}.modal textarea:focus,.add-modal textarea:focus{border-color:var(--accent)}.modal select,.add-modal select{width:100%;padding:10px 14px 10px 10px;background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:13px;font-family:inherit;color:var(--fg);outline:none}.modal-actions{display:flex;gap:8px;margin-top:14px}.tabs{display:flex;gap:4px;margin-bottom:14px}.tab{background:var(--bg-raised);border:none;padding:8px 14px;border-radius:var(--radius-sm);font-size:13px;font-family:inherit;font-weight:600;color:var(--fg-dim);cursor:pointer;box-shadow:0 3px 0 var(--border),inset 0 1px #ffffff0d;transition:transform .1s,box-shadow .1s,filter .1s}.tab:hover{transform:translateY(-1px);box-shadow:0 4px 0 var(--border),inset 0 1px #ffffff0d;filter:brightness(1.1)}.tab:active{transform:translateY(2px);box-shadow:0 1px 0 var(--border)}.tab.active{background:#3a8a5c;color:#fff;box-shadow:0 3px #2a6a42,inset 0 1px #ffffff26}.tab.active:hover{box-shadow:0 4px #2a6a42,inset 0 1px #ffffff26;filter:brightness(1.08)}.preview-check{display:flex;align-items:center;gap:8px;cursor:pointer}.preview-check input{margin:0;accent-color:var(--accent)}.add-modal{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:560px;max-width:95%;max-height:80vh;box-shadow:var(--shadow-lg);display:flex;flex-direction:column}.add-modal h3{margin:0 0 12px}.add-modal-header{padding:24px 24px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.add-modal-body{flex:1;overflow-y:auto;padding:0;min-height:0}.add-modal-footer{padding:14px 24px;border-top:1px solid var(--border);display:flex;gap:8px;flex-shrink:0;background:var(--bg-surface);border-radius:0 0 var(--radius-lg) var(--radius-lg)}.issue-list-toolbar{display:flex;justify-content:space-between;align-items:center;padding:10px 24px;border-bottom:1px solid var(--border);font-size:12px;position:sticky;top:0;background:var(--bg-surface);z-index:1}.issue-pick-list{list-style:none;padding:0;margin:0}.issue-pick-row{display:flex;align-items:center;gap:10px;padding:10px 24px;border-bottom:1px solid var(--border);font-size:13px;cursor:pointer;transition:background .1s}.issue-pick-row:last-child{border-bottom:none}.issue-pick-row:hover{background:var(--bg-raised)}.issue-pick-row.checked{background:var(--accent-dim)}.issue-pick-row input{margin:0;accent-color:var(--accent);flex-shrink:0}.issue-pick-id{font-family:JetBrains Mono,monospace;font-weight:600;font-size:12px;color:var(--fg-dim);white-space:nowrap;min-width:72px}.issue-pick-title{color:var(--fg);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.issue-pick-est{flex-shrink:0;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;color:var(--gold);background:var(--gold-dim);padding:1px 6px;border-radius:3px}@keyframes toast-slide{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes screen-shake{0%,to{transform:translate(0)}15%{transform:translate(-3px) rotate(-.3deg)}30%{transform:translate(3px) rotate(.3deg)}45%{transform:translate(-2px)}60%{transform:translate(2px)}75%{transform:translate(-1px)}}.room.shake{animation:screen-shake .4s ease-out}.toast{padding:10px 20px;text-align:center;font-size:13px;font-weight:600;letter-spacing:.2px;animation:toast-slide .3s cubic-bezier(.16,1,.3,1)}.toast-success{background:var(--success-dim);color:var(--success);border-bottom:1px solid rgba(52,211,153,.2)}.toast-error{background:var(--error-dim);color:var(--error);border-bottom:1px solid rgba(248,113,113,.2)}.consensus-splash{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);font-family:JetBrains Mono,monospace;font-size:64px;font-weight:700;color:var(--gold);z-index:200;pointer-events:none;animation:splash-in .8s cubic-bezier(.34,1.56,.64,1) forwards;text-shadow:0 0 40px rgba(212,168,83,.4)}@keyframes splash-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}50%{transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(1) translateY(-30px)}}.accept-splash{position:fixed;top:45%;left:50%;transform:translate(-50%,-50%);z-index:200;pointer-events:none;text-align:center;animation:accept-splash-in 1.2s cubic-bezier(.16,1,.3,1) forwards}.accept-splash-value{font-family:JetBrains Mono,monospace;font-size:56px;font-weight:700;color:var(--gold);display:block;text-shadow:0 0 30px rgba(212,168,83,.4)}.accept-splash-label{font-size:14px;color:var(--fg-dim);margin-top:4px;display:block}@keyframes accept-splash-in{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}40%{transform:translate(-50%,-50%) scale(1)}70%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.9) translateY(-20px)}}.btn-gold{background:#e8a030;border:none;color:#fff;padding:6px 14px;border-radius:var(--radius-sm);font-size:12px;line-height:1.55;font-family:inherit;font-weight:600;cursor:pointer;box-shadow:0 3px #b07818,inset 0 1px #ffffff26;transition:transform .1s,box-shadow .1s,filter .1s;text-decoration:none;display:inline-block}.btn-gold:hover{transform:translateY(-1px);box-shadow:0 4px #b07818,inset 0 1px #ffffff26;filter:brightness(1.08);color:#fff}.btn-gold:active{transform:translateY(2px);box-shadow:0 1px #b07818}.header-link{margin-right:16px}.btn-gold.header-link{background:#a56c01;box-shadow:0 3px #7a5001,inset 0 1px #ffffff26}.btn-gold.header-link:hover{box-shadow:0 4px #7a5001,inset 0 1px #ffffff26}.btn-gold.header-link:active{box-shadow:0 1px #7a5001}.queue-header-actions{display:inline-flex;align-items:center;gap:6px}.queue-clear-icon{position:relative;background:#e85050;border:none;color:#fff;width:24px;height:24px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;box-shadow:0 2px #a13939,inset 0 1px #ffffff26;transition:transform .08s,box-shadow .08s,filter .08s,background .15s;user-select:none;-webkit-user-select:none;touch-action:none}.queue-clear-icon:hover{transform:translateY(-1px);box-shadow:0 3px #a13939,inset 0 1px #ffffff26;filter:brightness(1.08)}.queue-clear-icon:active{transform:translateY(1px);box-shadow:0 1px #a13939}.queue-clear-icon.holding{background:#c23030}.queue-clear-glyph{position:relative;z-index:1}.queue-clear-ring{position:absolute;top:0;right:0;bottom:0;left:0;display:block;pointer-events:none}.hold-ring{width:100%;height:100%;transform:rotate(-90deg);overflow:visible}.hold-ring circle{fill:none;stroke:#fff;stroke-width:2.25;stroke-linecap:round;stroke-dasharray:65.97;stroke-dashoffset:65.97;transition:stroke-dashoffset .15s ease-out}.queue-clear-icon.holding .hold-ring circle{stroke-dashoffset:0;transition:stroke-dashoffset .9s linear}.queue-add-icon{background:#e8a030;border:none;color:#fff;width:24px;height:24px;border-radius:var(--radius-sm);font-size:16px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;box-shadow:0 2px #b07818,inset 0 1px #ffffff26;transition:transform .08s,box-shadow .08s,filter .08s}.queue-add-icon:hover{transform:translateY(-1px);box-shadow:0 3px #b07818,inset 0 1px #ffffff26;filter:brightness(1.08)}.queue-add-icon:active{transform:translateY(1px);box-shadow:0 1px #b07818}.queue-start-btn{height:24px;padding:0 10px;font-size:11px;line-height:1;letter-spacing:.4px;text-transform:uppercase;display:inline-flex;align-items:center;box-shadow:0 2px #3060c0,inset 0 1px #fff3}.queue-start-btn:hover:not(:disabled){box-shadow:0 3px #3060c0,inset 0 1px #fff3}.queue-start-btn:active:not(:disabled){box-shadow:0 1px #3060c0,inset 0 1px #fff3}@keyframes spin{to{transform:rotate(360deg)}}@keyframes dot-pop{0%{transform:scale(1)}40%{transform:scale(1.8)}to{transform:scale(1)}}@keyframes dot-ripple{0%{transform:scale(1);opacity:.6}to{transform:scale(3);opacity:0}}@keyframes card-reveal{0%{opacity:0;transform:scale(.3) rotateY(90deg)}50%{opacity:1;transform:scale(1.1) rotateY(0)}to{opacity:1;transform:scale(1) rotateY(0)}}@keyframes check-appear{0%{opacity:0;transform:scale(0)}60%{opacity:1;transform:scale(1.2)}to{opacity:1;transform:scale(1)}}@keyframes card-deal{0%{opacity:0;translate:0 80px;scale:.8}60%{opacity:1;translate:0 -4px;scale:1.02}to{opacity:1;translate:0 0;scale:1}}@keyframes select-punch{0%{scale:1}40%{scale:1.1}to{scale:1}}@keyframes glow-pulse{0%,to{box-shadow:0 12px 24px #0006,inset 0 1px #ffffff80,0 0 0 3px var(--gold),0 0 16px #d4a8534d}50%{box-shadow:0 12px 24px #0006,inset 0 1px #ffffff80,0 0 0 3px var(--gold),0 0 28px #d4a85380}}.spinner{display:inline-block;width:12px;height:12px;border:2px solid currentColor;border-top-color:transparent;border-radius:50%;animation:spin .6s linear infinite;vertical-align:middle;margin-right:4px}.loading-hint{display:flex;align-items:center;gap:6px;font-size:13px;padding:8px 0}.add-modal-body .loading-hint{padding:12px 24px}.deck-busy .dcard{opacity:.5;cursor:wait;pointer-events:none}.ws-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:10px;vertical-align:middle}.ws-connecting{background:var(--fg-muted)}.ws-connected{background:#22c55e;box-shadow:0 0 4px #22c55e66}.ws-reconnecting{background:#f59e0b;animation:pulse-amber 1.5s ease-in-out infinite}.ws-auth_expired{background:#ef4444}@keyframes pulse-amber{0%,to{opacity:1}50%{opacity:.4}}.header-right{display:flex;align-items:center}.header-left{display:flex;align-items:center;gap:12px}.header-left .header-link{margin-right:0}button:disabled .spinner{opacity:1}[data-theme=light] .deck-footer,[data-theme=light] .hist-footer{background:linear-gradient(180deg,#2a5440,#1e4030);border-top-color:#3a6a54}[data-theme=light] .modal-backdrop{background:#2a252066}[data-theme=light] .dcard{box-shadow:0 4px 12px #2a252059,inset 0 1px #fff9}[data-theme=light] .dcard:hover{box-shadow:0 12px 24px #2a252061,inset 0 1px #fff9}[data-theme=light] ::selection{background:#0d966826;color:#0d9668}[data-theme=light] ::-webkit-scrollbar-thumb{background:#c4bdb0}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#b4ada0}[data-theme=light] .layout h1{background:linear-gradient(135deg,#2a2520,#a07830);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=light] .main-col.main-felt{background:#1e4030}.theme-toggle{background:#e8a030;border:none;color:#fff;width:32px;height:32px;border-radius:var(--radius-sm);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 3px #b07818,inset 0 1px #ffffff26;transition:transform .1s,box-shadow .1s,filter .1s;margin-right:130px}.theme-toggle:hover{transform:translateY(-1px);box-shadow:0 4px #b07818,inset 0 1px #ffffff26;filter:brightness(1.08)}.theme-toggle:active{transform:translateY(2px);box-shadow:0 1px #b07818}.landing-header{display:flex;justify-content:flex-end;margin-bottom:12px}.setup-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.setup-header h1{margin:0}.cross-team-banner{padding:6px 12px;margin-bottom:12px;background:var(--gold-dim);border:1px solid rgba(212,168,83,.2);border-radius:var(--radius-sm);font-size:12px;font-weight:600;color:var(--gold)}
