:root{color-scheme:dark;--bg:#0b0b0e;--bg2:#101014;--panel:#141419;--panel2:#19191f;--line:#2b2a30;--line2:#3a3436;--text:#f2eee8;--muted:#96939b;--subtle:#6d6a72;--red:#bd4b37;--red2:#8f3028;--gold:#d6b47a;--green:#82a58d;--blue:#8198b6;--radius:16px;--shadow:0 20px 70px #0005;--font: 'Segoe UI',system-ui,sans-serif;--display:'Trebuchet MS','Segoe UI',system-ui,sans-serif;--mono:Consolas,'Courier New',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;line-height:1.5;min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background-image:linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(to bottom,#000,transparent 80%)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button:disabled{opacity:.4;cursor:not-allowed}a{color:inherit;text-decoration:none}.ambient{position:fixed;z-index:-1;filter:blur(90px);opacity:.11;border-radius:50%;pointer-events:none}.ambient-one{width:410px;height:410px;background:#8f3028;top:4%;right:-210px}.ambient-two{width:320px;height:320px;background:#60472b;left:-190px;top:65%}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,5vw,76px);border-bottom:1px solid #ffffff0e;background:#0b0b0ed9;backdrop-filter:blur(18px);position:sticky;top:0;z-index:20}.brand{display:flex;gap:11px;align-items:center;min-width:205px}.brand-mark{display:grid;place-items:center;width:39px;height:39px;border:1px solid var(--red);color:#f5d5b3;font:600 13px var(--mono);letter-spacing:-1px;transform:rotate(-45deg);border-radius:9px}.brand-mark::first-letter{transform:rotate(45deg)}.brand>span:last-child{display:flex;flex-direction:column;line-height:1.1;letter-spacing:2px}.brand strong{font:800 14px var(--display)}.brand small{font:500 9px var(--mono);color:var(--muted);letter-spacing:2.4px;margin-top:5px}.topnav{display:flex;gap:7px;align-items:center}.nav-btn{padding:10px 14px;border:0;background:transparent;color:var(--muted);font-size:13px;border-radius:8px;transition:.2s}.nav-btn:hover,.nav-btn.active{color:var(--text);background:#ffffff09}.nav-btn.active{box-shadow:inset 0 -2px var(--red)}.top-actions{display:flex;gap:20px;align-items:center;justify-content:flex-end;min-width:205px}.save-indicator{display:flex;align-items:center;gap:8px;font:11px var(--mono);color:var(--muted)}.save-dot,.status-live i,.live-pulse{width:6px;height:6px;border-radius:50%;background:var(--green);display:inline-block;box-shadow:0 0 10px #82a58d80}.icon-button{height:34px;width:34px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--gold);font-size:18px;display:grid;place-items:center}.view{display:none;max-width:1440px;padding:0 clamp(22px,5vw,76px);margin:0 auto;min-height:calc(100vh - 150px)}.view.active{display:block;animation:fadeIn .3s ease}.hero-grid{min-height:580px;display:grid;grid-template-columns:1fr .85fr;align-items:center;gap:30px;padding:64px 0 54px}.eyebrow{margin:0 0 14px;color:var(--gold);font:500 10px var(--mono);letter-spacing:2.15px;display:flex;gap:11px;align-items:center}.eyebrow-line{display:inline-block;width:29px;height:1px;background:var(--red)}h1,h2,h3,p{margin-top:0}.hero-copy h1{font:600 clamp(44px,5.2vw,76px)/1.1 var(--display);letter-spacing:-3px;margin:0 0 22px;max-width:700px}.hero-copy h1 em,h2 em{font-style:normal;color:#c86a50}.hero-lead{max-width:540px;color:#aaa6ad;line-height:1.8;font-size:16px;margin-bottom:32px}.hero-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.button{border:1px solid transparent;border-radius:9px;padding:12px 17px;display:inline-flex;align-items:center;justify-content:center;gap:15px;font-size:13px;font-weight:600;letter-spacing:.1px;transition:transform .18s,background .18s,border-color .18s;color:var(--text)}.button:not(:disabled):hover{transform:translateY(-1px)}.button-primary{background:linear-gradient(135deg,#b64a36,#873126);border-color:#c45d45;color:#fff7f0;box-shadow:0 8px 28px #84312424}.button-primary:hover{background:linear-gradient(135deg,#cb5a41,#9f392b)}.button-ghost{background:#ffffff04;border-color:var(--line);color:#c5c0c4}.button-ghost:hover{border-color:#625151;background:#ffffff09}.button-large{padding:15px 21px;min-height:51px}.button-small{padding:8px 11px;font-size:11px}.full-width{width:100%}.hero-meta{display:flex;align-items:center;gap:18px;color:var(--muted);font-size:11px;margin-top:36px}.hero-meta b{font:500 12px var(--mono);color:var(--text);margin-right:5px}.meta-divider{height:15px;width:1px;background:var(--line)}.hero-art{height:460px;position:relative;overflow:hidden;border:1px solid #ffffff0c;border-radius:20px;background:radial-gradient(ellipse at 55% 35%,#6e292536 0,transparent 37%),linear-gradient(160deg,#1a1718,#0d0d10 62%);box-shadow:var(--shadow)}.hero-art:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 27px,#ffffff02 28px 29px);opacity:.9}.orbit{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);border:1px solid #d6b47a30;border-radius:50%;aspect-ratio:1}.orbit-outer{width:370px;box-shadow:0 0 70px #9d3d2a10,inset 0 0 60px #9d3d2a0a}.orbit-inner{width:270px;border-color:#bd4b3740;transform:translate(-50%,-50%) rotate(30deg) scaleY(.78)}.arena-sun{position:absolute;top:22%;left:50%;transform:translateX(-50%);width:128px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 38%,#d8a66c,#b14a36 48%,#5b211e 71%,transparent 73%);box-shadow:0 0 85px #b64a3645;opacity:.88}.arena-horizon{position:absolute;bottom:0;left:0;right:0;height:48%;background:linear-gradient(0deg,#08090b 2%,#100f12 78%,transparent);clip-path:polygon(0 53%,12% 47%,20% 62%,33% 39%,39% 54%,48% 27%,54% 43%,67% 19%,76% 49%,84% 34%,100% 50%,100% 100%,0 100%)}.arena-spire{position:absolute;bottom:20%;width:2px;background:linear-gradient(0deg,#b44b36,transparent);opacity:.8;transform-origin:bottom}.spire-a{height:190px;left:32%;transform:rotate(9deg)}.spire-b{height:145px;left:64%;transform:rotate(-8deg)}.spire-c{height:115px;left:76%;transform:rotate(13deg)}.hero-art-label{position:absolute;bottom:26px;left:25px;color:#c7bdba;font:10px var(--mono);letter-spacing:1.3px;display:flex;align-items:center;gap:10px}.live-pulse{background:var(--red);box-shadow:0 0 12px #bd4b37b3}.hero-art-index{position:absolute;top:23px;right:23px;color:#d2a68c;font:11px var(--mono);letter-spacing:1.1px}.hero-art-index span{color:#65565a;margin:0 6px}.feature-row{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:20px 0 55px}.feature-card{background:linear-gradient(135deg,#ffffff06,#ffffff01);border:1px solid #ffffff0d;border-radius:13px;min-height:180px;padding:24px;position:relative;overflow:hidden}.feature-number{position:absolute;right:20px;top:18px;font:11px var(--mono);color:#4c3b3b}.feature-icon{font-size:24px;color:var(--red);margin-bottom:18px}.feature-card h3{font:600 16px var(--display);margin:0 0 8px}.feature-card p{color:var(--muted);font-size:12px;line-height:1.7;margin:0;max-width:310px}.home-bottom,.site-footer{border-top:1px solid #ffffff10;padding:18px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#69656d;font:9px var(--mono);letter-spacing:1.1px}.page-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;padding:47px 0 30px}.page-heading h2,.arena-header h2{font:600 clamp(30px,3.4vw,46px)/1.2 var(--display);letter-spacing:-1.8px;margin:0 0 10px}.muted{color:var(--muted);font-size:13px;margin:0}.heading-actions{display:flex;gap:10px;flex-wrap:wrap}.participant-toolbar{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 2px;margin-bottom:20px;color:var(--muted);font:11px var(--mono)}.toolbar-right{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.text-button{padding:2px 0;background:transparent;border:0;color:#c8b9a9;font-size:11px}.text-button:hover{color:var(--gold);text-decoration:underline}.danger-text{color:#c5756a}.participants-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:54px}.participant-card{position:relative;background:linear-gradient(145deg,#17171c,#111115);border:1px solid #ffffff10;border-radius:13px;padding:16px;min-width:0;cursor:pointer;transition:.2s}.participant-card:hover{transform:translateY(-2px);border-color:#82453880}.participant-card.inactive{opacity:.66}.participant-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.avatar{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:#3a2425;color:#d98f6d;border:1px solid #8d403654;font-size:21px}.avatar.gold{background:#322a1e;color:#d7b77e;border-color:#8d6b3854}.avatar.blue{background:#202d35;color:#90b9c4;border-color:#39637354}.district-chip,.state-chip,.category-tag{font:10px var(--mono);letter-spacing:.5px;padding:5px 8px;border-radius:5px;border:1px solid #ffffff13;background:#ffffff05;color:#c7c1bf;white-space:nowrap}.participant-card h3{font:600 15px var(--display);margin:0 0 3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.participant-subtitle{font-size:11px;color:var(--muted);margin-bottom:13px}.participant-card-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #ffffff0a;padding-top:11px;font:10px var(--mono);color:var(--muted)}.mini-stat{display:flex;gap:5px;align-items:center}.mini-stat i{width:5px;height:5px;background:var(--green);border-radius:50%}.card-actions{display:flex;gap:7px}.card-action{background:transparent;border:1px solid #ffffff14;color:var(--muted);border-radius:6px;width:27px;height:25px;font-size:12px}.card-action:hover{color:var(--text);border-color:#bd4b37}.inline-note{margin-bottom:30px;padding:12px 15px;border-left:2px solid var(--gold);background:#d6b47a0b;color:var(--muted);font-size:12px}.setup-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.7fr);gap:17px;padding-bottom:55px}.setup-main{display:grid;gap:15px;align-content:start}.panel{background:linear-gradient(145deg,#17171c,#121216);border:1px solid #ffffff10;border-radius:var(--radius);box-shadow:0 12px 35px #0002}.setup-panel{padding:24px}.panel-title{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:22px}.panel-title h3{font:600 18px var(--display);margin:0}.step-kicker{display:block;margin-bottom:6px;color:#9d7770;font:10px var(--mono);letter-spacing:1.5px}.panel-symbol{color:var(--gold);font-size:23px}.mode-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mode-option{text-align:left;padding:16px;border-radius:10px;border:1px solid var(--line);background:#ffffff02;color:var(--muted);display:flex;flex-direction:column;gap:5px}.mode-option strong{color:var(--text);font-size:13px}.mode-option small{font-size:11px}.mode-option.selected{border-color:#a84936;background:#b84b3512;box-shadow:inset 0 0 0 1px #9f3d2c40}.mode-option.selected strong{color:#e8b09a}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:20px}.form-grid.two-col{grid-template-columns:1fr 1fr}.form-grid label,.modal label{display:flex;flex-direction:column;gap:7px;color:#d6d0cf;font-size:12px}.form-grid input,.form-grid select,.modal input:not([type=range]):not([type=checkbox]),.modal select,.history-filter input,.history-filter select{background:#0e0e12;border:1px solid #353239;border-radius:8px;color:var(--text);padding:11px 12px;min-width:0;width:100%;font-size:13px}.form-grid input:focus,.form-grid select:focus,.modal input:focus,.modal select:focus{border-color:#a84936}.field-help{grid-column:1/-1;color:var(--muted);font-size:11px;margin:0}.range-field{display:grid;grid-template-columns:minmax(190px,1fr) minmax(100px,1fr) 45px;align-items:center;gap:18px;padding:12px 0;border-bottom:1px solid #ffffff09}.range-field:last-of-type{border-bottom:0}.range-field label{font-size:12px;font-weight:600}.range-field p{color:var(--muted);font-size:10px;margin:4px 0 0}.range-field input[type=range]{width:100%;accent-color:var(--red)}.range-value{font:11px var(--mono);color:var(--gold);text-align:right}.form-grid small{font-size:10px;color:var(--muted);font-weight:400;line-height:1.5}.setup-sidebar{position:relative}.roster-summary{padding:24px;position:sticky;top:101px}.roster-summary>.eyebrow{margin-bottom:15px}.roster-summary #setup-roster-summary{font:13px var(--display);color:#eee5dd;line-height:1.9}.summary-divider{height:1px;background:var(--line);margin:20px 0 10px}.summary-line{display:flex;justify-content:space-between;align-items:center;padding:9px 0;color:var(--muted);font-size:12px;border-bottom:1px solid #ffffff08}.summary-line strong{color:var(--text);font:500 12px var(--mono)}.small-muted{font-size:10px;color:var(--muted);line-height:1.7}.roster-summary .small-muted{margin:17px 0}.error-message{font-size:11px;color:#e78f7c;min-height:0;margin:10px 0 0}.error-message:empty{display:none}.arena-header{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:43px 0 24px}.arena-header .eyebrow{margin-bottom:10px}.arena-status{display:flex;flex-direction:column;align-items:flex-end;gap:9px}.status-live{display:flex;gap:8px;align-items:center;font:10px var(--mono);color:#b1b8af;letter-spacing:1px}.seed-label{font:10px var(--mono);color:var(--muted)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:26px}.stat-card{border:1px solid #ffffff10;background:linear-gradient(135deg,#17171c,#111115);border-radius:11px;padding:17px 19px;position:relative;overflow:hidden}.stat-card:after{content:"";position:absolute;width:42px;height:42px;border:1px solid #ffffff08;border-radius:50%;right:-12px;top:-12px}.stat-card span{display:block;font:9px var(--mono);letter-spacing:1.1px;color:var(--muted);margin-bottom:8px}.stat-card strong{font:600 29px var(--display);letter-spacing:-1px;display:block}.stat-card small{font-size:10px;color:var(--subtle)}.arena-columns{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.72fr);gap:18px;align-items:start;padding-bottom:35px}.timeline-column{min-width:0}.section-bar{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:0 0 18px}.section-bar .eyebrow{margin-bottom:5px}.section-bar h3{font:600 20px var(--display);margin:0}.timeline-tools{display:flex;gap:7px}.timeline-list{display:flex;flex-direction:column;gap:11px}.timeline-event{display:grid;grid-template-columns:48px 1fr;gap:12px;animation:fadeIn .35s ease}.timeline-marker{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:9px}.timeline-marker .marker-icon{width:34px;height:34px;border-radius:50%;border:1px solid #ffffff14;display:grid;place-items:center;background:#17171c;color:var(--gold);font-size:16px}.timeline-marker:after{content:"";width:1px;flex:1;min-height:20px;background:linear-gradient(#39343a,#252329)}.timeline-event:last-child .timeline-marker:after{display:none}.event-card{border:1px solid #ffffff0e;border-radius:12px;background:linear-gradient(140deg,#18181d,#121216);padding:17px 18px;min-width:0}.event-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:9px}.event-time{font:10px var(--mono);color:var(--muted);letter-spacing:.5px}.category-tag.exploration{color:#9db5ad;border-color:#41665d4d;background:#294d3b20}.category-tag.alliance{color:#d8bd8b;border-color:#8c6c344d;background:#7052241a}.category-tag.conflict{color:#d48b7c;border-color:#9a4f414d;background:#78382c1c}.category-tag.environment{color:#90b8c9;border-color:#416e874d;background:#28495f20}.category-tag.elimination{color:#e49a8c;border-color:#9d3f354d;background:#7b28231f}.category-tag.twist{color:#bd9be0;border-color:#77539a4d;background:#5530771c}.event-card h4{font:600 15px var(--display);margin:0 0 7px}.event-card p{font-size:12px;color:#b8b3b8;line-height:1.8;margin:0 0 10px}.event-result{padding:9px 11px;background:#ffffff04;border-left:2px solid #9e5a46;color:#d6c4b8;font-size:11px;line-height:1.6}.event-consequence{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.consequence-chip{padding:4px 7px;border-radius:5px;font:9px var(--mono);color:#a9b3a8;background:#82a58d0c;border:1px solid #82a58d20}.timeline-empty{padding:54px 20px;text-align:center;border:1px dashed #ffffff17;border-radius:12px;color:var(--muted)}.timeline-empty[hidden]{display:none}.empty-orbit{font-size:34px;color:#826d65;display:block;margin-bottom:10px}.timeline-empty p{font-size:13px;margin-bottom:4px}.timeline-empty small{font-size:10px}.progress-controls{display:flex;gap:9px;flex-wrap:wrap;padding:18px 0 9px}.control-message{min-height:18px}.arena-aside{display:flex;flex-direction:column;gap:12px}.mini-panel{padding:17px}.mini-panel .panel-title{align-items:center;margin-bottom:15px}.mini-panel .panel-title h3{font-size:13px}.mini-count{font:10px var(--mono);color:var(--gold);background:#d6b47a12;border:1px solid #d6b47a22;padding:4px 7px;border-radius:5px}.active-groups{display:flex;flex-direction:column;gap:9px}.group-row{display:flex;align-items:flex-start;gap:9px;padding:10px 0;border-bottom:1px solid #ffffff08}.group-row:last-child{border-bottom:0}.group-symbol{width:28px;height:28px;flex-shrink:0;border-radius:8px;display:grid;place-items:center;color:var(--gold);background:#d6b47a12;font-size:13px}.group-row strong{display:block;font-size:11px;margin-bottom:3px}.group-row small{display:block;color:var(--muted);font-size:10px;line-height:1.5}.conditions-list{display:flex;flex-direction:column;gap:9px}.condition-row{display:flex;align-items:center;gap:8px;color:#c3bdc2;font-size:11px}.condition-row span:first-child{color:var(--blue);width:18px}.condition-row small{margin-left:auto;color:var(--muted);font:9px var(--mono)}.active-roster-mini{display:flex;flex-direction:column;gap:4px}.roster-mini-row{display:flex;align-items:center;gap:8px;padding:7px 0;cursor:pointer;border-bottom:1px solid #ffffff06}.roster-mini-row:hover .roster-mini-name{color:var(--gold)}.roster-mini-row .avatar{height:29px;width:29px;border-radius:8px;font-size:14px}.roster-mini-name{flex:1;min-width:0;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.roster-mini-district{font:9px var(--mono);color:var(--muted)}.save-mini{font:9px var(--mono);color:var(--green)}.save-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:10px}.winner-panel{background:radial-gradient(ellipse at 50% 0,#9e3d2c35,transparent 60%),linear-gradient(130deg,#1b1718,#121216);border:1px solid #b8523a45;border-radius:18px;padding:32px;text-align:center;margin:0 0 50px;box-shadow:0 25px 80px #0004}.winner-panel[hidden]{display:none}.winner-symbol{font-size:42px;color:var(--gold)}.winner-panel h2{font:600 34px var(--display);margin:7px 0 8px}.winner-panel p{color:var(--muted);font-size:13px}.winner-stats{display:flex;gap:22px;justify-content:center;flex-wrap:wrap;margin:20px 0}.winner-stats span{color:var(--muted);font-size:11px}.winner-stats b{color:var(--text);font:500 14px var(--mono);display:block}.empty-state{min-height:490px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-emblem{width:66px;height:66px;display:grid;place-items:center;border:1px solid #9d4536;border-radius:50%;color:#d38b69;font:600 16px var(--mono);box-shadow:0 0 50px #9e3d2b16;margin-bottom:24px}.empty-state h2{font:600 32px var(--display);letter-spacing:-1px;margin:0 0 12px}.empty-state p:not(.eyebrow){color:var(--muted);font-size:13px;max-width:450px;margin-bottom:22px}.empty-state.compact{min-height:340px}.empty-state.compact h2{font-size:25px}.history-filter{display:flex;justify-content:space-between;gap:20px;padding:13px;margin-bottom:25px}.search-field{display:flex;align-items:center;gap:10px;flex:1;color:var(--muted);padding:0 8px}.search-field span{font-size:22px}.history-filter input{background:transparent;border:0;padding-left:0}.history-filter input:focus{outline:none}.filter-select{display:flex;gap:10px;align-items:center;color:var(--muted);font-size:11px}.history-filter select{width:auto;min-width:200px;padding:9px}.history-content{padding-bottom:55px}.history-day{border:1px solid #ffffff10;border-radius:12px;background:#141419;margin-bottom:13px;overflow:hidden}.history-day-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 19px;background:#ffffff03;cursor:pointer}.history-day-head h3{margin:0;font:600 15px var(--display)}.history-day-head p{margin:4px 0 0;color:var(--muted);font-size:10px}.history-day-head button{background:transparent;border:0;color:var(--gold);font-size:16px}.history-day-body{padding:10px 16px 16px;border-top:1px solid #ffffff09}.history-day-body .timeline-event{margin-top:8px}.history-day-body .timeline-marker .marker-icon{width:29px;height:29px;font-size:13px}.history-day-body .event-card{padding:13px 15px}.modal{background:#151519;color:var(--text);border:1px solid #ffffff1c;border-radius:17px;padding:0;width:min(600px,calc(100vw - 28px));max-height:min(90vh,900px);overflow:auto;box-shadow:0 30px 120px #000b}.modal::backdrop{background:#050507d9;backdrop-filter:blur(8px)}.modal form{padding:26px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px}.modal-header h2{font:600 25px var(--display);margin:0}.modal-header .eyebrow{margin-bottom:7px}.modal .form-grid{margin-top:0}.attribute-editor{margin-top:23px;padding:16px;border-radius:10px;background:#0d0d11;border:1px solid #ffffff0a}.attribute-editor>.eyebrow{margin-bottom:12px}.attribute-row{display:grid;grid-template-columns:100px 1fr 28px;align-items:center;gap:10px;margin:10px 0;font-size:11px;color:#c6c0c3}.attribute-row input{width:100%;accent-color:var(--red)}.attribute-row output{font:10px var(--mono);color:var(--gold);text-align:right}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.profile-modal{padding:25px}.profile-hero{display:flex;gap:15px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:20px}.profile-hero .avatar{width:60px;height:60px;font-size:27px}.profile-hero h2{font:600 23px var(--display);margin:0 0 3px}.profile-hero p{margin:0;color:var(--muted);font-size:11px}.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.profile-stat{background:#0d0d11;border:1px solid #ffffff08;border-radius:9px;padding:12px}.profile-stat span{display:block;color:var(--muted);font-size:10px;margin-bottom:5px}.profile-stat strong{font:500 15px var(--mono)}.profile-section{margin-top:20px}.profile-section h3{font:600 13px var(--display);margin-bottom:10px}.profile-section p{color:#bbb5ba;font-size:11px;line-height:1.7;margin:0}.profile-list{display:flex;flex-wrap:wrap;gap:6px}.profile-pill{padding:5px 8px;border:1px solid #ffffff12;border-radius:5px;color:#cfc7c7;font-size:10px}.settings-modal{padding:25px;width:min(500px,calc(100vw - 28px))}.toggle-row{display:flex!important;flex-direction:row!important;align-items:center;justify-content:space-between;padding:14px 0;border-bottom:1px solid #ffffff0b;gap:20px!important}.toggle-row strong{display:block;color:var(--text);font-size:12px}.toggle-row small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.toggle-row input{accent-color:var(--red);width:17px;height:17px;flex-shrink:0}.toast-region{position:fixed;right:22px;bottom:22px;z-index:60;display:flex;flex-direction:column;gap:8px;max-width:min(380px,calc(100vw - 44px))}.toast{border:1px solid #ffffff1a;background:#1b1a1f;color:var(--text);border-radius:10px;padding:13px 16px;box-shadow:0 15px 50px #0008;font-size:12px;animation:fadeIn .25s ease}.toast.success{border-left:3px solid var(--green)}.toast.error{border-left:3px solid var(--red)}.site-footer{max-width:1440px;margin:0 auto;padding:20px clamp(22px,5vw,76px);border-top-color:#ffffff0a}.site-footer small{color:#49464f;font-size:9px}.progress-controls .button-primary{min-width:215px}.history-empty{padding:28px;text-align:center;border:1px dashed #ffffff18;border-radius:12px;color:var(--muted);font-size:12px}.control-message{min-height:18px}.history-day.filtered-out{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.reduce-motion *,body.reduce-motion *:before,body.reduce-motion *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}body.disable-effects:before,body.disable-effects .ambient,body.disable-effects .hero-art .orbit,body.disable-effects .arena-sun{display:none}body.large-text{font-size:17px}body.large-text .event-card p,body.large-text .muted,body.large-text .feature-card p{font-size:14px}
@keyframes fadeIn{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px){.topbar{padding:0 24px}.brand{min-width:unset}.top-actions{min-width:unset}.save-indicator{display:none}.hero-grid{grid-template-columns:1fr .85fr;gap:16px}.hero-art{height:390px}.participants-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.view{padding:0 28px}.arena-columns{grid-template-columns:minmax(0,1.35fr) minmax(240px,.75fr)}.range-field{grid-template-columns:minmax(160px,1fr) minmax(80px,.8fr) 40px;gap:12px}}
@media(max-width:820px){.topbar{height:auto;min-height:72px;flex-wrap:wrap;padding:13px 20px;gap:14px}.topnav{order:3;width:100%;overflow:auto;justify-content:center;border-top:1px solid #ffffff0a;padding-top:7px}.nav-btn{white-space:nowrap;padding:8px 12px}.hero-grid{grid-template-columns:1fr;padding-top:45px}.hero-copy h1{font-size:55px}.hero-art{height:350px}.feature-row{grid-template-columns:1fr}.feature-card{min-height:145px}.setup-layout{grid-template-columns:1fr}.roster-summary{position:static}.arena-columns{grid-template-columns:1fr}.arena-aside{display:grid;grid-template-columns:1fr 1fr}.participants-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page-heading{align-items:flex-start;flex-direction:column}.arena-header{align-items:flex-start;flex-direction:column}.arena-status{align-items:flex-start;flex-direction:row;justify-content:space-between;width:100%}.stat-card{padding:14px}.stat-card strong{font-size:24px}.history-filter{flex-direction:column}.filter-select{justify-content:space-between}.filter-select select{flex:1}.home-bottom,.site-footer{flex-direction:column;align-items:flex-start}.heading-actions{width:100%}.heading-actions .button{flex:1}}
@media(max-width:520px){.view{padding:0 16px}.topbar{padding:12px 16px}.brand-mark{width:34px;height:34px}.topnav{justify-content:flex-start}.nav-btn{font-size:12px}.hero-copy h1{font-size:43px;letter-spacing:-2px}.hero-lead{font-size:14px}.hero-art{height:285px}.orbit-outer{width:280px}.orbit-inner{width:205px}.arena-sun{width:100px}.hero-meta{gap:10px;flex-wrap:wrap}.hero-actions .button{width:100%}.feature-card{padding:19px}.participants-grid{grid-template-columns:1fr}.participant-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.toolbar-right{gap:13px}.setup-panel{padding:17px}.mode-switch{grid-template-columns:1fr}.form-grid,.form-grid.two-col{grid-template-columns:1fr}.range-field{grid-template-columns:1fr 55px;gap:8px}.range-field>div{grid-column:1/-1}.range-value{grid-column:2;grid-row:2}.range-field input[type=range]{grid-column:1;grid-row:2}.arena-header h2{font-size:32px}.stat-grid{grid-template-columns:repeat(2,1fr)}.arena-aside{grid-template-columns:1fr}.timeline-event{grid-template-columns:35px 1fr;gap:7px}.timeline-marker .marker-icon{height:29px;width:29px;font-size:13px}.event-card{padding:13px}.event-card h4{font-size:13px}.event-card p{font-size:11px}.progress-controls{display:grid;grid-template-columns:1fr 1fr}.progress-controls .button-primary{grid-column:1/-1;width:100%}.section-bar{align-items:flex-start;flex-direction:column}.timeline-tools{width:100%}.timeline-tools .button{flex:1}.profile-grid{grid-template-columns:1fr 1fr}.home-bottom{font-size:8px}.history-filter select{min-width:0}.filter-select{align-items:flex-start;flex-direction:column}.modal form{padding:20px}.attribute-row{grid-template-columns:82px 1fr 25px}.winner-panel{padding:25px 16px}.winner-panel h2{font-size:27px}}

.seed-row{display:flex;align-items:center;gap:10px}.seed-row .text-button{font:10px var(--mono);letter-spacing:.5px}
.day-story{margin:15px 0 18px;padding:17px 18px;border:1px solid #d6b47a30;border-left:3px solid var(--gold);border-radius:10px;background:linear-gradient(125deg,#d6b47a0b,#ffffff02)}
.day-story-label{margin:0 0 9px;color:var(--gold);letter-spacing:1.4px}
.day-story-text p{font-size:12px;line-height:1.85;color:#d0c8c9;margin:0;white-space:normal}
.day-story-text p+p{margin-top:11px}
.history-day-story{margin:18px 0 4px;padding:16px 17px;background:#d6b47a08;border:1px solid #d6b47a20;border-radius:10px}
.history-day-story>.eyebrow{color:var(--gold);margin:0 0 9px}
.history-day-story>.small-muted{margin:12px 0 0}
.day-summary-panel{margin:14px 0 8px;padding:20px;border:1px solid #d6b47a27;border-radius:13px;background:linear-gradient(145deg,#191719,#131216);animation:fadeIn .3s ease}.day-summary-panel[hidden]{display:none}.summary-panel-head{margin-bottom:15px}.summary-panel-head .eyebrow{margin-bottom:6px}.summary-panel-head h3{font:600 20px var(--display);margin:0 0 7px}.summary-panel-head>p:last-child{color:#bdb4b6;font-size:12px;line-height:1.7;margin:0}.day-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.day-summary-grid article{border:1px solid #ffffff0b;background:#ffffff03;border-radius:9px;padding:11px 12px;min-width:0}.day-summary-grid h4{font:600 11px var(--display);margin:0 0 7px;color:#d7c8bf}.day-summary-grid ul{padding-left:16px;margin:0}.day-summary-grid li{font-size:10px;color:#aaa3a9;line-height:1.7;margin:3px 0}.day-summary-grid .small-muted{margin:0}.summary-footer{display:flex;gap:9px;flex-wrap:wrap;border-top:1px solid #ffffff0c;border-bottom:1px solid #ffffff0c;margin-top:13px;padding:12px 0}.summary-footer span{font-size:10px;color:var(--muted);padding-right:14px;border-right:1px solid var(--line)}.summary-footer span:last-child{border:0}.summary-footer b{color:var(--gold);font:500 12px var(--mono);margin-right:4px}.summary-next{margin:10px 0 0}.arena-map{display:grid;grid-template-columns:1fr 1fr;gap:7px}.map-region{padding:8px;border-radius:8px;background:#0d1111;border:1px solid #ffffff0d;min-width:0}.map-region.closed{background:#181112;border-color:#813e3540;opacity:.7}.map-region.occupied{border-color:#658a765c;background:#122018}.map-region-icon{display:inline-block;font-size:10px;color:var(--green);margin-right:5px}.map-region.closed .map-region-icon{color:#c36a58}.map-region strong{font-size:10px;display:inline;line-height:1.4}.map-region small{display:block;color:var(--muted);font-size:9px;margin-top:4px;line-height:1.4}.map-people{display:flex;flex-direction:column;gap:3px;margin-top:5px}.map-people span{font-size:9px;color:#b8d2bf;overflow-wrap:anywhere}.map-location-note{margin:9px 0 0}.final-story-stats{max-width:800px;margin:20px auto 0}.final-story-stats .profile-list{justify-content:center}
@media(max-width:520px){.day-story{padding:14px}.history-day-story{padding:13px}.day-story-text p{font-size:12px}.day-summary-grid{grid-template-columns:1fr}.arena-map{grid-template-columns:1fr 1fr}.summary-footer{gap:7px}.summary-footer span{border:0;padding-right:3px}}

/* Leitura da arena como um livro: uma página por acontecimento. */
.story-page-navigation{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0 3px;border-bottom:1px solid #ffffff0b}
.story-page-counter{display:flex;flex:1;min-width:0;flex-direction:column;align-items:center;text-align:center;gap:3px}
.story-page-counter strong{font:500 10px var(--mono);letter-spacing:.5px;color:var(--gold)}
.story-page-counter small{font-size:10px;color:var(--muted)}
.book-page{position:relative;overflow:hidden;isolation:isolate;margin:8px 0 17px;padding:clamp(23px,4vw,42px) clamp(22px,4.5vw,50px) 22px;background:linear-gradient(100deg,#dfd2b7 0%,#f0e7d4 8%,#f4ead7 48%,#e8dcc5 100%);border:1px solid #b9a783;border-radius:4px 12px 12px 4px;color:#34261e;box-shadow:0 20px 45px #0005,inset 8px 0 14px #5e3b2718,inset 0 0 0 5px #f6ecd954;animation:bookPageReveal .26s ease both}
.book-page:before{content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;opacity:.34;background:repeating-linear-gradient(0deg,transparent 0 31px,#937d5b0b 32px,#937d5b0b 33px),radial-gradient(ellipse at 0 50%,#6f422f1c,transparent 28%)}
.book-page:after{content:"";position:absolute;top:0;bottom:0;left:12px;width:1px;background:#a98e6755;box-shadow:3px 0 0 #a98e671b}
.book-page-running{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid #9e896a75;color:#79644f;font:500 9px var(--mono);letter-spacing:1px}
.book-ornament{display:flex;align-items:center;justify-content:center;gap:12px;margin:21px 0 17px;color:#a04e37;font-size:14px}
.book-ornament span{height:1px;width:min(75px,20%);background:#a04e3770}
.book-kicker{margin:0 0 11px;text-align:center;color:#9a4a35;font:600 10px var(--mono);letter-spacing:1.4px}
.book-kicker span{padding:0 5px;color:#b79560}
.book-page h3{max-width:620px;margin:0 auto 20px;text-align:center;font:600 clamp(27px,3.5vw,38px)/1.18 Georgia,"Times New Roman",serif;letter-spacing:-.7px;color:#30231c;text-wrap:balance}
.book-narrative{max-width:650px;margin:0 auto 23px;color:#49382d;font:400 clamp(15px,1.35vw,18px)/2 Georgia,"Times New Roman",serif;white-space:normal}
.book-result{margin:24px 0 22px;padding:15px 17px 14px;border-left:3px solid #a34d37;background:#a34d370c}
.book-result strong{display:block;margin-bottom:6px;color:#923f2e;font:600 9px var(--mono);letter-spacing:1.4px;text-transform:uppercase}
.book-result p{margin:0;color:#433126;font:400 14px/1.8 Georgia,"Times New Roman",serif}
.book-characters-section{margin-top:22px;padding-top:15px;border-top:1px solid #9e896a55}
.book-section-label{display:block;margin-bottom:9px;color:#867157;font:600 8px var(--mono);letter-spacing:1.2px}
.book-characters{display:flex;flex-wrap:wrap;gap:7px}
.book-character{display:inline-flex;align-items:center;gap:7px;padding:6px 9px;background:#ffffff55;border:1px solid #a98e6738;border-radius:3px;color:#392a20;font:600 11px Georgia,"Times New Roman",serif}
.book-character small{color:#806e59;font:500 8px var(--mono)}
.book-consequences{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}
.book-consequence{padding:5px 8px;background:#61775b12;border:1px solid #61775b35;border-radius:3px;color:#51644a;font:500 9px var(--mono)}
.book-page-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:25px;padding-top:11px;border-top:1px solid #9e896a55;color:#8c775d;font:500 8px var(--mono);letter-spacing:.7px}
.book-page-ending{margin-bottom:17px}
.book-ending-highlight{font-weight:600;text-align:center}
.book-ending-story{max-width:680px;margin:0 auto;color:#4b392c}
.book-ending-story .day-story-text p,.book-ending-story p{font:400 14px/1.85 Georgia,"Times New Roman",serif;color:#4b392c;margin:0 0 13px}
.book-ending-stats{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin:24px 0 0;padding:17px 0;border-top:1px solid #9e896a55;border-bottom:1px solid #9e896a55}
.book-ending-stats span{display:flex;align-items:baseline;gap:6px;color:#806e59;font:500 9px var(--mono)}
.book-ending-stats strong{font:600 17px Georgia,"Times New Roman",serif;color:#8e4431}
.day-summary-details{margin:15px 0 8px;padding:19px;border:1px solid #d6b47a27;border-radius:13px;background:linear-gradient(145deg,#191719,#131216)}
.day-summary-details .summary-panel-head{margin-bottom:15px}
.day-summary-details .summary-panel-head h3{font:600 18px var(--display);margin-bottom:7px}
.day-summary-details .summary-panel-head>p:last-child{color:#bdb4b6;font-size:12px;line-height:1.7;margin:0}
.day-summary-details .summary-next{margin:12px 0 0}
@keyframes bookPageReveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:520px){
  .story-page-navigation{gap:7px;align-items:stretch}
  .story-page-navigation .button{padding:8px 9px;font-size:10px;white-space:nowrap}
  .story-page-counter strong{font-size:9px}
  .story-page-counter small{font-size:9px}
  .book-page{padding:22px 20px 18px 24px;border-radius:4px 8px 8px 4px}
  .book-page:after{left:8px}
  .book-page-running{font-size:7px;letter-spacing:.5px}
  .book-ornament{margin:16px 0 13px}
  .book-page h3{font-size:27px;margin-bottom:14px}
  .book-narrative{font-size:15px;line-height:1.85}
  .book-result{padding:12px;margin:17px 0}
  .book-result p{font-size:13px}
  .book-ending-story p{font-size:13px}
  .book-ending-stats{gap:9px}
  .book-ending-stats span{font-size:8px}
  .day-summary-details{padding:13px}
}
#day-summary-panel.day-summary-panel{margin:8px 0 8px;padding:0;border:0;background:transparent;box-shadow:none;animation:none}

/* Modo de leitura limpa: prioridade total para a narrativa, sem cartões decorativos. */
#view-arena .arena-status,
#view-arena .arena-header > div > .muted,
#view-arena .stat-grid,
#view-arena .section-bar,
#view-arena .arena-aside { display: none !important; }
#view-arena .arena-header { align-items: flex-start; margin-bottom: 8px; padding-bottom: 10px; border-bottom: 1px solid #ffffff0b; }
#view-arena .arena-columns { display: block; max-width: 920px; margin: 0 auto; }
#view-arena .timeline-column { width: 100%; min-width: 0; }
#view-arena .timeline-list { max-width: 760px; margin: 0 auto; }
#view-arena .book-page,
#view-arena .book-page.book-page-ending {
  max-width: 760px; min-height: 290px; margin: 14px auto 24px; padding: clamp(20px, 4vw, 42px) 0 24px;
  color: var(--text); background: transparent; border: 0; border-radius: 0; box-shadow: none; animation: bookPageReveal .2s ease both;
}
#view-arena .book-page::before,
#view-arena .book-page::after { display: none; }
#view-arena .book-page-running,
#view-arena .book-ornament,
#view-arena .book-characters-section,
#view-arena .book-consequences,
#view-arena .book-page-footer,
#view-arena .book-ending-stats { display: none !important; }
#view-arena .book-kicker { text-align: left; margin: 0 0 17px; color: #9a8d8e; font: 500 10px var(--mono); letter-spacing: 1.3px; }
#view-arena .book-kicker span { padding: 0 3px; color: var(--muted); }
#view-arena .book-page h3 { max-width: 740px; margin: 0 0 23px; text-align: left; color: #f1e9e8; font: 600 clamp(27px, 3.7vw, 38px)/1.22 Georgia, "Times New Roman", serif; letter-spacing: -.5px; }
#view-arena .book-narrative,
#view-arena .book-ending-story p { max-width: 740px; margin: 0 0 20px; color: #d2cbcd; font: 400 clamp(16px, 1.4vw, 18px)/1.95 Georgia, "Times New Roman", serif; }
#view-arena .book-ending-story p + p { margin-top: 17px; }
#view-arena .book-result { margin: 24px 0 0; padding: 15px 0 0; border: 0; border-top: 1px solid #ffffff12; background: transparent; color: #bcb4b7; font: 400 14px/1.85 var(--font); }
#view-arena .book-result strong { display: inline; margin: 0 8px 0 0; color: var(--gold); font: 500 9px var(--mono); letter-spacing: 1px; }
#view-arena .clean-ending-facts { margin-top: 20px; }
#view-arena .clean-ending-facts p { margin: 0 0 12px; color: #aaa1a5; font: 400 13px/1.8 var(--body); }
#view-arena .story-page-navigation { max-width: 760px; margin: 0 auto; padding: 13px 0; border: 0; border-top: 1px solid #ffffff0b; }
#view-arena .story-page-counter small { display: none; }
#view-arena .story-page-counter strong { color: #968b8f; font-size: 9px; font-weight: 400; }
#view-arena .progress-controls { max-width: 760px; margin: 12px auto; gap: 8px; justify-content: flex-start; }
#view-arena .progress-controls .button { min-height: 38px; padding: 9px 13px; font-size: 11px; }
#view-arena #next-period { display: none !important; }
#view-arena #next-day:disabled,
#view-arena #finish-day:disabled { display: none !important; }
#view-arena .control-message { max-width: 760px; margin: 8px auto 28px; min-height: 0; color: #797278; font-size: 10px; }
#view-arena .timeline-empty { max-width: 760px; margin: 0 auto; border: 0; background: transparent; }
#view-arena .timeline-empty .empty-orbit { display: none; }
#view-arena .day-summary-panel { max-width: 760px; margin: 0 auto; }
#view-arena .day-summary-details { display: none !important; }
@media (max-width: 520px) {
  #view-arena .book-page, #view-arena .book-page.book-page-ending { min-height: 250px; padding: 19px 0 22px; }
  #view-arena .book-page h3 { font-size: 28px; margin-bottom: 18px; }
  #view-arena .book-narrative, #view-arena .book-ending-story p { font-size: 16px; line-height: 1.85; }
  #view-arena .progress-controls { display: flex; flex-wrap: wrap; }
  #view-arena .progress-controls #next-event { flex: 1 1 100%; order: -1; }
  #view-arena .story-page-navigation .button { font-size: 10px; }
}


/* Experiência de celular: navegação inferior, leitura limpa e alvos de toque maiores. */
@media (max-width: 700px) {
  html { scroll-padding-top: 72px; }
  body { font-size: 15px; -webkit-text-size-adjust: 100%; }
  .topbar {
    height: 64px; min-height: 64px; flex-wrap: nowrap; gap: 10px;
    padding: 0 16px; position: sticky; top: 0; z-index: 120;
    background: rgba(11,11,14,.96); border-bottom: 1px solid #ffffff12;
  }
  .brand { min-width: 0; gap: 9px; }
  .brand-mark { width: 32px; height: 32px; font-size: 11px; flex: 0 0 auto; }
  .brand strong { font-size: 12px; }
  .brand small { font-size: 8px; letter-spacing: 1.8px; }
  .top-actions { min-width: 0; gap: 0; }
  .save-indicator { display: none !important; }
  .icon-button { width: 38px; height: 38px; flex: 0 0 auto; }
  .topnav {
    position: fixed; top: auto; left: 0; right: 0; bottom: 0; z-index: 300;
    order: initial; width: 100%; height: auto; display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 4px;
    justify-content: stretch; align-items: stretch; overflow: visible;
    padding: 7px 9px calc(7px + env(safe-area-inset-bottom));
    margin: 0; border-top: 1px solid #ffffff16; border-bottom: 0;
    background: rgba(13,13,16,.97); backdrop-filter: blur(20px);
    box-shadow: 0 -10px 30px #0004;
  }
  .nav-btn {
    min-width: 0; min-height: 45px; padding: 8px 2px 7px; margin: 0;
    display: flex; align-items: center; justify-content: center;
    border-radius: 8px; background: transparent; font-size: 11px;
    line-height: 1.1; white-space: nowrap; box-shadow: none;
  }
  .nav-btn.active { background: #ffffff08; box-shadow: inset 0 -2px var(--red); }
  #app-main { padding-bottom: calc(77px + env(safe-area-inset-bottom)); }
  .view { width: 100%; min-height: calc(100svh - 135px); padding: 0 17px; }
  .hero-grid { min-height: unset; display: block; padding: 38px 0 26px; }
  .hero-copy h1 { max-width: 520px; font-size: clamp(37px, 9vw, 48px); line-height: 1.08; letter-spacing: -1.8px; margin-bottom: 16px; }
  .eyebrow { font-size: 9px; letter-spacing: 1.2px; margin-bottom: 13px; }
  .hero-lead { font-size: 14px; line-height: 1.75; margin-bottom: 23px; }
  .hero-art, .hero-meta, .feature-row { display: none !important; }
  .hero-actions { display: grid; grid-template-columns: 1fr; gap: 9px; }
  .hero-actions .button { width: 100%; min-height: 48px; }
  .home-bottom, .site-footer { font-size: 8px; line-height: 1.7; padding: 14px 0; }
  .page-heading { padding: 29px 0 20px; gap: 14px; }
  .page-heading h2, .arena-header h2 { font-size: 29px; line-height: 1.18; letter-spacing: -1px; }
  .page-heading .muted { font-size: 12px; line-height: 1.6; }
  .heading-actions { display: grid; grid-template-columns: 1fr 1fr; width: 100%; gap: 8px; }
  .heading-actions .button { width: 100%; min-height: 44px; padding: 10px 8px; font-size: 11px; }
  .participant-toolbar { align-items: flex-start; flex-direction: column; gap: 10px; padding: 12px 0; }
  .toolbar-right { gap: 12px; }
  .participants-grid { grid-template-columns: 1fr; gap: 9px; margin-bottom: 26px; }
  .participant-card { padding: 14px; }
  .setup-panel { padding: 16px; }
  .form-grid, .form-grid.two-col { grid-template-columns: minmax(0, 1fr); }
  .range-field { grid-template-columns: minmax(0,1fr) 54px; gap: 8px; }
  .range-field>div { grid-column: 1 / -1; }
  .range-field input[type="range"] { min-width: 0; }
  .arena-header { padding-top: 23px; }
  #view-arena .arena-header h2 { font-size: 28px; }
  #view-arena .arena-columns { width: 100%; }
  #view-arena .book-page, #view-arena .book-page.book-page-ending { min-height: 0; padding: 19px 0 23px; margin: 8px 0 15px; }
  #view-arena .book-kicker { font-size: 9px; letter-spacing: 1px; margin-bottom: 13px; }
  #view-arena .book-page h3 { font-size: clamp(25px, 7vw, 31px); line-height: 1.2; margin-bottom: 16px; }
  #view-arena .book-narrative, #view-arena .book-ending-story p { font-size: 16px; line-height: 1.85; margin-bottom: 17px; }
  #view-arena .book-result { margin-top: 18px; padding-top: 13px; font-size: 13px; line-height: 1.75; }
  #view-arena .story-page-navigation { gap: 7px; padding: 9px 0; }
  #view-arena .story-page-navigation .button { min-height: 42px; padding: 9px 8px; font-size: 10px; }
  #view-arena .progress-controls { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 12px 0; }
  #view-arena .progress-controls .button { min-height: 43px; width: 100%; padding: 10px 8px; font-size: 11px; }
  #view-arena .progress-controls #next-event { grid-column: 1 / -1; order: -1; }
  #view-arena .control-message { margin: 8px 0 18px; font-size: 11px; line-height: 1.6; }
  #view-historico .history-filter { gap: 10px; }
  #view-historico .filter-select select, #view-historico select, #view-participantes input, #view-participantes select { min-height: 43px; max-width: 100%; }
  .modal { max-width: calc(100vw - 20px); max-height: calc(100svh - 24px); margin: auto 10px; }
  .modal form { padding: 17px; }
  .profile-grid { grid-template-columns: 1fr 1fr; }
  .winner-panel { padding: 24px 16px; }
  button, input, select { touch-action: manipulation; }
}
@media (max-width: 380px) {
  .topbar { padding: 0 12px; }
  .view { padding-left: 13px; padding-right: 13px; }
  .nav-btn { font-size: 10px; }
  #view-arena .story-page-navigation .button { font-size: 9px; padding-left: 5px; padding-right: 5px; }
  .heading-actions { grid-template-columns: 1fr; }
  .profile-grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* Instalação PWA: convite inicial discreto e botão permanente "Baixar". */
.install-button{padding:9px 14px;min-height:36px;border-radius:8px;font-size:12px;letter-spacing:.2px;white-space:nowrap}
.install-button[hidden]{display:none}
.install-modal{width:min(440px,calc(100vw - 28px));padding:0;overflow:hidden;background:radial-gradient(ellipse at 50% 0,#9e3d2c26,transparent 53%),#151519;border-color:#a34a393f}
.install-modal::backdrop{background:#050507dc;backdrop-filter:blur(9px)}
.install-modal-content{padding:30px clamp(20px,5vw,32px) 24px;text-align:center}
.install-mark{width:58px;height:58px;display:grid;place-items:center;margin:0 auto 22px;border:1px solid #bd4b37;border-radius:16px;color:#f5d5b3;background:#241819;font:700 18px var(--mono);letter-spacing:-1px;box-shadow:0 0 42px #bd4b371c}
.install-modal .eyebrow{justify-content:center;margin-bottom:9px;font-size:9px;letter-spacing:1.7px}
.install-modal h2{font:600 clamp(27px,6vw,34px)/1.2 var(--display);letter-spacing:-1px;margin:0 0 12px}
.install-modal h2 em{font-style:normal;color:#c86a50}
.install-description{max-width:340px;margin:0 auto;color:#b9b3ba;font-size:13px;line-height:1.8}
.install-instructions{margin:20px 0 0;padding:15px 16px;text-align:left;background:#0d0d11;border:1px solid #ffffff10;border-radius:10px;color:#bcb6bd;font-size:12px;line-height:1.7}
.install-instructions[hidden]{display:none}
.install-instructions strong{display:block;color:var(--text);margin-bottom:7px;font-size:12px}
.install-instructions ol{margin:0;padding-left:20px}
.install-instructions li+li{margin-top:4px}
.install-actions{justify-content:center;flex-wrap:wrap;margin-top:24px}
.install-actions .button{min-width:130px}
.install-footnote{margin:18px 0 0;color:#77727b;font-size:10px;line-height:1.6}
@media(max-width:820px){.top-actions{gap:10px}.install-button{padding:8px 12px}}
@media(max-width:520px){.topbar .top-actions{margin-left:auto}.install-button{min-height:35px;padding:7px 11px;font-size:11px}.install-modal-content{padding-top:25px}.install-actions{display:grid;grid-template-columns:1fr}.install-actions .button{width:100%}}
