/* Table workspace: original compact black-and-gold interface. */
body.tabletop-mode{--bg:#0b0b02;--sidebar:#0b0b02;--panel:#1b1708;--raised:#261e0b;--line:#493a08;--text:#ffedb3;--muted:#a98424;--faint:#79601c;--gold:#ffcf00;--gold-soft:#b38a20;--green:#25d45b;--accent:#312607;--input:#100e03;--serif:Arial,Helvetica,sans-serif;--sans:Arial,Helvetica,sans-serif;color-scheme:dark;font:12px/1.4 Arial,Helvetica,sans-serif;overflow:hidden}
.tabletop-mode #app,.game-shell{height:100dvh;overflow:hidden}.tabletop-mode .icon{width:13px;height:13px;stroke-width:1.6}.tabletop-mode h1,.tabletop-mode h2,.tabletop-mode h3{font-family:Arial,Helvetica,sans-serif;letter-spacing:0;font-size:12px;font-weight:600}.tabletop-mode input,.tabletop-mode textarea,.tabletop-mode select{font:12px/1.45 Arial,Helvetica,sans-serif;background:#241c0b;border:1px solid var(--line);border-radius:3px;padding:5px 7px;color:#ffedb3}.tabletop-mode textarea{resize:vertical;min-height:48px}.tabletop-mode input:focus,.tabletop-mode textarea:focus,.tabletop-mode select:focus{border-color:#b88a16!important;box-shadow:0 0 0 1px #b88a1633}.tabletop-mode ::placeholder{color:#896b20}.tabletop-mode button{font-family:Arial,Helvetica,sans-serif}.tabletop-mode .btn{font-size:11px;padding:5px 9px;gap:5px;border-radius:4px;min-height:26px;background:#352808;color:var(--gold);box-shadow:none}.tabletop-mode .btn.primary{background:#3e3009;border-color:#5f480b;color:#ffe28a}.tabletop-mode .btn:hover{background:#51400a;border-color:#88630f}.tabletop-mode .btn.small{font-size:10px;padding:3px 7px;min-height:22px}.tabletop-mode .btn .icon{width:12px;height:12px}.tabletop-mode .icon-btn{width:25px;height:23px;color:var(--muted);border-radius:3px}.tabletop-mode .icon-btn:hover{background:#322607;color:var(--gold)}.tabletop-mode .panel{padding:12px;border-radius:8px;background:var(--panel);border:1px solid var(--line)}.tabletop-mode .muted{color:var(--muted)}.tabletop-mode .positive{color:#2ae764}.tabletop-mode .negative{color:#f97b65}.tabletop-mode .eyebrow{font-size:9px;letter-spacing:.5px;color:var(--muted)}
.game-topbar{height:33px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 8px;border-bottom:1px solid var(--line);background:#100e03;white-space:nowrap;overflow:hidden}.game-breadcrumb{display:flex;align-items:center;gap:8px;min-width:0;font-size:11px}.game-breadcrumb a{color:var(--gold);font-weight:bold;display:flex;align-items:center;gap:5px}.game-breadcrumb>strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;color:#fff3c4}.game-breadcrumb>span{color:#8c6b19;font-size:10px}.game-breadcrumb>span:last-child{color:var(--gold);font-size:10px;overflow:hidden;text-overflow:ellipsis}.game-top-actions{display:flex;align-items:center;gap:5px;flex-shrink:0}.game-top-actions .invite-code{border-radius:4px;font:600 10px monospace;padding:4px 7px;gap:6px;letter-spacing:1px}.game-top-actions .invite-code .icon{width:10px;height:10px}.local-mode-tag{font-size:9px;color:#8e742d;border:1px solid #40340b;padding:2px 5px;border-radius:3px}.game-mobile-control{display:none!important}.tabletop-workspace{height:calc(100dvh - 33px);display:flex;min-width:0;min-height:0;overflow:hidden}.players-rail{flex:0 0 var(--players-width,22vw);width:var(--players-width,22vw);max-width:480px;min-width:180px;display:flex;flex-direction:column;background:#0b0b02;min-height:0}.rail-header{height:28px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:10px;font-weight:400;letter-spacing:.2px;padding:0 6px;border-bottom:1px solid var(--line);color:#ae8928}.rail-header .icon{width:11px;height:11px}.player-cards{padding:27px 5px 10px;overflow:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:#7d5005 #100d03}.player-card{display:flex;position:relative;gap:9px;margin-bottom:12px;border:1px solid #52410c;border-radius:9px;background:#1b1708;min-height:119px;padding:7px 6px 6px 0}.player-card.selected{border-color:#12d450}.player-portrait{width:75px;min-width:52px;flex:0 0 20%;height:94px;padding:0;align-self:flex-start;background:#0c0c02;border-radius:3px;overflow:hidden}.player-portrait img{width:100%;height:100%;object-fit:cover}.player-portrait>span{display:flex;align-items:center;justify-content:center;height:100%;color:#62521b}.player-portrait>span .icon{width:32px;height:32px;stroke-width:1}.player-summary{flex:1;min-width:0;padding-top:10px}.player-owner{position:absolute;right:7px;top:5px;font-size:9px;color:#9c7a20;max-width:45%;overflow:hidden;text-overflow:ellipsis}.player-name{display:block;font-size:12px;font-weight:700;padding:0;margin:4px 0;color:#fff4bc;text-align:left;overflow-wrap:anywhere}.player-name:hover{color:var(--gold)}.player-status{display:block;font-size:9px;font-style:italic;color:#a88420;padding:0;margin:3px 0 7px;text-align:left;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-resource{display:flex;align-items:center;gap:4px;position:relative;margin:6px 0}.player-resource>span{font-size:7px;color:#8e7728;width:12px}.resource-track{flex:1;background:#14552d;height:6px;border-radius:4px;overflow:hidden}.resource-track i{height:100%;background:#24c961;display:block;border-radius:4px}.player-resource.mp .resource-track{background:#273f6b}.player-resource.mp i{background:#3d82ff}.player-resource b{font-size:10px;color:#25d45b;font-weight:600;text-align:right;min-width:32px}.player-resource.mp b{color:#76b3ff}.resource-step{position:absolute;right:0;top:-1px;display:none;background:#211905;gap:2px}.player-resource:hover .resource-step,.player-resource:focus-within .resource-step{display:flex}.resource-step button{width:19px;height:18px;padding:0;border:1px solid var(--line);border-radius:2px;color:var(--gold);font-size:13px}.player-card-foot{display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:12px}.membership-dot{position:absolute;bottom:7px;left:6px;width:5px;height:5px;border-radius:50%;background:#4be889}.companion-button{font-size:9px;border:1px solid var(--line);color:#b18a28;padding:2px 5px;border-radius:5px}.companion-button .icon{width:10px;height:10px}.new-player{width:100%;font-size:10px!important;background:transparent!important;opacity:.75}.new-player:hover{opacity:1}.member-without-sheet{display:flex;align-items:center;gap:8px;color:#c9a33d;font-size:10px;padding:8px 7px;margin-bottom:8px}.member-without-sheet small{display:block;color:#7c692b;font-size:9px}.rail-initiative{margin-top:auto;border-top:1px solid var(--line);flex-shrink:0}.rail-initiative>.rail-header{border-bottom:0}.rail-turns{padding:6px;max-height:220px;overflow:auto}.rail-turns>button:not(.btn){display:flex;justify-content:space-between;width:100%;text-align:left;font-size:10px;color:#b3984d;padding:6px}.rail-turns>button.current{background:#332805;color:var(--gold)}.rail-turns p{font-size:10px;color:#8d7429;margin:8px}.rail-turns .btn{width:100%;margin-top:6px}.side-divider{flex:0 0 4px;background:#332b06;cursor:col-resize;position:relative;z-index:3;touch-action:none}.side-divider:hover,.side-divider:focus{background:#ba8d11;outline:none}.resizing-dock{user-select:none!important;cursor:move!important}.resizing-dock iframe{pointer-events:none}
.dock-root{flex:1;min-width:0;min-height:0;display:flex;position:relative;background:#0f0d02}.dock-panel{display:flex;flex-direction:column;min-width:0;min-height:0;flex:1;position:relative;overflow:hidden}.dock-bar{height:30px;min-height:30px;display:flex;border-bottom:1px solid var(--line);background:#100e03}.dock-tabs{display:flex;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#5c460e transparent}.dock-tab-wrap{display:flex;position:relative;flex-shrink:0}.dock-tab-wrap.active{color:var(--gold);background:#1b1605}.dock-tab-wrap.active:after{content:'';position:absolute;bottom:0;height:2px;background:#bf8400;left:0;right:0}.dock-tab{display:flex;align-items:center;gap:5px;font-size:10px;white-space:nowrap;padding:0 10px;color:#a8862d;cursor:grab;min-height:28px}.dock-tab:active{cursor:grabbing}.dock-tab-wrap.active .dock-tab{color:var(--gold);font-weight:600}.dock-tab .icon{width:12px;height:12px}.dock-close{width:20px;font-size:15px;color:#9d7814;padding:0 4px}.dock-close:hover{color:#ffdb25;background:#352307}.dock-arrange{flex:0 0 24px;color:#ac8624;font-size:20px;padding:0;border-left:1px solid #2a2307}.dock-arrange:hover{background:#3b2a07;color:var(--gold)}.dock-scroll{flex:1;min-height:0;min-width:0;overflow:auto;padding:12px 10px;outline:none;scrollbar-width:thin;scrollbar-color:#a96703 #161103}.dock-scroll:focus-visible{box-shadow:inset 0 0 0 1px #836014}.dock-split{display:flex;flex:1;min-height:0;min-width:0;overflow:hidden}.dock-split.dock-row{flex-direction:row}.dock-split.dock-column{flex-direction:column}.dock-branch{display:flex;min-height:0;min-width:0;overflow:hidden}.dock-divider{flex:0 0 5px;background:#3b2d05;position:relative;z-index:3;touch-action:none}.dock-row>.dock-divider{cursor:col-resize}.dock-column>.dock-divider{cursor:row-resize}.dock-divider:hover,.dock-divider:focus{background:#ac7e05;outline:none}.dock-drop-preview{position:absolute;inset:31px 2px 2px;z-index:10;pointer-events:none;display:none;border:2px solid #d7a70e;background:#c99a142b;align-items:center;justify-content:center}.dock-drop-preview span{background:#2b2208e8;border:1px solid #a57e17;border-radius:4px;color:#ffe076;padding:7px 12px;font-size:11px}.dock-panel[data-drop-edge]>.dock-drop-preview{display:flex}.dock-panel[data-drop-edge=left]>.dock-drop-preview{right:50%}.dock-panel[data-drop-edge=right]>.dock-drop-preview{left:50%}.dock-panel[data-drop-edge=top]>.dock-drop-preview{bottom:50%}.dock-panel[data-drop-edge=bottom]>.dock-drop-preview{top:50%}.dock-dragging .dock-scroll{pointer-events:none}.dock-dragging .dock-bar{pointer-events:auto}
.tabletop-mode .chat-panel{flex:0 0 var(--chat-width,22vw);width:var(--chat-width,22vw);max-width:500px;min-width:220px;display:flex;position:relative;top:auto;right:auto;bottom:auto;min-height:0;max-height:none;height:100%;border:0;border-radius:0;box-shadow:none;background:#0b0b02}.tabletop-mode .chat-heading{height:29px;padding:0 7px;min-height:29px;flex-shrink:0}.tabletop-mode .chat-heading h2{font:600 10px Arial;color:#fff3bb}.tabletop-mode .chat-heading>span{font-size:8px;border:0}.tabletop-mode .chat-heading .icon{width:11px;height:11px;color:#d3b6fb}.tabletop-mode .chat-log{min-height:0;padding:9px 8px}.tabletop-mode .chat-welcome{margin:32px 12px}.tabletop-mode .chat-welcome h3{font:400 12px Arial;color:#a68527}.tabletop-mode .chat-welcome p{font-size:10px;color:#736023}.tabletop-mode .chat-message{margin-bottom:14px}.tabletop-mode .chat-message>div{flex-wrap:wrap}.tabletop-mode .chat-message strong{font-size:10px;color:var(--gold)}.tabletop-mode .chat-message time{font-size:8px;color:#9a7820}.tabletop-mode .chat-message p,.tabletop-mode .chat-message.own p{display:table;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#211b09;font-size:11px;line-height:1.5;margin-top:4px;max-width:100%;color:#ffedb3}.tabletop-mode .chat-panel form{padding:7px 8px 8px;background:#100e03}.tabletop-mode .recipient{margin-bottom:6px}.tabletop-mode .recipient select{font-size:9px;color:#d7ac2b;padding:2px;background:none;border:0}.tabletop-mode .chat-compose{align-items:center;background:#171304;border:1px solid var(--line);border-radius:5px}.tabletop-mode .chat-compose textarea{font-size:11px;min-height:32px;height:34px;padding:8px 5px;background:transparent;border:0;resize:vertical;color:#ffedb3}.tabletop-mode .chat-compose .icon-btn{width:23px;height:25px;margin:0 3px}.tabletop-mode .chat-panel form>small{display:none}.tabletop-mode .ambience{padding:5px 8px}.tabletop-mode .ambience audio{height:24px}.tabletop-mode .chat-image{max-width:210px;max-height:280px;border:1px solid var(--line)}
.tabletop-mode .dice-panel{padding:10px;border-radius:8px}.custom-rolls{font-size:10px;color:#ac841c;border:1px solid var(--line);border-radius:4px;background:#0e0d02}.custom-rolls summary{padding:4px 7px;cursor:pointer;list-style:none;display:flex;align-items:center;gap:5px}.custom-rolls summary:after{content:'⌄';margin-left:auto}.custom-rolls>div{display:flex;gap:5px;flex-wrap:wrap;padding:8px;border-top:1px solid var(--line)}.custom-rolls .btn span{font:9px monospace;color:#b39648}.tabletop-mode .dice-tray{display:flex;justify-content:center;gap:5px;margin:0;padding:8px 0 10px;max-width:none}.tabletop-mode .die{flex:0 0 42px;gap:0;padding:0}.tabletop-mode .die-shape{width:42px;height:43px;color:#51400b}.tabletop-mode .die-shape svg{fill:#382b07;stroke:none}.tabletop-mode .die-shape b{font:600 10px Arial;color:#fff1bc;padding-top:0}.tabletop-mode .die-4 b{padding-top:14px}.tabletop-mode .die:hover .die-shape{transform:translateY(-2px)}.tabletop-mode .die.chosen svg{fill:#725207;stroke:#d0a72b;stroke-width:1}.tabletop-mode .die-count{width:13px;height:13px;font-size:8px;right:0;top:0;background:#d39700;color:#170f00}.tabletop-mode .roll-expression{padding-left:0;height:31px;background:#100f03;gap:3px;border-color:var(--line);border-radius:5px}.tabletop-mode .roll-expression input{border:0;background:none;padding:5px 9px;font:11px monospace;box-shadow:none;color:#e6c34e}.tabletop-mode .roll-expression .icon-btn{height:24px;width:22px}.tabletop-mode .roll-form-bottom{display:flex;flex-wrap:nowrap;gap:6px;margin-top:8px}.tabletop-mode .roll-form-bottom>input{font-size:11px;min-width:0;padding:5px 7px;flex:1;background:#100e03;width:auto}.tabletop-mode .roll-form-bottom>.roll-bonus{flex:0 0 51px;width:51px;text-align:center;font:10px monospace;appearance:textfield}.tabletop-mode .roll-bonus::-webkit-inner-spin-button{appearance:none}.tabletop-mode .roll-form-bottom .btn{padding:4px 12px;width:auto;font-size:12px;min-width:80px;min-height:29px;background:#392b0a;color:#ffe18a}.tabletop-mode .roll-form-bottom .btn .icon{display:block;width:14px;height:14px}.tabletop-mode .check-row{font-size:9px;margin-top:9px;gap:5px;color:#a38229}.tabletop-mode .check-row>input{width:11px;height:11px;padding:0;margin:0;accent-color:#d6a406}.tabletop-mode .check-row>.icon{width:10px;height:10px}.tabletop-mode .check-row>span{display:flex;align-items:center;gap:5px;font-size:9px;color:#8f7429;margin-left:auto}.history-panel{border:1px solid var(--line);border-radius:7px;margin-top:10px;background:#171305;overflow:hidden}.tabletop-mode .history-heading{padding:6px 12px;border-bottom:1px solid var(--line);margin:0}.tabletop-mode .history-heading h2{font:400 10px Arial;letter-spacing:.2px;color:#a27d1e}.tabletop-mode .history-heading>span{font-size:9px;color:#a58225}.tabletop-mode .roll-history{padding:10px;gap:7px}.tabletop-mode .roll-card{position:relative;padding:12px 10px;gap:6px;min-height:87px;background:#281f0e;border-color:#493907;border-radius:7px;animation:none}.tabletop-mode .roll-card.high-roll{border-color:#25b93a}.tabletop-mode .roll-card>.avatar{width:18px;height:18px;display:flex;font-size:8px;border:1px solid #70551f;background:#30220d}.tabletop-mode .roll-details{padding-right:50px}.tabletop-mode .roll-details>div:first-child{gap:5px;flex-wrap:wrap}.tabletop-mode .roll-details strong{font-size:10px;color:var(--gold);font-weight:600}.tabletop-mode .roll-details time{position:absolute;right:10px;top:11px;font-size:8px;color:#9d7c20}.tabletop-mode .roll-details p{font-size:10px;font-style:italic;line-height:1.4;color:#fff0ad;margin:3px 0}.tabletop-mode .roll-formula{font:9px monospace;color:#aa7e21}.tabletop-mode .roll-results{gap:5px;margin-top:5px}.tabletop-mode .roll-results>span{padding:2px 4px;border:1px solid #54400a;border-radius:3px;background:#100d02;font:9px monospace;color:#c8a135}.tabletop-mode .roll-results b{font-size:10px;margin-left:5px;color:#ffe46f}.tabletop-mode .roll-total{position:absolute;right:10px;bottom:10px;border:0;padding:0;min-width:40px}.tabletop-mode .roll-total small{font:8px Arial;letter-spacing:0;color:#a38227}.tabletop-mode .roll-total strong{font:bold 20px/1.25 Arial;background:#60349c;border:1px solid #b78b18;border-radius:5px;min-width:40px;padding:0 5px;color:white;display:block}.tabletop-mode .high-roll .roll-total strong{background:#e0a500;border-color:#1fe852}.tabletop-mode .empty{padding:30px 14px}.tabletop-mode .empty h3{font:400 12px Arial}.tabletop-mode .empty p{font-size:10px}.tabletop-mode .empty-icon{height:35px;width:35px;border-color:#51400d;margin-bottom:12px}.tabletop-mode .empty-icon .icon{width:18px;height:18px}.tabletop-mode .tag{font-size:8px;padding:2px 5px;border-color:var(--line);background:#2b2108;color:#cca43d}
.tabletop-mode .section-title{margin:0 0 10px;gap:7px}.tabletop-mode .section-title h2,.tabletop-mode .panel-heading h2{font-size:12px;color:#ffe582}.tabletop-mode .section-title>.muted,.tabletop-mode .section-title p{font-size:10px}.tabletop-mode .panel-heading{margin-bottom:10px}.tabletop-mode .character-select select{font-size:10px;padding:4px 6px}.tabletop-mode .character-header{padding:10px 12px;gap:9px;display:flex;flex-wrap:nowrap;margin-bottom:8px;border-radius:8px}.tabletop-mode .character-avatar{width:30px;height:30px;font-size:12px;border-color:#b37f00;flex:0 0 30px}.tabletop-mode .character-identity h2{font-size:14px;color:#ffe77e;margin:0}.tabletop-mode .character-identity .eyebrow{font-size:9px;letter-spacing:0}.tabletop-mode .character-identity p{font-size:9px;color:#9e7a1d;margin:2px 0}.tabletop-mode .character-actions{margin-left:auto;width:auto;align-self:center;flex-wrap:nowrap;gap:5px}.tabletop-mode .character-actions .btn{font-size:9px;padding:3px 6px}.tabletop-mode .portrait-edit{padding:2px;bottom:-3px;right:-3px}.tabletop-mode .portrait-edit .icon{width:8px;height:8px}.sheet-tabs-bar{display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--line);margin:-12px -10px 12px;padding:0 9px;height:30px;flex-shrink:0}.tabletop-mode .sheet-tabs{display:flex;gap:17px;flex:1;margin:0;border:0;min-width:0;overflow-x:auto;height:100%;align-items:stretch}.tabletop-mode .sheet-tabs button{font-size:10px;color:#ae8622;padding:6px 0;white-space:nowrap}.tabletop-mode .sheet-tabs button.active{color:#ffdf24;font-weight:600}.sheet-save-status{white-space:nowrap;font-size:9px;color:#b59338;display:flex;align-items:center;gap:4px;padding-left:8px}.sheet-save-status[data-status=error]{color:#ff9b78}.sheet-save-status .icon{width:10px;height:10px}.sheet-toolbar{display:flex;align-items:center;gap:4px}.tabletop-mode .sheet-protections{margin-bottom:12px;padding:12px}.protection-legend{font-size:9px;line-height:1.6;color:#6f5618;margin-bottom:9px}.protection-legend strong{color:var(--gold);margin-right:7px}.protection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.protection-box{border:1px solid var(--line);border-radius:9px;text-align:center;padding:10px 9px;background:#191504}.protection-box>span{display:block;color:#ffd900;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.4px}.protection-box>strong{display:block;font:bold 21px Arial;color:#ffe79b;margin:6px 0 10px}.protection-inputs{display:flex;gap:7px}.protection-inputs label{flex:1;font-size:8px;color:#8c7023;text-align:center;min-width:0}.protection-inputs input{font:bold 10px monospace!important;width:100%;height:20px;text-align:center;background:#2a220e!important;color:#fff1ab!important;padding:2px!important}.tabletop-mode .attributes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tabletop-mode .attribute-group{padding:11px}.tabletop-mode .attribute-group h3{font:400 10px Arial;letter-spacing:.5px;color:#a47f22;text-transform:uppercase;margin-bottom:8px}.tabletop-mode .attribute-row{padding:5px 0;gap:5px}.tabletop-mode .attribute-name{display:flex;gap:12px;align-items:center;flex:1;min-width:0}.tabletop-mode .attribute-name strong{font:400 11px Arial;min-width:65px;color:#fff0b3}.tabletop-mode .attribute-name span{font:600 9px Arial;color:#ffd43b;margin:0}.tabletop-mode .attribute-row>div{gap:6px}.tabletop-mode .stepper{height:20px;width:20px;border:1px solid #4c3907;border-radius:3px;font-size:12px;padding:0}.tabletop-mode .attribute-value{font-size:11px;min-width:20px}.tabletop-mode .skill-row{padding:7px 0;border:0;font-size:11px;color:#fff0b3}.tabletop-mode .stars{gap:2px}.tabletop-mode .stars button{font-size:15px;min-width:14px;color:#51400e}.tabletop-mode .stars button.on{color:#ffcb00}.tabletop-mode .help-text{font-size:9px;margin:9px 0;color:#846821}.tabletop-mode .combat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.tabletop-mode .ability-basic{padding:14px 8px;background:#0b0b02;border:1px solid var(--line);border-radius:6px}.tabletop-mode .ability-basic>span{font-size:9px;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.tabletop-mode .ability-basic>b{font:bold 18px Arial;color:#ffd934}.tabletop-mode .ability-basic>.icon{display:none}.tabletop-mode .ability-card{margin-bottom:8px;padding:10px}.tabletop-mode .ability-card h3{font:600 12px Arial}.tabletop-mode .ability-card p{font-size:11px;line-height:1.5}.tabletop-mode .panel+.section-title{margin-top:12px}.tabletop-mode .plain-text{font:11px/1.8 Arial;margin-top:6px}.tabletop-mode .map-controls{flex-direction:row;padding:9px 10px;gap:8px;margin-bottom:8px}.tabletop-mode .map-controls h2{font-size:12px}.tabletop-mode .map-controls .eyebrow{font-size:8px}.tabletop-mode .map-buttons{width:auto}.tabletop-mode .map-buttons .btn{font-size:9px;padding:3px 5px;flex:0 1 auto}.tabletop-mode .map-board{aspect-ratio:1.35;min-height:240px}.tabletop-mode .map-footer p{font-size:9px}.tabletop-mode .initiative-top{padding:10px;margin-bottom:10px}.tabletop-mode .initiative-top h2{font:bold 18px Arial}.tabletop-mode .initiative-entry{padding:10px;gap:10px}.tabletop-mode .initiative-entry h3{font:600 12px Arial}.tabletop-mode .initiative-entry>strong{font:bold 20px Arial}.tabletop-mode .initiative-top>div:last-child{flex-direction:row}.tabletop-mode .library-inside .page-heading{margin-bottom:16px}.tabletop-mode .library-inside .page-heading h1{font:bold 16px Arial}.tabletop-mode .library-card{padding:14px;min-height:200px}.tabletop-mode .library-card h2{font:bold 13px Arial}.tabletop-mode .library-grid{gap:10px}.tabletop-mode .library-book{margin-bottom:12px}.tabletop-mode .handout-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tabletop-mode .handout h2{font:bold 13px Arial}.tabletop-mode .mind-node h3{font:bold 13px Arial}.tabletop-mode .mind-board{background-color:#0b0b02}.tabletop-mode dialog{background:#1b1708;border-color:#6e4d0b;font-size:12px}.tabletop-mode .modal-head h2{font:bold 17px Arial}.tabletop-mode .modal-head .eyebrow{font-size:9px}.tabletop-mode .field{gap:5px;margin:11px 0}.tabletop-mode .field>span{font-size:10px}.tabletop-mode .modal-foot{padding-top:14px;margin-top:16px}.tabletop-mode .modal-foot .btn{padding:7px 12px;font-size:11px}.tabletop-mode .toast{background:#2b230c;color:#fff0b3;border-color:#87670d;font-size:11px}
.sheet-details{margin-bottom:10px}.identity-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 10px;margin-top:12px}.sheet-inline-field{display:flex;flex-direction:column;gap:5px;min-width:0}.sheet-inline-field>span{font-size:10px;letter-spacing:.3px;color:#ffd430}.sheet-inline-field input,.sheet-inline-field textarea{width:100%;font-size:11px!important;color:#ffefb3!important;background:#291f0d!important;border-color:#4d3908!important}.sheet-inline-field textarea{line-height:1.7!important;min-height:44px}.identity-texts{display:flex;flex-direction:column;gap:7px;margin-top:10px}.identity-toggle{margin-left:auto;color:#aa8320;font-size:10px;white-space:nowrap}.sheet-name-input{font:bold 13px Arial!important;background:transparent!important;border:0!important;padding:0!important;max-width:100%;width:100%;color:#ffe995!important}.inventory-form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.inventory-form .wide{grid-column:span 2}.inventory-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.inventory-top h2{color:#fff0a3}.inventory-gold{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--gold)}.inventory-gold input{width:76px;font-size:11px!important}.inventory-form textarea{min-height:48px}.inventory-form .wide textarea{min-height:44px}.advantage-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.advantage-form textarea{min-height:230px}.notes-inline{min-height:220px!important;line-height:1.8!important}.inline-status-row{display:flex;gap:8px;justify-content:flex-end;margin:5px 0}.legacy-attributes{border:1px solid var(--line);border-radius:8px;background:var(--panel);padding:12px}.legacy-attributes .attribute-group{background:none;border:0;border-radius:0;padding:6px 0}.legacy-attributes>.attributes-grid{gap:12px 20px;margin:5px 0}.attribute-cost{font-size:9px;color:#735b1f}.attributes-caption{display:flex;justify-content:space-between;gap:10px;font-size:10px;color:#ac8624;margin-bottom:10px}.attributes-caption strong{color:#ffe381}.tabletop-mode .retry-save{font-size:9px;color:#ffb387;text-decoration:underline}.save-error-note{padding:7px 9px;background:#4c210c;border:1px solid #874519;border-radius:4px;font-size:10px;color:#ffc4a7;margin-bottom:8px}.ability-editor{display:grid;grid-template-columns:1fr 100px 100px;gap:8px}.ability-editor textarea{grid-column:1/-1}.ability-edit-row{display:flex;justify-content:space-between;align-items:center;gap:7px}.compact-ledger{margin-top:12px;font-size:11px}.compact-ledger summary{cursor:pointer;color:var(--gold);padding:7px}.tabletop-mode .ledger{padding:8px;background:none}.tabletop-mode .ledger>div{font-size:10px;padding:5px 0}
@media(max-width:1050px){.players-rail{flex-basis:var(--players-width,210px);width:var(--players-width,210px)}.tabletop-mode .chat-panel{flex-basis:var(--chat-width,240px);width:var(--chat-width,240px)}.game-breadcrumb>span:last-child{display:none}.dock-tab{font-size:9px;padding:0 7px}.tabletop-mode .attribute-row{flex-wrap:wrap}.tabletop-mode .attribute-name{min-width:95px}.tabletop-mode .sheet-tabs{gap:12px}.tabletop-mode .protection-grid{gap:6px}.tabletop-mode .protection-box{padding:8px 6px}.tabletop-mode .check-row>span{display:none}.tabletop-mode .combat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tabletop-mode .map-controls{flex-direction:column;align-items:flex-start}.identity-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.game-topbar{height:38px;padding:0 5px;gap:4px}.tabletop-workspace{height:calc(100dvh - 38px)}.game-breadcrumb{gap:5px}.game-breadcrumb>strong{font-size:11px;max-width:140px}.game-top-actions{gap:1px}.game-top-actions .invite-code{font-size:9px;padding:3px 5px}.game-top-actions .invite-code .icon{display:none}.game-mobile-control{display:flex!important}.game-top-actions .icon-btn{width:24px}.local-mode-tag{font-size:8px}.players-rail{display:none;position:absolute;top:38px;bottom:0;left:0;width:min(85vw,320px)!important;max-width:none;z-index:30;box-shadow:15px 0 35px #000b;border-right:1px solid #92700b}.players-rail.open{display:flex}.tabletop-mode .chat-panel{display:none;position:absolute;top:38px;right:0;bottom:0;width:min(88vw,340px)!important;max-width:none;height:auto;z-index:31;border-left:1px solid #92700b;box-shadow:-15px 0 35px #000b}.tabletop-mode .chat-panel.open{display:flex}.side-divider{display:none}.dock-scroll{padding:10px 7px}.dock-bar{height:31px;min-height:31px}.dock-tab{font-size:10px;padding:0 9px}.tabletop-mode .sheet-tabs{gap:15px}.sheet-tabs-bar{margin:-10px -7px 10px;padding:0 7px}.sheet-toolbar .icon-btn{width:21px}.sheet-save-status{font-size:8px;padding-left:2px}.tabletop-mode .protection-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.tabletop-mode .protection-box{padding:8px 5px}.protection-box>span{font-size:8px}.protection-box>strong{font-size:18px}.protection-inputs{gap:3px}.protection-inputs label{font-size:7px}.tabletop-mode .attributes-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tabletop-mode .attribute-name{display:block;min-width:70px}.tabletop-mode .attribute-name strong{font-size:10px;min-width:0}.tabletop-mode .attribute-name span{font-size:8px;margin-top:2px}.tabletop-mode .attribute-row{flex-wrap:wrap;gap:4px}.tabletop-mode .attribute-row>div{margin-left:auto;gap:4px}.tabletop-mode .stepper{height:23px;width:23px}.tabletop-mode .skill-row{flex-wrap:wrap;gap:5px}.tabletop-mode .stars button{font-size:17px;min-width:18px}.identity-fields{gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.tabletop-mode .player-cards{padding-top:18px}.tabletop-mode .roll-form-bottom>.roll-bonus{flex-basis:42px;width:42px}.tabletop-mode .roll-form-bottom .btn{min-width:62px;padding:4px 7px}.tabletop-mode .roll-form-bottom>input{font-size:10px}.tabletop-mode .die{flex-basis:38px}.tabletop-mode .die-shape{width:38px;height:40px}.tabletop-mode .die-shape b{font-size:9px}.tabletop-mode .handout-grid{grid-template-columns:1fr}.tabletop-mode .character-actions .btn{font-size:8px;padding:3px 5px}.tabletop-mode .character-identity h2{font-size:12px}.tabletop-mode .history-heading{padding:6px 8px}.tabletop-mode .roll-history{padding:7px}.tabletop-mode .roll-details{padding-right:38px}.tabletop-mode .roll-total{right:7px}.tabletop-mode .sheet-protections{padding:9px}.tabletop-mode .advantage-form{gap:8px}.tabletop-mode .advantage-form textarea{min-height:200px}.tabletop-mode .combat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tabletop-mode .sheet-details{padding:0 12px}.tabletop-mode .sheet-details>.character-header{padding:10px 0;margin:0;border:0;background:none}.sheet-details .identity-fields,.sheet-details .identity-texts{padding-bottom:10px}.tabletop-mode .sheet-inline-field .sheet-name-input{background:transparent!important;border:0!important;box-shadow:none!important}.sheet-directory{display:flex;flex-direction:column;gap:8px}.sheet-directory-row{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:7px;background:var(--panel);text-align:left}.sheet-directory-row>span:nth-child(2){flex:1}.sheet-directory-row strong{font-size:12px;color:var(--gold)}.sheet-directory-row small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.sheet-directory-row>span:last-child{font-size:10px;color:var(--muted)}
.tabletop-mode .legacy-attributes>.attributes-grid{row-gap:4px;align-items:start}.legacy-attributes>.attributes-grid>.attribute-group:nth-child(4){grid-column:2;grid-row:2 / span 2}
.tabletop-mode .attribute-group h3{display:flex;align-items:center;gap:7px}.attribute-group-total{display:inline-flex;align-items:center;justify-content:center;min-width:20px;padding:1px 5px;border:1px solid #59420a;border-radius:3px;color:#ffdb51;background:#292006;font:bold 11px/1.2 Arial;letter-spacing:0}

/* Calculation details stay out of the sheet flow. */
.protection-box{position:relative}
.protection-name{cursor:help;outline-offset:3px}
.protection-box .protection-tooltip{display:none;position:absolute;top:32px;left:6px;right:6px;z-index:30;padding:9px;border:1px solid #98751b;border-radius:4px;background:#171304;color:#ffe68a;font:12px/1.5 Arial;text-transform:none;letter-spacing:0;white-space:normal;box-shadow:0 4px 14px #000b;pointer-events:none}
.protection-name:hover .protection-tooltip,.protection-name:focus .protection-tooltip{display:block}
