@import"https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@700;900&display=swap";:root{--bg: #0a0d12;--bg-2: #171410;--panel: #1b1713;--panel-soft: #241d1a;--panel-alt: #2a211d;--border: rgba(191, 154, 76, .38);--text: #f4ebd5;--muted: #d1c0a4;--primary: #8e6b3d;--primary-soft: rgba(143, 109, 61, .18);--violet: #aa7e52;--gold: #e5c77d;--success: #8aa86b;--danger: #ba5e4d;--shadow: 0 30px 70px rgba(10, 8, 6, .75)}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;min-height:100vh;font-family:Inter,Segoe UI,sans-serif;background:radial-gradient(circle at top,rgba(139,92,246,.18),transparent 30%),radial-gradient(circle at bottom right,rgba(244,201,93,.07),transparent 25%),linear-gradient(135deg,var(--bg) 0%,var(--bg-2) 100%);color:var(--text)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.24;background:linear-gradient(#5a3a1b1f,#5a3a1b1f),radial-gradient(circle at 20% 20%,rgba(229,199,125,.12) 0 1px,transparent 1px 100%),radial-gradient(circle at 70% 30%,rgba(143,109,61,.1) 0 1px,transparent 1px 100%);background-size:auto,26px 26px,32px 32px;mix-blend-mode:screen}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(120deg,transparent 0 46%,rgba(229,199,125,.08) 48%,transparent 50%),linear-gradient(30deg,transparent 0 48%,rgba(229,199,125,.06) 50%,transparent 52%);opacity:.6}.panel:before,.sheet-shell:before,.character-card:before,.ability-box:before,.status-box:before,.save-card:before,.attack-card:before{content:"✦ ✧ ✦";position:absolute;left:18px;right:18px;top:8px;text-align:center;letter-spacing:.8rem;color:#e5c77d47;font-size:.58rem}.panel,.sheet-shell,.character-card,.ability-box,.status-box,.save-card,.attack-card{position:relative;overflow:hidden}.panel:after,.sheet-shell:after,.character-card:after,.ability-box:after,.status-box:after,.save-card:after,.attack-card:after{content:"✦";position:absolute;top:10px;bottom:10px;right:12px;width:1px;display:flex;align-items:center;justify-content:center;color:#e5c77d3d;writing-mode:vertical-rl;letter-spacing:.28rem;font-size:.72rem}button,select,textarea,input{font:inherit}button{position:relative;overflow:hidden;border:1px solid rgba(229,199,125,.5);border-radius:9px 9px 7px 7px;background:linear-gradient(135deg,#53301feb,#191210fa),repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 1px,transparent 1px 7px);color:#ffe8b0;letter-spacing:.025em;cursor:pointer;transition:transform .15s ease,opacity .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease;box-shadow:inset 0 1px #ffffff1f,inset 0 -2px #0000004d,0 8px 16px #0000003d}button:hover{transform:translateY(-1px);opacity:.98;border-color:#ffdd91e6;background:linear-gradient(135deg,#7e3e2bfa,#2e1816fa),repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 7px);box-shadow:inset 0 1px #ffffff2e,inset 0 -2px #00000038,0 12px 20px #0000004d,0 0 16px #e5c77d24}button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:12px;background:#0f172acc;color:var(--text);padding:10px 12px}textarea{resize:vertical}.app-shell{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);min-height:100vh;gap:16px;padding:24px}.app-header{width:100%;padding:10px 14px 12px;border:2px solid rgba(229,199,125,.52);border-radius:20px;background:linear-gradient(135deg,#2a1814fa,#120e0df5),repeating-linear-gradient(90deg,rgba(255,255,255,.02) 0 1px,transparent 1px 9px);box-shadow:inset 0 0 0 1px #ffffff0d,inset 0 0 24px #e5c77d0f,0 18px 34px #0c080561}.app-header .brand-block{border-bottom:0;background:transparent;box-shadow:none}.app-columns{display:grid;grid-template-columns:minmax(0,1fr);min-width:0;gap:24px}.app-columns.without-sidebar{grid-template-columns:minmax(0,1fr)}.content-first .app-columns{grid-template-areas:"main" "sidebar"}.content-first .sidebar{grid-area:sidebar}.content-first .main-content{grid-area:main}.workspace-navigation{display:grid;gap:12px;min-width:0}.sidebar,.panel{background:linear-gradient(180deg,#201a15fa,#130f0df5),repeating-linear-gradient(0deg,rgba(255,255,255,.01),rgba(255,255,255,.01) 1px,transparent 1px,transparent 3px);border:2px solid rgba(229,199,125,.52);border-radius:20px;box-shadow:inset 0 0 0 1px #ffffff0d,inset 0 0 18px #e5c77d0a,inset 0 2px #ffffff08,inset 0 -2px #5e4b243d,0 18px 34px #0c080573}.sidebar{padding:22px;display:flex;flex-direction:column;gap:20px;color:var(--text)}.sidebar .eyebrow,.sidebar .small-eyebrow,.sidebar .field-label,.sidebar label,.sidebar .member-button span,.sidebar .section-header span,.sidebar .section-header small{color:#dccbabe0}.sidebar input,.sidebar textarea,.sidebar select{background:linear-gradient(180deg,#181310e6,#120f0df5);border-color:#e5c77d47;color:#f9f1df;box-shadow:inset 0 1px #ffffff0a}.sidebar input::placeholder,.sidebar textarea::placeholder{color:#e6d8be94}.sidebar .member-button,.sidebar .member-button strong,.sidebar .section-header h3,.sidebar .section-header h4,.sidebar h2,.sidebar h3,.sidebar h4{color:#f5ebd7}.brand-block{display:flex;position:relative;gap:12px;align-items:center;padding:8px 4px 14px;overflow:hidden;border-bottom:1px solid rgba(229,199,125,.34);background:radial-gradient(circle at 18% 45%,rgba(166,52,44,.2),transparent 34%),linear-gradient(135deg,#42231999,#120f0e3d);box-shadow:0 12px 26px #00000029,inset 0 1px #ffffff0a}.brand-block:after{content:"✦  ✧  ✦";position:absolute;right:8px;bottom:4px;color:#e5c77d6b;font-size:.62rem;letter-spacing:.28em}.brand-emblem{display:grid;flex:0 0 58px;place-items:center;width:58px;height:58px;padding:4px;border:1px solid rgba(229,199,125,.82);border-radius:16px 16px 20px 20px;background:linear-gradient(145deg,#1a1411fa,#5b261fb8);box-shadow:0 0 0 3px #7e4e2a2e,0 0 24px #ca5b3f33,inset 0 1px #ffffff21}.brand-emblem img{display:block;width:100%;height:100%;filter:drop-shadow(0 3px 5px rgba(0,0,0,.36))}.brand-copy{min-width:0;padding-top:2px}.brand-block .eyebrow{margin:0;color:#ffe0a6;font-size:1rem;font-weight:800;letter-spacing:.1em;text-shadow:0 2px 14px rgba(229,199,125,.28)}.brand-block .eyebrow:before{content:"✦";margin-right:8px;color:var(--gold);font-size:.78em}.brand-mark{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-weight:800;background:linear-gradient(135deg,#382d23fa,#16120feb);border:1px solid rgba(229,199,125,.7);box-shadow:0 0 18px #e5c77d1f,inset 0 1px #ffffff0f}.eyebrow{margin:0 0 8px;color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.brand-block h1,.topbar h2,.hero-grid h3,.character-card h3,.sheet-header h3,.panel h2,.panel h3,.sheet-block h4{margin:0}.brand-block h1{color:#ffe7ad;font-family:Cinzel Decorative,Copperplate Gothic Bold,Book Antiqua,Georgia,serif;font-size:1.26rem;font-weight:900;letter-spacing:.055em;line-height:1.05;text-transform:uppercase;text-shadow:0 2px 0 rgba(43,20,14,.7),0 0 18px rgba(229,199,125,.16)}.brand-block h1 span{display:block;margin-top:4px;color:#d99b75;font-family:inherit;font-size:.52em;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.topbar h2,.hero-grid h3,.character-card h3,.sheet-header h3,.panel h2,.panel h3,.sheet-block h4,.mini-identity h3{color:var(--gold);text-shadow:0 2px 14px rgba(229,199,125,.18)}.category-header .eyebrow,.section-header .eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:.98rem;font-weight:800;letter-spacing:.06em;text-transform:none;color:color-mix(in srgb,var(--gold) 78%,#fff 22%);text-shadow:0 2px 12px rgba(229,199,125,.2)}.category-header .eyebrow:before,.section-header .eyebrow:before{content:"✦";color:var(--gold);font-size:.72em}.topbar .eyebrow{color:color-mix(in srgb,var(--gold) 78%,#fff 22%)}.small-eyebrow{letter-spacing:.14em;font-size:.64rem;color:var(--gold);margin:0}.section-heading-row{display:flex;justify-content:space-between;align-items:center;gap:10px}.sheet-shell{display:grid;gap:18px;padding:16px;border-radius:22px;background:linear-gradient(180deg,#17110fe0,#0c0a0ceb);border:1px solid rgba(229,199,125,.28);box-shadow:inset 0 0 0 1px #ffffff08,0 30px 50px #03050961}.sheet-hero{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:18px 20px;border:2px solid rgba(229,199,125,.56);border-radius:18px;background:linear-gradient(135deg,#6f583859,#1d1712e6),repeating-linear-gradient(90deg,rgba(255,255,255,.02),rgba(255,255,255,.02) 2px,transparent 2px,transparent 8px);box-shadow:inset 0 1px #ffffff14,inset 0 0 18px #e5c77d12,0 18px 40px #04081259,0 0 0 1px #e5c77d1f}.sheet-hero h3{font-size:clamp(1.8rem,2vw,2.5rem);margin-top:6px}.sheet-inline-input{width:100%;background:linear-gradient(90deg,rgba(115,41,34,.28),transparent 72%);border:1px solid transparent;border-bottom-color:#e5c77d80;border-radius:8px;padding:6px 8px;color:#ffd58e;font-family:Georgia,Palatino Linotype,serif;font-size:1.2em;font-weight:700;letter-spacing:.035em;text-shadow:0 2px 0 rgba(53,19,16,.72),0 0 14px rgba(244,160,86,.24);transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.master-mode .sheet-inline-input{color:#ffd58e}.player-mode .sheet-inline-input{background:linear-gradient(90deg,rgba(74,126,101,.24),transparent 72%);border-bottom-color:#c9b57980;color:#dce7b4;text-shadow:0 2px 0 rgba(16,35,28,.72),0 0 14px rgba(131,216,195,.2)}.sheet-inline-input:hover{border-bottom-color:#ffd891db;background-color:#e5c77d0f}.sheet-inline-input:focus,.mini-input:focus,.sheet-topline input:focus,.status-box input:focus,.sheet-block textarea:focus,.campaign-field:focus{outline:2px solid rgba(139,92,246,.6);border-color:#8b5cf6cc}.meta-row{flex-wrap:wrap;justify-content:flex-start;gap:8px;margin-top:10px}.meta-row span,.xp-pill,.level-pill,.chip{display:inline-flex;align-items:center;border-radius:999px;padding:6px 10px;font-size:.78rem;border:1px solid var(--border);background:#0f172a99;color:var(--text)}.meta-tag{background:linear-gradient(180deg,#3f3123f5,#120d0ae6);border:1px solid rgba(229,199,125,.36);box-shadow:inset 0 1px #ffffff0d,0 8px 18px #0000002e;gap:8px}.meta-icon{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:linear-gradient(135deg,#f4c95d2e,#8b5cf62e);border:1px solid rgba(229,199,125,.2);box-shadow:inset 0 1px #ffffff1a,0 4px 8px #0000001f}.sheet-badges{flex-direction:column;align-items:flex-end;gap:10px}.level-pill,.xp-pill{width:fit-content}.level-pill{display:inline-flex;gap:8px;padding-right:8px}.mini-input{width:56px;min-width:56px;border-radius:8px;background:#0f172abf;color:var(--text);border:1px solid var(--border);padding:4px 6px;text-align:center}.sheet-topline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.sheet-topline div,.status-box{position:relative;background:linear-gradient(180deg,#211b15e6,#101216bf);border:1px solid rgba(229,199,125,.26);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;align-items:center;gap:6px;box-shadow:inset 0 1px #ffffff0a}.sheet-topline div,.status-box,.sheet-topline input,.status-box input{text-align:center}.sheet-topline input{border-color:transparent;border-bottom-color:#e5c77d52;background:#0c111661;color:#ffe7ad;font-size:.98rem;font-weight:750}.sheet-topline div>span{width:100%;text-align:center}.status-box input{border-color:transparent;background:transparent;color:#ffe1a3;font-size:1.2rem;font-weight:850;text-shadow:0 1px 10px rgba(244,201,93,.18)}.sheet-topline div:focus-within,.status-box:focus-within{border-color:#ffd789b8;box-shadow:inset 0 0 0 1px #ffd78929,0 0 18px #e5c77d1a}.sheet-topline div:before,.status-box:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:2px;background:linear-gradient(90deg,rgba(244,201,93,.9),rgba(139,92,246,.7),transparent)}.sheet-topline span,.status-box span{color:var(--muted);font-size:.72rem;letter-spacing:.04em;text-transform:uppercase}.sheet-core{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.sheet-identity{display:flex;flex-direction:column;gap:16px}.status-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.status-box{padding:12px;position:relative;overflow:hidden;background:linear-gradient(180deg,#2c241ce6,#110e0ceb);border:1px solid rgba(229,199,125,.32);box-shadow:inset 0 1px #ffffff0a,0 10px 18px #0000002e;animation:statFloat 1.2s ease}.status-box:before{content:"";position:absolute;inset:0 auto auto 0;width:100%;height:2px;background:linear-gradient(90deg,rgba(244,201,93,.85),rgba(139,92,246,.7),transparent)}.hp-box{border-color:#22c55e47;background:linear-gradient(180deg,#112f24e6,#0b1018eb)}.sheet-block{background:linear-gradient(180deg,#3b2f1f24,#120d0a99),#ffffff06;border:1px solid rgba(229,199,125,.24);border-radius:14px;padding:14px 14px 10px;display:grid;gap:10px;align-content:start;box-shadow:inset 0 1px #ffffff0a,inset 0 -1px #0003,0 18px 26px #0000001f}.sheet-block h4{color:var(--text);font-size:.98rem;letter-spacing:.08em;text-transform:uppercase;padding-bottom:4px;border-bottom:1px solid rgba(229,199,125,.18)}.sheet-block textarea{min-height:88px;border:1px solid rgba(229,199,125,.24);background:#0a0e16b8}.status-panel,.save-panel,.attack-panel{background:linear-gradient(180deg,#141d2ae6,#131d2acc)}.status-stack{display:grid;gap:10px}.status-badge-group{display:grid;gap:8px;padding:10px 10px 12px;border-radius:14px;border:1px solid rgba(229,199,125,.2);background:linear-gradient(180deg,#1a1512e6,#12161cb8);box-shadow:inset 0 1px #ffffff0a,0 12px 18px #0000001f}.status-badge-condition{border-color:#c65a4c75;background:linear-gradient(135deg,#461a1cc7,#15161beb)}.status-badge-bonus{border-color:#a4aa5275;background:linear-gradient(135deg,#313b1ebd,#141813eb)}.status-badge-effect{border-color:#7374ff75;background:linear-gradient(135deg,#202a51c2,#121620eb)}.status-badge-header{display:inline-flex;align-items:center;gap:8px;padding:6px 10px 6px 8px;width:fit-content;border-radius:999px;background:#0a0e1280;border:1px solid rgba(255,255,255,.08);box-shadow:inset 0 1px #ffffff12,0 6px 14px #0000002e;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text);font-weight:700}.status-badge-icon{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#ffffff1f,#ffffff08);border:1px solid rgba(255,255,255,.12);color:var(--gold);font-size:.96rem;box-shadow:inset 0 1px #ffffff1f,0 6px 12px #0000001f}.status-badge-condition .status-badge-icon{background:linear-gradient(135deg,#cf736973,#612522eb)}.status-badge-bonus .status-badge-icon{background:linear-gradient(135deg,#dcc05d6b,#735819eb)}.status-badge-effect .status-badge-icon{background:linear-gradient(135deg,#7e94ff6b,#2e3a76eb)}.status-group label{color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.status-panel .chip-list{min-height:42px;padding:8px 10px;border-radius:10px;border:1px solid rgba(229,199,125,.12);background:#10121666}.status-editor{min-height:64px;border-radius:10px;border:1px dashed rgba(229,199,125,.32);background:#0b10168f;color:var(--text);padding:10px 12px;line-height:1.45}.status-editor:focus{border-color:#e5c77db3;box-shadow:0 0 0 3px #e5c77d1f}.status-add-row{display:flex;gap:8px;align-items:stretch}.status-add-row .status-editor{flex:1}.status-add-row .small-button{align-self:stretch;white-space:nowrap}.condition-select,.bonus-select,.effect-select{min-height:42px;padding:8px 10px;color-scheme:dark;font-weight:600;box-shadow:inset 0 1px #ffffff14,0 8px 18px #00000029}.condition-select{border-color:#ba5e4d9e;background:linear-gradient(135deg,#5c2a2bf5,#1f1314fa)}.bonus-select{border-color:#8aa86b9e;background:linear-gradient(135deg,#2d4c3df5,#121d19fa)}.effect-select{border-color:#7578ff9e;background:linear-gradient(135deg,#242e5ef5,#111627fa)}.condition-select:focus{border-color:#d27768;box-shadow:0 0 0 3px #ba5e4d2e,inset 0 1px #ffffff1a}.bonus-select:focus{border-color:#a9c681;box-shadow:0 0 0 3px #8aa86b2e,inset 0 1px #ffffff1a}.effect-select:focus{border-color:#8d90ff;box-shadow:0 0 0 3px #7578ff2e,inset 0 1px #ffffff1a}.condition-select option,.bonus-select option,.effect-select option{padding:7px 8px;background:#211b18;color:var(--text)}.chip-remove{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;border-radius:50%;background:#ffffff1f;color:currentColor;font-size:.78rem;line-height:1}.chip-remove:hover{background:#f8717173}.save-grid,.attack-list{display:grid;gap:10px}.save-card,.attack-card{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;border:1px solid rgba(176,132,245,.22);background:linear-gradient(180deg,#8b5cf614,#0f172ab3)}.save-card span,.attack-name{color:var(--muted);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.72rem}.save-card label{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.save-card label span{text-transform:uppercase}.save-card input{width:64px;min-width:0;padding:7px 8px;text-align:center;color:var(--gold);font-weight:800}.save-card strong,.attack-bonus{min-width:46px;display:inline-flex;justify-content:center;align-items:center;padding:6px 8px;border-radius:9px;background:#f4c95d1f;border:1px solid rgba(244,201,93,.32);color:var(--gold);font-weight:800}.attack-card{flex-direction:column;align-items:flex-start;gap:7px;padding:9px 10px;overflow:hidden}.attack-head{display:flex;justify-content:space-between;width:100%;align-items:center;gap:10px;min-width:0}.attack-name{flex:1;min-width:0;text-transform:none;letter-spacing:0;font-size:.9rem;color:var(--text)}.attack-card input{padding:7px 9px}.attack-bonus{width:62px;min-width:62px;text-align:center}.attack-details{width:100%;min-width:0;color:var(--muted);font-size:.83rem}.attack-remove{align-self:flex-end;padding:6px 9px}.attack-add-row{display:grid;grid-template-columns:minmax(0,1fr) 56px;gap:8px;margin-top:4px;min-width:0;align-self:start}.attack-add-row .small-button{grid-column:1 / -1;white-space:nowrap}.attack-add-row input:nth-child(3){grid-column:1 / -1}.attack-add-row input,.status-add-row select,.skill-add-row input,.trait-add-row input{min-width:0}.attack-panel{min-width:0;overflow:hidden}.attack-panel .attack-list{min-width:0}.chip-list{flex-wrap:wrap;justify-content:flex-start;gap:8px}.chip{background:#8b5cf61f;border-color:#8b5cf64d}.ability-chip{background:linear-gradient(135deg,#8b5cf64d,#4e307f80);border-color:#b291ff9e;color:#f0e8ff;box-shadow:inset 0 1px #ffffff1f,0 5px 12px #4c1d952e}.skill-add-row{display:flex;gap:8px;align-items:stretch}.skill-add-row input{flex:1;min-width:0}.skill-add-row .small-button{white-space:nowrap}.trait-chip{background:linear-gradient(135deg,#94a3b833,#4755696b);border-color:#cbd5e166;color:#e2e8f0}.trait-add-row{display:flex;gap:8px;align-items:stretch}.trait-add-row input{flex:1;min-width:0}.trait-add-row .small-button{white-space:nowrap}.status-chip{background:linear-gradient(135deg,#d05c5f33,#6e22246b);border-color:#ef787c8f;color:#ffe3e4;box-shadow:inset 0 1px #ffffff14,0 6px 10px #76292a2e}.bonus-chip{background:linear-gradient(135deg,#f6ce652e,#88682266);border-color:#f6ce6585;color:#fff0bb;box-shadow:inset 0 1px #ffffff14,0 6px 10px #916f232e}.effect-chip{background:linear-gradient(135deg,#7b92ff2e,#23316d6b);border-color:#8898ff8c;color:#e3e8ff;box-shadow:inset 0 1px #ffffff14,0 6px 10px #2c3e912e}.subtle-chip{background:#94a3b81f;border-color:#94a3b840}.empty-chip,.empty-text{background:#94a3b814;color:var(--muted)}.empty-text{margin:0;padding:10px 12px;border-radius:10px}.ability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ability-box{min-height:132px;display:grid;align-content:center;justify-items:center;gap:7px;background:linear-gradient(180deg,#251f19f5,#16110ee0);border:1px solid rgba(229,199,125,.32);border-radius:14px;padding:14px 10px;box-shadow:inset 0 1px #ffffff0d,0 12px 22px #00000024;transition:transform .2s ease,box-shadow .2s ease}.ability-box:before{content:"✧";position:absolute;top:10px;left:12px;color:#e5c77d6b;font-size:.72rem}.ability-box:hover{transform:translateY(-2px);box-shadow:inset 0 1px #ffffff0d,0 18px 28px #0003}.ability-box span{color:var(--muted);font-size:.7rem;letter-spacing:.12em;text-transform:uppercase}.ability-box input{background:#0f172ad9;border:1px solid var(--border);border-radius:9px;color:#f7efe0;text-align:center;font-size:1.3rem;font-weight:700;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.ability-box input:focus{outline:none;border-color:#e5c77dc7;box-shadow:0 0 0 3px #e5c77d1f}.ability-modifier-input{width:42px;min-width:42px;height:34px;padding:5px 5px 5px 2px;background:transparent;border:0;text-align:center;font-size:.95rem;font-weight:800;color:#f0e5ff;letter-spacing:.03em;box-shadow:none;transition:color .18s ease}.ability-modifier-badge{display:inline-flex;align-items:center;justify-content:center;width:78px;min-width:78px;max-width:100%;height:36px;padding:0 5px 0 9px;background:linear-gradient(135deg,#5d3a97c7,#311f5bf0);border:1px solid rgba(213,182,255,.72);border-radius:999px;color:#d8c4ff;box-shadow:inset 0 1px #ffffff2e,0 5px 12px #2a164947;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.ability-modifier-badge>span{color:#efddffb8;font-size:.52rem;letter-spacing:.08em;line-height:1}.ability-modifier-badge:hover{transform:translateY(-1px);border-color:#ead7ff;box-shadow:inset 0 1px #fff3,0 8px 16px #2a164957}.ability-modifier-badge:focus-within{border-color:#f0dcff;box-shadow:0 0 0 3px #b492ff2e,inset 0 1px #fff3,0 8px 16px #2a164957}.compact-ability-modifier{width:86px;min-width:86px;justify-self:center;padding:0 5px 0 9px}.compact-ability-modifier .ability-modifier-input{width:48px}.ability-box small{font-size:1rem;color:#8ef0ff;font-weight:700}.sheet-lower-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}@keyframes statFloat{0%{transform:translateY(6px);opacity:.6}to{transform:translateY(0);opacity:1}}@media (max-width: 980px){.app-columns{grid-template-columns:1fr}.content-first .app-columns{grid-template-areas:"main" "sidebar"}.sheet-core,.sheet-topline,.sheet-lower-grid{grid-template-columns:1fr}.status-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}.meta-list{margin:12px 0 0;padding-left:18px;color:var(--muted);display:grid;gap:8px;font-size:.95rem}.panel{padding:18px 18px 16px}.compact{padding:18px}.field-label{display:grid;gap:8px;margin-top:10px;color:var(--muted)}.campaign-field{min-height:38px}.view-toggle,.json-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:16px}.view-toggle button,.json-tools button{background:linear-gradient(180deg,#675c4938,#241f1ae6);border:1px solid rgba(229,199,125,.34);padding:10px 8px}.view-toggle button.active{background:linear-gradient(135deg,var(--primary),#7c3aed);border-color:transparent}.json-output{width:100%;min-height:160px;margin-top:14px;font-family:SFMono-Regular,Consolas,monospace;font-size:.72rem;line-height:1.5}.stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.stat-grid div{background:#ffffff0a;border:1px solid var(--border);border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:6px}.stat-grid strong{font-size:1.6rem}.stat-grid span{color:var(--muted);font-size:.76rem}.main-content{display:flex;flex-direction:column;gap:20px;min-width:0}.master-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px;border:1px solid rgba(229,199,125,.3);border-radius:12px;background:#0d0b0994}.player-tabs{display:flex;gap:8px;overflow-x:auto;padding:4px;border:1px solid rgba(127,150,133,.38);border-radius:12px;background:#0a100fc7}.view-tabs{display:inline-grid;grid-template-columns:repeat(2,minmax(0,1fr));justify-self:center;align-self:center;gap:4px;width:min(100%,420px);padding:4px;border:1px solid rgba(229,199,125,.34);border-radius:12px;background:#0d0b099e;box-shadow:inset 0 1px #ffffff0d,0 8px 18px #0000002e}.player-view>.view-tabs{justify-self:end;margin-left:auto}.master-mode .workspace-navigation>.view-tabs{justify-self:start;margin-left:0}.view-tab{min-height:36px;padding:7px 12px;border-color:transparent;background:transparent;color:var(--muted);font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.view-tab.active{border-color:#e5c77d94;background:linear-gradient(135deg,var(--primary),var(--panel-alt));color:#fff0c7;box-shadow:inset 0 1px #ffffff1f,0 5px 12px #0003}.master-tab{flex:1 0 auto;min-height:40px;padding:8px 16px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.04em}.player-tab{flex:1 0 auto;min-height:40px;padding:8px 16px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-size:.78rem;font-weight:700}.player-tab.active{border-color:#c9b5798c;background:linear-gradient(135deg,#426b5d,#203a31);color:#eff5db}.player-tab:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.master-tab:nth-child(1){color:#f6c678}.master-tab:nth-child(2){color:#9ee2c0}.master-tab:nth-child(3){color:#ff9b82}.master-tab:nth-child(4){color:#b9b8ff}.master-tab.active{background:linear-gradient(135deg,var(--primary),#5f4125);border-color:#e5c77d8c;color:#fff6e4;text-shadow:0 1px 10px rgba(255,237,198,.32)}.master-tab:nth-child(1).active{background:linear-gradient(135deg,#8b5225,#3f2415)}.master-tab:nth-child(2).active{background:linear-gradient(135deg,#326a52,#17372c)}.master-tab:nth-child(3).active{background:linear-gradient(135deg,#8b3e36,#421b1d)}.master-tab:nth-child(4).active{background:linear-gradient(135deg,#514b8d,#28244a)}.master-tab:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.topbar,.section-header,.category-header,.card-top,.metrics-row,.action-row,.dice-controls,.enemy-item,.enemy-hp,.note-input,.sheet-header,.sheet-topline,.status-strip,.meta-row,.sheet-hero,.sheet-badges,.chip-list{display:flex;align-items:center;justify-content:space-between}.topbar{padding:8px 0}.topbar-actions{background:linear-gradient(135deg,#191512e0,#241e18c7);border:1px solid rgba(229,199,125,.42);border-radius:14px;padding:6px 8px;box-shadow:inset 0 1px #ffffff0f,0 10px 18px #0000002e}.page-title{display:flex;align-items:center;gap:12px}.header-logo{display:block;width:48px;height:48px;flex:0 0 48px;object-fit:contain;border-radius:14px;border:1px solid rgba(229,199,125,.72);background:#171410;box-shadow:0 0 22px #e5c77d2e}.topbar-actions,.section-actions{display:flex;align-items:center;gap:10px}.category-header{gap:10px;margin-bottom:14px}.category-header .eyebrow{margin:0}.collapsible-panel{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.collapsible-panel>:not(.category-header):not(.section-header){transition:opacity .22s ease,transform .22s ease,max-height .28s ease,margin .22s ease,padding .22s ease,overflow .22s ease;transform-origin:top center}.collapsible-panel.is-collapsed>:not(.category-header):not(.section-header){display:block;max-height:0;opacity:0;overflow:hidden;margin-top:0;margin-bottom:0;padding-top:0;padding-bottom:0;transform:translateY(-6px);pointer-events:none}.collapsible-panel:not(.is-collapsed)>:not(.category-header):not(.section-header){max-height:1000px;opacity:1;transform:translateY(0)}.collapsible-panel:not(.is-collapsed)>.compact-player-sheet,.collapsible-panel:not(.is-collapsed)>.sheet-shell{max-height:none!important}.collapsible-panel.is-collapsed>.section-header{margin-bottom:0}.language-picker{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.language-picker select{width:auto;min-width:118px;padding:9px 30px 9px 10px;border-radius:10px;border-color:#e5c77d75;background:#0f172ae0;color:var(--text);cursor:pointer}.character-toggle{width:34px;height:34px;padding:0;font-size:1.2rem;line-height:1}.primary-button,.small-button,.dice-panel button{background:linear-gradient(135deg,var(--primary),var(--panel-alt));color:#fff0c7;padding:10px 16px;font-weight:800;border:1px solid rgba(229,199,125,.68);text-shadow:0 1px 0 rgba(0,0,0,.6);box-shadow:inset 0 1px #ffffff29,inset 0 -2px #00000047,0 10px 18px #00000047,0 0 12px #e5c77d1a}.small-button{padding:8px 10px;font-size:.8rem}.hero-grid,.lower-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:20px}.highlight{background:linear-gradient(135deg,#8b5cf62e,#0f172ab3)}.app-shell{position:relative;isolation:isolate}.master-mode{--border: rgba(155, 91, 65, .48);--primary: #7d2f32;--primary-soft: rgba(125, 47, 50, .2);--violet: #8f4b42;--gold: #d7a864;--muted: #b9a08e;background:radial-gradient(circle at 75% 8%,rgba(128,38,39,.16),transparent 24%),radial-gradient(circle at 12% 80%,rgba(193,126,60,.08),transparent 22%),linear-gradient(135deg,#0a090a66,#28111138)}.master-mode .sidebar,.master-mode .panel{background:linear-gradient(180deg,#231313fa,#0d0b0cfa),repeating-linear-gradient(0deg,rgba(207,143,83,.025) 0 1px,transparent 1px 4px);border-color:#ac654594;box-shadow:inset 0 0 0 1px #eeb1690d,inset 0 0 26px #7b242424,0 24px 44px #040305b8}.master-mode .highlight,.master-mode .dice-panel{border-color:#cd71458c}.master-mode .highlight{background:linear-gradient(115deg,#6a1b1f80,#201112f0 62%),repeating-linear-gradient(90deg,rgba(255,205,133,.025) 0 1px,transparent 1px 9px)}.master-mode .topbar h2,.master-mode .hero-grid h3,.master-mode .character-card h3,.master-mode .sheet-header h3,.master-mode .panel h2,.master-mode .panel h3,.master-mode .sheet-block h4,.master-mode .mini-identity h3{background:linear-gradient(100deg,#ffd58e,#f07158 52%,#e7a05e);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}.master-mode .category-header .eyebrow,.master-mode .section-header .eyebrow{color:#ffc27c;text-shadow:0 2px 14px rgba(235,92,72,.26)}.master-mode .category-header .eyebrow:before,.master-mode .section-header .eyebrow:before{color:#f07158}.master-mode .badge,.master-mode .view-toggle button.active{background:linear-gradient(135deg,#8d3738,#3d171a);border-color:#e7a55e8c;box-shadow:inset 0 1px #ffd69d33,0 8px 18px #53111259}.master-mode .character-sheet-panel{border-color:#ca8146ad;box-shadow:inset 0 0 30px #7a23201f,0 24px 46px #030203b3}.master-mode .enemy-item{border-color:#9b403a6b;background:linear-gradient(90deg,#681e1f38,#130d0eb3)}.player-mode{--border: rgba(113, 139, 126, .48);--primary: #49675d;--primary-soft: rgba(73, 103, 93, .2);--violet: #5f766f;--gold: #c9b579;--muted: #b8c0b7;background:radial-gradient(circle at 72% 12%,rgba(90,124,112,.14),transparent 26%),radial-gradient(circle at 20% 85%,rgba(193,166,104,.09),transparent 25%),linear-gradient(135deg,#0b0f106b,#16211e40)}.player-mode .sidebar,.player-mode .panel{background:linear-gradient(180deg,#161d1cfa,#0c1111fa),repeating-linear-gradient(0deg,rgba(215,203,157,.025) 0 1px,transparent 1px 4px);border-color:#7f96858c;box-shadow:inset 0 0 0 1px #dad2a90d,inset 0 0 26px #486f5e1f,0 24px 44px #030707b3}.player-mode .player-surface{border-color:#c7b274b3;background:linear-gradient(135deg,#41423473,#111716f7),repeating-linear-gradient(90deg,rgba(230,215,166,.025) 0 1px,transparent 1px 8px);box-shadow:inset 0 0 38px #c0a35b1a,0 26px 48px #030606b8}.player-mode .topbar h2,.player-mode .hero-grid h3,.player-mode .character-card h3,.player-mode .sheet-header h3,.player-mode .panel h2,.player-mode .panel h3,.player-mode .sheet-block h4,.player-mode .mini-identity h3{background:linear-gradient(100deg,#dce7b4,#83d8c3 54%,#d6ba72);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}.player-mode .category-header .eyebrow,.player-mode .section-header .eyebrow{color:#aee5c7;text-shadow:0 2px 14px rgba(86,179,150,.24)}.player-mode .category-header .eyebrow:before,.player-mode .section-header .eyebrow:before{color:#d6ba72}.player-sheet-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:118px;background:linear-gradient(180deg,#516358bf,#181f1df2);border:1px solid rgba(201,181,121,.42);color:var(--text);padding:8px 12px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;box-shadow:inset 0 1px #ffffff0f,0 8px 16px #00000029}.mini-character-card{display:grid;gap:14px;padding:18px 18px 16px;border-radius:18px;border:1px solid rgba(201,181,121,.55);background:linear-gradient(135deg,#4142347a,#111716f5),repeating-linear-gradient(90deg,rgba(255,243,188,.03) 0 1px,transparent 1px 8px);box-shadow:inset 0 1px #ffffff0f,0 18px 32px #04080842}.mini-character-head{display:flex;align-items:center;gap:14px;position:relative}.mini-character-head:after{content:"✦ ✧ ✦";position:absolute;inset:auto 0 -8px 0;text-align:center;letter-spacing:.5rem;color:#c9b5792e;font-size:.62rem}.mini-avatar{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;font-size:1.5rem;background:linear-gradient(135deg,#a88c5942,#27403ab3);border:1px solid rgba(201,181,121,.55);box-shadow:inset 0 1px #ffffff14,0 10px 22px #0000002e}.mini-identity{flex:1}.mini-identity h3{margin:0;font-size:clamp(1.5rem,2vw,2.1rem);letter-spacing:.04em}.mini-score{display:flex;flex-direction:column;gap:6px;align-items:flex-end}.mini-score .level-pill,.mini-score .xp-pill{border-radius:999px;padding:7px 10px;border:1px solid rgba(201,181,121,.38);background:linear-gradient(180deg,#47574fb8,#101312e6);box-shadow:inset 0 1px #ffffff0d,0 8px 18px #0000002e}.mini-detail-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.mini-detail-row div{display:grid;gap:6px;padding:10px 12px;border-radius:12px;background:linear-gradient(180deg,#111516f2,#0b1012e6);border:1px solid rgba(201,181,121,.18);box-shadow:inset 0 1px #ffffff0a}.mini-detail-row span{color:var(--muted);font-size:.68rem;letter-spacing:.09em;text-transform:uppercase}.mini-detail-row strong{font-size:1.05rem}.compact-player-sheet{display:grid;gap:12px;margin-top:14px;padding:6px 0 0}.compact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.compact-stat{display:grid;gap:6px;padding:10px 12px;border-radius:12px;border:1px solid rgba(201,181,121,.2);background:linear-gradient(180deg,#141816f2,#0c1111e6);text-align:center;box-shadow:inset 0 1px #ffffff0a}.compact-stat.accent{border-color:#60b87e73;background:linear-gradient(180deg,#122a1ee6,#0c0f11f2);box-shadow:inset 0 1px #ffffff0d,0 10px 22px #13311f2e}.compact-stat span,.compact-panel-head{font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.compact-stat strong{font-size:1.2rem}.compact-panel{display:grid;gap:8px;padding:10px 12px 12px;border-radius:12px;border:1px solid rgba(201,181,121,.18);background:#0c11118c}.compact-panel-head{display:flex;align-items:center;justify-content:space-between;position:relative;padding-bottom:2px}.compact-panel-head:before{content:"✧";margin-right:8px;color:#c9b579cc;font-size:.62rem}.compact-ability-grid,.compact-mini-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.compact-ability{display:grid;gap:4px;padding:8px 6px;border-radius:10px;text-align:center;background:linear-gradient(180deg,#121818cc,#0c1111e6);border:1px solid rgba(201,181,121,.12);box-shadow:inset 0 1px #ffffff08}.compact-ability span{font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.compact-ability strong{font-size:1.1rem}.compact-ability small{color:#8ef0ff;font-weight:700}.compact-mini-list{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-save,.compact-attack{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;border-radius:10px;background:#121818cc;border:1px solid rgba(201,181,121,.12)}.compact-save span,.compact-attack span{color:var(--muted);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.compact-save strong,.compact-attack strong{color:var(--gold);font-size:.92rem}.compact-bottom-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.player-mode .mini-character-card,.player-mode .mini-detail-row div,.player-mode .compact-player-sheet,.player-mode .compact-panel,.player-mode .compact-stat,.player-mode .compact-ability,.player-mode .compact-save,.player-mode .compact-attack{break-inside:avoid}@media print{@page{size:A4 portrait;margin:10mm}html,body,#root{min-height:0;background:#fff}body:before,body:after,.app-header,.workspace-navigation,.sidebar,.topbar,.player-tabs,.player-mode>.main-content>.panel:not(.player-surface),.print-button,.delete-button,.action-row,button{display:none!important}.app-shell,.main-content,.player-surface,.sheet-shell,.sheet-core,.sheet-lower-grid{display:block;min-height:0;padding:0;margin:0;width:100%;background:#fff!important;color:#191714!important;border:0!important;box-shadow:none!important}.player-surface{padding:0!important}.sheet-hero,.sheet-block,.status-box,.ability-box,.save-card,.attack-card,.sheet-topline div,.mini-character-card,.mini-detail-row div,.compact-player-sheet,.compact-panel,.compact-stat,.compact-ability,.compact-save,.compact-attack{break-inside:avoid;background:#fff!important;color:#191714!important;border:1px solid #76684e!important;box-shadow:none!important}.sheet-hero,.sheet-block,.mini-character-card,.compact-player-sheet{margin-bottom:5mm}.sheet-hero h3,.sheet-block h4,.sheet-topline strong,.status-box strong,.ability-box input,.ability-box small,.save-card strong,.attack-name{color:#191714!important}.eyebrow,.small-eyebrow,.sheet-topline span,.status-box span,.ability-box span,.save-card span,.attack-card p,.sheet-block label{color:#5f5749!important}input,textarea,select{color:#191714!important;background:transparent!important;border-color:#b4a98f!important}.panel:before,.panel:after,.sheet-shell:before,.sheet-shell:after,.character-card:before,.character-card:after,.ability-box:before,.ability-box:after,.status-box:before,.status-box:after,.save-card:before,.save-card:after,.attack-card:before,.attack-card:after{display:none!important}}.player-mode .member-button.selected{border-color:#cab573c7;background:linear-gradient(135deg,#596f5b80,#27342ee6);box-shadow:inset 0 1px #ffedb82e,0 8px 20px #03080759}.master-mode .panel:after,.master-mode .sheet-shell:after,.master-mode .character-card:after,.master-mode .ability-box:after,.master-mode .status-box:after,.master-mode .save-card:after,.master-mode .attack-card:after{color:#d36f4e4d}.player-mode .panel:after,.player-mode .sheet-shell:after,.player-mode .character-card:after,.player-mode .ability-box:after,.player-mode .status-box:after,.player-mode .save-card:after,.player-mode .attack-card:after{color:#b2be8e47}.highlight p{color:var(--muted);line-height:1.6;margin-top:16px}.badge{background:#22c55e24;color:#9ae6b4;border:1px solid rgba(34,197,94,.19);border-radius:999px;padding:7px 10px;font-size:.75rem}.badge.subtle{background:#ffffff0a;color:var(--muted);border-color:var(--border)}.dice-panel{display:flex;flex-direction:column;justify-content:center;gap:10px;container-type:inline-size}.dice-controls{gap:12px}.dice-bench-controls{display:grid;grid-template-columns:.7fr .9fr .9fr 1.25fr auto;align-items:end;gap:8px}.dice-field{display:grid;gap:5px;min-width:0}.dice-field span,.dice-history-header>span{color:var(--muted);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.dice-field input,.dice-field select{width:100%;min-width:0}.dice-bench-controls .dice-field,.dice-bench-controls input,.dice-bench-controls select{min-width:0}.dice-bench-controls button{min-height:42px;white-space:nowrap}.dice-panel select{padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:#0f172acc;color:var(--text);min-width:120px}.dice-result{min-height:40px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;color:#fcd34d;font-size:1.1rem;font-weight:700}.dice-result span{color:var(--muted);font-size:.75rem;font-weight:500}.dice-history{display:grid;gap:8px;border-top:1px solid rgba(229,199,125,.18);padding-top:8px}.dice-history-header{display:flex;align-items:center;justify-content:space-between;gap:8px}.dice-history-header .small-button{min-height:28px;padding:4px 8px;font-size:.68rem}.dice-history ul{display:grid;gap:5px;margin:0;padding:0;list-style:none;max-height:150px;overflow:auto}.dice-history li{display:grid;grid-template-columns:minmax(70px,.8fr) auto minmax(0,1.5fr);align-items:center;gap:8px;padding:6px 8px;border:1px solid rgba(229,199,125,.14);border-radius:8px;background:#0f172a57}.dice-history li span{color:var(--muted);font-size:.76rem}.dice-history li strong{color:#fcd34d}.dice-history li small{overflow:hidden;color:var(--muted);font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}.player-tools{display:flex;flex-direction:column;justify-content:center;gap:10px}@media (max-width: 720px){.dice-bench-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.dice-bench-controls button{grid-column:1 / -1}}@container (max-width: 520px){.dice-bench-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.dice-bench-controls button{grid-column:1 / -1}}.character-grid,.enemy-list,.notes-list,.member-list{display:grid;gap:14px}.character-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:18px}.character-card{background:#ffffff06;border:1px solid var(--border);border-radius:16px;padding:16px;cursor:pointer;transition:border-color .15s ease,transform .15s ease}.character-card.selected{border-color:#8b5cf6cc;box-shadow:inset 0 0 0 1px #8b5cf659}.card-top{margin-bottom:12px}.card-top span,.character-card em,.enemy-item small,.notes-list,.sheet-topline span,.status-strip span,.ability-box span,.sheet-block li,.sheet-block p{color:var(--muted)}.level-pill{background:var(--primary-soft);border:1px solid rgba(139,92,246,.25);border-radius:999px;padding:6px 8px;font-size:.72rem;color:#d9c6ff}.metrics-row{gap:12px;margin:12px 0}.metrics-row div{flex:1;background:#ffffff08;border-radius:12px;border:1px solid var(--border);padding:10px;display:grid;gap:6px}.metrics-row em{font-style:normal;font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.action-row{gap:8px;flex-wrap:wrap}.action-row button{padding:8px 10px;min-width:52px}.action-row.compact{justify-content:flex-end}.delete-character{background:#f8717124;color:#fecaca;border:1px solid rgba(248,113,113,.35)}.character-sheet-panel{padding:22px}.sheet-card{display:grid;gap:18px}.sheet-topline{gap:12px;flex-wrap:wrap;justify-content:flex-start}.sheet-topline>div,.status-strip>div{min-width:120px;background:#ffffff08;border:1px solid var(--border);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:6px}.sheet-topline strong,.status-strip strong,.sheet-block strong{color:var(--text)}.sheet-core{display:grid;grid-template-columns:1fr;gap:18px}.ability-grid{display:grid;grid-template-columns:repeat(3,minmax(110px,1fr));gap:12px}.ability-box{padding:12px;border:1px solid var(--border);border-radius:12px;background:#ffffff06;display:flex;flex-direction:column;align-items:center;gap:6px}.ability-box strong{font-size:1.4rem}.ability-box small{color:#c4b5fd;font-weight:700}.sheet-identity{display:grid;gap:14px}.status-strip{flex-wrap:wrap;justify-content:flex-start;gap:10px}.sheet-block{border:1px solid var(--border);background:#ffffff05;border-radius:14px;padding:14px}.sheet-block ul{margin:12px 0 0;padding-left:18px;display:grid;gap:8px}.sheet-block p{margin:12px 0 0;line-height:1.7}.sheet-lower-grid{display:grid;grid-template-columns:1fr;gap:14px;align-items:start}.sheet-block.wide{grid-column:1 / -1}.enemy-item{gap:14px;flex-wrap:wrap;border:1px solid var(--border);border-radius:14px;background:#ffffff05;padding:12px 14px}.enemy-fields{display:grid;grid-template-columns:minmax(150px,1.5fr) repeat(3,minmax(84px,.7fr));gap:10px;flex:1;min-width:min(100%,430px)}.enemy-fields .field-label{gap:5px;font-size:.68rem}.enemy-fields input{min-width:0;padding:8px 9px}.enemy-hp{gap:10px;flex-direction:column;align-items:flex-end}.encounter-board{display:grid;gap:16px;min-width:0}.encounter-board>.panel{min-width:0}.encounter-board .enemy-list{grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:14px}.encounter-board .enemy-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:14px;min-width:0;padding:14px;border-color:#cd714580;background:linear-gradient(135deg,#5f1d1e6b,#120e0fe6),repeating-linear-gradient(90deg,rgba(255,205,133,.025) 0 1px,transparent 1px 9px);box-shadow:inset 0 1px #ffffff0d,0 12px 22px #0003}.encounter-board .enemy-fields{grid-template-columns:minmax(150px,1.5fr) repeat(3,minmax(76px,.7fr));min-width:0;align-items:end}.encounter-board .enemy-fields .field-label{min-width:0}.encounter-board .enemy-hp{justify-content:space-between;min-width:104px;width:100%;padding-left:12px;border-left:1px solid rgba(229,199,125,.22)}.encounter-board .enemy-hp .action-row{flex-wrap:wrap;justify-content:center;width:100%}.encounter-board .enemy-hp .action-row button{min-width:44px}.encounter-board .enemy-hp .delete-character{display:inline-flex;align-items:center;justify-content:center;min-height:38px;line-height:1;white-space:nowrap}.note-input{margin-top:14px;gap:12px;align-items:flex-end;flex-direction:column}.note-input textarea{width:100%;min-height:84px;resize:vertical;border-radius:12px;border:1px solid var(--border);background:#0f172acc;color:var(--text);padding:12px 14px}.notes-list{margin:16px 0 0;padding:0;list-style:none;color:var(--muted);line-height:1.7}.notes-list li{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid rgba(229,199,125,.14)}.notes-list li>span{flex:1;min-width:0;overflow-wrap:anywhere}.note-delete{flex:0 0 36px;width:36px;min-height:36px;padding:0;color:var(--text);font-size:1.1rem}.session-editor{display:grid;gap:12px;margin-top:12px}.session-editor .field-label{gap:6px}.member-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.member-button{display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:linear-gradient(180deg,#ffffff05,#ffffff04);border:1px solid rgba(191,154,76,.28);border-radius:12px;padding:12px;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.member-button:hover{transform:translateY(-1px);border-color:#e5c77d7a;box-shadow:0 8px 18px #0000001f}.member-button:focus-visible{outline:none;border-color:#e5c77dd1;box-shadow:0 0 0 3px #e5c77d2e,0 8px 18px #0000001f}.member-button.selected{border-color:#cca867d1;background:linear-gradient(135deg,#5b4a2a38,#32261b1f)}.member-button span{color:var(--muted)}.empty-sheet{padding:30px;text-align:center}@media (max-width: 940px){.app-columns,.hero-grid,.lower-grid,.sheet-core,.sheet-lower-grid{grid-template-columns:1fr}.app-shell{padding:16px}.sidebar{order:2}.ability-grid{grid-template-columns:repeat(2,minmax(100px,1fr))}}@media (max-width: 600px){.app-shell{gap:14px;padding:10px;min-width:0}.topbar,.main-content,.topbar-actions{min-width:0;max-width:100%}.topbar-actions{overflow:hidden}.language-picker span{display:none}.ability-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ability-box{min-width:0;min-height:110px;padding:10px 8px}.ability-box input{width:100%;max-width:62px;font-size:1.05rem}.ability-modifier-badge{width:min(100%,72px);min-width:0;padding:0 4px 0 6px}.ability-modifier-input{width:100%;min-width:0;font-size:.8rem}.sidebar,.panel{border-radius:14px}.sidebar{padding:12px;gap:12px}.sidebar h2,.sidebar h3,.panel h2,.panel h3,.section-header h3,.section-header h4{letter-spacing:.06em;line-height:1.2}.panel,.character-sheet-panel{padding:14px}.member-list{gap:10px}.member-button{padding:10px 11px;gap:4px;font-weight:600;line-height:1.3}.member-button span{font-size:.82rem}.topbar{display:flex;align-items:center;flex-wrap:nowrap;gap:8px;min-height:48px;padding:0}.master-tabs{position:sticky;top:8px;z-index:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;overflow:hidden;padding:5px;border-radius:14px;background:#110d0ef5;box-shadow:0 10px 24px #03020366}.player-tabs{position:sticky;top:8px;z-index:4;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;overflow:hidden;padding:5px;border-radius:14px;background:#0c1311f5;box-shadow:0 10px 24px #03070766}.player-tab{min-width:0;min-height:44px;padding:6px 4px;font-size:.66rem;line-height:1.15;text-align:center;white-space:normal}.master-tab{min-width:0;min-height:52px;padding:6px 4px;border-radius:10px;font-size:.66rem;line-height:1.15;letter-spacing:.01em;text-align:center;white-space:normal}.master-tab.active{box-shadow:inset 0 1px #ffffff29,0 5px 12px #0000003d}.topbar-actions{width:auto;display:flex;justify-content:flex-end;align-items:center;gap:6px;margin-top:0;margin-left:auto;flex-shrink:0;padding:6px 7px;border-radius:12px;background:linear-gradient(135deg,#1a1713f0,#31271fcc);border:1px solid rgba(229,199,125,.38);box-shadow:inset 0 1px #ffffff0f,inset 0 -1px #ffffff05,0 8px 14px #00000029}.topbar-actions>.language-picker{order:1;margin-right:0;justify-content:flex-start;flex-shrink:0}.topbar-actions>.print-button{order:2;margin-left:0;padding-inline:10px;min-width:84px;height:32px;font-size:.68rem}.player-view .topbar{align-items:stretch;flex-direction:column;gap:10px;min-height:0}.player-view .topbar-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;margin-left:0;padding:6px}.player-view .topbar-actions>.language-picker{grid-column:1 / -1;order:1;width:100%}.player-view .topbar-actions>#add-character{grid-column:1;order:2}.player-view .topbar-actions>.print-button{grid-column:2;order:2}.player-view .topbar-actions>.language-picker select{flex:1;width:100%;height:34px}.player-view .topbar-actions>button{width:100%;min-width:0;height:34px;padding:6px 5px;font-size:.66rem;white-space:nowrap}.view-tabs{width:100%}.player-view>.view-tabs{justify-self:stretch;margin-left:0}.master-mode .workspace-navigation>.view-tabs{justify-self:stretch}.page-title{min-width:0;flex:1;margin-right:4px}.header-logo{width:34px;height:34px;flex-basis:34px}.language-picker{flex:0 0 auto;justify-content:flex-start;gap:6px}.language-picker select{min-width:0;width:86px;height:32px;padding:6px 24px 6px 8px;font-size:.68rem}.section-header{align-items:flex-start}.section-actions{flex-shrink:0}.hero-grid,.lower-grid{gap:14px}.mini-detail-row{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-mini-list{grid-template-columns:1fr}.compact-save,.compact-attack{min-width:0}.compact-save span,.compact-attack span{min-width:0;overflow-wrap:anywhere}.sheet-hero{padding:14px;flex-direction:column;gap:14px}.sheet-badges{align-items:flex-start;flex-direction:row;flex-wrap:wrap}.sheet-topline,.status-strip{display:grid;grid-template-columns:1fr}.metrics-row{gap:7px}.metrics-row div{padding:8px}.action-row button{flex:1}.delete-character{flex-basis:100%}.enemy-item,.enemy-hp{align-items:stretch}.enemy-fields{grid-template-columns:1fr 1fr;min-width:100%}.encounter-board .enemy-list,.encounter-board .enemy-item{grid-template-columns:1fr}.encounter-board .enemy-fields{grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;width:100%}.encounter-board .enemy-fields .field-label:first-child{grid-column:1 / -1}.encounter-board .enemy-hp{width:100%;min-width:0;padding-top:10px;padding-left:0;border-top:1px solid rgba(229,199,125,.22);border-left:0;flex-direction:row;align-items:center;justify-content:center}.encounter-board .enemy-hp .delete-character{flex:1 0 100%;width:100%;min-height:40px;padding:9px 12px}.enemy-hp{width:100%}.attack-add-row{grid-template-columns:1fr 64px}.attack-add-row input:nth-child(3),.attack-add-row .small-button{grid-column:1 / -1}}@media (max-width: 480px){.ability-grid{gap:8px}.mini-detail-row,.compact-grid,.compact-ability-grid,.compact-mini-list{grid-template-columns:1fr}.mini-character-head{align-items:flex-start;flex-direction:column}.mini-score{width:100%;align-items:flex-start;flex-direction:row;flex-wrap:wrap}.ability-box{min-height:96px;padding:8px 6px;gap:5px}.ability-box span{font-size:.57rem;letter-spacing:.08em}.ability-box input{max-width:54px;font-size:.95rem}.ability-modifier-badge{width:62px;height:30px;padding:0 3px 0 5px}.ability-modifier-badge>span{font-size:.45rem}.ability-modifier-input{font-size:.72rem}.character-sheet-panel,.panel,.sidebar{padding:10px}}@media (min-width: 941px){.app-shell{width:min(100%,1800px);margin-inline:auto}.app-columns{width:100%;grid-template-columns:minmax(0,1fr);align-items:start}.content-first .app-columns{grid-template-areas:"main" "sidebar"}.sidebar,.main-content,.panel,.character-sheet-panel,.player-surface{min-width:0;width:100%}}@media (max-width: 940px){.app-columns,.main-content,.sidebar,.panel,.character-sheet-panel,.player-surface{width:100%;min-width:0}}@media (max-width: 600px){.sheet-card,.sheet-shell,.mini-character-card,.compact-player-sheet,.player-surface,.character-sheet-panel{width:100%;min-width:0}.character-sheet-panel,.player-surface{padding:12px}.mini-character-card{padding:14px}.compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-bottom-grid{grid-template-columns:1fr}.sheet-core,.sheet-lower-grid,.sheet-topline,.status-strip{width:100%;min-width:0}.sheet-block,.compact-panel,.compact-stat,.compact-ability,.compact-save,.compact-attack{min-width:0;overflow-wrap:anywhere}}.player-mode .sheet-shell,.player-mode .sheet-shell>*,.player-mode .sheet-core,.player-mode .sheet-lower-grid,.player-mode .sheet-block,.player-mode .sheet-topline,.master-mode .sheet-shell,.master-mode .sheet-shell>*,.master-mode .sheet-core,.master-mode .sheet-lower-grid,.master-mode .sheet-block,.master-mode .sheet-topline{width:100%;min-width:0}.player-mode .player-surface>.category-header,.player-mode .player-surface>.sheet-shell,.master-mode .character-sheet-panel>.category-header,.master-mode .character-sheet-panel>.sheet-shell{width:min(100%,1180px);margin-inline:auto}.player-mode .sheet-hero>:first-child,.master-mode .sheet-hero>:first-child{flex:1 1 auto;min-width:0}.player-mode .sheet-hero .sheet-badges,.master-mode .sheet-hero .sheet-badges{flex:0 0 auto}.player-mode .sheet-topline,.master-mode .sheet-topline{width:min(100%,1040px);margin-inline:auto}.player-mode .status-strip,.master-mode .status-strip{width:min(100%,920px);margin-inline:auto}.player-mode .sheet-topline>div,.player-mode .status-strip>.status-box,.player-mode .sheet-topline input,.player-mode .status-strip input,.master-mode .sheet-topline>div,.master-mode .status-strip>.status-box,.master-mode .sheet-topline input,.master-mode .status-strip input{min-width:0}.player-mode .sheet-topline,.master-mode .sheet-topline{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.player-mode .sheet-topline>div,.master-mode .sheet-topline>div{flex:1 1 calc(25% - 9px)}.player-mode .status-strip,.master-mode .status-strip{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}.player-mode .status-strip>.status-box,.master-mode .status-strip>.status-box{flex:1 1 calc(33.333% - 8px)}@media (max-width: 600px){.player-mode .sheet-topline,.player-mode .status-strip,.master-mode .sheet-topline,.master-mode .status-strip{display:grid;grid-template-columns:1fr;width:100%}.player-mode .sheet-topline>div,.player-mode .status-strip>.status-box,.master-mode .sheet-topline>div,.master-mode .status-strip>.status-box{width:100%;flex:none}}@media (max-width: 360px){.character-sheet-panel,.panel,.sidebar{padding:12px}.mini-detail-row,.compact-grid,.compact-ability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-mini-list{grid-template-columns:1fr}.mini-character-head{gap:10px}.mini-score{gap:6px}.sidebar{gap:10px}.sidebar h2,.sidebar h3,.panel h2,.panel h3,.section-header h3,.section-header h4{font-size:.92rem;letter-spacing:.08em}.member-list{gap:8px}.member-button{padding:9px 10px;gap:3px;font-size:.82rem;font-weight:600}.member-button span{font-size:.76rem}.sheet-card{gap:12px}.sheet-hero{padding:12px;gap:10px}.sheet-hero h3{font-size:1.15rem}.sheet-topline,.status-strip{gap:8px}.sheet-topline>div,.status-strip>div{min-width:0;padding:8px 10px}.sheet-block{padding:10px 12px}.sheet-block h4{font-size:.9rem}}@media (max-width: 280px){.ability-grid{grid-template-columns:1fr;gap:8px}.mini-detail-row,.compact-grid,.compact-ability-grid,.compact-mini-list{grid-template-columns:1fr}.mini-character-head{flex-direction:column;align-items:flex-start}.mini-score{width:100%;flex-direction:column;align-items:flex-start}.ability-box{min-height:86px;padding:7px 6px}.ability-box span{font-size:.52rem}.ability-box input{max-width:48px;font-size:.9rem}.ability-modifier-badge{width:58px;height:28px}.ability-modifier-input{font-size:.68rem}}
