:root{--bg:#0e0e12;--surface:#16161e;--surface2:#1e1e2a;--border:#2a2a3a;--text:#e8e8f0;--muted:#6b6b80;--accent:#f0c040;--accent2:#40c0f0;--red:#f04060;--p4:#40f0a0;--accent-glow:#f0c04033;--accent-subtle:#f0c0401a;--accent-muted:#f0c04024;--accent-active:#f0c04014;--accent-curve:#f0c04080;--red-subtle:#f0406014;--red-hover:#f040602e;--red-muted:#f040601a;--accent2-subtle:#40c0f01a;--overlay-4:#ffffff0a;--overlay-5:#ffffff0d;--overlay-25:#ffffff40;--text-dim:#a0a0b8;--male:#5b9cf6;--female:#f06292;--text-xs:.75rem;--text-base:.85rem;--text-md:1rem;--text-lg:1.2rem;--text-xl:1.5rem;--text-2xl:1.8rem}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:var(--bg);color:var(--text);font-family:DM Mono,monospace}label{font-size:var(--text-xs);letter-spacing:.22em;text-transform:uppercase;color:var(--muted);margin-bottom:5px;display:block}input[type=text],select{background:var(--surface2);border:1px solid var(--border);font-family:DM Mono,monospace;font-size:var(--text-base);appearance:none;width:100%;color:var(--text);border-radius:6px;outline:none;padding:8px 10px;transition:border-color .2s}input[type=text]:focus,select:focus{border-color:var(--accent)}input[type=text]::placeholder{color:var(--muted)}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b6b80' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}select option{background:var(--surface2);color:var(--text)}.seg{border:1px solid var(--border);border-radius:7px;display:flex;overflow:hidden}.seg-btn{background:var(--surface2);border:none;border-right:1px solid var(--border);color:var(--muted);cursor:pointer;font-family:DM Mono,monospace;font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;flex:1;padding:8px 6px;transition:all .18s}.seg-btn:last-child{border-right:none}.seg-btn.active{background:var(--accent-muted);color:var(--accent)}.seg-btn:hover:not(.active):not(:disabled){color:var(--text)}.seg-btn:disabled{opacity:.28;cursor:not-allowed}.player-slot{align-items:center;gap:6px;display:flex;position:relative}.player-slot[draggable=true]{cursor:grab}.player-slot.dragging{opacity:.4}.player-slot.drag-over{outline:2px solid var(--accent);border-radius:6px}.player-color-swatch{border:1px solid var(--overlay-25);cursor:pointer;border-radius:50%;flex-shrink:0;width:18px;height:18px;padding:0;transition:transform .15s}.player-color-swatch:hover{transform:scale(1.2)}.color-picker-pop{z-index:200;background:var(--surface2);border:1px solid var(--border);border-radius:8px;gap:6px;padding:6px 8px;display:flex;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 4px 16px #0006}.color-pick-dot{border:1px solid var(--overlay-25);cursor:pointer;border-radius:50%;flex-shrink:0;width:20px;height:20px;padding:0;transition:transform .15s}.color-pick-dot:hover:not(.unavailable){transform:scale(1.2)}.color-pick-dot.unavailable{opacity:.25;cursor:not-allowed}.player-input-wrap{flex:1;align-items:center;min-width:0;display:flex}.player-slot .md-field{border:1px solid var(--border);border-radius:6px;flex:1;align-items:center;min-width:0;margin-top:0;transition:border-color .2s;display:flex}.player-slot .md-field.focused{border-color:var(--player-color,var(--accent));border-width:2px}.player-slot .md-field input[type=text]{border:none;border-radius:0;flex:1;width:auto;min-width:0;padding:7px 10px}.player-slot .md-field input[type=text]:focus{border:none;padding:7px 9px}.sex-sep{background:var(--border);flex-shrink:0;width:1px;height:18px}.players-list{flex-direction:column;gap:6px;display:flex}.add-player-btn{border:1px dashed var(--border);color:var(--muted);cursor:pointer;font-family:DM Mono,monospace;font-size:var(--text-xs);letter-spacing:.1em;background:0 0;border-radius:6px;width:100%;margin-top:6px;padding:7px 10px;transition:all .18s}.add-player-btn:hover{border-color:var(--accent);color:var(--accent)}.add-player-btn:disabled{opacity:.28;cursor:not-allowed}.config-group{flex-direction:column;gap:5px;display:flex}.config-divider{background:var(--border);height:1px;margin:4px 0}.locked-row{opacity:.3;pointer-events:none}.md-field{margin-top:14px;position:relative}.md-field select,.md-field input[type=text]{border:1px solid var(--border);width:100%;font-family:DM Mono,monospace;font-size:var(--text-base);color:var(--text);appearance:none;background:0 0;border-radius:6px;outline:none;padding:10px 10px 8px;transition:border-color .2s}.md-field select:focus,.md-field input[type=text]:focus{border-color:var(--player-color,var(--accent));border-width:2px;padding:10px 9px 8px}.md-field select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%236b6b80' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:28px}.md-field select:focus{padding-right:27px}.md-field select option{background:var(--surface2);color:var(--text)}.md-field select:disabled{opacity:.35}.md-field label{font-size:var(--text-base);letter-spacing:normal;text-transform:none;color:var(--muted);background:var(--surface);pointer-events:none;padding:0 3px;transition:top .15s,transform .15s,font-size .15s,color .15s,letter-spacing .15s;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.md-field.has-value label,.md-field.focused label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);top:0;transform:translateY(-50%)}.md-field.focused label{color:var(--player-color,var(--accent))}.md-field input[type=text]:focus~label,.md-field input[type=text]:not(:placeholder-shown)~label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;top:0;transform:translateY(-50%)}.md-field textarea{border:1px solid var(--border);width:100%;font-family:DM Mono,monospace;font-size:var(--text-base);color:var(--text);resize:vertical;box-sizing:border-box;background:0 0;border-radius:6px;outline:none;min-height:90px;padding:10px 10px 8px;transition:border-color .2s}.md-field textarea:focus{border-color:var(--accent);border-width:2px;padding:10px 9px 8px}.md-field.md-textarea label{top:12px;transform:none}.md-field.md-textarea.has-value label,.md-field.md-textarea.focused label{top:0;transform:translateY(-50%)}.md-field textarea:focus~label,.md-field textarea:not(:placeholder-shown)~label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;top:0;transform:translateY(-50%)}.remove-player-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;font-size:var(--text-md);background:0 0;border-radius:6px;flex-shrink:0;padding:5px 8px;line-height:1;transition:all .15s}.remove-player-btn:hover{border-color:var(--red);color:var(--red)}.sex-toggle-btn{color:var(--muted);cursor:pointer;font-size:var(--text-md);text-align:center;background:0 0;border:none;flex-shrink:0;min-width:32px;padding:5px 9px;line-height:1;transition:color .15s}.sex-toggle-btn:hover{color:var(--text)}.sex-toggle-btn[data-sex=male]{color:var(--male)}.sex-toggle-btn[data-sex=female]{color:var(--female)}.sex-toggle-btn[data-sex=male]:hover,.sex-toggle-btn[data-sex=female]:hover{filter:brightness(1.4)}.sex-toggle-btn[data-sex=N\/A]{font-size:var(--text-xs);letter-spacing:.04em;padding-left:4px;padding-right:4px}.primary-btn{background:var(--accent);color:var(--bg);cursor:pointer;font-family:Bebas Neue,sans-serif;font-size:var(--text-lg);letter-spacing:.15em;border:none;border-radius:8px;width:100%;padding:10px;transition:all .18s}.primary-btn:hover{filter:brightness(1.08);transform:translateY(-1px)}.ctrl-btn{border:1px solid var(--border);cursor:pointer;font-family:Bebas Neue,sans-serif;font-size:var(--text-md);letter-spacing:.1em;border-radius:7px;padding:6px 10px;transition:all .18s}.ctrl-btn.pause-s{background:var(--surface2);color:var(--text);flex:1}.ctrl-btn.pause-s:hover:not(.inactive){border-color:var(--accent2);color:var(--accent2)}.ctrl-btn.pause-s.paused{background:var(--accent2-subtle);border-color:var(--accent2);color:var(--accent2)}.ctrl-btn.finish-s{background:var(--red-subtle);border-color:var(--red);color:var(--red);flex:1}.ctrl-btn.finish-s:hover:not(.inactive){background:var(--red-hover)}.ctrl-btn.inactive{opacity:.28;cursor:not-allowed;pointer-events:none}.history-table-wrap{border:1px solid var(--border);border-radius:8px;flex-shrink:0;overflow:auto}.history-table-wrap::-webkit-scrollbar{width:4px;height:4px}.history-table-wrap::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.history-table{border-collapse:collapse;table-layout:fixed;width:100%}.history-table th.filler-col{background:var(--surface2);border-bottom:1px solid var(--border);width:auto;min-width:0;padding:0}.history-table td.filler-col{border-bottom:1px solid var(--overlay-4);background:0 0;padding:0}.history-table th{font-family:Bebas Neue,sans-serif;font-size:var(--text-md);letter-spacing:.12em;color:var(--muted);text-align:center;background:var(--surface2);z-index:1;border-bottom:1px solid var(--border);white-space:nowrap;width:4rem;min-width:3.8rem;max-width:12rem;padding:4px 8px;position:sticky;top:0;overflow:hidden}.history-table th.player-col{text-align:left;z-index:2;width:20ch;min-width:20ch;max-width:20ch;position:sticky;left:0}.history-table td{text-align:center;font-family:Bebas Neue,sans-serif;font-size:var(--text-md);letter-spacing:.05em;border-bottom:1px solid var(--overlay-4);white-space:nowrap;color:var(--text);min-width:3.8rem;max-width:12rem;padding:4px 8px}.history-table td.player-name-cell{text-align:left;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;background:var(--surface);border-right:1px solid var(--border);white-space:nowrap;text-overflow:ellipsis;width:20ch;min-width:20ch;max-width:20ch;padding:4px 10px;font-family:DM Mono,monospace;position:sticky;left:0;overflow:hidden}.history-table tr:last-child td{border-bottom:none}.history-table td.past-round{opacity:.45}.history-table td.active-round{opacity:1}.history-table th.active-round-header{color:var(--accent);opacity:1}.chart-header{flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.chart-title{font-family:Bebas Neue,sans-serif;font-size:var(--text-lg);letter-spacing:.18em;color:var(--muted)}.chart-toggles{flex-wrap:wrap;flex-shrink:0;gap:6px;display:flex}.chart-toggle-btn{background:var(--surface2);border:1px solid var(--border);color:var(--muted);cursor:pointer;font-family:DM Mono,monospace;font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;border-radius:6px;padding:4px 10px;transition:all .18s}.chart-toggle-btn.active{background:var(--accent-muted);border-color:var(--accent);color:var(--accent)}.chart-toggle-btn:hover:not(.active){color:var(--text);border-color:var(--muted)}.legend-item{font-size:var(--text-xs);letter-spacing:.08em;align-items:center;gap:5px;display:flex}.legend-dot{border-radius:2px;flex-shrink:0;width:8px;height:8px}.legend-dot.curve{border:2px solid var(--accent);background:#f0c040d9;border-radius:50%}.left-stat-row{justify-content:space-between;align-items:baseline;padding:3px 0;display:flex}.left-stat-key{font-size:var(--text-xs);letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.left-stat-val{font-family:Bebas Neue,sans-serif;font-size:var(--text-lg);letter-spacing:.05em;color:var(--accent)}.player-stat-row{justify-content:space-between;align-items:baseline;padding:2px 0;display:flex}.player-stat-name{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase}.player-stat-val{font-family:Bebas Neue,sans-serif;font-size:var(--text-md);letter-spacing:.05em}.finish-game-name-lbl{color:var(--muted);font-size:var(--text-xs);letter-spacing:.2em;text-transform:uppercase;margin-bottom:10px}.winner-btn{background:var(--surface2);border:2px solid var(--border);color:var(--text);cursor:pointer;font-family:DM Mono,monospace;font-size:var(--text-xs);letter-spacing:.08em;text-align:left;border-radius:8px;align-items:center;gap:10px;width:100%;margin-bottom:6px;padding:9px 14px;transition:all .18s;display:flex}.winner-btn:hover{border-color:var(--muted)}.winner-color-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.winner-name{text-align:left;flex:1}.winner-roll-count{font-size:var(--text-xs);color:var(--muted);letter-spacing:.1em;white-space:nowrap}.winner-check{font-size:var(--text-md);opacity:0;margin-left:4px;transition:opacity .15s}.winner-btn.selected .winner-check{opacity:1}.no-winner-btn{border:1px dashed var(--border);width:100%;color:var(--muted);cursor:pointer;font-family:DM Mono,monospace;font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;background:0 0;border-radius:8px;margin-top:6px;padding:8px;transition:border-color .18s,color .18s}.no-winner-btn:hover{border-color:var(--muted);color:var(--text)}.finish-summary{font-size:var(--text-xs);border-top:1px solid var(--border);color:var(--muted);justify-content:space-between;margin-top:2px;padding:4px 0;display:flex}.finish-summary .val{font-family:Bebas Neue,sans-serif;font-size:var(--text-md);letter-spacing:.05em;color:var(--text)}#confirm-finish-overlay{z-index:300;background:#000000bf;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.confirm-finish-modal{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:12px;width:90vw;max-width:320px;padding:24px 28px}.confirm-finish-modal h3{font-family:Bebas Neue,sans-serif;font-size:var(--text-xl);letter-spacing:.15em;color:var(--red);margin-bottom:6px}.confirm-finish-modal p{font-size:var(--text-xs);color:var(--muted);letter-spacing:.1em;margin-bottom:16px}#finish-overlay{z-index:200;background:#000000bf;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.finish-modal{background:var(--surface);border:1px solid var(--border);text-align:center;border-radius:16px;width:95vw;max-width:960px;padding:30px 34px}.finish-modal h2{font-family:Bebas Neue,sans-serif;font-size:var(--text-2xl);letter-spacing:.15em;color:var(--accent);margin-bottom:4px}.finish-stats{flex-direction:column;gap:0;margin:12px 0 0;display:flex}.finish-actions{justify-content:center;gap:10px;margin-top:16px;display:flex}.fa-btn{border:1px solid var(--border);color:var(--text);cursor:pointer;font-family:Bebas Neue,sans-serif;font-size:var(--text-md);letter-spacing:.1em;background:0 0;border-radius:8px;padding:8px 20px;transition:all .18s}.fa-btn.primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}.fa-btn:hover{opacity:.82}.feedback-trigger-btn{color:var(--muted);cursor:pointer;font-family:DM Mono,monospace;font-size:var(--text-xs);letter-spacing:.18em;text-transform:uppercase;text-align:center;background:0 0;border:none;width:100%;padding:10px 0 4px;transition:color .18s}.feedback-trigger-btn:hover{color:var(--text)}#feedback-overlay{z-index:250;background:#000000bf;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.feedback-modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:14px;width:90vw;max-width:420px;padding:24px 28px;display:flex}.feedback-modal-header{justify-content:space-between;align-items:center;display:flex}.feedback-modal-title{font-family:Bebas Neue,sans-serif;font-size:var(--text-xl);letter-spacing:.15em;color:var(--accent)}.feedback-close-btn{color:var(--muted);cursor:pointer;font-size:var(--text-md);background:0 0;border:none;padding:4px;line-height:1;transition:color .18s}.feedback-close-btn:hover{color:var(--text)}.fb-submit{width:100%;margin-top:2px}.icon-toggle-btn{border:1px solid var(--border);color:var(--muted);cursor:pointer;font-size:var(--text-lg);background:0 0;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:color .18s,border-color .18s;display:inline-flex}.icon-toggle-btn:hover{color:var(--text);border-color:var(--muted)}.icon-toggle-btn.open{color:var(--accent);border-color:var(--accent)}.icon-toggle-btn span{transition:transform .22s;display:inline-flex}.icon-toggle-btn.open span{transform:rotate(90deg)}.np-btn{background:var(--surface2);border:2px solid var(--border);color:var(--text);text-align:center;border-radius:8px;justify-content:center;align-items:center;font-family:Bebas Neue,sans-serif;transition:all .13s;display:flex}.np-btn:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.np-btn:disabled{opacity:.28;cursor:not-allowed;transform:none}.np-btn.clr-target{border-color:var(--accent2);color:var(--accent2)}.clr-btn-base{font-family:DM Mono,monospace;font-size:var(--text-xs);text-transform:uppercase;text-align:center;white-space:normal;cursor:pointer;flex:1;justify-content:center;align-items:center;transition:all .13s;display:flex}.clr-btn{background:var(--surface2);border:2px solid var(--border);color:var(--muted)}.clr-btn:hover:not(:disabled){border-color:var(--accent2);color:var(--accent2)}.clr-btn:disabled{opacity:.28;cursor:not-allowed}.roll-btn{background:var(--accent);color:var(--bg);cursor:pointer;border:none;justify-content:center;align-items:center;width:100%;font-family:Bebas Neue,sans-serif;transition:all .15s;display:flex}.roll-btn:disabled{opacity:.28;cursor:not-allowed;transform:none}.roll-btn:hover:not(:disabled){filter:brightness(1.08)}.round-label{font-family:Bebas Neue,sans-serif;font-size:var(--text-lg);color:var(--muted);white-space:nowrap}.player-badge{font-family:Bebas Neue,sans-serif;font-size:var(--text-lg);letter-spacing:.08em}@media (width>=768px){html,body,#app{height:100%;overflow:hidden}#app{grid-template-columns:260px 1fr;height:100vh;display:grid}#left-pane{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;height:100vh;display:flex;overflow:hidden}.left-logo{border-bottom:1px solid var(--border);flex-shrink:0;padding:18px 18px 12px}.left-logo h1{font-family:Bebas Neue,sans-serif;font-size:var(--text-2xl);letter-spacing:.12em;color:var(--accent);text-shadow:0 0 20px var(--accent-glow);line-height:1}.left-logo .subtitle{font-size:var(--text-xs);color:var(--muted);letter-spacing:.28em;text-transform:uppercase;margin-top:1px}#left-scroll{flex-direction:column;flex:1;gap:14px;padding:14px 18px;display:flex;overflow-y:auto}#left-scroll::-webkit-scrollbar{width:3px}#left-scroll::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}#left-footer{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;gap:8px;padding:12px 18px;display:flex}#right-area{grid-template-rows:1fr 1fr;gap:12px;height:100vh;padding:14px 16px 14px 14px;display:grid;overflow:hidden}.dt-chart-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;min-height:0;padding:14px 12px 10px;display:flex;overflow:hidden}.dt-chart-panel canvas{flex:1;width:100%;min-height:0;display:block}.dt-players-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;min-height:0;padding:12px 14px;display:flex;overflow:hidden}.dt-players-header{flex-shrink:0;align-items:center;gap:12px;display:flex}.dt-round-info{flex:1;align-items:baseline;gap:8px;min-width:0;display:flex}.dt-round-label{letter-spacing:.18em}.dt-player-name-badge{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dt-roll-area{flex:1;align-items:stretch;gap:10px;min-height:0;display:flex}.dt-input-zone{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.big-num-pad{flex:1;gap:6px;display:grid}.big-num-pad.cols-6{grid-template-columns:repeat(6,1fr)}.big-num-pad.cols-6.has-clr{grid-template-columns:repeat(7,1fr)}.big-num-pad.cols-11{grid-template-columns:repeat(6,1fr)}.big-np-btn{cursor:pointer;font-size:var(--text-xl);letter-spacing:.05em}.big-np-btn:hover:not(:disabled){background:var(--accent-active);transform:scale(1.05)}.big-roll-btn{font-size:var(--text-2xl);letter-spacing:.15em;border-radius:10px}.big-roll-btn:hover:not(:disabled){transform:scale(1.02)}.big-clr-cell{flex-direction:column;gap:4px;display:flex}.big-clr-btn{letter-spacing:.08em;border-radius:8px;padding:3px 4px;line-height:1.35}.big-np-btn.clr-target:hover:not(:disabled){background:var(--accent-muted)}.mobile-only{display:none!important}.desktop-only{display:flex!important}#mob-game-info,#ls-mob-controls{display:none!important}}#mob-game-info{display:none}@media (width<=767px){.desktop-only{display:none!important}#app{flex-direction:column;align-items:center;min-height:100vh;padding-bottom:32px;display:flex}#left-pane,#right-area{display:contents}.left-logo{z-index:50;text-align:center;background:var(--bg);border-bottom:1px solid var(--border);width:100%;padding:14px 16px 10px;position:sticky;top:0}.left-logo h1{letter-spacing:.12em;color:var(--accent);text-shadow:0 0 20px var(--accent-glow);font-family:Bebas Neue,sans-serif;font-size:clamp(1.8rem,5vw,3rem)}.left-logo .subtitle{font-size:var(--text-xs);color:var(--muted);letter-spacing:.26em;text-transform:uppercase;margin-top:2px}#mob-game-info{background:var(--surface);border:1px solid var(--border);border-radius:10px;align-items:center;gap:10px;width:calc(100% - 32px);max-width:600px;margin-top:12px;padding:10px 14px}.mob-info-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}#mob-info-players{font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#mob-info-game{font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#ls-mob-controls{border-top:1px solid var(--border);gap:8px;margin-top:10px;padding-top:10px;display:flex}#ls-header{align-items:center;gap:8px;display:flex}#ls-game-time-section{flex-shrink:0;text-align:left!important}#ls-game-time-section #ls-clock{font-size:var(--text-xl)}#ls-mob-cur{text-align:right;flex:1;min-width:0}#ls-mob-cur-player{font-size:var(--text-xs);letter-spacing:.15em;text-transform:uppercase;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}#ls-mob-cur-turn{font-family:Bebas Neue,sans-serif;font-size:var(--text-xl);letter-spacing:.1em;line-height:1}#ls-body.ls-gt-collapsed,#mob-history-table-wrap.mob-table-collapsed{display:none}#left-scroll{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:14px;width:calc(100% - 32px);max-width:600px;margin-top:14px;padding:18px;display:flex}#left-scroll.mob-collapsed{display:none}#mob-game-info:has(+#left-scroll.mob-in-game:not(.mob-collapsed)){border-bottom-right-radius:0;border-bottom-left-radius:0}#left-scroll.mob-in-game:not(.mob-collapsed){border-top:none;border-top-left-radius:0;border-top-right-radius:0;margin-top:0}#left-scroll.mob-in-game #title-config,#left-scroll.mob-in-game #mode-config,#left-scroll.mob-in-game .config-divider{display:none}#left-footer{flex-direction:column;gap:8px;width:calc(100% - 32px);max-width:600px;margin-top:12px;display:flex}#game-panel{flex-direction:column;gap:12px;width:100%;max-width:860px;margin-top:14px;padding:0 16px 32px;display:none}.mob-game-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.game-name-display{letter-spacing:.1em;color:var(--accent);font-family:Bebas Neue,sans-serif;font-size:clamp(1.4rem,4vw,2rem)}.stats-bar{background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;overflow:hidden}.stat-cell{border-right:1px solid var(--border);text-align:center;flex:1;padding:8px 10px}.stat-cell:last-child{border-right:none}.stat-val{font-family:Bebas Neue,sans-serif;font-size:var(--text-xl);letter-spacing:.05em;color:var(--accent);line-height:1}.stat-lbl{font-size:var(--text-xs);letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:1px}#mob-stats-bar{display:none!important}.chart-wrap{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 10px}.mob-chart-header{justify-content:flex-end;gap:6px;margin-bottom:8px;display:flex}#mob-legend{flex-flow:wrap;gap:8px 14px;margin-top:10px;display:flex}canvas{width:100%;display:block}.mob-roll-panel{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:14px}.mob-roll-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.mob-round-info{flex:1;align-items:baseline;gap:8px;display:flex}.mob-round-label{letter-spacing:.15em}.mob-num-pad{align-items:start;gap:5px;margin-top:8px;display:grid}.mob-num-pad.cols-6{grid-template-columns:repeat(6,1fr)}.mob-num-pad.cols-6.has-clr{grid-template-columns:repeat(7,1fr)}.mob-num-pad.cols-11{grid-template-columns:repeat(6,1fr)}.mob-np-btn{cursor:pointer;font-size:var(--text-xl);aspect-ratio:1;border-radius:7px;padding:4px}.mob-np-btn.selected{border-color:var(--accent);background:var(--accent-muted);color:var(--accent)}.mob-roll-btn{font-size:var(--text-xl);letter-spacing:.1em;border-radius:8px;margin-top:8px;padding:10px}.mob-clr-cell{flex-direction:column;gap:3px;display:flex}.mob-clr-btn{letter-spacing:.07em;border-radius:7px;padding:2px 3px;line-height:1.3}}@keyframes rollFlash{0%{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}60%{border-color:var(--accent);color:var(--accent);background:var(--accent-active)}to{border-color:var(--border);color:var(--text);background:var(--surface2)}}.np-btn.roll-flash{animation:.35s ease-out forwards rollFlash}@media (orientation:landscape) and (height<=500px){#game-panel{flex-direction:row;gap:10px;margin-top:8px;padding:0 12px 12px}.chart-wrap{flex:1;min-width:0}#chart-mob{height:140px!important}.mob-roll-panel{flex:1;min-width:0;overflow-y:auto}.mob-num-pad{gap:4px}.mob-np-btn{font-size:var(--text-md)}.left-logo .subtitle{display:none}}
