
:root{font-family:Inter, "Segoe UI", Arial, sans-serif,sans-serif;color:#202033;background:#f7f7fb;font-synthesis:none;--bg:#f7f7fb;--surface:#fff;--ink:#202033;--muted:#85859b;--line:#e9e8f0;--accent:#6757e8;--soft:#f0efff;--shadow:0 14px 40px #2620440b;--green:#41a67a}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);min-height:100vh;transition:background .2s,color .2s}body.dark{--bg:#13131d;--surface:#1e1e2c;--ink:#f4f2ff;--muted:#a3a2b8;--line:#333346;--soft:#292642;--shadow:0 16px 40px #05050a55}.topbar{height:78px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 max(28px,calc((100vw - 1180px)/2));gap:34px;background:var(--surface)}.brand{text-decoration:none;color:var(--ink);font:800 24px Manrope, "Segoe UI", sans-serif;letter-spacing:-1.5px;display:flex;align-items:center;gap:8px;flex-shrink:0}.brand-mark{display:grid;place-items:center;width:31px;height:31px;background:var(--accent);color:white;border-radius:10px;font-size:21px}.tools{display:flex;align-items:center;gap:4px;flex:1;overflow:auto;scrollbar-width:none}.nav-item{white-space:nowrap;background:transparent;border:0;color:var(--muted);font:600 13px Inter, "Segoe UI", Arial, sans-serif;padding:10px 12px;border-radius:10px;cursor:pointer}.nav-item:hover,.nav-item.active{background:var(--soft);color:var(--accent)}.top-actions{display:flex;gap:8px}.icon-button{height:38px;width:38px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--muted);font-size:18px;cursor:pointer}.icon-button:hover{color:var(--accent);border-color:var(--accent)}.shell{max-width:1030px;margin:auto;padding:53px 24px 25px}.intro{text-align:center;margin-bottom:34px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.5px;color:var(--accent);text-transform:uppercase}.live-dot{display:inline-block;width:7px;height:7px;background:#5dc492;border-radius:99px;margin-right:6px;box-shadow:0 0 0 4px #5dc4921d}.intro h1{font:800 38px Manrope, "Segoe UI", sans-serif;margin:13px 0 8px;letter-spacing:-1.5px}.intro p{color:var(--muted);margin:0;font-size:15px}.workspace{display:grid;grid-template-columns: .94fr 1.06fr;gap:20px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}.controls{padding:25px 27px 18px}.field-row{display:flex;align-items:end;gap:13px}.field-row>label{flex:1}.field-row label,.controls>label,.tool-pane>label{font-size:12px;color:var(--muted);font-weight:600;display:flex;flex-direction:column;gap:8px}.range-dash{padding-bottom:13px;color:#b0afc0}.controls input:not([type=checkbox]),.controls textarea,.controls select,.setting-row select{width:100%;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:600 16px Inter, "Segoe UI", Arial, sans-serif;border-radius:10px;padding:12px 13px;outline:none}.controls input:focus,.controls textarea:focus,.controls select:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6757e81c}.quick-ranges{display:flex;gap:7px;margin:14px 0 19px;flex-wrap:wrap}.quick-ranges button{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:8px;padding:7px 10px;font:600 12px Inter, "Segoe UI", Arial, sans-serif;cursor:pointer}.quick-ranges button:hover{color:var(--accent);background:var(--soft);border-color:transparent}.lower{margin-bottom:15px}.check-label{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;color:var(--ink)!important;font-size:13px!important;font-weight:500!important;min-height:42px}.check-label input,.setting-row input{accent-color:var(--accent);width:16px;height:16px}.wide-label{margin-bottom:13px}.controls textarea{font-size:14px;resize:vertical;line-height:1.55}.inline-note{font-size:12px;color:var(--muted);background:var(--bg);padding:10px 12px;border-radius:9px;margin:5px 0 18px}.subtle-button,.file-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);background:var(--surface);color:var(--ink);font:600 12px Inter, "Segoe UI", Arial, sans-serif;border-radius:9px;padding:10px 12px;cursor:pointer}.file-button input{display:none}.primary-button{width:100%;height:51px;border:0;border-radius:12px;background:var(--accent);color:#fff;font:700 14px Inter, "Segoe UI", Arial, sans-serif;display:flex;align-items:center;justify-content:center;gap:11px;cursor:pointer;box-shadow:0 8px 17px #6757e82e;transition:transform .15s,filter .15s}.primary-button:hover{filter:brightness(1.06);transform:translateY(-1px)}.primary-button:disabled{opacity:.55;cursor:wait;transform:none}.primary-button span:last-child{font-size:18px}.key-hint{text-align:center;color:var(--muted);font-size:11px;padding-top:12px}kbd{font:600 10px Inter, "Segoe UI", Arial, sans-serif;padding:3px 6px;border:1px solid var(--line);border-radius:5px;background:var(--bg)}.result-panel{min-height:405px;padding:25px 28px 18px;display:flex;flex-direction:column;position:relative;overflow:hidden}.result-panel:before{content:"";position:absolute;width:300px;height:300px;background:radial-gradient(circle,#7466ef12,transparent 68%);left:50%;top:38%;transform:translate(-50%,-50%);pointer-events:none}.result-top{display:flex;justify-content:space-between;align-items:center;z-index:1}.result-label{font-size:10px;font-weight:700;letter-spacing:1.4px;color:var(--muted)}.copy-button{height:34px;width:34px;border-radius:9px;border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:18px;cursor:pointer}.result-value{position:relative;z-index:1;margin:auto;text-align:center;max-width:100%;overflow-wrap:anywhere;font:800 clamp(56px,8vw,92px) Manrope, "Segoe UI", sans-serif;letter-spacing:-4px;color:var(--accent);line-height:1.1;transition:transform .2s}.result-value.placeholder{font-size:44px;letter-spacing:-2px;color:#d3d1e1}.result-value.pop{animation:pop .42s cubic-bezier(.2,1.6,.5,1)}@keyframes pop{50%{transform:scale(1.1)}}.result-meta{text-align:center;font-size:13px;color:var(--muted);margin:-25px 0 22px;position:relative;z-index:1}.visual{z-index:1;text-align:center;min-height:0}.dice-visual{font-size:44px;letter-spacing:7px}.winner-list{display:grid;gap:7px;max-height:160px;overflow:auto}.winner-list span{padding:8px;background:var(--soft);border-radius:8px;color:var(--accent);font-weight:700}.team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;text-align:left}.team-card{padding:11px;background:var(--bg);border-radius:10px}.team-card b{font-size:11px;color:var(--accent)}.team-card p{margin:7px 0 0;font-size:12px}.result-bottom{border-top:1px solid var(--line);padding-top:14px;margin-top:auto;display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:10px;z-index:1}.result-bottom #integrity{display:flex;align-items:center;gap:6px}.result-bottom i{width:6px;height:6px;background:#4bb88c;border-radius:99px}.text-button{background:none;border:0;color:var(--muted);font:600 12px Inter, "Segoe UI", Arial, sans-serif;cursor:pointer;padding:6px}.text-button:hover{color:var(--accent)}.history-section{margin-top:34px}.history-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.history-heading h2{font:700 16px Manrope, "Segoe UI", sans-serif;margin:0 0 5px}.history-heading p{margin:0;color:var(--muted);font-size:11px}.history-actions{display:flex;gap:8px}.history-list{padding:0;margin:0;list-style:none;display:grid;gap:7px}.history-list li{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;background:var(--surface);border:1px solid var(--line);border-radius:10px;font-size:12px}.history-list li span:first-child{font-weight:600}.history-list li small{color:var(--muted)}.empty-history{color:var(--muted);justify-content:center!important}footer{display:flex;justify-content:space-between;align-items:center;padding-top:37px;color:var(--muted);font-size:11px}footer span:first-child{color:var(--ink);font:800 16px Manrope, "Segoe UI", sans-serif}.footer-dot{color:var(--accent)}.hidden{display:none!important}dialog{border:0;padding:0;background:transparent;color:var(--ink);width:min(440px,calc(100% - 30px));max-width:none}dialog::backdrop{background:#17152588;backdrop-filter:blur(3px)}.dialog-card{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:25px;box-shadow:var(--shadow)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.dialog-head h2{font:700 24px Manrope, "Segoe UI", sans-serif;margin:7px 0 0}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.setting-row select{width:auto;font-size:12px;padding:8px}.dialog-actions{display:flex;justify-content:space-between;margin-top:19px;gap:10px}.primary-button.small{width:auto;padding:0 20px;height:41px}.toast{position:fixed;left:50%;bottom:26px;transform:translate(-50%,20px);opacity:0;pointer-events:none;background:#242238;color:#fff;border-radius:10px;padding:11px 16px;font-size:12px;transition:.2s;z-index:10}.toast.show{opacity:1;transform:translate(-50%,0)}.projector .shell{max-width:1300px}.projector .intro h1{font-size:48px}.projector .result-value{font-size:clamp(80px,13vw,150px)}.projector .result-panel{min-height:520px}.projector .controls{font-size:1.1em}.projector .history-section,.projector footer{display:none}body.no-motion *,body.no-motion *:before,body.no-motion *:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}@media(max-width:850px){.topbar{padding:0 17px;gap:17px}.tools{gap:0}.nav-item{padding:10px 9px}.shell{padding-top:38px}.workspace{gap:13px}.controls{padding:20px}.result-panel{padding:21px;min-height:390px}}@media(max-width:650px){.topbar{height:auto;min-height:66px;flex-wrap:wrap;gap:3px 10px;padding:10px 13px}.brand{font-size:20px}.brand-mark{width:28px;height:28px}.top-actions{margin-left:auto}.tools{order:3;flex-basis:100%;padding:4px 0 1px}.nav-item{font-size:12px;padding:8px 10px}.shell{padding:34px 14px 20px}.intro{margin-bottom:24px}.intro h1{font-size:30px}.intro p{font-size:13px}.workspace{grid-template-columns:1fr}.controls{padding:20px 18px 15px}.result-panel{min-height:290px;order:-1}.result-value{font-size:68px}.result-value.placeholder{font-size:36px}.result-meta{margin:-16px 0 16px}.history-section{margin-top:28px}footer{padding-top:25px}.history-heading h2{font-size:15px}}@media(max-width:380px){.shell{padding-inline:10px}.controls{padding:16px 14px 13px}.quick-ranges{gap:5px}.quick-ranges button{padding:7px 8px}.result-panel{min-height:260px}.result-bottom{font-size:9px}}
.brand-mark{background:linear-gradient(145deg,#897bf2,#6757e8 68%,#5345c9);border-radius:11px;box-shadow:0 4px 10px #6757e82b;flex:none}.brand-mark svg{display:block;width:19px;height:19px}
