:root{--font-display:"Cinzel", serif;--font-body:"Crimson Text", serif;--gray:#374151;--red-dark:#7f1d1d}:root,[data-theme=dark]{--bg:#0a0816;--surface:#16132a;--surface-alt:#12101f;--text:#e8edf5;--text-muted:#9ca3af;--text-dim:#6b7280;--border:#ffffff12;--border-light:#ffffff1c;--input-bg:#ffffff0d;--hover-bg:#ffffff08;--accent:#a78bfa;--purple:#7c3aed;--purple-light:#a78bfa;--orange:#f97316;--orange-dark:#b45309;--blue:#38bdf8;--green:#22c55e;--yellow:#f59e0b;--red:#ef4444;--glow-purple:color-mix(in srgb, var(--accent) 35%, transparent);--glow-orange:#f973164d;--cr-trivial:#94a3b8;--cr-low:#22c55e;--cr-medium:#eab308;--cr-hard:#f97316;--cr-deadly:#ef4444;--cr-epic:#a855f7;--cr-legend:#ec4899;--spell-lvl-0:#94a3b8;--spell-lvl-1:#22c55e;--spell-lvl-2:#84cc16;--spell-lvl-3:#eab308;--spell-lvl-4:#f97316;--spell-lvl-5:#ef4444;--spell-lvl-6:#e11d48;--spell-lvl-7:#a855f7;--spell-lvl-8:#ec4899;--spell-lvl-9:#f0abfc;--rarity-common:#9ca3af;--rarity-uncommon:#4ade80;--rarity-rare:#60a5fa;--rarity-veryrare:#a78bfa;--rarity-legendary:#fbbf24;--rarity-artifact:#f97316;--monster-accent:#f97316;--monster-accent-bg:#f973161a;--monster-accent-br:#f9731640;--char-accent:#a78bfa;--char-accent-bg:color-mix(in srgb, var(--accent) 10%, transparent);--char-accent-br:color-mix(in srgb, var(--accent) 25%, transparent);--spell-accent:#14b8a6;--spell-accent-bg:#14b8a61a;--spell-accent-br:#14b8a640;--item-accent:#fbbf24;--item-accent-bg:#fbbf241a;--item-accent-br:#fbbf2440;--tint-xs:#ffffff06;--tint-sm:#ffffff0d;--tint-md:#ffffff14;--tint-lg:#ffffff1f;--tint-xl:#ffffff26;--tint-2xl:#fff3;--tint-border-sm:#ffffff14;--tint-border-md:#ffffff26;--tint-border-lg:#ffffff40;--table-border:#ffffff2e;--shadow-sm:#0000004d;--shadow-md:#00000080;--shadow-lg:#0009;--overlay-modal:#000000bf}[data-theme=light]{--bg:#fff;--surface:#fff;--surface-alt:#f4f4f5;--text:#000;--text-muted:#27272a;--text-dim:#52525b;--border:#00000024;--border-light:#00000038;--input-bg:#fff;--hover-bg:#0000000a;--accent:#6d28d9;--purple:#6d28d9;--purple-light:#3b0764;--orange:#c2410c;--orange-dark:#9a3412;--blue:#0369a1;--green:#166534;--yellow:#b45309;--red:#b91c1c;--rarity-common:#52525b;--rarity-uncommon:#15803d;--rarity-rare:#1d4ed8;--rarity-veryrare:#6d28d9;--rarity-legendary:#b45309;--rarity-artifact:#c2410c;--spell-lvl-0:#475569;--spell-lvl-1:#15803d;--spell-lvl-2:#4d7c0f;--spell-lvl-3:#a16207;--spell-lvl-4:#c2410c;--spell-lvl-5:#b91c1c;--spell-lvl-6:#9f1239;--spell-lvl-7:#7e22ce;--spell-lvl-8:#be185d;--spell-lvl-9:#a21caf;--cr-trivial:#475569;--cr-low:#15803d;--cr-medium:#a16107;--cr-hard:#c2410c;--cr-deadly:#b91c1c;--cr-epic:#7e22ce;--cr-legend:#be185d;--monster-accent:#c2410c;--monster-accent-bg:#c2410c1a;--monster-accent-br:#c2410c40;--char-accent:#5b21b6;--char-accent-bg:#5b21b61a;--char-accent-br:#5b21b640;--spell-accent:#0f766e;--spell-accent-bg:#0f766e1a;--spell-accent-br:#0f766e40;--item-accent:#92400e;--item-accent-bg:#92400e1a;--item-accent-br:#92400e40;--glow-purple:color-mix(in srgb, var(--accent) 15%, transparent);--glow-orange:#c2410c26;--tint-xs:#00000006;--tint-sm:#0000000d;--tint-md:#00000014;--tint-lg:#0000001f;--tint-xl:#00000029;--tint-2xl:#00000038;--tint-border-sm:#0000001f;--tint-border-md:#0003;--tint-border-lg:#0000004d;--table-border:#0003;--shadow-sm:#00000014;--shadow-md:#00000024;--shadow-lg:#0003;--overlay-modal:#00000073}[data-theme=light] body{background-image:none}[data-theme=light] .panel-title--spell,[data-theme=light] .upload-status--spell .upload-status-text{color:var(--spell-accent)}[data-theme=light] .panel-title--item,[data-theme=light] .upload-status--item .upload-status-text{color:var(--item-accent)}[data-theme=light] .waffle-tile{background:var(--tint-xs);border-color:var(--tint-border-sm)}[data-theme=light] .waffle-tile:hover:not(.active){background:var(--tint-sm);border-color:var(--tint-border-md)}[data-theme=light] .waffle-tile.active .waffle-tile-label{font-weight:700;color:var(--text)!important}[data-theme=light] .waffle-btn:hover{background:var(--tint-sm);border-color:color-mix(in srgb, var(--accent) 35%, transparent)}[data-theme=light] .waffle-btn.open{background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:color-mix(in srgb, var(--accent) 40%, transparent)}[data-theme=light] .desc-table th,[data-theme=light] .desc-table td{border:1px solid var(--table-border);color:var(--text)}[data-theme=light] .desc-table thead th{color:#000;border-color:var(--table-border);background:#e4e4e7}[data-theme=light] .desc-table tbody tr:nth-child(odd) td{background:#fafafa}[data-theme=light] .desc-table tbody tr:nth-child(2n) td{background:#f4f4f5}[data-theme=light] .desc-table tbody td{color:#000}[data-theme=light] .item-table{border:1px solid var(--table-border);background:#fff}[data-theme=light] .item-table th,[data-theme=light] .item-table td{border-bottom:1px solid var(--table-border)}[data-theme=light] .item-table th{color:#000;background:#e4e4e7;border-bottom:2px solid #0006}[data-theme=light] .item-table td{color:#000}[data-theme=light] .item-table td:first-child{color:var(--accent)}[data-theme=light] .item-table tr:nth-child(2n) td{background:#fafafa}[data-theme=light] .item-table tr:hover td{background:#0000000a}[data-theme=light] .trait-desc,[data-theme=light] .stat-field-val{color:var(--text-muted)}[data-theme=light] .chk{border-color:var(--tint-border-md);background:var(--tint-xs);color:var(--text)}[data-theme=light] .chk:hover{border-color:var(--tint-border-lg)}[data-theme=light] .stat-box .val,[data-theme=light] .ab-cell .mod,[data-theme=light] .ab-cell-mini-score,[data-theme=light] .sb-key-val,[data-theme=light] .numpad-key,[data-theme=light] .spell-expand-btn{color:var(--text)}[data-theme=light] .tag--srd{color:#3730a3;background:#4338ca1a}[data-theme=light] .tag--pc{color:var(--char-accent);background:#5b21b61a}[data-theme=light] .tag--npc{background:#0369a11a}[data-theme=light] .spell-link,[data-theme=light] .item-table td em{color:var(--accent)}[data-theme=light] .spell-link:hover{color:#4c1d95;background:color-mix(in srgb, var(--accent) 10%, transparent)}[data-theme=light] .spell-badge--conc{color:#92400e}[data-theme=light] .spell-badge--ritual{color:var(--spell-accent)}[data-theme=light] .btn-tag-header,[data-theme=light] .btn--tag-sel{background:color-mix(in srgb, var(--accent) 8%, transparent);border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--accent)}[data-theme=light] .btn-tag-header:hover{background:color-mix(in srgb, var(--accent) 14%, transparent);border-color:color-mix(in srgb, var(--accent) 50%, transparent)}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:clip}body{background:var(--bg);width:100%;min-height:100vh;font-family:var(--font-body);color:var(--text);flex-direction:column;gap:14px;padding:16px;display:flex;overflow-x:clip}input[type=number]::-webkit-inner-spin-button{opacity:.3}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-thumb{background:color-mix(in srgb, var(--accent) 35%, transparent);border-radius:3px}::-webkit-scrollbar-track{background:0 0}@media (width>=761px){::-webkit-scrollbar{width:12px}::-webkit-scrollbar-thumb{border-radius:6px}}.page-header{border-bottom:1px solid color-mix(in srgb, var(--accent) 18%, transparent);align-items:center;gap:12px;padding-bottom:14px;display:flex;position:relative}.page-header:after{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--accent) 35%, transparent), transparent);height:1px;position:absolute;bottom:-1px;left:0;right:0}.page-title{font-family:var(--font-display);color:var(--purple-light);letter-spacing:3px;text-shadow:0 0 30px color-mix(in srgb, var(--accent) 25%, transparent);flex:1;font-size:24px}.page-subtitle{color:var(--text-dim);letter-spacing:3px;font-size:13px;font-family:var(--font-display)}#key-warning{color:#fca5a5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ef444414;border:1px solid #ef44444d;border-radius:12px;padding:14px 18px;font-size:14px}#key-warning strong{color:#f87171;font-family:monospace}.ipt{background:var(--input-bg);border:1px solid var(--border-light);color:var(--text);border-radius:10px;outline:none;width:100%;padding:10px 14px;font-family:inherit;font-size:15px;transition:border-color .2s,box-shadow .2s}.ipt:focus{border-color:color-mix(in srgb, var(--accent) 50%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 10%, transparent)}.row-input{background:var(--input-bg);border:1px solid var(--border-light);color:var(--text);text-align:center;border-radius:8px;outline:none;transition:border-color .2s}.row-input:focus{border-color:color-mix(in srgb, var(--accent) 40%, transparent)}.row-input--init{color:var(--purple-light);width:48px;padding:4px;font-size:18px;font-weight:700}.row-input--ac{width:48px;padding:4px;font-size:16px}.row-input--hp{width:72px;padding:4px 8px;font-size:15px}.row-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.row-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.row-input{-moz-appearance:textfield}.btn{color:#fff;cursor:pointer;font-size:14px;font-family:var(--font-display);letter-spacing:.5px;white-space:nowrap;touch-action:manipulation;border:none;border-radius:10px;padding:10px 18px;transition:transform .12s,box-shadow .2s,opacity .15s}.btn:active{opacity:.85;transform:scale(.97)}.btn:hover{box-shadow:0 4px 16px #0000004d}.btn--purple{background:linear-gradient(135deg, var(--purple), color-mix(in srgb, var(--purple) 85%, black))}.btn--orange{background:linear-gradient(135deg,#c2410c,#9a3412)}.btn--gray{background:var(--gray)}.btn--danger{background:linear-gradient(135deg,#991b1b,#7f1d1d)}.btn--full{width:100%}.btn--sm{padding:8px 14px}.btn--xs{padding:4px 12px;font-size:13px}.btn--icon{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:4px;font-size:36px;line-height:1;transition:color .15s}.btn--icon:hover{color:var(--red)}.divider{background:linear-gradient(90deg, transparent, var(--border-light), transparent);height:1px;margin:12px 0}.panel{background:var(--tint-xs);border:1px solid var(--tint-border-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:14px;padding:16px}.panel-title{font-size:20px;font-family:var(--font-display);letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}.panel-title--monster{color:var(--monster-accent);text-shadow:0 0 20px var(--monster-accent-bg)}.panel-title--character{color:var(--purple-light);text-shadow:0 0 20px color-mix(in srgb, var(--accent) 20%, transparent)}.tag{border-radius:99px;padding:2px 8px;font-size:12px}.tag--srd{color:#818cf8;background:#6366f126;padding:1px 6px}.tag--pc{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--char-accent)}.tag--npc{color:var(--blue);background:#38bdf826}.cond-tag{cursor:pointer;border-radius:99px;padding:3px 10px;font-size:13px;transition:transform .1s}.cond-tag:hover{transform:scale(1.05)}.type-tag--monster{background:var(--monster-accent-bg);color:var(--monster-accent);margin-left:6px}.type-tag--npc{color:var(--blue);background:#38bdf821;margin-left:6px}.type-tag--pc{background:color-mix(in srgb, var(--accent) 13%, transparent);color:var(--purple-light);margin-left:6px}.stat-grid{grid-template-columns:1fr 1fr;gap:5px;margin-bottom:8px;display:grid}.stat-box{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:8px;padding:5px 10px;transition:transform .15s}.stat-box:hover{transform:translateY(-1px)}.stat-box .lbl{font-size:11px;font-family:var(--font-display);letter-spacing:.5px;margin-bottom:1px}.stat-box .val{color:#fff;font-size:14px;font-weight:600}.ab-grid{grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:12px;display:grid}.ab-cell{text-align:center;background:#ffffff0a;border:1px solid #ffffff0a;border-radius:8px;padding:6px 2px;transition:border-color .15s}.ab-cell:hover{border-color:color-mix(in srgb, var(--accent) 20%, transparent)}.ab-cell--rollable{cursor:pointer}.ab-cell--rollable:hover{border-color:color-mix(in srgb, var(--accent) 50%, transparent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.ab-cell .lbl{color:var(--purple-light);font-size:11px;font-family:var(--font-display);letter-spacing:.5px}.ab-cell .mod{color:#fff;font-size:17px;font-weight:700}.ab-cell .score{color:var(--text-dim);font-size:11px}.entity-images{gap:10px;margin-bottom:12px;display:flex}.entity-images:empty{display:none}.entity-image-wrap{flex:1;min-width:0;position:relative}.entity-image{object-fit:contain;cursor:zoom-in;background:#0000004d;border-radius:10px;width:100%;max-height:240px;transition:transform .2s;display:block}.entity-image:hover{transform:scale(1.02)}.entity-img-del{color:#fff;cursor:pointer;opacity:0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;transition:opacity .2s,background .15s;display:flex;position:absolute;top:8px;right:8px}.entity-image-wrap:hover .entity-img-del{opacity:1}.entity-img-del:hover{background:#ef4444;border-color:#ef4444}.entity-name{font-family:var(--font-display);letter-spacing:.5px;margin-bottom:3px;font-size:22px}.entity-subtitle{color:var(--text-muted);margin-bottom:12px;font-size:14px;font-style:italic}.stat-field{margin-bottom:5px;font-size:14px;line-height:1.5}.stat-field-lbl{color:var(--purple-light);font-weight:600}.stat-field-val{color:#d1d5db}.trait-entry{margin-bottom:10px;font-size:14px;line-height:1.6}.trait-name{font-style:italic;font-weight:700}.trait-desc{color:#d1d5db}.section-heading{font-family:var(--font-display);letter-spacing:.5px;margin-bottom:8px;font-size:16px}.lore-text{color:var(--text-muted);font-size:14px;font-style:italic;line-height:1.7}.list-item{border:1px solid var(--border);background:#ffffff04;border-radius:12px;margin-bottom:8px;transition:border-color .2s,box-shadow .2s,transform .15s;overflow:hidden}.list-item:hover{border-color:#ffffff1f}.list-item.sel{border-color:var(--accent)}.list-item.checked{border-color:var(--accent);background:rgba(var(--accent-rgb), .06);box-shadow:0 0 16px rgba(var(--accent-rgb), .08)}.list-header{cursor:pointer;background:var(--hover-bg);justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;transition:background .15s;display:flex}.list-header:hover{background:#ffffff0a}.list-header.sel{background:rgba(var(--accent-rgb), .1)}.list-body{border-top:1px solid #ffffff0d;padding:16px;display:none}.list-body.open{animation:.2s fadeIn;display:block}:root:not([data-theme=light]) :is(.list-item,.sheet-row,.doc-row){background:color-mix(in srgb, var(--bg) 80%, var(--surface))}:root:not([data-theme=light]) .list-header{background:0 0}:root:not([data-theme=light]) :is(.list-header:hover,.sheet-row:hover,.doc-row:hover){background:color-mix(in srgb, var(--bg) 55%, var(--surface));border-color:var(--border-light)}:root:not([data-theme=light]) :is(.list-item.checked,.list-header.sel){background:color-mix(in srgb, var(--bg) 88%, var(--accent))}.comb-row{background:var(--tint-xs);border:1px solid var(--border);border-radius:14px;padding:14px 16px;transition:border-color .2s,box-shadow .25s,background .2s}.comb-row:hover{border-color:var(--tint-lg)}.comb-row.active{background:color-mix(in srgb, var(--accent) 12%, transparent);border-color:color-mix(in srgb, var(--accent) 50%, transparent);box-shadow:0 0 24px color-mix(in srgb, var(--accent) 20%, transparent), inset 0 0 40px color-mix(in srgb, var(--accent) 5%, transparent)}.comb-row.checked{border-color:var(--purple);background:color-mix(in srgb, var(--accent) 8%, transparent)}.comb-row.friendly{background:#22c55e0a;border-color:#22c55e59}.comb-row.hostile{background:#ef44440a;border-color:#ef444459}.comb-row.friendly:hover{border-color:#22c55e8c}.comb-row.hostile:hover{border-color:#ef44448c}.faction-btn{cursor:pointer;opacity:.85;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:2px;transition:opacity .15s;display:flex}.faction-btn:hover{opacity:1}.comb-row-header{align-items:center;gap:10px;margin-bottom:8px;display:flex}.comb-row-init{text-align:center}.comb-row-init-row{align-items:center;gap:6px;display:flex}.comb-row-init-lbl{color:var(--text-dim);margin-bottom:2px;font-size:16px}.comb-row-ac{align-items:center;gap:5px;display:flex}.comb-row-ac-lbl{color:var(--text-dim);font-size:13px}.comb-row-name{flex-direction:column;flex:1;align-items:flex-start;gap:2px;display:flex}.comb-name{font-size:17px;font-weight:600;font-family:var(--font-display)}.comb-row-right{grid-template-columns:auto auto auto;place-items:center;gap:5px 6px;display:grid}.comb-row-right-bot-cell{justify-content:center;align-items:center;display:flex}.comb-remove-btn{padding:2px 4px;font-size:22px}.comb-row-hp{align-items:center;gap:8px;margin-bottom:6px;display:flex}.comb-row-conds{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.hp-value{min-width:50px;font-size:16px;font-weight:700}.hp--high{color:var(--green)}.hp--mid{color:var(--yellow)}.hp--low{color:var(--red)}.type--monster{color:var(--monster-accent)}.type--npc{color:var(--blue)}.type--pc{color:var(--purple-light)}.hp-bar-bg{background:var(--tint-sm);border-radius:99px;height:5px}.hp-bar-fill{border-radius:99px;height:100%;transition:width .4s,background .3s}.cond-picker{display:inline-block;position:relative}.cond-dropdown{z-index:50;background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 20%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;flex-wrap:wrap;gap:5px;width:270px;margin-bottom:6px;padding:10px;display:flex;position:absolute;bottom:100%;left:0;box-shadow:0 8px 32px #00000080}.modal-overlay{background:var(--overlay-modal);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:100;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-box{background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);width:100%;max-width:380px;max-height:75vh;box-shadow:0 24px 64px var(--shadow-lg), 0 0 40px color-mix(in srgb, var(--accent) 10%, transparent);border-radius:18px;padding:22px;animation:.2s modalIn;overflow-y:auto}@keyframes modalIn{0%{opacity:0;transform:scale(.95)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-title{font-family:var(--font-display);color:var(--purple-light);letter-spacing:1px;margin-bottom:14px;font-size:17px}.tag-manager.modal-box{max-width:560px}.tag-manager--view.modal-box{max-width:720px}.tag-manager-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.tag-manager-name{overflow-wrap:anywhere;flex:1;min-width:100px}.tag-manager-rename{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.tag-manager-rename .ipt{flex:1;width:0;min-width:100px}.tag-manager-error{width:100%;color:var(--red);font-size:14px}.tagged-things-title{overflow-wrap:anywhere;margin-top:14px}.tagged-things-count{color:var(--text-muted);font-size:14px}.tagged-things-heading{font-family:var(--font-display);color:var(--text-muted);margin:18px 0 8px;font-size:14px}.tagged-thing{border:1px solid var(--border);background:var(--surface-alt);border-radius:8px;margin-bottom:8px}.tagged-thing summary{cursor:pointer;overflow-wrap:anywhere;padding:10px 12px}.tagged-thing summary:hover{background:var(--hover-bg)}.tagged-thing-name{color:var(--text);font-weight:600}.tagged-thing-meta{color:var(--text-dim);margin-top:3px;font-size:13px;display:block}.tagged-thing-details{color:var(--text);overflow-wrap:anywhere;padding:0 12px 12px}.tagged-thing-details>div+div{margin-top:8px}@media (width<=520px){.tag-manager-view{order:1;width:100%}}.confirm-inner{text-align:center;max-width:300px}.confirm-icon{margin-bottom:12px;font-size:50px}.confirm-title{font-family:var(--font-display);color:var(--monster-accent);text-shadow:0 0 16px var(--monster-accent-bg);margin-bottom:10px;font-size:18px}.confirm-msg{color:var(--text-muted);margin-bottom:22px;font-size:15px;line-height:1.5}.confirm-actions{gap:10px;display:flex}.dice-roll-popup{z-index:200;background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);text-align:center;min-width:200px;box-shadow:0 8px 32px #00000080, 0 0 24px color-mix(in srgb, var(--accent) 15%, transparent);border-radius:16px;padding:16px 24px;animation:.18s dicePopIn;position:fixed;top:64px;left:50%;transform:translate(-50%)}@keyframes dicePopIn{0%{opacity:0;transform:translate(-50%)scale(.9)translateY(-8px)}to{opacity:1;transform:translate(-50%)scale(1)translateY(0)}}.dice-roll-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:14px;line-height:1;position:absolute;top:8px;right:10px}.dice-roll-close:hover{color:var(--text)}.dice-roll-monster{color:var(--text-dim);font-size:11px;font-family:var(--font-display);letter-spacing:.5px;margin-bottom:2px}.dice-roll-ability{color:var(--purple-light);font-size:13px;font-family:var(--font-display);letter-spacing:.5px;margin-bottom:6px}.dice-roll-total{color:var(--text);margin-bottom:6px;font-size:48px;font-weight:700;line-height:1}.dice-roll-total.crit{color:var(--green)}.dice-roll-total.fumble{color:var(--red)}.dice-roll-breakdown{color:var(--text-muted);font-size:13px}.dice-roll-label{font-size:12px;font-weight:700}.crit-label{color:var(--green)}.fumble-label{color:var(--red)}.lightbox{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:200;background:#000000eb;justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.lightbox img{object-fit:contain;transform-origin:50%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:12px;max-width:92vw;max-height:92vh;transition:transform 50ms ease-out;box-shadow:0 0 80px #000c}#lightbox-close{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;z-index:201;background:#ffffff1a;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;font-size:22px;transition:background .15s;display:flex;position:fixed;top:18px;right:22px}#lightbox-close:hover{background:#ffffff38}.doc-card{background:var(--surface);cursor:pointer;border:1px solid #60a5fa40;border-radius:14px;padding:10px;transition:border-color .15s,transform .1s;position:relative}.doc-card:hover{border-color:#60a5fa8c;transform:translateY(-2px)}.doc-card-thumb{aspect-ratio:1;background:#60a5fa14;border-radius:10px;justify-content:center;align-items:center;width:100%;margin-bottom:8px;display:flex;overflow:hidden}.doc-card-thumb img{object-fit:cover;width:100%;height:100%}.doc-card-icon{font-size:40px}.doc-card-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.doc-card-meta{color:var(--text-dim);margin-top:2px;font-size:11px}.doc-card-delete,.doc-card-rename-btn{opacity:0;color:#fff;background:#0000008c;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;font-size:13px;transition:opacity .15s;display:flex;position:absolute;top:6px;right:6px}.doc-card-rename-btn{right:36px}.doc-card-rename-btn:hover{color:var(--blue)}.doc-card:hover .doc-card-delete,.doc-card:hover .doc-card-rename-btn{opacity:1}.doc-view-toggle{gap:6px;margin-left:auto;display:flex}.doc-list--grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;padding:4px 0;display:grid}.doc-list--list{flex-direction:column;gap:6px;padding:4px 0;display:flex}.doc-row{background:var(--surface);cursor:pointer;border:1px solid #60a5fa40;border-radius:12px;align-items:center;gap:12px;padding:6px 10px 6px 6px;transition:border-color .15s,background .15s;display:flex}.doc-row:hover{background:var(--hover-bg);border-color:#60a5fa8c}.doc-row-thumb{border-radius:8px;flex-shrink:0;width:56px;height:56px;margin-bottom:0}.doc-row-thumb .doc-card-icon{font-size:26px}.doc-row-info{flex:1;min-width:0}.doc-row .doc-card-name{font-size:14px}.doc-row .doc-card-delete,.doc-row .doc-card-rename-btn{opacity:.75;background:var(--tint-sm);width:30px;height:30px;color:var(--text-muted);flex-shrink:0;position:static}.doc-row .doc-card-delete:hover{color:var(--red);opacity:1}.doc-row .doc-card-rename-btn:hover{color:var(--blue);opacity:1}.doc-card-rename{box-sizing:border-box;width:100%;color:var(--text);background:var(--bg);border:1px solid #60a5fa8c;border-radius:4px;padding:2px 4px;font-size:13px}.doc-md-modal{max-width:640px}.doc-md-content{color:var(--text-muted);max-height:55vh;font-size:14px;line-height:1.6;overflow-y:auto}.doc-md-content h1,.doc-md-content h2,.doc-md-content h3{color:var(--purple-light);font-family:var(--font-display);letter-spacing:.5px;margin:14px 0 8px}.doc-md-content p{margin:0 0 10px}.doc-md-content code{background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:4px;padding:1px 5px;font-size:13px}.doc-md-content pre{background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:8px;padding:10px;overflow-x:auto}.doc-md-content table{border-collapse:collapse;width:100%;margin-bottom:10px}.doc-md-content th,.doc-md-content td{border:1px solid color-mix(in srgb, var(--accent) 20%, transparent);text-align:left;padding:4px 8px}.doc-md-content img{border-radius:8px;max-width:100%}.waffle-wrap{flex-shrink:0;position:relative}.waffle-btn{cursor:pointer;height:48px;color:var(--text-muted);background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;align-items:center;gap:8px;padding:0 14px;transition:all .2s;display:flex}.waffle-btn:hover{border-color:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--text);background:#ffffff14}.waffle-btn.open{background:color-mix(in srgb, var(--accent) 15%, transparent);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.waffle-icon{grid-template-columns:repeat(3,1fr);gap:3px;width:22px;height:22px;display:grid}.waffle-dot{opacity:.7;background:currentColor;border-radius:50%;width:5px;height:5px}.waffle-btn.open .waffle-dot{opacity:1;color:var(--purple-light)}.waffle-current{font-size:20px;line-height:1}.waffle-popover{background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 28%, transparent);box-shadow:0 12px 40px #0000008c, 0 0 0 1px color-mix(in srgb, var(--accent) 8%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);z-index:300;border-radius:14px;min-width:196px;padding:10px;position:absolute;top:calc(100% + 8px);left:0}.waffle-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.waffle-tile{aspect-ratio:1;cursor:pointer;color:var(--text-muted);background:#ffffff08;border:1px solid #ffffff0f;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:7px;transition:all .18s;display:flex}.waffle-tile:hover:not(.active){color:var(--text);background:#ffffff12;border-color:#ffffff1f;transform:translateY(-1px)}.waffle-tile-empty{aspect-ratio:1;border-radius:10px}.waffle-tile-icon{font-size:24px;line-height:1}.waffle-tile-label{font-size:11px;font-family:var(--font-display);letter-spacing:.8px;text-transform:uppercase}.menu-bar{z-index:400;background:var(--surface);border-bottom:1px solid color-mix(in srgb, var(--accent) 20%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);scrollbar-width:none;align-items:stretch;display:flex;position:fixed;top:0;left:0;right:0;overflow-x:auto;box-shadow:0 2px 16px #0006}.menu-bar::-webkit-scrollbar{display:none}.menu-bar-spacer{flex-shrink:0;height:48px}.menu-bar~.tab-content .sort-row,.menu-bar~.tab-content .sheet-tabs{top:49px}.menu-bar-item{height:48px;color:var(--text-muted);cursor:pointer;font-family:var(--font-display);letter-spacing:.6px;text-transform:uppercase;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;flex-shrink:0;align-items:center;gap:6px;padding:0 14px;font-size:12px;transition:color .15s,border-bottom-color .15s,background .15s;display:flex}.menu-bar-item:hover:not(.active){color:var(--text);background:#ffffff0a}.menu-bar-item.active{font-weight:700}.menu-bar-icon{font-size:16px;line-height:1}.menu-bar-label{font-size:11px}.tab-content{flex-direction:column;gap:14px;display:none}.tab-content.active{display:flex}#turn-bar{background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:12px;align-items:center;gap:8px;padding:12px 16px}.turn-label{text-align:center;font-family:var(--font-display);flex:1;font-size:15px}.turn-label-dim{color:var(--text-dim)}.composer{border:1px solid var(--monster-accent-br);background:var(--monster-accent-bg);border-radius:14px;transition:border-color .2s;overflow:hidden}.composer:focus-within{border-color:var(--monster-accent)}.composer-staged{flex-wrap:wrap;gap:8px;padding:12px 14px 0;display:flex}.composer-staged:empty{display:none}.composer-thumb{display:inline-block;position:relative}.composer-thumb-img{object-fit:cover;border:1px solid var(--monster-accent-br);border-radius:10px;width:72px;height:72px;display:block}.composer-thumb-remove{color:#fff;cursor:pointer;background:#ef4444;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:10px;line-height:1;transition:transform .1s;display:flex;position:absolute;top:-6px;right:-6px}.composer-thumb-remove:hover{transform:scale(1.1)}.composer-row{align-items:flex-end;gap:8px;padding:12px;display:flex}.composer-input{color:var(--text);font-size:18px;font-family:var(--font-body,inherit);resize:none;background:0 0;border:none;outline:none;flex:1;padding:4px 2px;line-height:1.5}.composer-input::placeholder{color:var(--text-dim)}.composer-upload-btn{cursor:pointer;width:38px;height:38px;color:var(--text-dim);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;transition:color .15s,background .15s;display:flex}.composer-upload-btn:hover{color:var(--monster-accent);background:var(--monster-accent-bg)}.composer-send-btn{background:linear-gradient(135deg, var(--orange), #ea580c);color:#fff;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;transition:transform .12s,box-shadow .15s;display:flex}.composer-send-btn:hover{box-shadow:0 4px 16px var(--monster-accent-br);transform:scale(1.05)}.composer--spell{background:#8b5cf608;border-color:#8b5cf64d}.composer--spell:focus-within{border-color:#8b5cf680}.composer--spell .composer-upload-btn:hover{color:var(--purple);background:color-mix(in srgb, var(--accent) 8%, transparent)}.composer-send-btn--spell{background:linear-gradient(135deg,#7c3aed,#6d28d9)}.composer--item{background:#fbbf2408;border-color:#fbbf244d}.composer--item:focus-within{border-color:#fbbf2480}.composer--item .composer-upload-btn:hover{color:#fbbf24;background:#fbbf2414}.composer-send-btn--item{background:linear-gradient(135deg,#b45309,#92400e)}.pic-composer{border:1px solid var(--monster-accent-br);background:var(--monster-accent-bg);border-radius:12px;margin-top:10px;animation:.2s fadeIn;overflow:hidden}.pic-composer-staged{flex-wrap:wrap;gap:8px;padding:10px 12px 0;display:flex}.pic-composer-staged:empty{display:none}.pic-composer-row{align-items:center;gap:8px;padding:10px 12px;display:flex}.pic-composer-hint{color:var(--text-dim);font-size:14px;font-family:var(--font-body,inherit);-webkit-user-select:none;user-select:none;flex:1}.pic-composer-upload-btn{cursor:pointer;width:34px;height:34px;color:var(--text-dim);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:color .15s;display:flex}.pic-composer-upload-btn:hover{color:var(--orange)}.pic-composer-send-btn{background:var(--orange);color:#fff;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;font-size:16px;transition:opacity .15s;display:flex}.pic-composer-send-btn:hover{opacity:.85}.upload-zone{border:2px dashed var(--monster-accent-br);text-align:center;cursor:pointer;background:var(--monster-accent-bg);border-radius:14px;padding:22px 14px;transition:border-color .2s,background .2s,transform .15s;display:block}.upload-zone:hover{transform:translateY(-1px)}.upload-zone.char{border-color:color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--accent) 3%, transparent)}.upload-zone.drag-over{border-color:var(--monster-accent);background:var(--monster-accent-bg)}.upload-zone.char.drag-over{border-color:color-mix(in srgb, var(--accent) 80%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent)}.upload-zone input{display:none}.upload-icon{margin-bottom:8px;font-size:32px}.upload-label{font-size:15px;font-family:var(--font-display);letter-spacing:.5px;margin-bottom:5px}.upload-label--monster{color:var(--monster-accent)}.upload-label--char{color:var(--purple-light)}.upload-hint{color:var(--text-dim);font-size:13px}.upload-row{gap:12px;display:flex}.upload-row .upload-zone{flex:1}.upload-status{text-align:center;border:2px dashed;border-radius:14px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:22px 14px}.upload-status--monster{border-color:var(--monster-accent-br);background:var(--monster-accent-bg)}.upload-status--char{border-color:color-mix(in srgb, var(--accent) 35%, transparent);background:color-mix(in srgb, var(--accent) 3%, transparent)}.upload-status-spinner{font-size:18px;animation:1s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.upload-status--monster .upload-status-text{color:var(--monster-accent);font-family:var(--font-display);font-size:15px}.upload-status--char .upload-status-text{color:var(--purple-light);font-family:var(--font-display);font-size:15px}.upload-error{color:var(--red);margin-bottom:10px;font-size:22px}.sort-row{z-index:100;background:var(--bg);align-items:center;gap:8px;margin-bottom:4px;padding:8px 14px;display:flex;position:sticky;top:0}.search-wrap{flex:1;align-items:center;max-width:320px;display:flex;overflow:hidden}.search-wrap.expanded{flex:1;max-width:320px}.search-icon-btn{cursor:pointer;width:34px;height:34px;color:var(--text-dim);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:16px;transition:color .15s;display:flex}.search-icon-btn:hover,.search-wrap.expanded .search-icon-btn{color:var(--text)}.search-wrap.has-value .search-icon-btn{color:var(--orange)}.search-input{opacity:1;pointer-events:auto;flex:1;min-width:0;margin-bottom:0!important}.search-info-btn{border:1px solid var(--border);background:var(--surface2);width:22px;height:22px;color:var(--text-dim);cursor:pointer;opacity:0;pointer-events:none;-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:4px;font-size:11px;font-style:normal;transition:opacity .15s;display:flex;position:relative}.search-wrap.expanded .search-info-btn{opacity:1;pointer-events:auto}.search-info-btn:after{content:attr(data-tip);background:var(--surface);min-width:180px;color:var(--text);border:1px solid var(--border);white-space:normal;pointer-events:none;opacity:0;z-index:200;border-radius:8px;padding:8px 12px;font-size:12px;line-height:1.4;transition:opacity .15s;position:absolute;bottom:calc(100% + 8px);right:0;box-shadow:0 8px 24px #00000080}.search-info-btn:hover:after,.search-info-btn.open:after{opacity:1}.sort-search{flex:1;margin-bottom:0!important}.sort-btn{border:1px solid var(--border);background:var(--tint-xs);color:var(--text-dim);cursor:pointer;border-radius:10px;flex-shrink:0;padding:8px 16px;font-size:16px;transition:all .2s}.sort-btn:hover{color:var(--text);border-color:var(--tint-border-md);background:var(--tint-sm)}.sort-btn--active{border-color:var(--accent,var(--monster-accent));color:var(--accent,var(--monster-accent));background:var(--monster-accent-bg)}.sel-all-btn{border:2px solid var(--tint-border-md);background:var(--tint-xs);color:#0000;cursor:pointer;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;padding:0;transition:border-color .15s,background .15s;display:flex;position:relative}.sel-all-btn:hover{border-color:var(--tint-border-lg)}.sel-all-btn:after{content:"";background:0 0;border-radius:1px;width:6px;height:6px;transition:background .15s;display:block}.sel-all-btn.partial{border-color:var(--tint-2xl)}.sel-all-btn.partial:after{background:var(--tint-2xl);border-radius:1px;width:8px;height:2px}.sel-all-btn.all{border-color:var(--monster-accent);background:var(--monster-accent-bg)}.sel-all-btn.all:after{border-left:2px solid var(--orange);border-bottom:2px solid var(--orange);background:0 0;border-radius:0;width:9px;height:5px;transform:rotate(-45deg)translate(1px,-1px)}.source-filter-wrap{position:relative}.source-menu{background:var(--surface);border:1px solid color-mix(in srgb, var(--accent) 15%, transparent);z-index:100;min-width:140px;max-width:calc(100vw - 16px);box-shadow:0 8px 32px var(--shadow-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:12px;padding:10px 14px;animation:.15s fadeIn;position:absolute;top:calc(100% + 6px);left:auto;right:0}.source-opt{color:var(--text-dim);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;padding:6px 0;font-size:14px;transition:color .15s;display:flex}.source-opt:hover{color:var(--text)}.source-opt input[type=checkbox],.source-opt input[type=radio]{accent-color:var(--purple);cursor:pointer}.source-subset{border-left:2px solid var(--border);margin:2px 0 6px 24px;padding-left:10px;transition:opacity .15s}.source-subset.disabled{opacity:.4;pointer-events:none}.filter-menu{min-width:270px;max-height:440px;overflow-y:auto}.filter-section{margin-bottom:14px}.filter-section:last-child{margin-bottom:0}.filter-section-lbl{color:var(--text-dim);text-transform:uppercase;letter-spacing:.1em;font-size:10px;font-weight:600;font-family:var(--font-display);margin-bottom:8px}.filter-chips{flex-wrap:wrap;gap:5px;display:flex}.filter-chip{cursor:pointer;border:1px solid var(--border);color:var(--text-dim);background:var(--input-bg);-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:20px;align-items:center;padding:3px 10px;font-size:12px;transition:all .15s;display:inline-flex}.filter-chip:hover{color:var(--text);background:#ffffff0f;border-color:#ffffff40}.filter-chip.active{border-color:var(--purple);color:var(--purple-light);background:color-mix(in srgb, var(--accent) 10%, transparent)}.chk{cursor:pointer;color:#fff;background:#ffffff08;border:2px solid #ffffff26;border-radius:5px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;font-size:20px;transition:all .15s;display:flex}.chk:hover{border-color:#ffffff4d}.chk.on{background:var(--purple);border-color:var(--purple);box-shadow:0 0 8px color-mix(in srgb, var(--accent) 30%, transparent)}.sel-bar{background:var(--surface-alt);border-top:1px solid color-mix(in srgb, var(--accent) 30%, transparent);z-index:90;flex-wrap:wrap;align-items:center;gap:10px;padding:14px 18px;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:visible;box-shadow:0 -8px 32px #00000080}.sel-count{color:var(--purple-light);font-family:var(--font-display);letter-spacing:1px;flex:1;font-size:14px}body.has-sel-bar{padding-bottom:80px}.combatant-form-panel{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;overflow:hidden}.combatant-form-toggle{width:100%;color:var(--purple-light);font-family:var(--font-display);letter-spacing:1px;cursor:pointer;background:0 0;border:none;justify-content:space-between;align-items:center;padding:10px 14px;font-size:13px;transition:background .15s;display:flex}.combatant-form-toggle:hover{background:#ffffff0a}.combatant-form-chevron{color:var(--text-dim);font-size:10px}.combatant-form-body{padding:0 12px 12px}.combatant-form-grid{grid-template-columns:1fr 72px 72px 72px;gap:8px;margin-top:8px;margin-bottom:10px;display:grid}.combatant-form-btns{align-items:center;gap:8px;display:flex}.ipt--num{-webkit-appearance:none;-moz-appearance:textfield;text-align:center;padding:10px 6px}.ipt--num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.ipt--num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mult-x{color:var(--text-dim);font-size:16px;font-weight:600}.mult-row-ctrl{border:1px solid var(--border);background:#ffffff08;border-radius:8px;align-items:center;gap:3px;height:34px;padding:2px 5px 2px 8px;transition:border-color .15s;display:flex}.mult-row-ctrl:hover{border-color:#ffffff26}.mult-row-input{width:28px;color:var(--orange);text-align:center;-moz-appearance:textfield;background:0 0;border:none;outline:none;padding:0;font-size:17px;font-weight:700}.mult-row-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.mult-row-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mult-row-go{background:var(--monster-accent-bg);width:24px;height:24px;color:var(--monster-accent);cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:14px;font-weight:700;line-height:1;transition:background .15s;display:flex}.mult-row-go:hover{background:var(--monster-accent-br)}.mult-row-toggle{border:1px solid var(--border);height:34px;color:var(--text-dim);cursor:pointer;white-space:nowrap;background:#ffffff08;border-radius:8px;padding:0 9px;font-size:13px;font-weight:600;transition:border-color .15s,color .15s}.mult-row-toggle:hover{color:var(--orange);border-color:#ffffff26}.picker-tabs{gap:6px;margin-bottom:14px;display:flex}.picker-tab-btn{background:var(--input-bg);border-radius:10px;flex:1;padding:8px 12px;font-size:14px;transition:all .15s}.picker-tab-btn.active{background:var(--purple);box-shadow:0 4px 12px color-mix(in srgb, var(--accent) 30%, transparent)}.picker-item{cursor:pointer;color:var(--text);border-radius:10px;margin-bottom:6px;padding:12px 16px;font-size:15px;transition:all .15s}.picker-item:hover{transform:translate(2px)}.picker-item--monster{background:var(--monster-accent-bg);border:1px solid var(--monster-accent-br)}.picker-item--monster:hover{border-color:var(--monster-accent)}.picker-item--char{background:color-mix(in srgb, var(--accent) 6%, transparent);border:1px solid color-mix(in srgb, var(--accent) 15%, transparent)}.picker-item--char:hover{border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.picker-item-name{font-weight:600;font-family:var(--font-display);font-size:15px}.picker-item-name--monster{color:var(--monster-accent)}.picker-item-name--char{color:var(--purple-light)}.picker-item-sub{color:var(--text-muted);font-size:13px}.empty-state{color:var(--text-dim);text-align:center;font-family:var(--font-display);letter-spacing:1px;padding:48px 20px;font-size:16px}.panel-title--spell{color:#14b8a6;text-shadow:0 0 20px #14b8a633}.upload-zone.spell{background:#14b8a608;border-color:#14b8a659}.upload-zone.spell.drag-over{background:#14b8a61a;border-color:#14b8a6cc}.upload-label--spell{color:#14b8a6}.upload-status--spell{background:#14b8a608;border-color:#14b8a659}.upload-status--spell .upload-status-text{color:#14b8a6;font-family:var(--font-display);font-size:15px}.btn--spell{background:linear-gradient(135deg,#0f766e,#0d9488)}.spell-input-toggle{gap:6px;margin-bottom:12px;display:flex}.spell-mode-btn{background:var(--input-bg);border:1px solid var(--border);color:var(--text-muted);border-radius:10px;flex:1;padding:8px 12px;font-size:15px;transition:all .15s}.spell-mode-btn.active{color:#fff;background:linear-gradient(135deg,#0f766e,#0d9488);border-color:#0f766e}.spell-textarea{resize:vertical;min-height:160px;line-height:1.6}.spell-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.spell-card{background:var(--surface);border:2px solid #ffffff0f;border-radius:16px;transition:all .2s;overflow:hidden}.spell-card:hover{border-color:#ffffff1a;transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.spell-card.checked{border-color:var(--spell-accent,var(--purple));box-shadow:0 0 20px color-mix(in srgb, var(--spell-accent,var(--purple)) 25%, transparent)}.spell-card-header{background:color-mix(in srgb, var(--spell-accent,var(--purple)) 72%, #000);align-items:flex-start;gap:8px;padding:12px 14px;display:flex;position:relative}.spell-card-header:after{content:"";background:linear-gradient(90deg,#0000,#ffffff26,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}.spell-card-chk-wrap{flex-shrink:0;padding-top:2px}.spell-card-title{flex:1;min-width:0}.spell-card-name{font-family:var(--font-display);color:#fff;word-break:break-word;text-shadow:0 2px 6px #00000080;letter-spacing:.5px;font-size:18px;font-weight:700;line-height:1.25}.spell-card-meta{color:#ffffffd9;text-transform:capitalize;text-shadow:0 1px 4px #0006;margin-top:4px;font-size:16px}.spell-card-body{padding:14px}.spell-props{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.spell-prop{gap:8px;font-size:18px;line-height:1.3;display:flex}.spell-prop-lbl{color:var(--text-dim);flex-shrink:0;min-width:68px}.spell-prop-val{color:var(--text)}.spell-desc{color:var(--text-muted);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin-bottom:10px;font-size:18px;line-height:1.6;display:-webkit-box;overflow:hidden}.spell-desc.expanded{-webkit-line-clamp:unset;display:block;overflow:visible}.spell-expand-btn{color:#ffffffb3;cursor:pointer;border-radius:4px;flex-shrink:0;padding:2px 6px;font-size:18px;transition:color .15s}.spell-expand-btn:hover{color:#fff;background:#ffffff0d}.spell-higher{color:var(--text-muted);margin-bottom:10px;font-size:18px;font-style:italic;line-height:1.55}.spell-higher-lbl{color:var(--text);font-style:normal;font-weight:700}.spell-summon-block{background:var(--tint-xs);border:1px solid var(--spell-accent,var(--tint-border-sm));border-radius:12px;margin-bottom:10px;padding:12px 14px}.spell-summon-label{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--spell-accent,var(--text-dim));margin-bottom:8px;font-size:13px}.spell-badges{flex-wrap:wrap;gap:5px;display:flex}.spell-badge{color:var(--text-muted);background:#ffffff0f;border:1px solid #ffffff0d;border-radius:99px;padding:3px 10px;font-size:16px}.spell-badge--conc{color:var(--yellow);background:#f59e0b26;border-color:#f59e0b33}.spell-badge--ritual{color:#14b8a6;background:#14b8a626;border-color:#14b8a633}.panel-title--item{color:#fbbf24;text-shadow:0 0 20px #fbbf2433}.upload-zone.item{background:#fbbf2408;border-color:#fbbf2459}.upload-zone.item.drag-over{background:#fbbf241a;border-color:#fbbf24cc}.upload-label--item{color:#fbbf24}.upload-status--item{background:#fbbf2408;border-color:#fbbf2459}.upload-status--item .upload-status-text{color:#fbbf24;font-family:var(--font-display);font-size:15px}.btn--item{background:linear-gradient(135deg,#b45309,#92400e)}.spell-mode-btn.item-active{color:#fff;background:linear-gradient(135deg,#b45309,#92400e);border-color:#b45309}.item-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.item-card{background:var(--surface);border:2px solid #ffffff0f;border-radius:16px;transition:all .2s;overflow:hidden}.item-card:hover{border-color:#ffffff1a;transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.item-card.checked{border-color:var(--item-accent,var(--yellow));box-shadow:0 0 20px color-mix(in srgb, var(--item-accent,var(--yellow)) 25%, transparent)}.item-card-header{background:var(--item-accent,#b45309);align-items:flex-start;gap:8px;padding:12px 14px;display:flex;position:relative}.item-card-header:after{content:"";background:linear-gradient(90deg,#0000,#ffffff26,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}.item-card-chk-wrap{flex-shrink:0;padding-top:2px}.desc-clamped{-webkit-line-clamp:5;line-clamp:5;white-space:normal;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.desc-clamped.expanded{-webkit-line-clamp:unset;line-clamp:unset;display:block;overflow:visible}.item-card-title{flex:1;min-width:0}.item-card-name{font-family:var(--font-display);color:#fff;word-break:break-word;text-shadow:0 1px 4px #0006;font-size:15px;font-weight:700;line-height:1.2}.item-card-meta{color:#ffffffbf;text-transform:capitalize;margin-top:3px;font-size:18px}.item-card-body{padding:14px}.item-props{flex-direction:column;gap:4px;margin-bottom:10px;display:flex}.item-prop{gap:8px;font-size:18px;line-height:1.3;display:flex}.item-prop-lbl{color:var(--text-dim);flex-shrink:0;min-width:68px}.item-prop-val{color:var(--text);text-transform:capitalize}.item-desc{color:var(--text-muted);margin-bottom:10px;font-size:18px;line-height:1.6}.desc-para{margin:0 0 .85em}.desc-para:last-child{margin-bottom:0}.item-properties{color:var(--text-muted);margin-bottom:10px;font-size:18px;font-style:italic;line-height:1.55}.item-badge{color:var(--text-muted);background:#ffffff0f;border:1px solid #ffffff0d;border-radius:99px;padding:3px 10px;font-size:16px;display:inline-block}.item-badge--attune{color:#fbbf24;background:#fbbf241f;border-color:#fbbf2440}.edit-form{padding:4px 0}.ef-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px;display:grid}.ef{flex-direction:column;gap:5px;display:flex}.ef--full{grid-column:1/-1}.ef-lbl{color:var(--text-dim);font-size:15px;font-family:var(--font-display);letter-spacing:.3px}.ef-ipt{padding:8px 12px;font-size:17px;margin-bottom:0!important}.ef-ta{resize:none;white-space:pre-wrap;padding:8px 12px;font-size:17px;overflow:hidden;margin-bottom:0!important}.ef-flags{flex-direction:row;grid-column:1/-1;align-items:center;gap:20px}.ef-chk{color:var(--text);cursor:pointer;align-items:center;gap:6px;font-size:17px;display:flex}.ef-btns{gap:10px;display:flex}.btn-edit{border:1px solid var(--tint-border-sm);background:var(--tint-sm);color:var(--text-dim);cursor:pointer;border-radius:8px;align-items:center;gap:5px;padding:6px 16px;font-size:16px;transition:all .15s;display:inline-flex}.btn-edit:hover{color:var(--text);border-color:var(--tint-border-md);background:var(--tint-md)}.btn--gray{background:var(--tint-sm);color:var(--text-dim);border:1px solid var(--tint-border-sm)}.btn--gray:hover{background:var(--tint-md)}.hl-dice{color:#f87171;font-weight:600}.hl-dc{color:#fbbf24;font-weight:600}.hl-ability{color:#60a5fa;font-weight:600}.hl-success{color:#4ade80;font-weight:600}.hl-failure{color:#f87171;font-weight:600}.hl-hit{color:#fb923c;font-weight:600}.hl-miss{color:#a78bfa;font-weight:600}.desc-table-caption{color:var(--text);margin-bottom:4px;font-size:14px;font-style:italic;font-weight:700}caption.desc-table-caption{caption-side:top;text-align:left;color:var(--text);padding-bottom:4px;font-size:14px;font-style:italic;font-weight:700}.desc-table{border-collapse:collapse;width:100%;margin:10px 0;font-size:15px}.desc-table th,.desc-table td{border:1px solid var(--table-border);text-align:left;vertical-align:top;padding:6px 14px}.desc-table thead th{color:var(--text);letter-spacing:.02em;background:#ffffff0f;font-size:14px;font-weight:700}.desc-table tbody tr:nth-child(2n) td{background:#ffffff06}.desc-table tbody td{color:var(--text-muted)}.spell-show-more{width:100%;color:var(--text-dim);font-size:14px;font-family:var(--font-body);cursor:pointer;text-align:center;letter-spacing:.04em;background:0 0;border:none;border-top:1px solid #ffffff0f;margin-top:10px;padding:6px 0;transition:color .15s;display:block}.spell-show-more:hover{color:var(--text)}#sel-share-wrap{position:relative}#share-menu{position:absolute;left:auto;right:0}@media (width<=520px){body{gap:10px;padding:10px}.sort-row{flex-wrap:wrap}.sort-search{min-width:0}.combatant-form-grid{grid-template-columns:1fr 1fr}.comb-row-init-lbl,.comb-row-ac-lbl{font-size:13px}.row-input--init{width:40px;font-size:23px}.row-input--ac{width:40px;font-size:20px}.row-input--hp{width:60px}.mult-row-ctrl,.stat-block-btn{display:none}.comb-row-header{gap:6px}.stat-grid{grid-template-columns:1fr 1fr}.ab-grid{grid-template-columns:repeat(3,1fr)}.ef-grid{grid-template-columns:1fr}.spell-grid{grid-template-columns:1fr!important}.filter-menu{min-width:min(270px,90vw)}.sel-bar{gap:6px;padding:12px 14px}.sel-count{font-size:16px}body.has-sel-bar{padding-bottom:130px}.page-title{font-size:18px}.page-subtitle{font-size:12px}.modal-box{padding:16px}}#turn-banner{display:none}.turn-banner-inner{background:linear-gradient(135deg, color-mix(in srgb, var(--accent) 30%, transparent) 0%, color-mix(in srgb, var(--accent) 8%, transparent) 100%);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);box-shadow:0 0 32px color-mix(in srgb, var(--accent) 15%, transparent), inset 0 0 40px color-mix(in srgb, var(--accent) 5%, transparent);border-radius:16px;padding:16px 18px;position:relative;overflow:hidden}.turn-banner-inner:before{content:"";background:radial-gradient(ellipse at 30% 50%, color-mix(in srgb, var(--accent) 10%, transparent), transparent 70%);pointer-events:none;position:absolute;inset:0}.turn-banner-label{letter-spacing:.2em;color:var(--purple-light);text-transform:uppercase;opacity:.8;font-size:10px;font-family:var(--font-display);margin-bottom:6px}.turn-banner-row{align-items:center;gap:12px;margin-bottom:12px;display:flex}.turn-banner-info{flex:1}.turn-banner-name{font-family:var(--font-display);color:var(--text);text-shadow:0 0 16px color-mix(in srgb, var(--accent) 30%, transparent);margin-bottom:3px;font-size:21px;font-weight:700}.turn-banner-meta{color:var(--text-muted);font-size:13px}.turn-banner-controls{align-items:center;gap:6px;display:flex}.turn-banner-controls button{border:1px solid var(--tint-border-md);background:var(--tint-md);width:38px;height:38px;color:var(--text);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:10px;justify-content:center;align-items:center;font-size:18px;transition:all .15s;display:flex}.turn-banner-controls button:hover{background:var(--tint-xl);border-color:var(--tint-border-lg)}.turn-banner-controls button:last-child{color:#fca5a5;width:auto;font-size:12px;font-family:var(--font-display);letter-spacing:.5px;background:#ef444433;border-color:#ef444466;padding:0 12px}.turn-banner-controls button:last-child:hover{background:#ef444459}.turn-banner-bar-bg{background:var(--tint-sm);border-radius:99px;height:5px}.turn-banner-bar-fill{border-radius:99px;height:100%;transition:width .4s,background .3s}.init-badge{background:var(--tint-sm);border:1px solid var(--tint-border-sm);cursor:pointer;font-family:var(--font-body);text-align:center;border-radius:10px;padding:5px 12px;transition:all .2s}.init-badge:hover{border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.init-badge.open{border-color:var(--purple-light);background:color-mix(in srgb, var(--accent) 20%, transparent);box-shadow:0 0 12px color-mix(in srgb, var(--accent) 20%, transparent)}.init-val{color:var(--purple-light);font-size:18px;font-weight:700}.numpad-key--sign{background:color-mix(in srgb, var(--accent) 15%, transparent);color:var(--purple-light)}.init-numpad-box{width:220px}.hp-badge{background:var(--tint-sm);border:1px solid var(--tint-border-sm);cursor:pointer;font-size:14px;font-weight:700;font-family:var(--font-body);text-align:center;border-radius:10px;min-width:90px;padding:4px 12px;transition:all .2s}.hp-badge:hover{border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.hp-badge.open{border-color:var(--purple-light);background:color-mix(in srgb, var(--accent) 20%, transparent);box-shadow:0 0 12px color-mix(in srgb, var(--accent) 20%, transparent)}.numpad{background:var(--surface-alt);border:1px solid var(--border);border-radius:12px;margin:8px 0;padding:12px}.numpad-mode-row{align-items:center;gap:5px;margin-bottom:8px;display:flex}.numpad-mode-btn{cursor:pointer;border:1px solid var(--tint-border-sm);color:var(--text-dim);font-size:15px;font-weight:700;font-family:var(--font-body);background:0 0;border-radius:8px;flex:1;padding:6px 0;transition:all .15s}.numpad-mode-btn.active{background:var(--purple);border-color:var(--purple);color:#fff;box-shadow:0 4px 12px color-mix(in srgb, var(--accent) 25%, transparent)}.numpad-display{background:var(--tint-sm);text-align:right;border:1px solid var(--border);color:var(--text);border-radius:8px;flex:2;padding:6px 12px;font-family:monospace;font-size:16px;font-weight:700}.numpad-grid{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.numpad-key{background:var(--tint-sm);color:var(--text);cursor:pointer;font-size:15px;font-family:var(--font-body);border:none;border-radius:8px;padding:8px 0;transition:background .12s}.numpad-key:hover{background:var(--tint-md)}.numpad-key--confirm{background:var(--purple);font-weight:700}.numpad-key--confirm:hover{background:#6d28d9}.numpad-key--del{color:#f87171;background:#ef44441f}.numpad-key--del:hover{background:#ef444433}.btn-tag-header{background:color-mix(in srgb, var(--accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--accent) 20%, transparent);color:var(--accent);cursor:pointer;font-size:16px;font-family:var(--font-body);border-radius:10px;flex-shrink:0;padding:6px 14px;transition:all .15s}.btn-tag-header:hover{background:color-mix(in srgb, var(--accent) 18%, transparent);border-color:color-mix(in srgb, var(--accent) 35%, transparent)}.btn--tag-sel{background:color-mix(in srgb, var(--accent) 15%, transparent);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);color:var(--accent)}.cond-sheet-box{background:var(--surface);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid #ffffff1a;border-radius:18px 18px 0 0;max-height:70vh;padding:18px;animation:.2s slideUp;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -12px 40px #00000080}.cond-sheet-header{font-family:var(--font-display);color:var(--text-muted);letter-spacing:1px;text-transform:uppercase;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:13px;display:flex}.cond-sheet-header button{color:var(--text-dim);cursor:pointer;background:0 0;border:none;font-size:20px}.cond-sheet-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.cond-sheet-item{cursor:pointer;color:var(--text-muted);font-size:14px;font-family:var(--font-body);text-align:left;background:#ffffff08;border:1px solid #ffffff0f;border-radius:12px;padding:14px 16px;transition:all .15s}.cond-sheet-item:hover{background:#ffffff0f;border-color:#ffffff1a}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.stat-block-btn{cursor:pointer;color:var(--text-dim);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:4px;padding:4px 10px;font-size:13px;transition:all .15s;display:inline-flex}.stat-block-btn:hover{border-color:var(--monster-accent-br);color:var(--text)}.stat-block-btn.open{background:var(--monster-accent-bg);border-color:var(--monster-accent-br);color:var(--monster-accent)}.stat-block-btn-arrow{font-size:10px;font-family:var(--font-display)}.stat-block-inline{border-top:1px solid var(--monster-accent-br);background:var(--monster-accent-bg);padding:14px 16px;animation:.2s fadeIn}.stat-block-inline--empty{color:var(--text-dim);border-top:1px solid #ffffff0d;padding:12px 16px;font-size:13px;font-style:italic}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.sb-subtitle{color:var(--text-muted);margin-bottom:10px;font-size:13px;font-style:italic}.sb-key-row{grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:10px;display:grid}.sb-key{background:#ffffff09;border:1px solid #ffffff0a;border-radius:8px;padding:6px 10px}.sb-key-lbl{color:var(--text-dim);font-size:10px;font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px}.sb-key-val{color:#fff;font-size:13px;font-weight:600}.ab-grid-mini{grid-template-columns:repeat(6,1fr);gap:4px;margin-bottom:10px;display:grid}.ab-cell-mini{text-align:center;background:#ffffff09;border-radius:6px;padding:4px 2px}.ab-cell-mini-lbl{color:var(--purple-light);font-size:10px;font-family:var(--font-display)}.ab-cell-mini-score{color:#fff;font-size:14px;font-weight:700}.ab-cell-mini-mod{color:var(--text-dim);font-size:11px}.sb-field{color:var(--text-muted);margin-bottom:3px;font-size:13px}.sb-field-lbl{color:var(--purple-light);font-weight:600}.sb-divider{background:linear-gradient(90deg,#0000,#ffffff0f,#0000);height:1px;margin:8px 0}.sb-section-heading{font-family:var(--font-display);color:var(--monster-accent);text-transform:uppercase;letter-spacing:1px;margin-bottom:6px;font-size:12px}.sb-entry{margin-bottom:6px;font-size:13px;line-height:1.55}.sb-entry-name{color:var(--text);font-style:italic;font-weight:700}.sb-entry-desc{color:var(--text-muted)}.sb-jump-btn{background:var(--monster-accent-bg);border:1px solid var(--monster-accent-br);color:var(--monster-accent);cursor:pointer;font-size:11px;font-family:var(--font-display);letter-spacing:1px;border-radius:8px;margin-top:10px;padding:6px 16px;transition:all .15s}.sb-jump-btn:hover{background:var(--monster-accent-br);border-color:var(--monster-accent)}.fab-btn{background:var(--fab-color,var(--orange));color:#fff;cursor:pointer;width:56px;height:56px;box-shadow:0 6px 24px #0006, 0 0 28px var(--fab-color,var(--orange));z-index:300;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:30px;line-height:1;transition:transform .2s,box-shadow .2s,background .2s,bottom .2s;display:flex;position:fixed;bottom:24px;right:20px}.fab-btn:hover{box-shadow:0 8px 32px #00000080, 0 0 36px var(--fab-color,var(--orange));transform:scale(1.1)}.fab-btn:active{transform:scale(.95)}.fab-btn.open{transform:rotate(45deg)}.fab-btn.fab-above-bar{bottom:80px}.fab-sheet{z-index:400;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.fab-sheet-box{background:var(--surface);border-top:1px solid #ffffff14;border-radius:20px 20px 0 0;width:100%;max-height:86vh;padding:14px 18px 32px;animation:.22s cubic-bezier(.32,0,.67,0) forwards fabSheetSlideUp;overflow-y:auto;box-shadow:0 -16px 48px #0006}.fab-sheet-handle{background:#ffffff26;border-radius:99px;width:40px;height:4px;margin:0 auto 16px}.fab-section-title{font-family:var(--font-display);letter-spacing:.05em;margin-bottom:14px;font-size:18px;font-weight:700}@keyframes fabSheetSlideUp{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.chat-sheet{flex-direction:column;gap:10px;display:flex}.chat-header{align-items:center;gap:8px;margin-bottom:2px;display:flex}.chat-entity-tabs{flex-wrap:wrap;flex:1;gap:4px;display:flex}.chat-entity-tab{border:1px solid var(--border-light);background:var(--input-bg);color:var(--text-muted);font-size:12px;font-family:var(--font-display);letter-spacing:.05em;cursor:pointer;border-radius:20px;padding:4px 12px;transition:all .15s}.chat-entity-tab:disabled{opacity:.4;cursor:default}.chat-entity-tab--active.chat-entity-tab--monster{border-color:var(--monster-accent-br);background:var(--monster-accent-bg);color:var(--monster-accent)}.chat-entity-tab--active.chat-entity-tab--spell{border-color:var(--spell-accent-br);background:var(--spell-accent-bg);color:var(--spell-accent)}.chat-entity-tab--active.chat-entity-tab--item{border-color:var(--item-accent-br);background:var(--item-accent-bg);color:var(--item-accent)}.chat-entity-tab--active.chat-entity-tab--char{border-color:var(--char-accent-br);background:var(--char-accent-bg);color:var(--char-accent)}.chat-entity-tab--active.chat-entity-tab--auto{border-color:var(--tint-border-sm);background:var(--tint-md);color:var(--text)}.chat-entity-tab:not(:disabled):hover{background:var(--hover-bg);color:var(--text)}.chat-clear-btn{border:1px solid var(--border-light);color:var(--text-dim);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;padding:4px 9px;font-size:15px;transition:all .15s}.chat-clear-btn:hover{color:var(--text);background:var(--hover-bg)}.chat-messages{flex-direction:column;gap:8px;min-height:60px;max-height:38vh;padding:4px 0;display:flex;overflow-y:auto}.chat-empty{color:var(--text-dim);text-align:center;padding:16px 0 8px;font-size:13px}.chat-message{border-radius:12px;max-width:92%;padding:8px 12px;font-size:13px;line-height:1.5}.chat-message--user{background:var(--tint-md);border:1px solid var(--tint-border-sm);color:var(--text);border-bottom-right-radius:4px;align-self:flex-end}.chat-message--assistant{background:var(--surface-alt);border:1px solid var(--border);color:var(--text-muted);border-bottom-left-radius:4px;align-self:flex-start}.chat-message--error{color:#f87171;background:#ef44440f;border-color:#ef444459}.chat-message--loading{color:var(--text-dim);background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:6px 0;font-size:13px;display:flex}.chat-message--assistant .chat-message-text p{margin:0 0 8px}.chat-message--assistant .chat-message-text p:last-child{margin-bottom:0}.chat-message--assistant .chat-message-text ul,.chat-message--assistant .chat-message-text ol{margin:0 0 8px;padding-left:20px}.chat-message--assistant .chat-message-text h1,.chat-message--assistant .chat-message-text h2,.chat-message--assistant .chat-message-text h3{color:var(--purple-light);font-family:var(--font-display);letter-spacing:.5px;margin:10px 0 6px}.chat-message--assistant .chat-message-text code{background:color-mix(in srgb, var(--accent) 12%, transparent);border-radius:4px;padding:1px 5px;font-size:13px}.chat-message--assistant .chat-message-text pre{background:color-mix(in srgb, var(--accent) 8%, transparent);border-radius:8px;margin:0 0 8px;padding:10px;overflow-x:auto}.chat-message--assistant .chat-message-text pre code{background:0 0;padding:0}.chat-message--assistant .chat-message-text table{border-collapse:collapse;width:100%;margin-bottom:8px}.chat-message--assistant .chat-message-text th,.chat-message--assistant .chat-message-text td{border:1px solid color-mix(in srgb, var(--accent) 20%, transparent);text-align:left;padding:4px 8px}.chat-message-images{flex-wrap:wrap;gap:6px;margin-bottom:6px;display:flex}.chat-message-thumb{object-fit:cover;border:1px solid var(--border-light);border-radius:6px;width:96px;height:96px}.chat-message--note{background:0 0;border:none;align-self:flex-start;padding:4px 0;font-size:13px}.chat-message--note-success{color:#4ade80}.chat-message--note-discard{color:#f87171}.chat-entity-summary-wrap{border-top:1px solid var(--border);margin-top:8px;padding-top:8px}.chat-message--assistant .chat-entity-summary-wrap{border-top-color:#ffffff12}.chat-entity-summary-wrap--img{gap:10px;display:flex}.chat-entity-summary-img{object-fit:cover;border:1px solid var(--border-light);cursor:pointer;border-radius:8px;flex-shrink:0;width:110px;height:140px}.chat-entity-summary-fields{flex:1;min-width:0}.chat-entity-detected{font-size:11px;font-family:var(--font-display);letter-spacing:.05em;margin-bottom:6px}.chat-entity-detected--monster{color:var(--monster-accent)}.chat-entity-detected--spell{color:var(--spell-accent)}.chat-entity-detected--item{color:var(--item-accent)}.chat-entity-detected--char{color:var(--char-accent)}.chat-patch-note{border-radius:6px;margin-bottom:8px;padding:4px 8px;font-size:12px;display:inline-block}.chat-patch-note--monster{color:var(--monster-accent);background:var(--monster-accent-bg);border:1px solid var(--monster-accent-br)}.chat-patch-note--spell{color:var(--spell-accent);background:var(--spell-accent-bg);border:1px solid var(--spell-accent-br)}.chat-patch-note--item{color:var(--item-accent);background:var(--item-accent-bg);border:1px solid var(--item-accent-br)}.chat-patch-note--char{color:var(--char-accent);background:var(--char-accent-bg);border:1px solid var(--char-accent-br)}.chat-revision-hint{color:var(--text-dim);padding:0 2px;font-size:11.5px}.chat-entity-summary{font-size:13px}.chat-entity-name{font-family:var(--font-display);color:var(--text);letter-spacing:.03em;margin-bottom:4px;font-size:15px;font-weight:700}.chat-entity-line{color:var(--text-muted);line-height:1.6}.chat-entity-meta{color:var(--text-dim);margin-bottom:6px;font-style:italic}.chat-entity-stat-row{color:var(--text-muted);flex-wrap:wrap;gap:10px;margin:6px 0;font-size:13px;display:flex}.chat-entity-stat-row b{color:var(--text);margin-right:2px}.chat-entity-ability-row{gap:6px;margin:8px 0;display:flex}.chat-ability-box{text-align:center;background:var(--tint-xs);border:1px solid var(--border);border-radius:6px;flex:1;padding:4px 2px}.chat-ability-label{color:var(--text-dim);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.chat-ability-val{color:var(--text);margin-top:1px;font-size:13px;font-weight:600}.chat-entity-field{color:var(--text-muted);margin:3px 0;font-size:12.5px;line-height:1.5}.chat-entity-field b{color:var(--text-dim);text-transform:uppercase;letter-spacing:.07em;margin-right:4px;font-size:11px}.chat-entity-section{margin-top:10px}.chat-entity-section-title{text-transform:uppercase;letter-spacing:.1em;color:var(--text-dim);border-bottom:1px solid var(--border);margin-bottom:4px;padding-bottom:2px;font-size:11px}.chat-entity-trait{color:var(--text-muted);margin-bottom:5px;font-size:12.5px;line-height:1.6}.chat-entity-trait b{color:var(--text)}.chat-confirm-row{justify-content:flex-end;gap:8px;display:flex}.chat-confirm-row--panel{border-top:1px solid var(--border-light);padding:10px 0 2px}.chat-confirm-panel--monster{border-color:var(--monster-accent-br)}.chat-confirm-panel--spell{border-color:var(--spell-accent-br)}.chat-confirm-panel--item{border-color:var(--item-accent-br)}.chat-confirm-panel--char{border-color:var(--char-accent-br)}.chat-icon-btn{cursor:pointer;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;transition:all .15s;display:flex}.chat-icon-btn--confirm{color:#fff;background:linear-gradient(135deg,#16a34a,#15803d);border:none}.chat-icon-btn--confirm:hover:not(:disabled){opacity:.85}.chat-icon-btn--deny{color:#f87171;background:#ef444414;border:1px solid #ef444459}.chat-icon-btn--deny:hover:not(:disabled){background:#ef444424}.chat-icon-btn:disabled{opacity:.5;cursor:default}.chat-sheet-body{flex-direction:column;gap:10px;min-height:0;display:flex}.chat-sheet-main{flex-direction:column;gap:10px;min-width:0;display:flex}.fab-sheet-box.chat-sheet--split{flex-direction:column;width:min(1160px,96vw);max-height:90vh;display:flex;overflow:hidden}.chat-sheet--split .chat-sheet-body{flex-direction:row;flex:1;gap:18px;min-height:0}.chat-sheet--split .chat-sheet-main{flex:50%;min-width:0;min-height:0}.chat-sheet--split .chat-messages{flex:1;min-height:0;max-height:none}.chat-image-pane{flex:50%;min-width:0;display:flex}@media (width<=760px){.chat-sheet--split .chat-sheet-body{flex-direction:column}.chat-sheet--split .chat-sheet-main{order:2}.chat-image-pane{flex:none;order:1;height:260px}}.zoomable-image{flex-direction:column;gap:6px;width:100%;height:100%;min-height:220px;display:flex}.zoomable-image-viewport{border:1px solid var(--border-light);background:var(--input-bg);touch-action:none;border-radius:12px;flex:1;min-height:0;position:relative;overflow:hidden}.zoomable-image-img{object-fit:contain;transform-origin:50%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.zoomable-image-controls{justify-content:center;align-self:center;align-items:center;gap:8px;display:flex}.zoomable-image-controls button{border:1px solid var(--border-light);background:var(--surface-alt);width:28px;height:28px;color:var(--text-muted);cursor:pointer;border-radius:50%;font-size:14px;line-height:1;transition:all .15s}.zoomable-image-controls button:hover:not(:disabled){background:var(--hover-bg);color:var(--text)}.zoomable-image-controls button:disabled{opacity:.4;cursor:default}.zoomable-image-pct{color:var(--text-dim);text-align:center;min-width:34px;font-size:11px}.item-table{border-collapse:separate;border-spacing:0;border:1px solid #d4af5a40;border-radius:8px;width:100%;margin:12px 0;font-size:14px;overflow:hidden}.item-table th,.item-table td{text-align:left;vertical-align:top;border-bottom:1px solid #ffffff14;padding:8px 14px}.item-table th{color:var(--accent);font-weight:700;font-family:var(--font-display);letter-spacing:.04em;text-transform:uppercase;background:#d4af5a1f;border-bottom:2px solid #d4af5a4d;font-size:13px}.item-table td{color:var(--text-muted);line-height:1.5}.item-table td:first-child{color:var(--accent);white-space:nowrap;width:1%;font-weight:600}.item-table tr:nth-child(2n) td{background:#ffffff06}.item-table tr:hover td{background:#d4af5a0f}.item-table tr:last-child td{border-bottom:none}.item-table td strong{color:var(--text)}.item-table td em{color:#a78bfa;font-style:italic}:root{--kw-mix:white}[data-theme=light]{--kw-mix:black}.action-keyword{color:var(--kw-action-c,var(--yellow));font-weight:600}.kw-save,.kw-outcome{color:var(--kw-save-c,var(--blue));font-weight:600}.kw-dice{color:var(--kw-dice-c,var(--spell-accent));white-space:nowrap}.kw-damage{color:color-mix(in srgb, var(--kw-c) 60%, var(--kw-mix))}.kw-condition{color:var(--kw-condition-c,var(--blue))}.kw-concentration{color:var(--kw-action-c,var(--yellow));font-style:italic}.kw-condition,.kw-concentration{text-underline-offset:2px;cursor:pointer;text-decoration:underline}.kw-condition:hover,.kw-concentration:hover{text-decoration-thickness:2px}:root:not([data-kw-dice=off]):not([data-kw-damage=off]) .kw-dice[style]{color:color-mix(in srgb, var(--kw-c) 60%, var(--kw-mix))}[data-action-keywords=off] .action-keyword,[data-kw-save=off] .kw-save,[data-kw-outcome=off] .kw-outcome,[data-kw-dice=off] .kw-dice,[data-kw-condition=off] .kw-condition,[data-kw-damage=off] .kw-damage,[data-kw-concentration=off] .kw-concentration{color:inherit;font-weight:inherit;font-style:inherit;cursor:inherit;text-decoration:none}.condition-popup-overlay{z-index:1200}.condition-popup.modal-box{max-width:460px}.condition-popup-head{align-items:center;gap:14px;margin-bottom:14px;display:flex}.condition-popup-icon{border:1px solid var(--border-light);border-radius:12px;flex-shrink:0;width:64px;height:64px}.condition-popup-title.modal-title{flex:1;min-width:0;margin:0;font-size:24px}.condition-popup-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:2px 4px;font-size:18px}.condition-popup-close:hover{color:var(--text)}.condition-popup-rules{color:var(--text);margin:0 0 14px;padding-left:18px;font-size:18px;font-weight:400;line-height:1.5;list-style-type:"– "}.condition-popup-rules li{margin-bottom:6px}.condition-popup-others{border-top:1px solid var(--border);flex-wrap:wrap;gap:5px;padding-top:12px;display:flex}.condition-chip{border:1px solid var(--tint-border-md);background:var(--tint-xs);color:var(--text-muted);cursor:pointer;border-radius:99px;padding:2px 10px;font-family:inherit;font-size:15px}.condition-chip:hover{color:var(--text);border-color:var(--blue)}.condition-chip.on{color:var(--blue);border-color:var(--blue);background:var(--tint-sm)}.spell-link{color:#a78bfa;cursor:pointer;border-radius:2px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.spell-link:hover{color:#c4b5fd;background:color-mix(in srgb, var(--accent) 12%, transparent)}.spell-popup-overlay{z-index:1100;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.spell-popup{background:var(--surface);border:1px solid var(--border-light);border-radius:12px;width:100%;max-width:480px;max-height:80vh;padding:20px;overflow-y:auto;box-shadow:0 20px 60px #00000080}.spell-popup-header{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.spell-popup-name{color:#a78bfa;font-size:1.1rem;font-weight:700;font-family:var(--font-display)}.spell-popup-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 0 0 8px;font-size:1rem;line-height:1}.spell-popup-close:hover{color:var(--text)}.spell-popup-meta{color:var(--text-muted);text-transform:capitalize;margin-bottom:10px;font-size:.82rem;font-style:italic}.spell-popup-props{color:var(--text);flex-direction:column;gap:3px;margin-bottom:10px;font-size:.85rem;display:flex}.spell-popup-prop-lbl{color:var(--text-muted);font-weight:600}.spell-popup-desc{color:#d1d5db;border-top:1px solid var(--border-light);margin-top:2px;padding-top:10px;font-size:.88rem;line-height:1.6}.spell-popup-higher{color:#d1d5db;border-top:1px solid var(--border-light);margin-top:8px;padding-top:8px;font-size:.85rem}.settings-tab{flex-direction:column;gap:20px;max-width:1040px;padding:8px 0;display:flex}.settings-section-title{font-family:var(--font-display);letter-spacing:.08em;color:var(--text);margin:0;font-size:1rem}.settings-card{background:var(--surface);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:14px;padding:20px;display:flex}.settings-card-title{font-family:var(--font-display);letter-spacing:.06em;color:var(--text-muted);margin:0;font-size:.85rem}.settings-user-list{flex-direction:column;gap:8px;display:flex}.settings-user-row{background:var(--bg);border-radius:6px;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.btn-danger-sm{color:#e05252;cursor:pointer;background:0 0;border:1px solid #e05252;border-radius:4px;padding:2px 10px;font-size:.8rem;transition:background .15s}.btn-danger-sm:hover{background:#e052521f}.settings-add-user-form{border-top:1px solid var(--border);flex-direction:column;gap:10px;padding-top:16px;display:flex}.settings-form-label{color:var(--text-dim);letter-spacing:.05em;margin:0;font-size:.8rem}.input-field{background:var(--bg);border:1px solid var(--border);color:var(--text);font-size:.9rem;font-family:var(--font-body);border-radius:6px;padding:8px 12px}.input-field:focus{border-color:color-mix(in srgb, var(--accent) 50%, transparent);outline:none}.settings-checkbox-label{color:var(--text-dim);cursor:pointer;align-items:center;gap:8px;font-size:.85rem;display:flex}.btn-primary{background:var(--accent);color:#fff;font-size:.9rem;font-family:var(--font-body);cursor:pointer;border:none;border-radius:6px;padding:8px;transition:opacity .15s}.btn-primary:disabled{cursor:not-allowed;opacity:.6}[data-palette=midnight][data-theme=dark]{--bg:#111827;--surface:#1e293b;--surface-alt:#29364b;--text:#f1eee7;--text-muted:#a6b0c0;--text-dim:#a6b0c0;--border:#3d4b61;--border-light:#3d4b61;--input-bg:#111827;--hover-bg:#29364b;--accent:#d4af63;--char-accent:#d4af63;--char-accent-bg:#29364b;--char-accent-br:#3d4b61;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=midnight][data-theme=light]{--bg:#f0f1f6;--surface:#fafbff;--surface-alt:#e3e7f0;--text:#222c3d;--text-muted:#606d82;--text-dim:#606d82;--border:#cbd2e0;--border-light:#cbd2e0;--input-bg:#f0f1f6;--hover-bg:#e3e7f0;--accent:#826015;--char-accent:#826015;--char-accent-bg:#e3e7f0;--char-accent-br:#cbd2e0;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=violet][data-theme=dark]{--bg:#141218;--surface:#211d29;--surface-alt:#30293b;--text:#eeeaf4;--text-muted:#aaa0b7;--text-dim:#aaa0b7;--border:#43394f;--border-light:#43394f;--input-bg:#141218;--hover-bg:#30293b;--accent:#b69af2;--char-accent:#b69af2;--char-accent-bg:#30293b;--char-accent-br:#43394f;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=violet][data-theme=light]{--bg:#f2eff7;--surface:#fcfaff;--surface-alt:#e8e1f1;--text:#30273e;--text-muted:#756681;--text-dim:#756681;--border:#d1c6df;--border-light:#d1c6df;--input-bg:#f2eff7;--hover-bg:#e8e1f1;--accent:#7550b5;--char-accent:#7550b5;--char-accent-bg:#e8e1f1;--char-accent-br:#d1c6df;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=parchment][data-theme=dark]{--bg:#20191b;--surface:#2d2225;--surface-alt:#3d2c31;--text:#f2e6e3;--text-muted:#bba2a4;--text-dim:#bba2a4;--border:#584148;--border-light:#584148;--input-bg:#20191b;--hover-bg:#3d2c31;--accent:#dfa1ad;--char-accent:#dfa1ad;--char-accent-bg:#3d2c31;--char-accent-br:#584148;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=parchment][data-theme=light]{--bg:#f4efe5;--surface:#fffcf5;--surface-alt:#ede2d5;--text:#30272a;--text-muted:#796b66;--text-dim:#796b66;--border:#d8c8b7;--border-light:#d8c8b7;--input-bg:#f4efe5;--hover-bg:#ede2d5;--accent:#893e4b;--char-accent:#893e4b;--char-accent-bg:#ede2d5;--char-accent-br:#d8c8b7;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=slate][data-theme=dark]{--bg:#101820;--surface:#1c2935;--surface-alt:#263a48;--text:#e4edf2;--text-muted:#9eb2c0;--text-dim:#9eb2c0;--border:#395363;--border-light:#395363;--input-bg:#101820;--hover-bg:#263a48;--accent:#78c8da;--char-accent:#78c8da;--char-accent-bg:#263a48;--char-accent-br:#395363;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=slate][data-theme=light]{--bg:#edf4f7;--surface:#fafdff;--surface-alt:#dfebf1;--text:#233542;--text-muted:#5e7786;--text-dim:#5e7786;--border:#c1d4df;--border-light:#c1d4df;--input-bg:#edf4f7;--hover-bg:#dfebf1;--accent:#206a7d;--char-accent:#206a7d;--char-accent-bg:#dfebf1;--char-accent-br:#c1d4df;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=copper][data-theme=dark]{--bg:#191717;--surface:#272323;--surface-alt:#372e2c;--text:#f0e7e1;--text-muted:#b5a29a;--text-dim:#b5a29a;--border:#50403a;--border-light:#50403a;--input-bg:#191717;--hover-bg:#372e2c;--accent:#d49775;--char-accent:#d49775;--char-accent-bg:#372e2c;--char-accent-br:#50403a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=copper][data-theme=light]{--bg:#f5eee9;--surface:#fffaf6;--surface-alt:#edded3;--text:#382b26;--text-muted:#806a5f;--text-dim:#806a5f;--border:#dcc6b8;--border-light:#dcc6b8;--input-bg:#f5eee9;--hover-bg:#edded3;--accent:#99532f;--char-accent:#99532f;--char-accent-bg:#edded3;--char-accent-br:#dcc6b8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=ruby][data-theme=dark]{--bg:#151316;--surface:#231f25;--surface-alt:#342932;--text:#f5eaf0;--text-muted:#b9a2b0;--text-dim:#b9a2b0;--border:#503d49;--border-light:#503d49;--input-bg:#151316;--hover-bg:#342932;--accent:#f08092;--char-accent:#f08092;--char-accent-bg:#342932;--char-accent-br:#503d49;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=ruby][data-theme=light]{--bg:#f7eff1;--surface:#fffafc;--surface-alt:#efdee4;--text:#38242d;--text-muted:#81616f;--text-dim:#81616f;--border:#ddc1cd;--border-light:#ddc1cd;--input-bg:#f7eff1;--hover-bg:#efdee4;--accent:#a02c49;--char-accent:#a02c49;--char-accent-bg:#efdee4;--char-accent-br:#ddc1cd;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=ocean][data-theme=dark]{--bg:#0c1b20;--surface:#142c33;--surface-alt:#1c3c43;--text:#e2f3ef;--text-muted:#91b5b6;--text-dim:#91b5b6;--border:#30535a;--border-light:#30535a;--input-bg:#0c1b20;--hover-bg:#1c3c43;--accent:#65d5c5;--char-accent:#65d5c5;--char-accent-bg:#1c3c43;--char-accent-br:#30535a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=ocean][data-theme=light]{--bg:#eaf5f2;--surface:#f8fffc;--surface-alt:#d8ebe5;--text:#203b38;--text-muted:#597d76;--text-dim:#597d76;--border:#b7d4cc;--border-light:#b7d4cc;--input-bg:#eaf5f2;--hover-bg:#d8ebe5;--accent:#176f67;--char-accent:#176f67;--char-accent-bg:#d8ebe5;--char-accent-br:#b7d4cc;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=sand][data-theme=dark]{--bg:#211b17;--surface:#30261f;--surface-alt:#423226;--text:#f5e8d8;--text-muted:#baa38b;--text-dim:#baa38b;--border:#5b4533;--border-light:#5b4533;--input-bg:#211b17;--hover-bg:#423226;--accent:#e5a079;--char-accent:#e5a079;--char-accent-bg:#423226;--char-accent-br:#5b4533;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=sand][data-theme=light]{--bg:#f3ebdd;--surface:#fff9ee;--surface-alt:#eadbc8;--text:#3e3028;--text-muted:#7d6b5c;--text-dim:#7d6b5c;--border:#d7c0a7;--border-light:#d7c0a7;--input-bg:#f3ebdd;--hover-bg:#eadbc8;--accent:#a34e32;--char-accent:#a34e32;--char-accent-bg:#eadbc8;--char-accent-br:#d7c0a7;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=rose][data-theme=dark]{--bg:#201720;--surface:#30212e;--surface-alt:#412d40;--text:#f6e7f0;--text-muted:#bea1b5;--text-dim:#bea1b5;--border:#594052;--border-light:#594052;--input-bg:#201720;--hover-bg:#412d40;--accent:#de9ec8;--char-accent:#de9ec8;--char-accent-bg:#412d40;--char-accent-br:#594052;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=rose][data-theme=light]{--bg:#f6eef2;--surface:#fffafd;--surface-alt:#eddfe9;--text:#3b2936;--text-muted:#816779;--text-dim:#816779;--border:#dac3d4;--border-light:#dac3d4;--input-bg:#f6eef2;--hover-bg:#eddfe9;--accent:#84456f;--char-accent:#84456f;--char-accent-bg:#eddfe9;--char-accent-br:#dac3d4;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=silver][data-theme=dark]{--bg:#17181b;--surface:#23252a;--surface-alt:#30333b;--text:#f0f1f4;--text-muted:#a5aab5;--text-dim:#a5aab5;--border:#474c57;--border-light:#474c57;--input-bg:#17181b;--hover-bg:#30333b;--accent:#ccd3df;--char-accent:#ccd3df;--char-accent-bg:#30333b;--char-accent-br:#474c57;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=silver][data-theme=light]{--bg:#f1f2f4;--surface:#fff;--surface-alt:#e4e7ec;--text:#252a33;--text-muted:#687180;--text-dim:#687180;--border:#cad0da;--border-light:#cad0da;--input-bg:#f1f2f4;--hover-bg:#e4e7ec;--accent:#48556b;--char-accent:#48556b;--char-accent-bg:#e4e7ec;--char-accent-br:#cad0da;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=sapphire][data-theme=dark]{--bg:#141b2a;--surface:#202c42;--surface-alt:#2c3b58;--text:#eaf0fb;--text-muted:#a5b4cf;--text-dim:#a5b4cf;--border:#415478;--border-light:#415478;--input-bg:#141b2a;--hover-bg:#2c3b58;--accent:#91b5ff;--char-accent:#91b5ff;--char-accent-bg:#2c3b58;--char-accent-br:#415478;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=sapphire][data-theme=light]{--bg:#f5f3ec;--surface:#fffef9;--surface-alt:#e6e9f0;--text:#293044;--text-muted:#6a7283;--text-dim:#6a7283;--border:#c9cfde;--border-light:#c9cfde;--input-bg:#f5f3ec;--hover-bg:#e6e9f0;--accent:#3459a0;--char-accent:#3459a0;--char-accent-bg:#e6e9f0;--char-accent-br:#c9cfde;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=black-gold][data-theme=dark]{--bg:#0d0d0d;--surface:#191919;--surface-alt:#26231d;--text:#f5f1e8;--text-muted:#b5ad9c;--text-dim:#b5ad9c;--border:#494130;--border-light:#494130;--input-bg:#0d0d0d;--hover-bg:#26231d;--accent:#c8a55a;--char-accent:#c8a55a;--char-accent-bg:#26231d;--char-accent-br:#494130;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=black-gold][data-theme=light]{--bg:#f5f1e8;--surface:#fffcf5;--surface-alt:#ebe3d2;--text:#211e18;--text-muted:#756b56;--text-dim:#756b56;--border:#d6c8a8;--border-light:#d6c8a8;--input-bg:#f5f1e8;--hover-bg:#ebe3d2;--accent:#80601f;--char-accent:#80601f;--char-accent-bg:#ebe3d2;--char-accent-br:#d6c8a8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=porcelain-gold][data-theme=dark]{--bg:#101010;--surface:#1c1c1b;--surface-alt:#2a2822;--text:#fafaf6;--text-muted:#bab6a9;--text-dim:#bab6a9;--border:#4b4433;--border-light:#4b4433;--input-bg:#101010;--hover-bg:#2a2822;--accent:#d5b569;--char-accent:#d5b569;--char-accent-bg:#2a2822;--char-accent-br:#4b4433;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=porcelain-gold][data-theme=light]{--bg:#fff;--surface:#fff;--surface-alt:#f4f1e9;--text:#181818;--text-muted:#706a5d;--text-dim:#706a5d;--border:#d9cdae;--border-light:#d9cdae;--input-bg:#fff;--hover-bg:#f4f1e9;--accent:#8a681f;--char-accent:#8a681f;--char-accent-bg:#f4f1e9;--char-accent-br:#d9cdae;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=onyx-champagne][data-theme=dark]{--bg:#121212;--surface:#202020;--surface-alt:#2d2a25;--text:#faf8f2;--text-muted:#bdb6a9;--text-dim:#bdb6a9;--border:#4d473d;--border-light:#4d473d;--input-bg:#121212;--hover-bg:#2d2a25;--accent:#e2cda0;--char-accent:#e2cda0;--char-accent-bg:#2d2a25;--char-accent-br:#4d473d;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=onyx-champagne][data-theme=light]{--bg:#f9f6ef;--surface:#fffefa;--surface-alt:#eee7d8;--text:#24211c;--text-muted:#796f5e;--text-dim:#796f5e;--border:#dccfb6;--border-light:#dccfb6;--input-bg:#f9f6ef;--hover-bg:#eee7d8;--accent:#846a34;--char-accent:#846a34;--char-accent-bg:#eee7d8;--char-accent-br:#dccfb6;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=ivory-brass][data-theme=dark]{--bg:#181714;--surface:#24221c;--surface-alt:#333026;--text:#f6f0df;--text-muted:#b8ae91;--text-dim:#b8ae91;--border:#504932;--border-light:#504932;--input-bg:#181714;--hover-bg:#333026;--accent:#cbb16c;--char-accent:#cbb16c;--char-accent-bg:#333026;--char-accent-br:#504932;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=ivory-brass][data-theme=light]{--bg:#f7f3e8;--surface:#fffdf6;--surface-alt:#ece4d0;--text:#28251e;--text-muted:#766d56;--text-dim:#766d56;--border:#d4c49d;--border-light:#d4c49d;--input-bg:#f7f3e8;--hover-bg:#ece4d0;--accent:#86651e;--char-accent:#86651e;--char-accent-bg:#ece4d0;--char-accent-br:#d4c49d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=noir-bright-gold][data-theme=dark]{--bg:#080808;--surface:#151515;--surface-alt:#28251b;--text:#fff;--text-muted:#bdb8a8;--text-dim:#bdb8a8;--border:#55492b;--border-light:#55492b;--input-bg:#080808;--hover-bg:#28251b;--accent:#f1c64d;--char-accent:#f1c64d;--char-accent-bg:#28251b;--char-accent-br:#55492b;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}[data-palette=noir-bright-gold][data-theme=light]{--bg:#fff;--surface:#fffef8;--surface-alt:#f8f0d7;--text:#161616;--text-muted:#766b49;--text-dim:#766b49;--border:#dfcea1;--border-light:#dfcea1;--input-bg:#fff;--hover-bg:#f8f0d7;--accent:#826100;--char-accent:#826100;--char-accent-bg:#f8f0d7;--char-accent-br:#dfcea1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--purple-light:var(--accent);--purple:color-mix(in srgb, var(--accent) 65%, #161616)}.sheet-page{width:100%;min-width:0;max-width:1500px;margin:0 auto;padding-bottom:96px}.sheet-switcher{flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px 6px;display:flex}.sheet-switcher-lbl{font-family:var(--font-display);letter-spacing:1px;color:var(--text-dim);text-transform:uppercase;font-size:14px}.sheet-switcher-list{flex-wrap:wrap;gap:6px;display:flex}.sheet-switch-chip{border:1px solid var(--tint-border-sm);background:var(--tint-sm);color:var(--text-muted);font-family:var(--font-display);cursor:pointer;border-radius:99px;align-items:center;gap:6px;padding:5px 12px;font-size:15px;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.sheet-switch-chip:hover{background:var(--tint-md);color:var(--text)}.sheet-switch-chip.active{background:var(--char-accent-bg);border-color:var(--char-accent);color:var(--char-accent)}.sheet-switch-lvl{background:var(--tint-md);color:var(--text-muted);border-radius:99px;padding:0 6px;font-size:13px}.sheet-switch-new{color:var(--green);border-style:dashed}.sheet-switch-import{color:var(--blue);border-style:dashed}.sheet-import.modal-box{max-width:560px;max-height:88vh}.sheet-import-hint{color:var(--text-muted);margin:0 0 12px;font-size:16px;line-height:1.45}.sheet-import-row{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.sheet-import-text{box-sizing:border-box;resize:vertical;width:100%;min-height:220px;margin-bottom:10px;font-family:ui-monospace,Consolas,monospace;font-size:13px;line-height:1.4}.sheet-import-prompt{min-height:160px;color:var(--text-muted)}.sheet-import .sheet-error{margin-bottom:10px}.sheet-import-label{color:var(--text-muted);margin-bottom:12px;display:block}.sheet-import-label select{margin-top:4px;display:block}.sheet-import-section{border:1px solid var(--border-light);overflow-wrap:anywhere;border-radius:8px;margin-bottom:12px;padding:10px}.sheet-import-section summary{cursor:pointer;color:var(--text)}.sheet-import-section p,.sheet-import-section ul{margin:8px 0}.sheet-import-section ul{padding-left:20px}.sheet-import-change{margin-top:8px}.sheet-import-diff{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:8px;display:grid}.sheet-import-diff pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;color:var(--text-muted);max-height:260px;overflow-y:auto}.sheet-import-error{white-space:pre-wrap;overflow-wrap:anywhere}.sheet-history-check{align-items:flex-start;gap:8px;margin:12px 0;display:flex}.sheet-history-check input{flex-shrink:0;margin-top:5px}.sheet-history-snapshot{white-space:pre-wrap;overflow-wrap:anywhere;max-height:260px;font-size:13px;overflow-y:auto}.sheet-import-match{border-top:1px solid var(--border-light);margin-top:12px;padding:12px 0}.sheet-import-match-status{color:var(--text-muted);font-size:14px;display:block}.sheet-import-match pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:220px;font-size:13px;overflow-y:auto}.sheet-import-match select{max-width:100%}.sheet-import-local{background:var(--surface-alt);border-radius:8px;padding:10px}.sheet-import-local textarea{min-height:100px}.sheet-import-manage{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;padding:0 14px 10px;display:flex}.sheet-import .confirm-actions{background:var(--surface);z-index:1;gap:8px;padding:12px 0;display:flex;position:sticky;bottom:-22px}.sheet-import .confirm-actions>button{flex:1}@media (width<=520px){.sheet-import-diff{grid-template-columns:minmax(0,1fr)}.sheet-import .confirm-actions{bottom:-16px}}.sheet-start{flex-direction:column;align-items:center;gap:14px;display:flex}.sheet-start .sheet-hint{max-width:420px;font-family:var(--font-body);letter-spacing:0}.sheet{flex-direction:column;gap:10px;padding:0 14px;display:flex}.sheet-core,.sheet-spells,.sheet-inventory,.sheet-notes{flex-direction:column;gap:10px;display:flex}.sheet-card{background:var(--surface);border:1px solid var(--border-light);border-radius:14px;padding:12px 14px}.sheet-card-title{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--char-accent);justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;font-size:15px;display:flex}.sheet-subhead{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);justify-content:space-between;align-items:center;margin:14px 0 8px;font-size:14px;display:flex}.sheet-hint{color:var(--text-dim);margin-bottom:8px;font-size:16px}.sheet-empty{text-align:center;margin:0;padding:18px 8px}.sheet-error{color:var(--red);font-size:16px}.sheet-text,.sheet-num,.sheet-select{background:var(--input-bg);border:1px solid var(--border-light);color:var(--text);border-radius:8px;outline:none;width:100%;min-width:0;padding:6px 8px;font-family:inherit;font-size:18px;transition:border-color .15s,box-shadow .15s}.sheet-num{text-align:center}.sheet-text:focus,.sheet-num:focus,.sheet-select:focus{border-color:var(--char-accent);box-shadow:0 0 0 3px var(--char-accent-bg)}.sheet-select option{background:var(--surface);color:var(--text)}.sheet-select optgroup{background:var(--surface-alt);color:var(--text-muted);font-style:normal;font-weight:700}.sheet-textarea{resize:vertical;min-height:140px;font-size:18px;line-height:1.5}.sheet-field{flex-direction:column;gap:3px;min-width:0;display:flex}.sheet-field-lbl{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--text-dim);font-size:12px}.sheet-identity-top{align-items:center;gap:10px;margin-bottom:10px;display:flex}.sheet-name.sheet-text{font-family:var(--font-display);color:var(--char-accent);background:0 0;border-color:#0000;padding:4px 6px;font-size:26px}.sheet-name.sheet-text:hover{border-color:var(--border-light)}.sheet-identity-grid{grid-template-columns:84px repeat(3,minmax(0,1fr));gap:8px 10px;display:grid}.sheet-save-status{color:var(--text-dim);white-space:nowrap;flex-shrink:0;font-size:15px}.sheet-save-status--saved{color:var(--green)}.sheet-save-status--saving,.sheet-save-status--dirty{color:var(--text-muted)}.sheet-save-status--error,.sheet-save-status--failed{color:var(--red)}.sheet-tabs{z-index:50;background:var(--bg);gap:4px;padding:6px 0;display:flex;position:sticky;top:0}.sheet-tab{border:1px solid var(--tint-border-sm);background:var(--tint-xs);color:var(--text-muted);font-family:var(--font-display);letter-spacing:.5px;cursor:pointer;border-radius:10px;flex:1;padding:9px 6px;font-size:15px}.sheet-tab:hover{background:var(--tint-sm);color:var(--text)}.sheet-tab.active{background:var(--char-accent-bg);border-color:var(--char-accent);color:var(--char-accent)}.sheet-vitals{grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;gap:8px;display:grid}.sheet-stat{background:var(--char-accent-bg);border:1px solid var(--char-accent-br);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;padding:8px 6px;display:flex}.sheet-stat.rollable{cursor:pointer}.sheet-stat.rollable:hover{border-color:var(--char-accent)}.sheet-stat-lbl{font-family:var(--font-display);letter-spacing:.5px;text-transform:uppercase;color:var(--char-accent);text-align:center;font-size:12px}.sheet-stat-val{color:var(--text);font-size:24px;font-weight:700}.sheet-stat .sheet-num{background:0 0;max-width:64px;padding:2px;font-size:24px;font-weight:700}.sheet-stat-text.sheet-text{text-align:center;background:0 0;padding:2px;font-weight:600}.sheet-vital-toggles{flex-direction:column;gap:6px;min-width:0;display:flex}.sheet-vital-toggle{border:1px dashed var(--tint-border-md);min-width:0;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;padding:4px 6px;display:flex}.sheet-vital-toggle span{font-family:var(--font-display);letter-spacing:.5px;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.sheet-vital-toggle-icon{font-size:17px;font-style:normal;line-height:1;position:relative}.sheet-inspiration.on{border-style:solid;border-color:var(--yellow);color:var(--yellow);background:#f59e0b1a}.sheet-concentration.on{border-style:solid;border-color:var(--purple-light);color:var(--purple-light);background:color-mix(in srgb, var(--purple) 14%, transparent)}.sheet-concentration.on .sheet-vital-toggle-icon:before,.sheet-concentration.on .sheet-vital-toggle-icon:after{content:"";aspect-ratio:1;opacity:0;pointer-events:none;border:2px solid;border-radius:50%;width:100%;animation:2s ease-out infinite concentrationPulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scale(.6)}.sheet-concentration.on .sheet-vital-toggle-icon:after{animation-delay:1s}@keyframes concentrationPulse{0%{opacity:.9;transform:translate(-50%,-50%)scale(.6)}to{opacity:0;transform:translate(-50%,-50%)scale(2.2)}}@media (prefers-reduced-motion:reduce){.sheet-concentration.on .sheet-vital-toggle-icon:before,.sheet-concentration.on .sheet-vital-toggle-icon:after{animation:none}}.sheet-rest-btn{text-transform:none;letter-spacing:0;font-family:var(--font-body)}.sheet-hp-row{flex-wrap:wrap;align-items:flex-end;gap:14px;display:flex}.sheet-hp-main{align-items:center;gap:6px;display:flex}.sheet-hp-cur.sheet-num{width:84px;color:var(--green);font-size:34px;font-weight:700}.sheet-hp-max.sheet-num{width:64px;font-size:22px}.sheet-hp-sep{color:var(--text-dim);font-size:28px}.sheet-hp-row .sheet-field .sheet-num{width:64px}.sheet-hp-adjust{align-items:center;gap:6px;margin-left:auto;display:flex}.sheet-hp-amount.sheet-num{width:58px}.sheet-hp-btn{cursor:pointer;white-space:nowrap;border:1px solid;border-radius:8px;padding:7px 12px;font-family:inherit;font-size:17px;font-weight:600}.sheet-hp-btn.dmg{color:var(--red);background:#ef44441a;border-color:#ef444466}.sheet-hp-btn.heal{color:var(--green);background:#22c55e1a;border-color:#22c55e66}.sheet-hp-btn.temp{color:var(--blue);background:#38bdf81a;border-color:#38bdf866}.sheet-hp-btn:hover{filter:brightness(1.15)}.sheet-hp-bar{background:var(--tint-md);border-radius:99px;height:6px;margin:12px 0 10px;display:flex;overflow:hidden}.sheet-hp-fill{background:var(--green);border-radius:99px;height:100%;transition:width .25s}.sheet-hp-fill[data-low]{background:var(--red)}.sheet-hp-fill.temp{background:var(--blue);border-radius:0 99px 99px 0}.sheet-hp-temp.has-temp .sheet-num{color:var(--blue);border-color:var(--blue);font-weight:700}.sheet-hp-extra{flex-wrap:wrap;gap:18px;display:flex}.sheet-hd{align-items:center;gap:8px;display:flex}.sheet-hd .sheet-select{width:auto}.sheet-hd-left{color:var(--text-muted);white-space:nowrap;font-size:16px}.sheet-death-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sheet-death-group{align-items:center;gap:6px;display:inline-flex}.sheet-death-lbl.ok{color:var(--green)}.sheet-death-lbl.bad{color:var(--red)}.sheet-pips{flex-wrap:wrap;gap:4px;display:inline-flex}.sheet-pip{border:2px solid var(--pip-border,var(--tint-border-lg));cursor:pointer;background:0 0;border-radius:50%;width:16px;height:16px;padding:0}.sheet-pip.on{background:var(--pip-on,var(--char-accent));border-color:var(--pip-on,var(--char-accent))}.sheet-abilities{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;display:grid}.sheet-ability{border:1px solid var(--border-light);background:var(--surface-alt);border-radius:12px;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:8px 4px;display:flex}.sheet-ability-abbr{font-family:var(--font-display);letter-spacing:1px;color:var(--char-accent);font-size:14px}.sheet-ability-mod{color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:0 6px;font-size:28px;font-weight:700;line-height:1.1}.sheet-ability-mod:hover{background:var(--hover-bg);color:var(--char-accent)}.sheet-ability-score.sheet-num{width:56px;padding:3px;font-size:16px}.sheet-ability-save{align-items:center;gap:2px;font-size:15px;display:flex}.sheet-prof-dot{cursor:pointer;color:var(--text-dim);background:0 0;border:none;width:24px;height:24px;padding:0;font-size:17px;line-height:1}.sheet-prof-dot.on,.sheet-prof-dot.rank-1{color:var(--char-accent)}.sheet-prof-dot.rank-2{color:var(--yellow)}.sheet-roll-link{cursor:pointer;color:var(--text-muted);white-space:nowrap;background:0 0;border:none;border-radius:6px;padding:2px 4px;font-family:inherit;font-size:15px}.sheet-roll-link:hover{background:var(--hover-bg);color:var(--text)}.sheet-skills{grid-template-columns:repeat(3,minmax(0,1fr));gap:2px 14px;display:grid}.sheet-skill{border-bottom:1px solid var(--border);align-items:center;gap:4px;min-width:0;padding:2px 0;display:flex}.sheet-skill-name{text-align:left;cursor:pointer;min-width:0;color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:6px;flex:1;padding:3px 4px;font-family:inherit;font-size:18px;overflow:hidden}.sheet-skill.prof .sheet-skill-name{color:var(--text)}.sheet-skill-name:hover{background:var(--hover-bg)}.sheet-skill-abbr{color:var(--text-dim);font-size:12px;font-family:var(--font-display)}.sheet-skill-bonus{text-align:right;min-width:30px;color:var(--text);font-size:18px;font-weight:700}.sheet-casting-row{grid-template-columns:minmax(120px,1.4fr) repeat(3,minmax(0,1fr));align-items:end;gap:8px;display:grid}.sheet-slots{flex-wrap:wrap;gap:8px;display:flex}.sheet-slot{border:1px solid var(--border-light);background:var(--surface-alt);--pip-on:var(--lvl-color);border-radius:10px;align-items:center;gap:8px;padding:6px 10px;display:flex}.sheet-slot-lvl{font-family:var(--font-display);color:var(--lvl-color);font-size:14px}.sheet-slot-count{color:var(--text-dim);font-size:15px}.sheet-slot .sheet-num{width:46px;padding:3px}.sheet-tag-picker{flex-wrap:wrap;gap:6px;display:flex}.sheet-tag-chip{cursor:pointer;border:1px solid;border-radius:99px;padding:4px 12px;font-family:inherit;font-size:16px;transition:filter .15s}.sheet-tag-chip:hover{filter:brightness(1.15)}.sheet-list-toolbar{align-items:center;gap:8px;margin-bottom:8px;display:flex}.sheet-search.ipt{padding:7px 12px;font-size:18px}.sheet-group-head{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;color:var(--text-muted);margin:12px 0 4px;font-size:14px}.sheet-spell-group:first-child .sheet-group-head{margin-top:4px}.sheet-row{border-bottom:1px solid var(--border)}.sheet-row.dim .sheet-row-name{opacity:.55}.sheet-row-head{align-items:center;gap:8px;padding:6px 0;display:flex}.sheet-row-head .chk{cursor:pointer;flex-shrink:0;padding:0;font-size:14px}.sheet-row-main{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;min-width:0;padding:0;font-family:inherit;display:flex}.sheet-row-name{font-size:18px;font-weight:600}.sheet-row-meta{color:var(--text-dim);flex-wrap:wrap;align-items:center;gap:6px;font-size:16px;display:flex}.sheet-badge{background:var(--tint-md);color:var(--text-muted);border-radius:4px;padding:0 5px;font-size:12px;font-weight:700}.sheet-row-caret{color:var(--text-dim);font-size:14px}.sheet-row-body{color:var(--text);padding:2px 0 12px 36px;font-size:18px;line-height:1.6}.sheet-row-detail{color:var(--text-muted);margin-bottom:6px}.sheet-row-desc{white-space:pre-wrap;margin-bottom:6px}.sheet-coins{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.sheet-coin{flex-direction:column;align-items:center;gap:4px;display:flex}.sheet-coin-lbl{font-family:var(--font-display);letter-spacing:1px;color:var(--text-muted);font-size:13px}.sheet-coin--gp .sheet-coin-lbl{color:var(--yellow)}.sheet-coin--pp .sheet-coin-lbl{color:var(--blue)}.sheet-equip,.sheet-attune{border:1px solid var(--tint-border-md);width:34px;height:34px;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;font-size:17px}.sheet-equip.on{color:var(--orange);border-color:var(--orange);background:#f973161a}.sheet-attune.on{color:var(--purple-light);border-color:var(--purple-light);background:var(--char-accent-bg)}.sheet-attune:disabled{opacity:.35;cursor:not-allowed}.sheet-attune-count{color:var(--text-muted);white-space:nowrap;font-size:16px}.sheet-qty{border:1px solid var(--border-light);border-radius:8px;flex-shrink:0;align-items:center;display:inline-flex;overflow:hidden}.sheet-qty button{background:var(--tint-xs);width:30px;height:32px;color:var(--text-muted);cursor:pointer;border:none;font-size:17px}.sheet-qty button:hover{background:var(--tint-md);color:var(--text)}.sheet-qty-val{text-align:center;min-width:30px;font-size:18px;font-weight:600}.sheet-item-remove{width:28px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.sheet-item-remove:hover{background:var(--hover-bg)}.sheet-item-remove:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sheet-actions{flex-direction:column;gap:10px;display:flex}.sheet-actions-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet-kind-filter{flex-wrap:wrap;gap:6px;display:flex}.sheet-kind-chip{border:1px solid var(--tint-border-sm);background:var(--tint-xs);color:var(--text-muted);font-family:var(--font-display);letter-spacing:.5px;cursor:pointer;border-radius:99px;align-items:center;gap:6px;padding:4px 11px;font-size:14px;display:inline-flex}.sheet-kind-chip span{font-family:var(--font-body);color:var(--text-dim);font-size:14px}.sheet-kind-chip:hover{background:var(--tint-sm);color:var(--text)}.sheet-kind-chip.on{background:var(--char-accent-bg);border-color:var(--char-accent);color:var(--char-accent)}.sheet-kind-chip--spell.on{border-color:var(--purple-light);color:var(--purple-light);background:var(--char-accent-bg)}.sheet-kind-chip--weapon.on{border-color:var(--red);color:var(--red);background:#ef44441a}.sheet-kind-chip--item.on{border-color:var(--yellow);color:var(--yellow);background:#f59e0b1a}.sheet-kind-chip--feat.on{border-color:var(--green);color:var(--green);background:#22c55e1a}.sheet-actions-add{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.sheet-add-select.sheet-select{width:auto;max-width:170px;padding:4px 6px;font-size:15px}.sheet-actions-casting{border-top:1px solid var(--border);color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:10px;padding-top:10px;font-size:16px;display:flex}.sheet-actions-stat b,.sheet-actions-casting .sheet-roll-link b{color:var(--text)}.sheet-actions-casting .sheet-roll-link{font-size:16px}.sheet-slot--compact{gap:6px;padding:3px 8px}.sheet-count{background:var(--tint-md);color:var(--text-muted);letter-spacing:0;border-radius:99px;margin-left:6px;margin-right:auto;padding:0 6px;font-size:13px}.sheet-kind{text-align:center;width:70px;font-family:var(--font-display);letter-spacing:.5px;text-transform:uppercase;border:1px solid;border-radius:6px;flex-shrink:0;padding:2px 0;font-size:12px}.sheet-kind--spell{color:var(--purple-light);border-color:var(--char-accent-br);background:var(--char-accent-bg)}.sheet-kind--weapon{color:var(--red);background:#ef444414;border-color:#ef444459}.sheet-kind--item{color:var(--yellow);background:#f59e0b14;border-color:#f59e0b59}.sheet-kind--feat{color:var(--green);background:#22c55e14;border-color:#22c55e59}.sheet-option .sheet-row-name{color:var(--text)}.sheet-option.dim .sheet-row-name{opacity:.5}.sheet-row-caret{cursor:pointer;background:0 0;border:none;padding:4px}.sheet-lvl-pip{color:#fff;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:14px;font-weight:700;display:inline-flex}.sheet-option.dim .sheet-lvl-pip{opacity:.4}.sheet-weapon-rolls{flex-shrink:0;gap:4px;display:inline-flex}.sheet-roll-btn{border:1px solid var(--char-accent-br);background:var(--char-accent-bg);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:8px;padding:4px 9px;font-family:inherit;font-size:16px;font-weight:700}.sheet-roll-btn:hover{border-color:var(--char-accent)}.sheet-roll-btn.dmg{background:#ef444414;border-color:#ef444459}.sheet-roll-btn.dmg:hover{border-color:var(--red)}.sheet-qty-tag{color:var(--text-muted);font-size:16px;font-weight:600}.sheet-option-body{padding-left:78px}.sheet-inline-field{max-width:220px;margin-bottom:8px}.sheet-editor{flex-direction:column;gap:10px;display:flex}.sheet-editor-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px;display:grid}.sheet-editor-grid .span-2{grid-column:span 2}.sheet-editor-grid .span-all{grid-column:1/-1}.sheet-editor-grid .sheet-textarea{min-height:70px;font-size:18px}.sheet-editor-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.sheet-editor-footer .sheet-hint{margin:0;font-size:15px}.sheet-toggle{border:1px solid var(--border-light);background:var(--input-bg);color:var(--text-muted);cursor:pointer;border-radius:8px;padding:6px 8px;font-family:inherit;font-size:18px}.sheet-toggle.on{color:var(--green);background:#22c55e1a;border-color:#22c55e73}.sheet-rest-btns{gap:6px;display:inline-flex}.weapon-rule-chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.weapon-rule-chip{border:1px solid var(--tint-border-md);background:var(--tint-xs);color:var(--text);cursor:pointer;border-radius:99px;align-items:center;gap:5px;padding:3px 10px;font-family:inherit;font-size:16px;display:inline-flex}button.weapon-rule-chip:after{content:"ⓘ";color:var(--text-dim);font-size:14px}.weapon-rule-others button.weapon-rule-chip:after{content:none}button.weapon-rule-chip:hover{border-color:var(--red);background:#ef444414}.weapon-rule-chip--mastery{background:#f59e0b14;border-color:#f59e0b66}button.weapon-rule-chip--mastery:hover{border-color:var(--yellow);background:#f59e0b24}.weapon-rule-chip.custom{cursor:default;color:var(--text-muted);border-style:dashed}.weapon-rule-chip.on{border-color:var(--red);color:var(--red);background:#ef44441a}.weapon-rule-chip--mastery.on{border-color:var(--yellow);color:var(--yellow);background:#f59e0b1f}.weapon-rule-chip-tag{font-family:var(--font-display);letter-spacing:.5px;text-transform:uppercase;color:var(--yellow);font-size:11px}.weapon-rule-box{max-width:440px}.weapon-rule-head{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.weapon-rule-kind{font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;font-size:13px}.weapon-rule-kind--property{color:var(--red)}.weapon-rule-kind--mastery{color:var(--yellow)}.weapon-rule-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:16px}.weapon-rule-close:hover{color:var(--text)}.weapon-rule-title.modal-title{margin-bottom:8px;font-size:20px}.weapon-rule-desc{color:var(--text);margin:0 0 10px;font-size:18px;font-weight:400;line-height:1.6}.weapon-rule-note{color:var(--text-muted);margin:0 0 10px;font-size:16px;font-style:italic}.weapon-rule-others{border-top:1px solid var(--border);flex-wrap:wrap;gap:5px;padding-top:12px;display:flex}.weapon-rule-others .weapon-rule-chip{padding:2px 9px;font-size:15px}.sheet-footer{justify-content:flex-end;align-items:center;gap:10px;padding:4px 0 8px;display:flex}.sheet-roster{margin-top:18px;padding:0 14px}.sheet-roster-toggle{cursor:pointer;color:var(--text-muted);font-family:var(--font-display);letter-spacing:1px;text-transform:uppercase;background:0 0;border:none;padding:6px 0;font-size:15px}.sheet-roster-toggle:hover{color:var(--text)}.sheet-roster-count{background:var(--tint-md);border-radius:99px;margin-left:4px;padding:0 6px;font-size:13px}@media (width<=760px){.sheet-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-vitals{grid-template-columns:repeat(6,minmax(0,1fr))}.sheet-vitals>.sheet-stat{grid-column:span 2}.sheet-vitals>.sheet-stat:nth-child(n+4){grid-column:span 3}.sheet-vital-toggles{flex-direction:row;grid-column:1/-1}.sheet-vital-toggle{padding:7px 6px}.sheet-abilities{grid-template-columns:repeat(3,minmax(0,1fr))}.sheet-skills,.sheet-casting-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.sheet{padding:0 8px}.sheet-card{padding:10px}.sheet-identity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-skills{grid-template-columns:minmax(0,1fr)}.sheet-coins{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.sheet-hp-adjust{width:100%;margin-left:0}.sheet-hp-amount.sheet-num{flex:1;width:0;min-width:0}.sheet-hp-btn{padding:7px 10px}.sheet-row-body,.sheet-option-body{padding-left:0}.sheet-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-editor-grid .span-2{grid-column:1/-1}.sheet-kind{width:60px;font-size:11px}.sheet-option .sheet-row-head{flex-wrap:wrap}.sheet-option .sheet-row-main{min-width:150px}.sheet-tab{padding:8px 2px;font-size:13px}}.appearance-palette{color:var(--text-muted);align-items:center;gap:12px;font-size:.9rem;display:flex}.appearance-palette>span{min-width:110px}.appearance-palette select{max-width:330px;min-height:44px;font-size:16px}.sheet{gap:12px;min-width:0}.sheet button,.sheet select,.sheet input,.sheet-switcher button,.sheet-roster-toggle{min-height:44px}.sheet button:focus-visible,.sheet summary:focus-visible{outline:2px solid var(--char-accent);outline-offset:3px}.sheet-card{border-radius:8px;min-width:0;padding:16px}.sheet-card-title{text-transform:none;letter-spacing:0;color:var(--text);font-family:Georgia,serif;font-size:20px}.sheet-identity{background:0 0;border:0;padding:8px 0 0}.sheet-identity-top{gap:12px;margin:0}.sheet-sigil{border:1px solid var(--char-accent);height:44px;color:var(--char-accent);border-radius:20px 20px 5px 5px;flex:0 0 38px;place-items:center;font:26px Georgia,serif;display:grid}.sheet-identity-summary{flex:1;min-width:0}.sheet-identity-summary h2{color:var(--text);overflow-wrap:anywhere;margin:0;font:26px Georgia,serif}.sheet-identity-summary p{color:var(--text-muted);margin:3px 0 0;font-size:16px}.sheet-identity-details>summary{cursor:pointer;color:var(--text-muted);min-height:36px;padding:6px 0;font-size:14px}.sheet-identity-details[open]{padding-bottom:12px}.sheet-identity-details .sheet-identity-grid{margin-top:10px}.sheet-combat-header{grid-template-columns:minmax(420px,1.1fr) minmax(0,1fr);gap:10px;display:grid}.sheet-hp .sheet-card-title{flex-wrap:wrap;font-size:18px}.sheet-hp{align-self:start}.sheet-hp-cur.sheet-num{height:44px;padding:2px 6px;font-size:28px}.sheet-hp-temp{flex-direction:row;align-items:center}.sheet-hp-temp .sheet-field-lbl{font-size:11px}.sheet-hp-row{gap:8px 12px}.sheet-hp-main .sheet-num{max-width:70px}.sheet-hp-adjust{flex:1;gap:6px;margin:0}.sheet-hp-btn{flex:1;padding:6px 8px;font-size:15px}.sheet-hp-amount.sheet-num{flex:0 0 58px;width:58px}.sheet-hp-bar{height:5px;margin:10px 0}.sheet-hp-extra{flex-wrap:wrap;gap:10px;margin-top:6px}.sheet-recovery{width:100%}.sheet-recovery>summary{cursor:pointer;color:var(--text-muted);min-height:32px;padding:4px 0;font-size:14px}.sheet-recovery-controls{flex-wrap:wrap;align-items:end;gap:12px;padding-top:8px;display:flex}.sheet-rest-btns{flex-wrap:wrap}.sheet-vitals{grid-template-columns:repeat(5,minmax(0,1fr));align-content:start;gap:6px;padding:12px}.sheet-vitals>.sheet-stat{background:0 0;border:0;grid-column:auto;padding:4px 0}.sheet-stat-lbl{color:var(--text-muted);letter-spacing:.2px;font:11px Segoe UI,sans-serif}.sheet-stat-roll{color:inherit;cursor:pointer;background:0 0;border:0;min-width:44px;padding:0}.sheet-stat .sheet-stat-text{font-size:16px}.sheet-vital-toggles{flex-direction:row;grid-column:1/-1;gap:8px;margin-top:8px}.sheet-vital-toggle{flex:1;padding:6px;font-size:14px}.sheet-tabs{border-bottom:1px solid var(--border-light);gap:24px;padding:0;position:static}.sheet-tab{color:var(--text-muted);background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:0 auto;padding:8px 2px;font:16px Segoe UI,sans-serif}.sheet-tab.active{border-color:var(--char-accent);color:var(--text);background:0 0}.sheet-workspace{grid-template-columns:minmax(0,1fr) 270px;align-items:start;gap:18px;display:grid}.sheet-workspace>*{min-width:0}.sheet-core .sheet-abilities{grid-template-columns:repeat(6,minmax(72px,1fr));gap:6px;padding-bottom:4px;overflow-x:auto}.sheet-core .sheet-ability{background:var(--bg);border:0;border-radius:4px;grid-template-columns:minmax(0,1fr);place-items:center;gap:0;padding:4px;display:grid}.sheet-core .sheet-abilities-card{padding:10px}.sheet-core .sheet-ability-abbr{letter-spacing:0;font-size:11px}.sheet-core .sheet-ability-mod{min-width:0;min-height:28px;padding:0;font-size:20px}.sheet-core .sheet-ability-score.sheet-num{width:30px;height:28px;min-height:28px;padding:2px;font-size:13px}.sheet-core .sheet-ability-save{flex-wrap:nowrap;grid-column:1/-1;gap:0}.sheet-core .sheet-ability-save .sheet-prof-dot{width:16px;min-width:16px;height:28px;min-height:28px}.sheet-core .sheet-ability-save .sheet-roll-link{min-height:28px;padding:0;font-size:13px}.sheet-ability-abbr{color:var(--text-muted);font:12px Segoe UI,sans-serif}.sheet-ability-save{flex-wrap:wrap;justify-content:center;gap:0}.sheet-ability-score.sheet-num{width:54px}.sheet-core .sheet-skills-panel{padding:10px}.sheet-core-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:4px 8px;margin-bottom:4px;display:flex}.sheet-core-heading .sheet-card-title{margin-bottom:0;font-size:18px}.sheet-core-heading .btn{min-height:32px;padding:2px 8px;font-size:12px}.sheet-core .sheet-ability-score:disabled{opacity:1;color:var(--text);-webkit-text-fill-color:var(--text);cursor:default}.sheet-core .sheet-prof-dot:disabled{opacity:1;cursor:default}.sheet-skill-name{font-size:17px}.sheet-prof-dot{flex-shrink:0;min-width:34px}.sheet-resources{container:resources/inline-size}.sheet-resources .sheet-card{padding:10px}.sheet-resources .sheet-card-title{margin-bottom:4px;font-size:18px}.sheet-resource-list{grid-template-columns:minmax(0,1fr);display:grid}.sheet-resource{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;padding:3px 0;display:grid}.sheet-resource-label{min-width:0;color:var(--pip-on,var(--text));justify-content:space-between;align-items:center;gap:6px;font-size:14px;display:flex}.sheet-resource-label span:first-child{overflow-wrap:anywhere}.sheet-resource-label span:last-child{white-space:nowrap}.sheet-resources .sheet-hint{margin:4px 0 0;font-size:12px}.sheet-resource .sheet-pips{justify-content:flex-end;max-width:140px}.sheet-skills-panel>summary{cursor:pointer;color:var(--text);font:18px Georgia,serif}.sheet-skills-panel[open]>summary{margin-bottom:6px}.sheet-pips{flex-wrap:wrap;gap:0}.sheet .sheet-pip{background:radial-gradient(circle, transparent 0 7px, var(--pip-on,var(--char-accent)) 8px 9px, transparent 10px);border:0;border-radius:6px;flex:0 0 44px;width:44px;height:44px}.sheet .sheet-pip.on{background:radial-gradient(circle, var(--pip-on,var(--char-accent)) 0 8px, transparent 9px)}.sheet-resource .sheet-pip{background:radial-gradient(circle, transparent 0 5px, var(--pip-on,var(--char-accent)) 6px 7px, transparent 8px);flex-basis:28px;width:28px;height:28px;min-height:28px}.sheet-resource .sheet-pip.on{background:radial-gradient(circle, var(--pip-on,var(--char-accent)) 0 6px, transparent 7px)}.sheet-pips.ok{--pip-on:var(--green)}.sheet-pips.bad{--pip-on:var(--red)}.sheet-actions{gap:8px;container:character-actions/inline-size}.sheet-actions>.sheet-card{padding:10px}.sheet-actions .sheet-card-title{margin-bottom:4px;font-size:18px}.sheet-actions-heading{justify-content:space-between;align-items:center;gap:8px;display:flex}.sheet-actions-heading .sheet-card-title{margin:0}.sheet-actions .sheet-actions-add-toggle{min-width:36px;padding:0 8px;font-size:22px}.sheet-actions-toolbar{gap:6px}.sheet-kind-filter{gap:4px}.sheet-actions .sheet-kind-chip{min-height:32px;font:12px var(--font-body);letter-spacing:0;border-radius:24px;gap:4px;padding:3px 7px}.sheet-actions .sheet-kind-chip span{font-size:12px}.sheet-actions-add{margin-top:6px}.sheet-actions-add[hidden]{display:none}.sheet-actions .sheet-search{width:100%;min-height:36px;margin-top:6px;padding:4px 8px;font-size:16px}.sheet-action-feedback{color:var(--text-muted);font-size:15px}.sheet-action-feedback:empty{display:none}.sheet-actions-casting{gap:4px 12px;margin-top:4px;padding-top:4px;font-size:14px}.sheet-actions-casting .sheet-roll-link{min-height:32px;font-size:14px}.sheet-option{border:1px solid var(--border-light);border-left:3px solid var(--option-color,var(--border-light));background:var(--surface);border-radius:7px;margin-top:5px;padding:5px 8px}.sheet-option .sheet-row-head{grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:2px 8px;padding:0;display:grid}.sheet-option .sheet-row-main{min-width:0}.sheet-option .sheet-row-name{overflow-wrap:anywhere;font-size:16px}.sheet-row-meta{overflow-wrap:anywhere;font-size:15px}.sheet-option .sheet-kind{justify-self:start;width:auto;margin:0;padding:0 4px;font-size:10px}.sheet-option-quick{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.sheet-option .sheet-row-caret{color:var(--text-muted);padding:4px;font-size:12px}.sheet-option .sheet-roll-btn{padding:3px 7px;font-size:14px}.sheet-option .sheet-row-meta{font-size:13px;line-height:1.25}.sheet-option .sheet-pip{flex-basis:28px;width:28px;height:32px;min-height:32px}.sheet-roll-btn{padding:6px 12px;font-size:16px}.sheet-roll-btn:disabled{opacity:.5;cursor:not-allowed}.sheet-option-body{padding:10px 0 0}.sheet-option .sheet-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-option .sheet-editor-grid .span-2{grid-column:1/-1}.sheet-editor-footer,.sheet-row-head{flex-wrap:wrap}.sheet-inventory .sheet-row-main{min-width:140px}.sheet .sheet-qty button,.sheet .sheet-equip,.sheet .sheet-attune,.sheet .sheet-item-remove,.sheet .chk{min-width:44px;min-height:44px}.sheet-list-toolbar{flex-wrap:wrap}.sheet-slot{flex-wrap:wrap;max-width:100%}@container resources (width>=450px){.sheet-resource-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}}@media (width<=1180px){.sheet-combat-header{grid-template-columns:1fr}.sheet-vitals{grid-template-columns:repeat(5,minmax(0,1fr))}.sheet-workspace{grid-template-columns:minmax(0,1fr) 260px}.sheet-hp-adjust{flex:1;margin-left:auto}}@media (width<=760px){.sheet-switcher{gap:4px;padding:8px}.sheet-switcher-list{scrollbar-width:thin;flex-wrap:nowrap;width:100%;padding-bottom:4px;overflow-x:auto}.sheet-switcher-list>button{white-space:nowrap;flex-shrink:0}.sheet-switcher-lbl{font-size:12px}.sheet-switch-chip{padding:4px 10px;font-size:13px}.sheet-identity-top{flex-wrap:wrap;gap:8px}.sheet-identity-summary h2{font-size:22px}.sheet-identity-summary p{font-size:14px}.sheet .sheet-identity{padding:4px 0 0}.sheet-save-status{margin-left:auto;font-size:13px}.sheet-combat-header{gap:6px}.sheet-card{padding:12px}.sheet-hp .sheet-card-title{gap:4px;margin-bottom:4px;font-size:16px}.sheet-rest-btns{gap:4px}.sheet-rest-btn{padding:4px 8px;font-size:13px}.sheet-hp-adjust{flex:1 0 100%;min-width:0}.sheet-hp-row{min-width:0}.sheet-hp-extra{margin-top:0}.sheet-hp-bar{margin:6px 0}.sheet-hp{padding:8px 12px;position:relative}.sheet-hp .sheet-card-title{min-height:32px}.sheet-recovery:not([open]){height:0}.sheet-recovery>summary{position:absolute;top:8px;right:12px}.sheet-recovery-controls{padding-top:6px}.sheet-vitals{gap:4px;padding:6px}.sheet-vitals>.sheet-stat{gap:0;padding:0}.sheet-vitals .sheet-stat-lbl{justify-content:center;align-items:center;min-height:26px;display:flex}.sheet-vitals .sheet-stat-val{justify-content:center;align-items:center;min-height:44px;display:flex}.sheet-vitals>.sheet-stat:nth-child(n){grid-column:auto}.sheet-stat .sheet-num{width:100%;font-size:22px}.sheet-stat-val{font-size:22px}.sheet-stat-lbl{font-size:10px}.sheet-vital-toggles{margin:0}.sheet-tabs{justify-content:space-between;gap:0}.sheet-tab{font-size:14px}.sheet-workspace{flex-direction:column;gap:14px;display:flex}.sheet-workspace>*{width:100%}.sheet-workspace>.sheet-resources{order:-3}.sheet-option{padding:5px 6px}.sheet-hp-extra .sheet-death{width:100%}.appearance-palette{flex-wrap:wrap;align-items:start}}@container character-actions (width<=640px){.sheet-option .sheet-row-head{grid-template-columns:minmax(0,1fr) auto auto;gap:0 6px}.sheet-option .sheet-kind{grid-area:1/1}.sheet-option .sheet-row-main{grid-area:2/1;min-height:0}.sheet-option-quick{grid-area:1/2/3;justify-content:flex-end;max-width:140px}.sheet-option .sheet-row-caret{grid-area:1/3/3}.sheet-option .sheet-row-meta{display:block}}@container character-actions (width<=400px){.sheet-option .sheet-row-caret{min-width:32px;font-size:0}.sheet-option .sheet-row-caret:after{content:"+";font-size:20px}.sheet-option .sheet-row-caret[aria-expanded=true]:after{content:"−"}.sheet-option-quick{max-width:112px}}.app-name-short{display:none}@media (width<=760px){.page-header .app-name-full{display:none}.page-header .app-name-short{display:inline}}@media (width<=600px){.login-brand .app-name-full{display:none}.login-brand .app-name-short{display:inline}}.sourcebook-columns{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px;display:grid}.sourcebook-group{border:1px solid var(--border);border-radius:8px;min-width:0;margin:0;padding:12px}.sourcebook-group legend{color:var(--text);font-family:var(--font-display);padding:0 6px}.sourcebook-option{color:var(--text);cursor:pointer;align-items:flex-start;gap:8px;padding:7px 0;display:flex}.sourcebook-option input{accent-color:var(--accent);flex-shrink:0;margin-top:4px}.sourcebook-option span{overflow-wrap:anywhere}.sourcebook-count{color:var(--text-dim);white-space:nowrap;flex-shrink:0;margin-left:auto;font-size:.85em}.character-tagged-content>summary{cursor:pointer}@media (width<=760px){.sourcebook-columns{grid-template-columns:1fr}}
