:root{--grad: linear-gradient(180deg, #ff7a59 0%, #e2495f 38%, #c63a86 70%, #9c2bb0 100%);--card: #1f252ef2;--line: #2c333d;--text: #e9ecef;--muted: #8a939e;--ok: #5fd38d;--err: #f07070;--accent: #bb99ff}.toast{position:relative;padding:8px 10px 8px 14px;border:1px solid var(--line);border-radius:10px;background:var(--card);box-shadow:0 4px 14px #0007;overflow:hidden;font-size:13px;line-height:1.35}.toast:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--grad)}.toast[data-outcome=critical]:before{background:var(--ok)}.toast[data-outcome=fumble]:before{background:var(--err)}.toast.pending{opacity:.7}.head{display:flex;align-items:center;gap:6px;margin-bottom:4px;color:var(--muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.who{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.who strong{color:var(--text)}.avatar{width:20px;height:20px;border-radius:50%;object-fit:cover}.line{display:flex;align-items:center;gap:10px;padding:2px 0}.what{flex:1;min-width:0}.type{font-weight:700}.dice{color:var(--muted);font-size:11px}.equals{color:var(--muted);font-size:18px}.total{min-width:2ch;font-size:26px;font-weight:700;text-align:right}.total.critical{color:var(--ok)}.total.fumble{color:var(--err)}.rolling{color:var(--muted);font-style:italic}.tag{margin-left:4px;padding:0 4px;border-radius:3px;background:var(--line);font-size:10px;letter-spacing:.04em;text-transform:uppercase}.tag.advantage,.tag.critical{color:var(--ok)}.tag.disadvantage,.tag.fumble{color:var(--err)}.tag.private{color:var(--accent)}:root{--bg: #161b22;--warn: #e0a030;color-scheme:dark;font:14px/1.45 Roboto,system-ui,sans-serif;color:var(--text)}html,body{height:100%;margin:0}body{background:var(--bg)}#app{display:flex;flex-direction:column;height:100%}button,input{font:inherit}.brand{display:flex;align-items:center;gap:.6rem;padding:.85rem 1rem;background:var(--grad);color:#fff;font-weight:700;font-size:1.05rem;letter-spacing:.01em}.logo{padding:0 .4rem;border-radius:7px;background:#fff;color:#e2495f}.title{flex:1}.settings-button{padding:.3rem .9rem;border:0;border-radius:999px;background:#ffffff2e;color:#fff;font-weight:700;font-size:.85rem;cursor:pointer}.settings-button:hover{background:#ffffff47}.content{display:flex;flex:1;flex-direction:column;gap:1rem;min-height:0;overflow-y:auto;padding:1rem}.content>*{margin:0}.muted{color:var(--muted)}.header-dot{--tone: var(--ok);width:.65rem;height:.65rem;flex:none;border:2px solid #fff;border-radius:50%;background:var(--tone)}.header-dot[data-tone=paused]{--tone: var(--warn)}.header-dot[data-tone=error]{--tone: var(--err)}.header-dot[data-tone=locked]{--tone: var(--line)}.warning{padding:.6rem .9rem;border-left:4px solid var(--warn);border-radius:4px;background:color-mix(in srgb,var(--warn) 10%,transparent)}.section h3{margin:0 0 .6rem;padding-bottom:.45rem;border-bottom:1px solid var(--line);color:#fff;font-size:.8rem;letter-spacing:.06em;text-transform:uppercase}.log{display:flex;flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none}.empty{margin:0;color:var(--muted)}.log .toast{box-shadow:none}.log time{flex:none}
