:root{color-scheme:dark;--bg:#080e1b;--panel:#101a2c;--panel2:#121d32;--border:#26344e;--text:#f4f7ff;--muted:#8292b0;--blue:#7399ff;--purple:#a17aff;--mint:#44d5bd;--pink:#f078ab;--soft:#18243b;--shadow:0 18px 52px rgba(0,0,0,.17)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:'Manrope','Noto Sans Thai',system-ui,sans-serif;font-size:15px}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}p{line-height:1.75}::selection{background:#657de999;color:#fff}input,textarea,select{width:100%;color:var(--text);background:#0a1324;border:1px solid #33425b;border-radius:13px;padding:14px 16px;outline:none;transition:.2s;border-color:#344159}input:focus,textarea:focus,select:focus{border-color:#8e9fff;box-shadow:0 0 0 3px #637dfa22}textarea{resize:vertical;line-height:1.65}input::placeholder,textarea::placeholder{color:#637390}button:focus-visible,a:focus-visible{outline:2px solid #92adff;outline-offset:4px}input[type=number]{appearance:textfield}input::-webkit-inner-spin-button{opacity:.6}.app-shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;flex:0 0 250px;background:#0b1425;border-right:1px solid #20304a;display:flex;flex-direction:column;padding:31px 15px 23px;z-index:20}.brand{display:flex;gap:11px;align-items:center;padding:0 14px;white-space:nowrap;font-size:24px;font-weight:900;letter-spacing:-.075em}.brand-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;font-size:29px;font-weight:500;background:linear-gradient(145deg,#5d85ff,#a777fa);border-radius:11px;color:#fff;box-shadow:0 6px 24px #6574f837}.brand-accent{color:#a3a5ff}.brand small{display:block;font-size:8px;letter-spacing:.31em;color:#7486a7;margin-top:-3px;font-weight:800}.sidebar-group-label{margin:53px 15px 16px;color:#637592;font-size:10px;letter-spacing:.18em;font-weight:800}.sidebar-group-label.second-label{margin-top:39px}.nav-stack{display:grid;gap:6px}.nav-item{appearance:none;border:1px solid transparent;border-radius:12px;background:none;color:#9daac1;min-height:47px;width:100%;padding:9px 13px;display:flex;gap:14px;align-items:center;text-align:left;font-size:13px;font-weight:700;transition:.16s}.nav-item:hover{background:#14213a;color:#fff}.nav-item.active{background:#1b2a47;border-color:#30416a;color:#f8fbff;box-shadow:inset 3px 0 #8b8dff}.nav-icon{display:grid;place-items:center;width:20px;font-family:system-ui;font-size:20px;color:#8b9cff}.nav-arrow{margin-left:auto;font-size:22px;color:#aab7d9}.nav-tag{margin-left:auto;color:#75e9c7;background:#17463e;border-radius:5px;font-size:9px;padding:4px 6px;letter-spacing:.09em}.sidebar-bottom{margin-top:auto;padding:0 12px;color:#7b8fae}.side-online{font-size:11px;font-weight:700;display:flex;align-items:center;gap:9px;border-top:1px solid #263550;padding-top:24px}.live-dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:100%;background:#49e5bb;box-shadow:0 0 0 4px #49e5bb1b,0 0 16px #49e5bb80;vertical-align:middle;animation:blink 2.2s infinite}.side-footer{font-size:10px;margin-top:10px;line-height:1.6}.main-area{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:78px;border-bottom:1px solid #1e2a40;display:flex;align-items:center;padding:0 clamp(24px,4.1vw,72px);gap:14px}.crumb{color:#657a9d;font-size:11px;letter-spacing:.13em;font-weight:800}.crumb span{padding:0 10px;color:#38475d}.crumb b{color:#e3e9fa;font-weight:700;letter-spacing:0;font-size:13px}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:24px}.clock-now{font-variant-numeric:tabular-nums;color:#8fa2c3;font-size:13px;letter-spacing:.08em;font-weight:700}.user-chip{border:1px solid #354261;background:#17223b;border-radius:25px;color:#bdc8ed;font-size:10px;letter-spacing:.07em;font-weight:800;padding:9px 14px}.menu-button{display:none;background:none;color:#fff;border:0;font-size:24px}.workspace{max-width:1370px;width:100%;padding:42px clamp(24px,4.1vw,72px) 90px;margin:0 auto;flex:1}.tool-panel{display:none}.tool-panel.active{display:block;animation:enter .28s ease}@keyframes enter{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.hero{display:flex;position:relative;min-height:327px;overflow:hidden;background:radial-gradient(ellipse at 82% 50%,#1e2d5d 0%,transparent 47%),linear-gradient(110deg,#152344 0%,#121e39 65%,#162849 100%);border:1px solid #30416b;border-radius:22px;padding:45px 49px;box-shadow:var(--shadow)}.hero:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#fff0,#fff0),radial-gradient(#ffffff09 1px,transparent 1px);background-size:auto,22px 22px;mask-image:linear-gradient(90deg,transparent,black);pointer-events:none}.hero-content{position:relative;z-index:2;max-width:550px}.eyebrow{font-size:10px;color:#a2aeff;letter-spacing:.19em;font-weight:800;display:flex;align-items:center;gap:8px}.eyebrow.small{font-size:10px;color:#889bf2;margin-bottom:13px}.sparkle{font-size:17px}.hero h1{font-size:clamp(32px,3.7vw,55px);line-height:1.29;letter-spacing:-.065em;margin:14px 0 14px;font-weight:900}.gradient-text{background:linear-gradient(90deg,#89b6ff,#b49bff 70%,#e0a9ff);background-clip:text;color:transparent}.hero p{font-size:13px;max-width:430px;color:#a1b0ce;margin-bottom:26px;line-height:1.9}.btn{border:1px solid transparent;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;gap:15px;padding:11px 17px;font-size:12px;font-weight:800;transition:transform .15s,background .15s,box-shadow .15s;min-height:43px}.btn:hover:not(:disabled){transform:translateY(-2px)}.btn-primary{background:linear-gradient(115deg,#6388ff,#866bfa);color:#fff;box-shadow:0 7px 23px #647efc40}.btn-primary:hover{box-shadow:0 8px 27px #647efc66}.btn-outline{color:#d6deff;background:#1a2944;border-color:#3a5076}.btn-outline:hover{background:#243759}.btn-ghost{background:transparent;border-color:#35445c;color:#a5b6d8}.btn-lg{min-height:51px;font-size:13px;padding:13px 21px}.btn-block{width:100%}.hero-orbit{position:absolute;right:-5px;top:-38px;width:410px;height:400px;display:grid;place-items:center}.orbit{position:absolute;border:1px solid #647afe33;border-radius:100%;width:260px;height:260px}.orbit-one{width:340px;height:340px;border-style:dashed;border-color:#6e80ca27}.orbit-two{background:radial-gradient(circle,#6b67fe0e,#3b58b428 60%,transparent 70%);box-shadow:0 0 90px #4c59a714}.orbit-core{width:146px;height:146px;border:1px solid #8797fc8c;border-radius:42px;display:grid;place-items:center;background:linear-gradient(140deg,#6476f9,#9872ed);font-size:100px;color:#fff;transform:rotate(-16deg);box-shadow:0 30px 70px #7058fb68;text-shadow:0 2px 18px #fff4}.float-chip{position:absolute;border:1px solid #6577aa77;background:#1d3159eb;backdrop-filter:blur(6px);color:#e7ebff;padding:11px 14px;border-radius:10px;font-size:12px;font-weight:800;box-shadow:0 13px 30px #08132287}.chip-one{top:50px;left:35px;transform:rotate(-8deg)}.chip-two{right:26px;top:115px;transform:rotate(10deg)}.chip-three{bottom:54px;left:0;transform:rotate(5deg);color:#7deccf}.section-heading{display:flex;align-items:end;justify-content:space-between;margin:43px 0 21px}.section-heading h2{font-size:23px;margin:0;font-weight:900}.section-muted{font-size:11px;color:#7b8dae}.features-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.feature-card{text-align:left;display:flex;align-items:center;gap:17px;background:#111c30;color:#fff;border:1px solid #293852;border-radius:16px;padding:23px;transition:.2s}.feature-card:hover{background:#182640;border-color:#4f6092;transform:translateY(-3px);box-shadow:var(--shadow)}.feature-icon{display:grid;place-items:center;flex:0 0 53px;width:53px;height:53px;border-radius:15px;font-size:28px}.fi-blue{background:#223d66;color:#83baff}.fi-purple{background:#35255f;color:#ba9aff}.fi-orange{background:#523c25;color:#ffc07f}.fi-green{background:#1c4a48;color:#76edc9}.fi-pink{background:#542840;color:#ffa4d4}.feature-info{display:grid;gap:5px}.feature-info b{font-size:15px;font-weight:800}.feature-info small{font-size:11px;color:#899bb8;line-height:1.5}.feature-link{margin-left:auto;align-self:start;color:#8aa0c3;font-size:19px}.feature-wide{grid-column:span 2;background:linear-gradient(100deg,#15253f,#18213b)}.live-pill{display:inline-flex;align-items:center;gap:9px;border-radius:20px;background:#15382f;border:1px solid #285344;color:#62dfb9;font-size:10px;font-weight:900;letter-spacing:.09em;padding:9px 12px;margin-left:auto}.bottom-strip{display:flex;align-items:center;gap:16px;padding:24px;margin-top:25px;border-radius:15px;border:1px dashed #344867;background:#0e192b}.strip-icon{width:45px;height:45px;border-radius:12px;display:grid;place-items:center;background:#1f3151;color:#a2b7ff;font-size:27px}.bottom-strip strong{font-size:13px}.bottom-strip p{color:#8697b6;font-size:11px;margin:1px 0 0}.bottom-strip .btn{margin-left:auto}.app-footer{padding:0 clamp(24px,4.1vw,72px) 25px;display:flex;justify-content:space-between;color:#566984;font-size:10px}.page-title{margin:9px 0 29px}.page-title h1{font-size:clamp(30px,3.4vw,43px);font-weight:900;margin:0 0 4px}.page-title p{font-size:13px;color:#8da0c0;margin:0}.title-decoration{font-family:system-ui;color:#8e87f7}.tool-stage{background:linear-gradient(135deg,#111c30,#111a2d);border:1px solid #2b3953;border-radius:19px;box-shadow:var(--shadow);padding:30px}.tool-stage.centered{display:flex;flex-direction:column;align-items:center;min-height:450px;justify-content:center;text-align:center}.tiny-heading{letter-spacing:.22em;font-size:11px;color:#7287ad;font-weight:900}.digital-time{font-size:clamp(55px,8vw,112px);white-space:nowrap;font-weight:800;letter-spacing:-.07em;line-height:1.5;color:#f2f5ff;font-variant-numeric:tabular-nums}.digital-time span{font-size:.43em;color:#778ff9}.time-actions{display:flex;gap:11px;justify-content:center;flex-wrap:wrap;margin-top:20px}.lap-list{width:min(640px,100%);margin-top:24px;max-height:250px;overflow:auto}.lap-entry{display:flex;padding:12px 17px;justify-content:space-between;border-bottom:1px solid #263752;color:#a5b6d7;font-variant-numeric:tabular-nums}.lap-entry strong{color:#e8f0ff}.timer-inputs{display:flex;align-items:center;gap:13px;margin-top:8px}.timer-inputs label{color:#8294b4;font-size:12px;text-align:left}.timer-inputs input{margin-top:7px;width:95px;text-align:center;font-size:21px;font-weight:800;padding:12px}.timer-inputs>span{font-size:25px;margin-top:22px;color:#91a4ce}.timer-presets{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:23px}.timer-presets button{background:#182741;border:1px solid #3a4c6b;border-radius:8px;color:#9faccc;font-size:11px;padding:8px 12px}.timer-presets button.selected{background:#2a3d70;border-color:#7a89fd;color:white}.split-tool{display:grid;grid-template-columns:1.35fr .9fr;gap:18px}.wheel-stage{display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:515px}.wheel-container{position:relative;width:min(400px,95%);aspect-ratio:1;display:grid;place-items:center;margin:0 0 15px}#wheel-canvas{display:block;width:100%;height:100%;filter:drop-shadow(0 18px 30px #070e23b2)}.wheel-pointer{position:absolute;z-index:2;left:50%;top:-5px;transform:translateX(-50%);border-left:17px solid transparent;border-right:17px solid transparent;border-top:35px solid #fff;filter:drop-shadow(0 3px 3px #0008)}.wheel-center{position:absolute;background:#fff;border:8px solid #172341;box-shadow:0 5px 14px #0005;border-radius:100%;width:66px;height:66px;display:grid;place-items:center;font-size:34px;color:#685ef9}.result-message{margin-top:15px;color:#aab7d7;font-weight:800;min-height:25px;text-align:center}.form-stage{display:block}.form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.form-header h3{margin:0;font-size:18px;font-weight:800}.form-header span{background:#263457;color:#b6bffa;padding:7px 11px;border-radius:8px;font-size:11px}.form-help{font-size:12px;color:#889bb8;margin:10px 0 13px}.form-stage textarea{margin-bottom:15px}.form-stage .field-label{display:block;margin:20px 0 9px}.form-stage input{margin-bottom:9px}.dice-stage{gap:20px}.dice-controls{display:flex;gap:15px;flex-wrap:wrap}.dice-controls label{min-width:160px;display:grid;text-align:left;color:#8296b5;font-size:11px;gap:8px}.dice-row{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;min-height:174px;align-items:center}.dice-face{height:117px;width:117px;display:grid;place-items:center;border-radius:23px;background:#fff;color:#172543;font-size:90px;line-height:1;box-shadow:inset -10px -9px #dce3f2,0 16px 40px #0008;transition:transform .2s;user-select:none;font-family:Arial,system-ui}.dice-face.rolling{animation:shake .2s linear infinite}@keyframes shake{0%{transform:rotate(-12deg) scale(.92)}50%{transform:rotate(10deg) scale(1.07)}100%{transform:rotate(-9deg)}}.dice-face.numeric{font-size:53px;font-weight:900}.dice-total{font-size:14px;color:#a1b3cd}.dice-total strong{display:block;font-size:54px;color:#9aa5ff;line-height:1.1;margin-top:3px}.voting-promo{min-height:330px;border-radius:22px;border:1px solid #43508b;background:radial-gradient(circle at 80% 10%,#313a77,transparent 46%),linear-gradient(110deg,#1b2b54,#131f3e);display:flex;align-items:center;gap:50px;padding:36px 47px}.voting-promo-main{flex:1}.promo-badge{color:#a5b7ff;font-size:10px;letter-spacing:.14em;font-weight:900}.voting-promo h2{font-size:clamp(36px,4vw,57px);line-height:1.2;margin:12px 0}.voting-promo p{font-size:13px;color:#a1b1d2;max-width:460px}.promo-stats{display:grid;gap:15px;min-width:210px}.promo-stats>div{display:flex;align-items:center;gap:16px;padding:17px;border-radius:15px;background:#ffffff0e;border:1px solid #ffffff17}.promo-stats strong{font-size:28px;color:#a5abff}.promo-stats span{font-size:12px;font-weight:800}.info-bar{margin-top:20px;border:1px solid #435478;border-radius:13px;color:#b5c4df;padding:17px 19px;font-size:12px;line-height:1.8;background:#17233b}
/* Voting admin */
.sub-layout,.voter-layout{min-height:100vh;background:radial-gradient(ellipse at 70% -5%,#202b54 0%,transparent 48%),var(--bg)}.sub-header,.voter-header{height:83px;max-width:1300px;margin:auto;padding:0 25px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #22304a}.sub-header-right{display:flex;align-items:center;gap:22px}.header-link{font-size:12px;color:#acbbd8}.header-link:hover{color:white}.sub-main{max-width:1190px;margin:0 auto;padding:48px 25px 90px}.login-box{max-width:460px;margin:65px auto 0;text-align:center;padding:40px}.login-box .feature-icon{margin:auto auto 20px}.login-box h2{margin-bottom:8px}.login-box p{color:#90a4c3;font-size:12px}.login-box input{margin:15px 0}.inline-status{font-size:12px;color:#93a8c8;margin-top:12px;min-height:17px;line-height:1.65}.inline-status.error{color:#fb9d9d}.inline-status.success{color:#67e6be}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.stat-card{padding:22px 26px;border:1px solid #293953;border-radius:16px;background:linear-gradient(135deg,#17243a,#111b2c)}.stat-card div,.stat-card small{color:#89a0be;font-size:12px}.stat-card strong{display:block;font-size:38px;font-weight:900;margin:7px 0 1px;font-variant-numeric:tabular-nums;color:#a1b1ff}.admin-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field-label{font-size:12px;font-weight:700;color:#a8b9d4}.warning-note{font-size:11px;color:#ffd28d}.list-title{margin:33px 0 16px;display:flex;justify-content:space-between;align-items:center}.list-title h2{font-size:20px;margin:0}.poll-list{display:grid;gap:14px}.poll-item{padding:23px 26px;background:#111c30;border:1px solid #2b3a55;border-radius:17px}.poll-item-top{display:flex;align-items:start;gap:12px}.poll-item h3{font-size:19px;font-weight:800;margin:5px 0 8px;line-height:1.45;overflow-wrap:anywhere}.poll-item p{font-size:12px;color:#8899b8;margin-bottom:13px;overflow-wrap:anywhere}.pill-open,.pill-closed{white-space:nowrap;display:inline-block;border-radius:8px;padding:7px 10px;font-size:11px;font-weight:800}.pill-open{background:#174539;color:#70e8bf}.pill-closed{background:#473238;color:#ffb1ab}.poll-item-top .poll-badge{margin-left:auto}.poll-meta{display:flex;align-items:center;gap:20px;font-size:12px;color:#9db0cb;margin-top:12px}.poll-meta strong{font-size:20px;color:#fff}.poll-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.poll-actions .btn{min-height:39px;font-size:11px}.empty-note{text-align:center;padding:45px;color:#8ca0c1;border:1px dashed #354663;border-radius:15px}.admin-footer{display:flex;justify-content:space-between;align-items:center;margin-top:23px;color:#758ba6;font-size:11px}
/* Voter */
.voter-layout{display:flex;flex-direction:column;overflow:hidden;position:relative}.voter-glow{pointer-events:none;position:absolute;inset:160px -200px auto;height:700px;background:radial-gradient(ellipse,#343b8626,transparent 65%)}.voter-header{width:100%;z-index:1}.voter-main{max-width:830px;width:100%;padding:55px 21px 80px;margin:0 auto;flex:1;text-align:center;z-index:1}.voter-topline{font-size:11px;font-weight:800;color:#899cfa;letter-spacing:.19em;margin-bottom:27px}.poll-state{background:#1a423b;color:#76e6bd;border:1px solid #2e5e51;border-radius:20px;padding:8px 15px;display:inline-block;font-size:11px;font-weight:800;margin-bottom:24px}.poll-state.closed{background:#453336;color:#f8aeaa;border-color:#704b52}.voter-main h1{font-size:clamp(31px,5vw,53px);font-weight:900;line-height:1.38;overflow-wrap:anywhere}.vote-description{color:#a4b6d0;font-size:14px;margin:-1px auto 27px;max-width:700px;overflow-wrap:anywhere}.vote-card{border:1px solid #364665;border-radius:23px;background:#131f34;padding:28px 29px;box-shadow:0 25px 70px #0005;text-align:left}.vote-card>.tiny-heading{text-align:center;margin-bottom:20px}.choices{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:27px}.vote-choice{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;border:2px solid #34445e;border-radius:16px;min-height:150px;background:#142139;color:#dfe9fc;transition:.2s}.vote-choice:hover{border-color:#697de4;transform:translateY(-2px)}.vote-choice.selected{border-color:#8d92ff;background:#242c5a;box-shadow:0 0 0 3px #7f89f41c}.choice-icon{display:grid;place-items:center;border-radius:100%;width:54px;height:54px;font-size:31px;font-weight:900}.choice-icon.yes{background:#1c5149;color:#67e6bd}.choice-icon.no{background:#513245;color:#ff9ba7}.choice-icon.abstain{background:#41465d;color:#c7c6db}.vote-choice strong{font-size:16px}.vote-choice small{font-size:10px;color:#8e9ebd;letter-spacing:.14em}.vote-card input{margin:10px 0 18px;text-align:center;letter-spacing:.11em;font-size:16px}.secure-hint{text-align:center;color:#7a8fae;margin-top:19px;font-size:11px}.voter-footer{text-align:center;padding:24px;color:#647995;font-size:10px;letter-spacing:.17em}
/* Projector wall */
.wall-layout{display:flex;flex-direction:column;min-height:100vh;background:radial-gradient(circle at 90% 15%,#25286f4d,transparent 47%),radial-gradient(circle at 0 100%,#0c405344,transparent 52%),#080e1b}.wall-header{display:flex;justify-content:space-between;align-items:center;padding:25px clamp(25px,4vw,70px);border-bottom:1px solid #263753}.wall-brand{display:flex;align-items:center;gap:13px;font-size:19px;font-weight:900;letter-spacing:-.03em}.wall-brand b{font-size:10px;color:#76e9be;background:#153f36;padding:6px 8px;border-radius:6px;letter-spacing:.16em}.wall-right{display:flex;align-items:center;gap:16px}.wall-fullscreen{border:1px solid #405477;background:#182844;color:#bed0ed;border-radius:9px;font-size:12px;padding:10px 15px}.wall-main{width:100%;max-width:1600px;margin:auto;padding:45px clamp(25px,4vw,70px);flex:1}.wall-question-caption{color:#a0a8ff;letter-spacing:.21em;font-size:clamp(11px,.9vw,15px);font-weight:900;text-transform:uppercase}.wall-main h1{font-size:clamp(36px,4.6vw,78px);font-weight:900;line-height:1.3;letter-spacing:-.05em;margin:14px 0 10px;max-width:1300px;overflow-wrap:anywhere}.wall-main>p{color:#90a5c9;font-size:clamp(14px,1.2vw,21px);margin-bottom:33px;overflow-wrap:anywhere}.wall-columns{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px}.wall-charts{background:linear-gradient(130deg,#15213b,#121c31);border:1px solid #334365;border-radius:22px;padding:30px 38px}.wall-total-card{display:flex;gap:20px;align-items:center;justify-content:space-between;padding-bottom:22px;border-bottom:1px solid #32405e}.wall-total-card span{font-size:clamp(14px,1.4vw,21px);color:#a2b6d7}.wall-total-card strong{font-size:clamp(55px,5vw,88px);font-variant-numeric:tabular-nums;line-height:1;color:#fff}.wall-total-card span:last-child{font-size:12px;color:#6bdeb7;background:#124639;border-radius:22px;padding:10px 16px}.vote-bars{display:grid;gap:34px;margin-top:28px}.vote-bar-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:15px;font-size:clamp(16px,2.1vw,30px);font-weight:800}.vote-bar-head strong{font-variant-numeric:tabular-nums}.vote-bar-head small{font-size:60%;color:#849abc;font-weight:600}.vote-bar-track{background:#28364e;border-radius:30px;height:22px;overflow:hidden}.vote-bar-fill{height:100%;width:0%;transition:width .65s ease;border-radius:30px}.vote-bar-fill.agree{background:linear-gradient(90deg,#21b899,#70e8c1)}.vote-bar-fill.disagree{background:linear-gradient(90deg,#d65b85,#ff8c9f)}.vote-bar-fill.neutral{background:linear-gradient(90deg,#7786ab,#b5c3e3)}.wall-qr-card{background:#f3f6ff;color:#16223b;border-radius:22px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:29px 18px 23px}.wall-scan-label{font-size:13px;font-weight:900;letter-spacing:.18em;margin-bottom:20px}.qr-box{width:256px;height:256px;background:#fff;border-radius:15px;display:grid;place-items:center;padding:8px;overflow:hidden}.qr-box canvas{width:100%;height:100%;image-rendering:pixelated}.wall-qr-card>strong{font-size:22px;margin-top:18px}.wall-qr-card>p{color:#65728c;font-size:12px;margin:7px 0 15px}.wall-poll-id{font-size:10px;word-break:break-all;color:#5a6881;max-width:265px}.wall-footer{display:flex;justify-content:space-between;padding:20px clamp(25px,4vw,70px);font-size:11px;letter-spacing:.13em;color:#6b829f;border-top:1px solid #253450}.toast{position:fixed;bottom:25px;right:25px;max-width:min(420px,calc(100vw - 36px));z-index:100;box-shadow:0 16px 55px #000b;background:#253355;border:1px solid #53668e;color:#fff;padding:13px 19px;border-radius:13px;font-size:12px;font-weight:700;opacity:0;transform:translateY(20px);transition:.22s;pointer-events:none}.toast.visible{opacity:1;transform:translateY(0)}[hidden]{display:none!important}
@keyframes blink{50%{opacity:.45}}
@media(min-width:1700px){.sidebar{flex-basis:290px}.workspace{max-width:1490px}}
@media(max-width:1100px){.sidebar{flex-basis:213px}.hero-orbit{right:-140px;opacity:.75}.split-tool{grid-template-columns:1fr 1fr}.wheel-stage{min-height:410px}.wall-columns{grid-template-columns:minmax(0,1fr) 290px}.qr-box{width:220px;height:220px}.wall-charts{padding:24px}.wall-qr-card{padding:27px 12px}}
@media(max-width:800px){.sidebar{position:fixed;transform:translateX(-100%);transition:transform .2s;width:260px;box-shadow:12px 0 40px #0008}.sidebar.open{transform:translateX(0)}.menu-button{display:block}.topbar{height:65px}.workspace{padding:28px 20px 65px}.hero{padding:33px 30px;min-height:310px}.hero-orbit{right:-195px;opacity:.32}.hero-content{max-width:520px}.section-heading{margin-top:35px}.split-tool{grid-template-columns:1fr}.wheel-stage{min-height:400px}.admin-grid{grid-template-columns:1fr}.wall-columns{grid-template-columns:1fr}.wall-qr-card{max-width:420px;margin:auto;width:100%}.qr-box{width:260px;height:260px}.wall-main h1{font-size:clamp(30px,7vw,50px)}.wall-main{padding-top:35px}.wall-charts{padding:25px}.wall-question-caption{line-height:1.6}}
@media(max-width:570px){.topbar{padding:0 18px}.topbar-right{gap:10px}.clock-now{display:none}.user-chip{font-size:9px;padding:7px}.hero{padding:28px 23px;min-height:320px}.hero h1{font-size:37px}.hero p{font-size:12px}.features-grid{grid-template-columns:1fr}.feature-wide{grid-column:span 1}.feature-card{padding:18px}.feature-icon{flex-basis:46px;width:46px;height:46px;font-size:25px}.feature-info b{font-size:13px}.feature-info small{font-size:10px}.feature-wide .live-pill{display:none}.section-muted{display:none}.section-heading h2{font-size:20px}.bottom-strip{flex-wrap:wrap;padding:19px}.bottom-strip .btn{width:100%;margin:5px 0 0}.app-footer{padding:0 20px 20px}.app-footer span:last-child{display:none}.tool-stage{padding:21px 16px}.digital-time{font-size:clamp(44px,11vw,80px)}.digital-time span{font-size:.39em}.time-actions{width:100%}.time-actions .btn{font-size:11px}.wheel-container{width:min(325px,100%)}.dice-face{height:87px;width:87px;font-size:66px;border-radius:16px}.dice-face.numeric{font-size:40px}.dice-row{gap:13px}.voting-promo{padding:30px 23px;display:block}.promo-stats{margin-top:25px;min-width:0}.promo-stats>div{padding:12px}.sub-header,.voter-header{padding:0 17px}.sub-header-right .live-pill{display:none}.sub-main{padding:30px 16px}.sub-main .page-title h1{font-size:30px}.admin-stats{grid-template-columns:1fr 1fr;gap:9px}.stat-card{padding:16px}.stat-card:last-child{grid-column:span 2}.stat-card strong{font-size:31px}.poll-item{padding:18px}.poll-item h3{font-size:16px}.poll-meta{gap:12px}.poll-item-top{flex-wrap:wrap}.poll-item-top .poll-badge{margin:0}.voter-main{padding-top:40px}.vote-card{padding:20px 14px}.choices{gap:7px}.vote-choice{min-height:130px;border-radius:12px}.vote-choice strong{font-size:12px}.vote-choice small{font-size:8px}.choice-icon{width:43px;height:43px;font-size:25px}.wall-header{padding:18px}.wall-right{gap:8px}.wall-right .live-pill{display:none}.wall-brand{font-size:14px}.wall-fullscreen{font-size:11px;padding:8px}.wall-main{padding:28px 15px}.wall-main h1{font-size:30px}.wall-main>p{font-size:13px}.wall-total-card{gap:10px;flex-wrap:wrap}.wall-total-card strong{font-size:60px}.wall-total-card span:last-child{font-size:10px}.wall-charts{padding:20px}.vote-bar-head{font-size:16px}.vote-bar-track{height:16px}.vote-bars{gap:24px}.wall-footer{padding:16px;font-size:9px}.wall-footer span:last-child{display:none}}

/* Lotto Peek Tools Studio v2 · Manual Text Dashboard */
.brand{font-size:18px;letter-spacing:-.048em;gap:10px;padding:0 6px;white-space:normal}
.brand-icon{font-size:14px;font-weight:900;letter-spacing:-.07em;flex-basis:38px;min-width:38px}
.brand-name{display:block;line-height:1.2}
.brand small{font-size:8px;letter-spacing:.16em;margin-top:5px}
.board-promo{display:grid;grid-template-columns:1.05fr .95fr;gap:22px;padding:32px;background:linear-gradient(125deg,#14213e,#1e173c);border:1px solid #394071;border-radius:23px;overflow:hidden}
.board-promo-copy{align-self:center}.board-promo h2{font-size:clamp(33px,4vw,56px);line-height:1.15;margin:18px 0 16px}.board-promo h2 span{color:#a99bff}.board-promo p{font-size:14px;max-width:540px;color:#a4b5d3}
.board-promo-actions,.board-preview-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.board-promo-demo{position:relative;min-height:335px;display:flex;flex-direction:column;justify-content:center;text-align:center;padding:38px 23px;background:radial-gradient(circle at 50% 30%,#5942b84c,transparent 65%),linear-gradient(140deg,#222353,#11162f);border:1px solid #6d6ad266;border-radius:21px;box-shadow:0 20px 65px #0005;overflow:hidden}
.board-promo-demo:before{content:'';position:absolute;inset:15px;border:1px solid #8880ef36;border-radius:14px;pointer-events:none}
.board-mini-top,.board-mini-bottom{font-size:11px;letter-spacing:.13em;color:#9ea8dd;font-weight:800}.board-mini-top{position:absolute;top:32px;left:30px;right:30px;text-align:left;display:flex;gap:9px;align-items:center}.board-mini-top>span:last-child{margin-left:auto}.board-mini-kicker{font-size:13px;letter-spacing:.13em;color:#c2b3ff}.board-mini-head{font-size:clamp(30px,3vw,46px);font-weight:900;line-height:1.34;margin-top:16px}.board-mini-bottom{position:absolute;bottom:29px;left:30px}
.manual-section{margin-top:40px;scroll-margin-top:20px}.manual-section .list-title{margin-bottom:18px}.manual-section .list-title h2{margin-top:6px}
.manual-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start}
#board-form{display:grid;gap:11px}.board-form-options{display:grid;grid-template-columns:1fr 1fr;gap:15px}.board-form-options .field-label{display:grid;gap:9px}.board-switch{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:700;color:#d8e0f8;margin:4px 0 7px}.board-switch input{width:20px;height:20px;accent-color:#9a8cff;margin:0}
.board-preview-column{border:1px solid #303b5f;border-radius:19px;background:#10192c;padding:21px;position:sticky;top:16px}.board-preview-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:13px;margin-bottom:16px}.board-preview-top span{display:flex;align-items:center;gap:6px;color:#9bdaef;font-size:10px;font-weight:800;letter-spacing:.1em}
.manual-preview{--board-accent:#bba1ff;--board-glow:#6542c7;position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:12px;min-height:360px;padding:35px 20px;background:radial-gradient(circle at 50% 39%,color-mix(in srgb,var(--board-glow) 42%,transparent),transparent 65%),#10162d;border:1px solid color-mix(in srgb,var(--board-accent) 42%,transparent);border-radius:15px;overflow:hidden;transition:.15s}
.manual-preview:after{content:'';position:absolute;inset:14px;border:1px solid #cfd9ff29;border-radius:9px;z-index:-1;pointer-events:none}
.preview-eyebrow,.manual-wall-eyebrow{color:var(--board-accent);font-weight:800;letter-spacing:.11em;overflow-wrap:anywhere}.preview-eyebrow{font-size:12px}.preview-headline{font-size:clamp(28px,3vw,42px);font-weight:900;line-height:1.37;overflow-wrap:anywhere;white-space:pre-wrap}.manual-preview.size-lg .preview-headline{font-size:30px}.manual-preview.size-xxl .preview-headline{font-size:clamp(34px,3.8vw,53px)}.preview-message{font-size:13px;color:#bac6dd;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap}.preview-footer{font-size:10px;letter-spacing:.12em;font-weight:800;color:var(--board-accent);overflow-wrap:anywhere;white-space:pre-wrap;margin-top:8px}
.board-preview-help{color:#9caecc;font-size:12px;line-height:1.8;margin-top:13px}.board-preview-actions{margin-top:13px}
.theme-violet{--board-accent:#b6a0ff;--board-glow:#6243ca;--board-deep:#0b0e24}
.theme-ocean{--board-accent:#72caff;--board-glow:#156ac4;--board-deep:#071729}
.theme-emerald{--board-accent:#5bdfbd;--board-glow:#138a76;--board-deep:#061d20}
.theme-sunset{--board-accent:#ffbb7e;--board-glow:#af466e;--board-deep:#251225}
.manual-wall{--board-accent:#b6a0ff;--board-glow:#6243ca;--board-deep:#0b0e24;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;color:#fff;background:var(--board-deep);overflow:hidden;isolation:isolate}
.manual-wall-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:23px clamp(20px,4vw,68px);border-bottom:1px solid #cbdcff25;z-index:2}.manual-wall-header .wall-brand{font-size:clamp(13px,1.4vw,19px)}
.manual-wall-content{position:relative;display:flex;align-items:center;justify-content:center;flex:1;min-height:450px;padding:45px 25px;isolation:isolate}.manual-wall-light{position:absolute;pointer-events:none;border-radius:100%;filter:blur(12px);opacity:.6;z-index:-1}.light-one{width:min(75vw,1000px);height:min(75vw,1000px);background:radial-gradient(circle,color-mix(in srgb,var(--board-glow) 57%,transparent),transparent 67%);left:-12%;top:-40%}.light-two{width:min(68vw,950px);height:min(68vw,950px);background:radial-gradient(circle,color-mix(in srgb,var(--board-glow) 42%,transparent),transparent 65%);right:-15%;bottom:-48%}
.manual-wall-inner{width:100%;max-width:1380px;margin:auto;display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center;gap:clamp(18px,3vh,37px)}
.manual-wall-eyebrow{display:flex;align-items:center;justify-content:center;gap:14px;font-size:clamp(15px,1.65vw,24px)}.manual-wall-eyebrow .live-dot{width:11px;height:11px;flex-shrink:0}
.manual-wall h1{font-weight:900;letter-spacing:-.055em;font-size:clamp(55px,7.6vw,150px);line-height:1.22;max-width:100%;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;text-wrap:balance;text-shadow:0 18px 62px #0006;animation:riseIn .35s both}
.manual-wall.size-lg h1{font-size:clamp(48px,5.7vw,105px)}.manual-wall.size-xxl h1{font-size:clamp(64px,9.9vw,205px)}
.manual-wall #manual-message{font-size:clamp(22px,2.55vw,48px);max-width:1150px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;color:#d7e1f2;font-weight:500;margin:0}
.manual-wall.size-xxl #manual-message{font-size:clamp(23px,2.65vw,46px)}.manual-wall.size-lg #manual-message{font-size:clamp(19px,2vw,34px)}
.manual-wall-divider{width:110px;height:5px;border-radius:4px;background:var(--board-accent);margin-top:5px}.manual-wall-footnote{color:var(--board-accent);font-size:clamp(12px,1.15vw,18px);font-weight:800;letter-spacing:.18em;overflow-wrap:anywhere;white-space:pre-wrap}
.manual-wall-footer{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:20px clamp(25px,4vw,70px);color:#aab6d1;border-top:1px solid #cbdcff28;font-size:clamp(10px,.9vw,13px);letter-spacing:.1em}.manual-wall-footer span:first-child{display:flex;align-items:center;gap:9px}
.manual-wall.board-hidden .manual-wall-divider{opacity:.3}
@keyframes riseIn{from{transform:translateY(8px);opacity:.45}to{transform:translateY(0);opacity:1}}
@media(max-width:850px){.manual-editor-grid,.board-promo{grid-template-columns:1fr}.board-preview-column{position:static}.board-promo-demo{min-height:300px}.board-promo{padding:24px}.manual-wall h1{font-size:clamp(43px,8vw,92px)}}
@media(max-width:570px){.manual-section .list-title{flex-wrap:wrap;gap:14px}.manual-section .list-title a{width:100%;justify-content:center}.board-form-options{grid-template-columns:1fr}.board-promo-actions>*{width:100%;justify-content:center}.manual-wall-header{padding:16px}.manual-wall-header .wall-right .live-pill{display:none}.manual-wall-content{padding:35px 18px;min-height:460px}.manual-wall h1,.manual-wall.size-lg h1,.manual-wall.size-xxl h1{font-size:clamp(36px,10vw,71px)}.manual-wall #manual-message{font-size:clamp(18px,4.8vw,30px)}.manual-wall-eyebrow{font-size:14px}.manual-wall-footer{padding:14px 18px}.manual-wall-footer>span:last-child{display:none}.manual-preview{min-height:310px}}
/* Participant typed-response wall + moderator review */
.text-wall-layout .wall-main{max-width:1700px}.text-wall-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:23px;align-items:start;margin-top:29px}
.text-wall-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;align-content:start}.text-wall-empty{grid-column:1/-1;min-height:290px;display:flex;align-items:center;justify-content:center;text-align:center;color:#aebddd;border:2px dashed #435575;border-radius:22px;font-size:clamp(18px,2vw,26px);padding:27px;background:#16213a}
.text-wall-entry{position:relative;min-height:160px;padding:29px 26px;border:1px solid #34477a;background:linear-gradient(145deg,#202c50,#111c32);border-radius:22px;box-shadow:0 16px 45px #0003;overflow-wrap:anywhere;display:flex;flex-direction:column;gap:15px;animation:riseIn .32s both}.text-wall-entry:nth-child(4n+2){border-color:#6850a4;background:linear-gradient(145deg,#2c254b,#17192f)}.text-wall-entry:nth-child(4n+3){border-color:#286e7a;background:linear-gradient(145deg,#154351,#111f32)}.text-wall-entry:nth-child(4n+4){border-color:#a46573;background:linear-gradient(145deg,#453047,#241e37)}
.text-wall-entry-number{font-size:12px;color:#b0c7eb;font-weight:800;letter-spacing:.15em}.text-wall-entry-body{font-size:clamp(22px,2.4vw,38px);font-weight:800;line-height:1.4;white-space:pre-wrap}.text-wall-count{font-size:12px;color:#b1bfda;text-align:center;margin-top:22px}.text-wall-count strong{font-size:25px;color:#fff;margin-right:6px}
.text-prompt-item .poll-meta{font-size:12px;color:#a1b6d7}.text-moderation-list{margin-top:23px;border-top:1px solid #31425d;padding-top:20px;display:grid;gap:12px}.text-moderation-list h4{font-size:13px;color:#c6d2ea;margin:0 0 3px}.text-moderation-item{display:flex;align-items:center;justify-content:space-between;gap:18px;background:#0e192d;padding:13px 16px;border:1px solid #2c3a58;border-radius:11px;min-width:0}.text-moderation-item p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;flex:1}.text-moderation-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:end}.text-moderation-controls button{font-size:11px;padding:7px 10px}.text-status{font-size:11px;padding:6px 9px;border-radius:8px;color:#abc1e4;background:#233250;white-space:nowrap}.text-status.status-approved{background:#13453e;color:#8ff0d5}.text-status.status-rejected{background:#482737;color:#ffb1c3}
#type-form textarea{font-size:16px;resize:vertical;min-height:140px}#type-form .field-label{display:block;margin:13px 0 7px}#type-form .tiny-heading{margin-bottom:7px}
@media(max-width:1080px){.text-wall-grid{grid-template-columns:minmax(0,1fr) 265px}.text-wall-grid .qr-box{width:205px;height:205px}}
@media(max-width:800px){.text-wall-grid{grid-template-columns:1fr}.text-wall-grid .wall-qr-card{grid-row:1}.text-wall-list{grid-template-columns:repeat(2,minmax(0,1fr))}.text-wall-grid .qr-box{width:240px;height:240px}}
@media(max-width:570px){.text-wall-list{grid-template-columns:1fr}.text-wall-entry{min-height:135px;padding:23px}.text-wall-entry-body{font-size:24px}.text-moderation-item{flex-direction:column;align-items:stretch}.text-moderation-controls{justify-content:start}}
