@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');
:root{--bg:#131916;--panel:#1b231e;--panel2:#232d26;--line:#354238;--ink:#f2efdf;--muted:#a5b1a2;--gold:#e4b973;--green:#a6c9a6;--red:#e49d88;--serif:'Libre Baskerville',Georgia,serif;font:14px 'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--bg);color-scheme:dark}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);background:var(--panel2);color:var(--ink);border-radius:7px;padding:10px 13px;transition:background .15s,transform .15s}button:hover{background:#354638}button:active{transform:translateY(1px)}button:disabled{opacity:.4;cursor:default}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:2px}button.primary{background:var(--gold);color:#241e12;border-color:var(--gold);font-weight:700}button.ghost{background:transparent}button.active{background:#3b4f3e;color:#e1edce;border-color:#79956b}input,select,textarea{background:#111a15;color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:11px;width:100%}input[type=checkbox]{width:18px;height:18px;accent-color:var(--gold)}label{display:block;color:var(--muted);font-size:12px;margin:12px 0 5px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:400}h1{font-size:36px}h2{font-size:24px}h3{font-size:14px}small,.muted{color:var(--muted)}.eyebrow{text-transform:uppercase;font-size:10px;letter-spacing:.19em;color:var(--gold);font-weight:700}.row{display:flex;align-items:center;gap:8px}.spread{justify-content:space-between}.grow{flex:1;min-width:0}.stack{display:grid;gap:10px}.pill{padding:5px 9px;border:1px solid var(--line);border-radius:30px;font-size:11px;color:var(--green);white-space:nowrap}.pill.off{color:var(--red)}.topbar{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 25px;gap:28px;background:var(--bg)}.brand{display:flex;align-items:center;gap:11px;color:var(--ink);font-weight:700;letter-spacing:.04em;white-space:nowrap}.brand-mark{width:34px;height:38px;display:grid;place-items:center;color:var(--gold);font-size:28px;border:1px solid var(--gold);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}.topnav{display:flex;gap:4px;margin-left:auto}.topnav button{border:0;background:transparent;color:var(--muted)}.topnav button.active{color:var(--gold)}.workspace{height:calc(100dvh - 72px);display:grid;grid-template-columns:260px minmax(0,1fr) 280px}.sidebar,.rightbar{background:var(--panel);overflow:auto;padding:21px 17px}.sidebar{border-right:1px solid var(--line)}.rightbar{border-left:1px solid var(--line)}.section-label{display:flex;justify-content:space-between;align-items:center;margin:23px 0 12px;color:var(--muted);font-size:10px;letter-spacing:.15em;font-weight:700;text-transform:uppercase}.map-card{display:block;text-align:left;width:100%;padding:12px;margin-bottom:7px;background:transparent}.map-card.active{border-left:3px solid var(--gold)}.map-card strong{font-size:12px;display:block;margin-bottom:4px}.map-card small{font-size:10px}.mini-map{height:68px;border-radius:5px;background:repeating-linear-gradient(0deg,transparent,transparent 11px,#ffffff0b 12px),repeating-linear-gradient(90deg,#49604b,#49604b 11px,#ffffff0b 12px);position:relative;overflow:hidden;margin-bottom:9px}.mini-map:before{content:'';position:absolute;left:20%;top:20%;width:50%;height:60%;border:7px solid #b19a75;background:#6c6750;box-shadow:20px 8px 0 -3px #657d55}.mini-map.dungeon{filter:grayscale(.7)}.map-stage{position:relative;min-width:0;overflow:hidden;background:#101914}.map-heading{position:absolute;left:24px;top:22px;z-index:2;pointer-events:none}.map-heading h1{font-size:25px;margin:5px 0 7px;text-shadow:0 2px 14px #000}.map-heading .pill{background:#152319db}.map-stage canvas{display:block;width:100%;height:100%;touch-action:none}.map-tools{position:absolute;top:112px;left:20px;display:grid;gap:6px;z-index:3;background:#17231de8;padding:7px;border:1px solid var(--line);border-radius:10px}.map-tools button{width:40px;height:39px;padding:0;font-size:17px}.map-footer{position:absolute;bottom:20px;left:20px;right:20px;display:flex;justify-content:space-between;gap:10px;pointer-events:none}.map-footer>*{pointer-events:auto}.map-footer .row{background:#17231deb;border:1px solid var(--line);border-radius:9px;padding:5px}.map-footer button{border:0;background:transparent}.map-footer input{width:56px;padding:7px}.turn-card{display:flex;align-items:center;gap:10px;padding:12px 8px;border-radius:7px;border:1px solid transparent;margin-bottom:5px;cursor:pointer}.turn-card.active{background:#374434;border-color:#72805b}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;font-family:var(--serif);font-size:16px;background:#28392d;border:2px solid var(--color,var(--gold));color:var(--color,var(--gold));flex-shrink:0}.turn-card strong{font-size:12px}.turn-card small{display:block;font-size:10px;margin-top:3px}.turn-number{font-size:10px;color:var(--muted);width:12px}.turn-card input{width:30px;padding:3px;background:transparent}.rule{display:flex;align-items:center;justify-content:space-between;gap:9px;font-size:12px;margin:13px 0}.rule input[type=number]{width:55px;padding:7px}.divider{height:1px;background:var(--line);margin:19px 0}.roll-entry{padding:12px 0;border-bottom:1px solid var(--line)}.roll-entry .total{float:right;font:24px var(--serif);color:var(--gold)}.roll-entry strong{font-size:11px}.roll-entry p{font-size:11px;color:var(--muted);margin:5px 0}.screen{height:calc(100dvh - 72px);overflow:auto;padding:35px;max-width:1150px;margin:auto}.screen-head{margin-bottom:26px}.sheet-layout{display:grid;grid-template-columns:1fr 290px;gap:24px}.paper{background:#e9e3d2;color:#292e27;border-radius:12px;padding:28px;box-shadow:0 12px 40px #0003}.paper input,.paper textarea,.paper select{background:#f4efdf;border-color:#b8bca7;color:#293729}.paper label,.paper small{color:#68715d}.paper h2{margin-bottom:10px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.stat{border:1px solid #bcc2ad;border-radius:8px;text-align:center;padding:10px}.stat input{font:25px var(--serif);text-align:center;padding:5px;border:0}.stat label{margin:0;font-size:10px;text-transform:uppercase}.stat .mod{font-size:12px;background:#d3d9c3;padding:3px 8px;border-radius:20px}.resource-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.inventory-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:10px}.item{padding:12px;text-align:center;background:var(--panel2);border:1px solid var(--line);border-radius:8px;cursor:pointer}.item img{height:55px;width:55px;object-fit:contain}.item span{display:block;font-size:11px;margin-top:8px}.dice-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px}.dice-panel{padding:28px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.dice-types{display:grid;grid-template-columns:repeat(7,1fr);gap:8px;margin:25px 0}.die{padding:18px 0;font-size:16px;font-weight:700}.die.active{background:var(--gold);color:#252819;border-color:var(--gold)}.expression{text-align:center;font:36px var(--serif);padding:25px;color:var(--gold)}.roll-button{width:100%;padding:18px;font-size:16px}.dice-result{text-align:center;padding:28px 0}.dice-result .big{font:76px var(--serif);color:var(--gold)}.number-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.asset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(115px,1fr));gap:10px}.asset{height:126px;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:11px;gap:8px}.asset img{width:64px;height:64px;object-fit:contain}.asset small{font-size:9px}.toolbar{display:flex;gap:10px;margin-bottom:20px}.toolbar select{width:190px}.footer-note{font-size:11px;color:var(--muted);margin-top:15px}.login{min-height:100dvh;display:grid;grid-template-columns:1fr 1fr}.login-art{background:radial-gradient(ellipse at 50% 60%,#506044,#18271e 65%);display:flex;flex-direction:column;justify-content:center;padding:10vw;position:relative;overflow:hidden}.login-art:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#d6c5980b 1px,transparent 1px),linear-gradient(#d6c5980b 1px,transparent 1px);background-size:45px 45px;transform:rotate(-12deg) scale(1.3)}.login-art>*{position:relative}.login-art h1{font-size:58px;line-height:1.2}.login-form{display:flex;flex-direction:column;justify-content:center;max-width:390px;width:100%;margin:auto;padding:30px}.login-form .brand{margin-bottom:50px}.login-form h2{font-size:28px}.login-form button{margin-top:16px}.login-form p{line-height:1.7;color:var(--muted)}.bottom-nav{display:none}#toast{position:fixed;bottom:30px;left:50%;transform:translateX(-50%);z-index:90;background:#ead6ac;color:#242b22;border-radius:9px;box-shadow:0 8px 35px #0008;padding:15px 22px;max-width:90vw;display:none}#toast.warning{background:#a74429;color:#fff;font-size:19px;font-weight:700;border:2px solid #ffb18c}#roll-banner{position:fixed;top:88px;left:50%;transform:translateX(-50%);z-index:60;background:#eee6cc;color:#242d22;border:2px solid var(--gold);padding:20px 30px;border-radius:10px;box-shadow:0 8px 40px #0007;display:none;text-align:center;min-width:280px}#roll-banner strong{font:32px var(--serif);display:block;margin-top:7px}dialog{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:26px;max-width:560px;width:90vw;max-height:85dvh}dialog::backdrop{background:#060c09b8}dialog textarea{min-height:130px}.empty{padding:30px 16px;text-align:center;line-height:1.8;color:var(--muted)}.present .sidebar,.present .rightbar,.present .topnav,.present .map-tools{display:none}.present .workspace{grid-template-columns:1fr}.present .map-heading{left:25px}.mobile-only{display:none}
@media(min-width:1500px){.workspace{grid-template-columns:280px minmax(0,1fr) 300px}.map-heading h1{font-size:30px}}@media(max-width:1050px){.workspace{grid-template-columns:210px minmax(0,1fr)}.rightbar{display:none}.topbar{padding:0 16px;gap:15px}.topnav button{padding:10px}.sheet-layout{grid-template-columns:1fr}.dice-layout{grid-template-columns:1fr}.dice-history{display:none}}@media(max-width:700px){:root{font-size:14px}.topbar{height:62px;padding:0 14px;gap:8px}.brand{font-size:12px}.brand-mark{width:27px;height:30px;font-size:22px}.topbar>.campaign-title{display:none}.topnav{margin-left:auto}.topnav button{display:none}.topnav button[data-view=settings]{display:block;font-size:18px;padding:8px}.workspace{height:calc(100dvh - 128px);display:block}.sidebar,.rightbar{display:none}.map-stage{height:100%}.map-heading{top:14px;left:15px}.map-heading h1{font-size:21px}.map-tools{top:102px;left:10px}.map-footer{bottom:12px;left:10px;right:10px}.map-footer .hint{display:none}.bottom-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:66px;padding-bottom:env(safe-area-inset-bottom);z-index:20;border-top:1px solid var(--line);background:var(--panel);justify-content:space-around}.bottom-nav button{border:0;background:none;flex:1;padding:10px;color:var(--muted)}.bottom-nav button.active{color:var(--gold);border-top:2px solid var(--gold);border-radius:0}.bottom-nav b{display:block;font-size:19px;margin-bottom:3px}.screen{padding:20px 15px;height:calc(100dvh - 128px)}.screen-head{margin-bottom:20px}.screen h1{font-size:28px}.paper{padding:18px}.stats{gap:8px}.resource-grid{grid-template-columns:repeat(2,1fr)}.dice-panel{padding:18px}.dice-types{grid-template-columns:repeat(4,1fr);gap:9px;margin:16px 0}.die{padding:16px 0}.expression{font-size:30px;padding:20px}.dice-layout{gap:10px}.login{display:block}.login-art{display:none}.login-form{min-height:100dvh;padding:28px}.toolbar{flex-wrap:wrap}.toolbar select{width:100%}.asset-grid{grid-template-columns:repeat(3,1fr)}.asset{height:110px;font-size:10px}#roll-banner{top:74px;max-width:94vw;width:94vw;padding:16px}#toast{bottom:80px;width:90vw;text-align:center}.mobile-only{display:block}.present .workspace{height:calc(100dvh - 62px)}.present .bottom-nav{display:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}

.dice-panel[class*="dice-theme-"]{--dice-accent:#e4b973;border-top:4px solid var(--dice-accent)}.dice-theme-0{--dice-accent:#e6dbbc!important}.dice-theme-1{--dice-accent:#c8a34d!important;background:#141413}.dice-theme-2{--dice-accent:#f08664!important}.dice-theme-3{--dice-accent:#bce9ef!important}.dice-theme-4{--dice-accent:#91b17c!important}.dice-theme-5{--dice-accent:#7baee4!important}.dice-theme-6{--dice-accent:#ba92dc!important}.dice-theme-7{--dice-accent:#c88b5e!important}.dice-theme-8{--dice-accent:#d4dae3!important}.dice-theme-9{--dice-accent:#61c8bd!important}.dice-panel[class*="dice-theme-"] .die.active{background:var(--dice-accent);border-color:var(--dice-accent)}.dice-panel[class*="dice-theme-"] .expression,.dice-panel[class*="dice-theme-"] .dice-result .big{color:var(--dice-accent)}.present .map-footer,.present .bottom-nav{display:none}.custom-sheet{padding:18px}.custom-sheet fieldset{border:1px solid #aeb7a0;margin:12px 0;border-radius:6px}.turn-position{width:38px!important;min-width:38px}.map-footer{flex-wrap:wrap}@media(max-width:700px){.map-footer .row{gap:2px}.map-footer button{padding:9px}.dice-panel>.row{flex-wrap:wrap}.custom-sheet{padding:12px}}

.custom-sheet section{padding:18px 0;border-bottom:1px solid #b9b6a2}.custom-sheet fieldset{display:inline-block;vertical-align:top;width:calc(50% - 16px);margin:6px;padding:12px;min-width:0}.custom-sheet label{display:block;margin:12px 0}.custom-sheet output{font-weight:800;display:inline-block;min-width:2em;color:#1b5841}.custom-sheet input[type=checkbox]{width:24px;height:24px}.sheet-save-bar{position:sticky;bottom:0;background:var(--panel,#17251f);padding:12px;display:flex;gap:12px}#builder-html{font-family:monospace}#builder-preview-content{margin-top:16px}@media(max-width:600px){.custom-sheet fieldset{width:100%;margin:6px 0}.sheet-save-bar{flex-wrap:wrap}}

.paper input[type=color]{height:44px;padding:4px;width:90px}.custom-sheet{color-scheme:light}.custom-sheet select,.custom-sheet textarea{background:#f6f0db;color:#202e23}.custom-sheet label{color:#4d5b4c}#modal:has(#custom-sheet),#modal:has(#builder-html){max-width:850px}#modal .custom-sheet section h3{font-size:18px;color:#244330}@media(max-width:700px){.screen-head.row{flex-wrap:wrap;gap:12px}.map-footer{bottom:6px}.map-tools{max-height:calc(100% - 230px);overflow:auto}.screen{padding-bottom:40px}}

.preview-banner{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding:10px 18px;background:#503e16;color:#fff4d1;border-bottom:2px solid #e8b25d}.preview-banner label{display:flex;align-items:center;gap:8px;margin:0}.preview-banner select{width:auto}.preview-banner a{color:#fff4d1;font-weight:700}

/* Local map-navigation preference; toggling keeps the current map center and zoom. */
.map-sidebar-toggle{position:absolute;left:0;top:22px;z-index:5;width:32px;height:40px;padding:0;font-size:26px;line-height:1;border-radius:0 8px 8px 0;background:#1b231ef2;color:var(--gold)}
@media(min-width:701px){.map-stage .map-heading{left:48px}.workspace.maps-collapsed{grid-template-columns:minmax(0,1fr) 280px}.workspace.maps-collapsed>.sidebar{display:none}}
@media(min-width:1500px){.workspace.maps-collapsed{grid-template-columns:minmax(0,1fr) 300px}}
@media(min-width:701px) and (max-width:1050px){.workspace.maps-collapsed{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.map-sidebar-toggle{display:none}}
.present .map-sidebar-toggle{display:none}.present .workspace.maps-collapsed{grid-template-columns:1fr}.present .map-stage .map-heading{left:25px}

.sidebar-tabs{display:flex;gap:5px;margin-bottom:18px;position:sticky;top:-21px;padding:10px 0;background:var(--panel);z-index:6}.sidebar-tabs button{flex:1;padding:9px 5px;font-size:12px;white-space:nowrap}#map-selection [hidden]{display:none!important}.quick-asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.quick-asset{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:105px;padding:8px 4px;min-width:0}.quick-asset img{width:48px;height:48px;object-fit:contain}.quick-asset span{font-size:11px;overflow-wrap:anywhere}.quick-placement{font-size:11px;line-height:1.5;color:var(--gold);margin:12px 0}.quick-asset-grid>.muted{grid-column:1/-1}#quick-asset-more{width:100%;margin-bottom:15px}

@media(min-width:701px){.workspace.player-workspace:not(.maps-collapsed){grid-template-columns:340px minmax(0,1fr) 280px}.player-workspace .sidebar{padding:16px 12px}.player-workspace .sidebar-tabs{top:-16px}.player-workspace .sidebar-tabs button{white-space:normal}.player-workspace .screen{height:auto;padding:0;overflow:visible;margin:0}.player-workspace .screen-head{margin:12px 0}.player-workspace .screen-head h1{font-size:20px}.player-workspace .screen-head.row{flex-wrap:wrap;gap:8px}.player-workspace .sheet-layout,.player-workspace .dice-layout{display:block}.player-workspace .paper,.player-workspace .dice-panel{padding:12px}.player-workspace .resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-workspace .stats{gap:6px}.player-workspace .stat{padding:5px}.player-workspace .inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.player-workspace .dice-types{grid-template-columns:repeat(4,1fr);gap:5px;margin:14px 0}.player-workspace .dice-panel>.row{flex-wrap:wrap}.player-workspace .dice-history{display:none}.player-workspace .dice-result .big{font-size:48px}.player-workspace .expression{padding:16px;font-size:26px}.player-workspace .number-row{gap:8px}.player-workspace .sheet-layout>aside{margin-top:18px}}
@media(min-width:701px) and (max-width:1050px){.workspace.player-workspace:not(.maps-collapsed){grid-template-columns:300px minmax(0,1fr)}}
.present .workspace.player-workspace:not(.maps-collapsed){grid-template-columns:1fr}

.workspace.viewer-workspace{grid-template-columns:minmax(0,1fr) 250px}.viewer-workspace .map-stage{position:relative;min-width:0;overflow:hidden}.viewer-workspace #board{width:100%;height:100%;display:block}.viewer-workspace .rightbar{display:block;overflow:auto}@media(max-width:700px){.workspace.viewer-workspace{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(280px,1fr) 180px}.viewer-workspace .rightbar{padding:12px}.viewer-workspace .map-heading{max-width:90%}}

#share-character-label[hidden],#share-camera-label[hidden]{display:none!important}

.initiative-control{display:grid;gap:7px;padding:12px 0;border-bottom:1px solid var(--line);margin-bottom:12px}.initiative-control small{color:var(--muted)}

.sidebar-tabs{flex-wrap:wrap}.sidebar-tabs #creatures-tab{flex-basis:100%}.creature-card{padding:12px 0;border-bottom:1px solid var(--border)}.creature-card img{width:40px;height:40px;object-fit:contain}.creature-card strong{overflow-wrap:anywhere}.creature-card p{font-size:12px}.creature-card textarea{width:100%;box-sizing:border-box}.creature-card details{margin:12px 0}.creature-card .row{flex-wrap:wrap}.creature-defeated{filter:grayscale(1);opacity:.55}

.roster-heading{display:grid;gap:8px;margin:16px 0 8px}.roster-heading strong{font-size:13px}.roster-heading select{padding:6px}.roster-heading .rule{font-size:11px}.roster-card{padding:9px 0;border-bottom:1px solid #ffffff20}.roster-title{display:flex;gap:6px;align-items:center}.roster-title img{width:26px;height:26px}.roster-title strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.roster-hp{font-size:12px;font-variant-numeric:tabular-nums;color:#b9dba2}.roster-hp.defeated{color:#b0b0b0}.roster-meta,.roster-note,.roster-bottom,.roster-help{font-size:11px}.roster-meta{color:var(--muted);margin:3px 0}.roster-note{overflow-wrap:anywhere;line-height:1.4;cursor:help}.roster-bottom{display:flex;align-items:center;gap:5px;margin-top:5px}.roster-bottom span{flex:1;color:var(--muted)}.roster-bottom button{padding:3px 7px;font-size:11px;min-height:28px}#creature-inline-form{margin-top:10px;border-top:1px solid #ffffff20;padding-top:8px}#creature-inline-form input:not([type=checkbox]),#creature-inline-form textarea{width:100%;box-sizing:border-box;min-width:0}#creature-inline-form label{font-size:12px}.roster-numbers{display:grid;grid-template-columns:1fr 1fr;gap:8px}.roster-item{display:flex;align-items:center;gap:5px}.roster-item label{flex:1;display:flex;align-items:center;gap:5px}.roster-item button{padding:3px 7px}.roster-item input{width:auto!important}#creature-inline-form .row{flex-wrap:wrap}#inline-error{font-size:12px;color:#ffd09c}
.roster-portrait{padding:0;border:0;background:transparent;min-width:28px;min-height:28px;display:grid;place-items:center;flex-shrink:0}.roster-portrait:hover{background:#ffffff15}.roster-portrait:focus-visible{outline:2px solid #e8b25d}
.roster-visibility{display:flex;align-items:center;gap:5px;margin:4px 0;font-size:11px}.roster-visibility label{display:flex;align-items:center;gap:4px;margin:0;font-size:11px}.roster-visibility input{width:13px;height:13px;margin:0}.sight-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-left:5px;flex-shrink:0}.sight-never{background:#f06969}.sight-previous{background:#edc35e}.sight-current{background:#79d59a}.roster-visibility small{font-size:10px;color:var(--muted)}
.gm-section{border-bottom:1px solid var(--line);margin:8px 0}.gm-section>summary{cursor:pointer;padding:12px 0;font-weight:600;font-size:13px}.gm-section-body{padding:0 0 14px}.gm-section-body small{font-size:11px;color:var(--muted);line-height:1.5}.gm-section-body label{font-size:12px}.gm-brushes{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.gm-brushes button{font-size:11px;padding:8px}.gm-brushes button.active{border-color:var(--gold);background:#48523a}.gm-section-body input[type=range]{width:100%}
@media(min-width:701px) and (max-width:1050px){.workspace.gm-workspace{grid-template-columns:190px minmax(0,1fr) 250px}.workspace.gm-workspace.maps-collapsed{grid-template-columns:minmax(0,1fr) 250px}.gm-workspace>.rightbar{display:block;padding:16px 12px}.gm-workspace>.sidebar{padding:20px 12px}}
@media(max-width:700px){.gm-workspace.gm-panel-open>.rightbar{display:block;position:absolute;right:0;top:62px;bottom:66px;width:min(280px,78vw);z-index:12;box-shadow:-8px 0 30px #0006}.gm-workspace.gm-panel-open #turns-panel{position:relative;z-index:13}}
.gm-panel-close{display:none}@media(max-width:700px){.gm-panel-close{display:block;width:100%;margin-bottom:16px}}@media(min-width:701px){.gm-workspace #turns-panel{display:none}}
.turn-medallion{display:flex;align-items:center;flex-direction:column;gap:3px;flex-shrink:0}.turn-medallion .avatar{padding:0;font-size:10px;overflow:hidden;max-width:38px}.turn-medallion .avatar img{width:30px;height:30px;object-fit:contain}.token-edit{padding:1px 4px;font-size:10px;background:transparent;border:0;color:var(--gold)}.token-icon-preview{min-height:10px;text-align:center}#token-form select{width:100%}
.roster-item select{width:64px;padding:4px;font-size:11px}#creature-items select{width:80px}
.viewer-camera{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;gap:6px;background:#17231deb;border:1px solid var(--line);border-radius:9px;padding:5px;z-index:4}.viewer-camera button{padding:8px 12px}.viewer-camera output{font-size:12px;min-width:42px;text-align:center}.viewer-camera button:focus-visible{outline:2px solid var(--gold)}

/* Keep the active player turn action visible across map, sheet and dice screens. */
#player-turn-action{position:fixed;right:max(20px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));z-index:25}#player-turn-action:empty{display:none}#end-player-turn{min-height:48px;padding:13px 22px;font-size:16px;box-shadow:0 4px 20px #0008;border:2px solid var(--gold)}.player-workspace>.rightbar{padding-bottom:90px}body:has(#end-player-turn) .screen{padding-bottom:100px}@media(max-width:700px){#player-turn-action{right:12px;bottom:calc(78px + env(safe-area-inset-bottom))}.player-workspace .map-footer{bottom:72px}}
.player-workspace .map-footer{bottom:84px}@media(max-width:700px){.player-workspace .map-footer{bottom:72px}}
