@import"https://fonts.googleapis.com/css2?family=Cinzel:wght@500;600;700&family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Text:wght@400;700&display=swap";:root{--ink: #1c1915;--muted: #776f63;--paper: #f3efe5;--sheet: #fcfaf5;--gold: #aa762d;--gold2: #d5b171;--red: #71312d;--line: #dcd3c4;--side: #171512;--green: #536f55}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:DM Sans,sans-serif}.shell{min-height:100vh;display:grid;grid-template-columns:250px 1fr}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(160deg,#191713,#0e0e0c);color:#e8dfcf;padding:22px 14px;display:flex;flex-direction:column;border-right:1px solid #302b23}.brand{border:0;background:none;color:inherit;display:flex;align-items:center;gap:12px;text-align:left;padding:4px 8px 22px;cursor:pointer}.sigil,.mobile-brand{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--gold);color:var(--gold2);font:700 20px Cinzel}.brand b{font:600 14px Cinzel;letter-spacing:1.4px}.brand small{display:block;color:#897e6b;font-size:8px;letter-spacing:2.4px;margin-top:3px}.nav-label{font-size:9px;letter-spacing:2px;color:#726a5d;margin:24px 12px 8px}.nav-item{border:0;background:none;color:#aaa193;width:100%;display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:5px;font:500 12px DM Sans;cursor:pointer;text-align:left}.nav-item i{font-style:normal;color:#847963;width:17px;font-size:15px}.nav-item em{font-style:normal;font-size:9px;margin-left:auto;color:#625c52}.nav-item:hover,.nav-item.active{background:#24211c;color:#f4ead7}.nav-item.active{box-shadow:inset 2px 0 var(--gold)}.mode-card{margin-top:auto;border:1px solid #302c26;background:#1d1a16;padding:12px;display:flex;align-items:center;justify-content:space-between}.mode-card small{display:block;color:#776d5d;font-size:8px;letter-spacing:1.5px}.mode-card b{font:500 11px Cinzel;color:#d7c9b0}.mode-card button{width:32px;height:18px;border:0;border-radius:20px;background:#65432a;padding:2px}.mode-card button span{display:block;width:14px;height:14px;border-radius:50%;background:#dcb976;margin-left:auto}.topbar{height:62px;background:#fcfaf5e8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 34px;position:sticky;top:0;z-index:10}.search{width:min(520px,60%);height:35px;border:1px solid var(--line);background:#f7f3eb;color:#938a7c;display:flex;align-items:center;gap:10px;padding:0 12px;text-align:left;cursor:pointer}.search span:nth-child(2){flex:1}.search kbd,.palette-box kbd{border:1px solid #d2c8b9;background:#eee8dd;padding:2px 6px;font:10px DM Sans}.topbar-dashboard-link{height:35px;display:inline-flex;align-items:center;gap:7px;margin-left:10px;padding:0 12px;border:1px solid var(--line);background:#f7f3eb;color:#665844;text-decoration:none;font:700 9px DM Sans;letter-spacing:.8px;text-transform:uppercase}.topbar-dashboard-link:hover{border-color:#aa8350;background:#efe6d7;color:#7d5725}.topbar-dashboard-link i{color:#a77530;font-style:normal}.topbar-player-link{background:#f3ecdf}.topbar-player-link.active{border-color:#a77530;background:#a77530;color:#fff}.topbar-player-link.active i{color:#fff}.mode-badge{margin-left:auto;font-size:9px;letter-spacing:1.5px;border:1px solid #bfae8f;padding:6px 9px;color:#71593b}.mode-badge.player{border-color:#9daf9d;color:#476448}.mobile-brand{display:none}.page{padding:34px 40px 70px;max-width:1500px;margin:auto}.eyebrow,.kicker,.overline{font-size:9px;letter-spacing:2px;text-transform:uppercase;color:var(--gold);font-weight:700}.hero{min-height:280px;margin-top:12px;background:radial-gradient(circle at 85% 10%,#443524 0,transparent 35%),linear-gradient(120deg,#1e1a15,#30271e);color:#eee4d4;padding:40px 48px;display:flex;align-items:center;position:relative;overflow:hidden;border-bottom:3px solid var(--gold)}.hero:before{content:"";position:absolute;inset:0;opacity:.08;background-image:repeating-linear-gradient(45deg,transparent 0 30px,#fff 31px)}.hero>div{position:relative}.hero h1{font:600 clamp(40px,5vw,66px) Cinzel;margin:2px 0 12px}.hero-copy{max-width:690px;color:#c8bdad;font:16px/1.7 Libre Caslon Text;margin:0}.hero-actions{display:flex;gap:10px;margin-top:25px}.primary,.secondary{border:1px solid var(--gold);padding:10px 16px;font:600 10px DM Sans;text-transform:uppercase;letter-spacing:1px;cursor:pointer}.primary{background:var(--gold);color:#fff}.secondary{background:transparent;color:#d8c9b0}.hero-mark{margin-left:auto;width:150px;height:150px;border:1px solid #947341;display:grid;place-items:center;transform:rotate(45deg);opacity:.65}.hero-mark span{font:600 40px Cinzel;transform:rotate(-45deg);color:#c8a260}.stats{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-top:0;background:var(--sheet)}.stats div{padding:18px 24px;border-right:1px solid var(--line);display:flex;align-items:baseline;gap:10px}.stats span{font:600 24px Cinzel;color:var(--red)}.stats small{color:var(--muted);font-size:10px;text-transform:uppercase}.dash-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:18px;margin-top:22px}.panel{background:var(--sheet);border:1px solid var(--line);padding:20px}.panel.wide{grid-column:1/-1}.panel-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:13px;margin-bottom:12px}.panel h2,.collection h2{font:600 18px Cinzel;margin:3px 0 0}.panel-head button{border:0;background:none;color:var(--gold);font:600 9px DM Sans;text-transform:uppercase;cursor:pointer}.briefing{columns:2;column-gap:45px;font:14px/1.75 Libre Caslon Text;max-height:260px;overflow:hidden;position:relative}.briefing h1{display:none}.briefing h2,.briefing h3{font:600 15px Cinzel}.people,.timeline{display:grid;gap:2px}.person,.record-row,.timeline button{width:100%;border:0;background:transparent;display:flex;align-items:center;gap:12px;text-align:left;padding:10px 6px;cursor:pointer;border-bottom:1px solid #e8e1d6}.person:hover,.record-row:hover,.timeline button:hover{background:#f3eee3}.person>span{width:38px;height:38px;background:#342c24;color:#d8b779;display:grid;place-items:center;border-radius:50%;font:600 12px Cinzel}.person div,.record-row span,.timeline button span{min-width:0;flex:1}.person b,.record-row b,.timeline b{display:block;font:600 11px Cinzel;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.person small,.record-row small,.timeline small{display:block;color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:3px}.person i,.record-row em{color:var(--gold);font-style:normal}.timeline button i{font:500 10px Cinzel;color:var(--gold);border:1px solid var(--gold2);border-radius:50%;width:25px;height:25px;display:grid;place-items:center}.record-row>i{font-style:normal;color:var(--gold);font-size:18px;width:25px;text-align:center}.empty-state{text-align:center;padding:28px;color:var(--muted)}.empty-state span{font-size:30px;color:#c2aa82}.library-head{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:25px}.library-head h1{font:600 38px Cinzel;margin:8px 0 4px}.library-head p{margin:0;color:var(--muted);font-size:12px}.filter{width:320px;height:38px;border:1px solid var(--line);background:var(--sheet);display:flex;align-items:center;padding:0 12px;gap:8px}.filter input{border:0;outline:0;background:transparent;width:100%}.collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:22px;align-items:start}.collection{border:1px solid var(--line);background:var(--sheet);padding:15px}.collection-title{display:flex;align-items:center;justify-content:space-between;padding:2px 6px 12px;border-bottom:1px solid var(--line);text-transform:capitalize}.collection-title span{font:10px Cinzel;color:var(--gold)}.no-results{grid-column:1/-1;text-align:center;padding:100px}.reader-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.back,.pin{border:0;background:none;color:var(--gold);font:600 10px DM Sans;text-transform:uppercase;cursor:pointer}.pin{border:1px solid var(--line);padding:8px 11px}.pin.on{background:#efe3ca}.source-badge{font-size:9px;color:var(--green);margin-left:10px}.reader-layout{display:grid;grid-template-columns:minmax(0,820px) 220px;gap:35px;justify-content:center}.reader article{background:var(--sheet);border:1px solid var(--line);box-shadow:0 15px 50px #50452f15}.article-cover{padding:42px 52px 32px;background:linear-gradient(135deg,#f8f3e8,#eee4d2);border-bottom:1px solid var(--line)}.article-cover h1{font:600 clamp(32px,5vw,54px)/1.1 Cinzel;margin:10px 0 12px}.article-cover p{font:15px/1.7 Libre Caslon Text;color:#665d51}.path{font:9px DM Sans;color:#9b8e7c;margin-top:20px}.markdown-body{padding:35px 52px 60px;font:15px/1.8 Libre Caslon Text;overflow-wrap:anywhere}.markdown-body h1{display:none}.markdown-body h2{font:600 24px Cinzel;margin:42px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--line)}.markdown-body h3{font:600 17px Cinzel;margin-top:30px}.markdown-body table{border-collapse:collapse;width:100%;display:block;overflow:auto;font:11px/1.5 DM Sans}.markdown-body th{background:#2b251e;color:#e9ddc8;text-align:left}.markdown-body td,.markdown-body th{padding:8px 10px;border:1px solid var(--line);vertical-align:top}.markdown-body blockquote{border-left:3px solid var(--gold);margin-left:0;padding:4px 18px;background:#f5efe3}.markdown-body code{font-size:12px;background:#eee7da;padding:2px 4px}.on-page{position:sticky;top:95px;align-self:start;display:grid;gap:2px}.on-page>a{font-size:10px;color:var(--muted);text-decoration:none;padding:5px 0;border-bottom:1px solid #e4dccf}.related{margin-top:25px;display:grid}.related button{border:0;background:none;text-align:left;padding:7px 0;font:600 10px Cinzel;cursor:pointer}.related small{display:block;color:var(--muted);font:9px DM Sans}.palette-backdrop{position:fixed;inset:0;background:#0d0c0ad9;z-index:100;display:flex;justify-content:center;align-items:flex-start;padding-top:12vh}.palette-box{width:min(700px,90vw);background:var(--sheet);border:1px solid var(--gold);box-shadow:0 20px 80px #000}.palette-box>label{height:58px;display:flex;align-items:center;gap:12px;padding:0 18px;border-bottom:1px solid var(--line)}.palette-box input{flex:1;border:0;outline:0;background:transparent}.palette-results{max-height:60vh;overflow:auto;padding:8px}.palette-tip{text-align:center;padding:30px;color:var(--muted);font-size:11px}.fatal{padding:10vh;text-align:center}@media(max-width:1300px){.topbar-dashboard-link{padding:0 10px}.topbar-dashboard-link span{display:none}}@media(max-width:900px){.shell{grid-template-columns:1fr}.sidebar{display:none}.mobile-brand{display:grid;width:30px;height:30px;border:0;background:#262018;color:#d3af70;margin-right:15px}.page{padding:25px 18px}.topbar{padding:0 18px}.search{flex:1;width:auto;min-width:0}.hero{padding:30px 25px}.hero-mark{display:none}.stats{grid-template-columns:repeat(2,1fr)}.dash-grid,.collection-grid,.reader-layout{grid-template-columns:1fr}.on-page{display:none}.article-cover,.markdown-body{padding:30px 25px}.briefing{columns:1}.library-head{align-items:stretch;flex-direction:column;gap:20px}.filter{width:100%}}@media(max-width:520px){.stats div{padding:13px}.stats small{font-size:8px}.mode-badge{display:none}.search{width:auto}.topbar-dashboard-link{margin-left:5px;padding:0 9px}.hero-actions{flex-direction:column;align-items:flex-start}}.live-party-panel .panel-head small{display:block;color:var(--muted);font-size:9px;margin-top:4px}.live-party-panel .panel-head>a{color:var(--gold);font:600 9px DM Sans;text-transform:uppercase;text-decoration:none}.live-party-list{display:grid;gap:8px}.live-party-loading,.live-party-empty{padding:24px 8px;text-align:center;color:var(--muted);font-size:11px}.live-party-empty a{color:var(--gold)}.live-character{display:grid;grid-template-columns:82px minmax(0,1fr) auto;gap:16px;align-items:center;padding:14px 8px;border-bottom:1px solid #e8e1d6;color:inherit;text-decoration:none}.live-character:hover{background:#f3eee3}.live-character-mark{position:relative;width:80px;height:80px;border-radius:50%;display:grid;place-items:center;background:#342c24;color:#d8b779;font:600 20px Cinzel;overflow:hidden}.live-character-mark img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.live-character-copy{min-width:0}.live-character-copy b{display:block;font:600 11px Cinzel}.live-character-copy small,.live-character-copy em{display:block;color:var(--muted);font-size:9px;font-style:normal;margin-top:3px}.hp-line{display:block;height:4px;background:#e3dbce;margin-top:7px;overflow:hidden}.hp-line i{display:block;height:100%;background:var(--green)}.live-character-open{color:var(--gold);font:600 8px DM Sans;text-transform:uppercase;letter-spacing:.5px}@media(max-width:520px){.live-character{grid-template-columns:82px minmax(0,1fr)}.live-character-open{display:none}}.map-page{max-width:none}.map-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:22px}.map-head h1{font:600 40px Cinzel;margin:7px 0 3px}.map-head p{margin:0;color:var(--muted)}.upload{display:inline-block;position:relative}.upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.map-workspace{display:grid;grid-template-columns:250px minmax(400px,1fr) 260px;min-height:650px;background:#151310;border:1px solid #3a3024;color:#eee2cf}.map-list,.map-details{padding:18px;background:#11100e;overflow:auto}.map-search{display:flex;border:1px solid #3b352e;padding:10px;color:#857b6c}.map-search input{border:0;outline:0;background:transparent;color:#fff;width:100%;margin-left:8px}.map-place{display:flex;width:100%;gap:10px;align-items:center;background:#191714;color:#eee2cf;border:1px solid #302b24;padding:13px 10px;text-align:left;margin-top:8px;cursor:pointer}.map-place.active{border-color:var(--gold);background:#34230f}.map-place i{font-style:normal;color:var(--gold)}.map-place span{min-width:0}.map-place b{display:block;font:600 11px Cinzel}.map-place small{display:block;color:#8f8576;font-size:8px;text-transform:uppercase;margin-top:4px}.map-canvas{position:relative;align-self:center;margin:16px;line-height:0;cursor:crosshair;overflow:hidden;background:#080806}.map-canvas>img{width:100%;height:auto;display:block;max-height:75vh;object-fit:contain}.map-pin{position:absolute;transform:translate(-50%,-50%);border:0;background:none;color:#fff;cursor:pointer;line-height:1}.map-pin span{display:block;width:17px;height:17px;border:4px solid white;background:#b86c00;border-radius:50%;box-shadow:0 2px 6px #000;margin:auto}.map-pin b{display:block;background:#17130eee;padding:5px 7px;margin-top:5px;white-space:nowrap;font:600 9px DM Sans}.map-pin.active span{width:23px;height:23px;background:#e48b00}.map-details h2{font:600 28px Cinzel}.linked-record{border:1px solid #4c443a;background:#1b1814;color:#d3b67c;padding:9px;width:100%;cursor:pointer}.map-note{border:1px solid #302b24;margin-top:16px;padding:14px}.map-note p{color:#bdb2a2;font:12px/1.7 DM Sans}.map-note.secret{border-color:#60461e;background:#271c0d}.map-empty{color:#81786b;font-size:11px;padding:20px}.map-welcome{min-height:560px;border:1px dashed #b9aa90;display:grid;place-items:center;align-content:center;text-align:center;padding:40px;background:radial-gradient(circle,#f8f1e3,#e9dfcd)}.map-welcome h2{font:600 25px Cinzel}.map-welcome p{max-width:520px;color:var(--muted);line-height:1.7}.map-placeholder{font-size:70px;color:var(--gold)}dialog{width:min(520px,90vw);border:1px solid var(--gold);background:var(--sheet);padding:25px;box-shadow:0 20px 80px #0008}dialog::backdrop{background:#0d0b08cc}dialog h2{font:600 24px Cinzel}dialog label{display:grid;gap:5px;margin:12px 0;font-size:10px;text-transform:uppercase;color:var(--muted)}dialog input,dialog select,dialog textarea{border:1px solid var(--line);padding:9px;font:12px DM Sans;text-transform:none}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:20px}@media(max-width:1000px){.map-workspace{grid-template-columns:210px 1fr}.map-details{grid-column:1/-1}}@media(max-width:700px){.map-head{align-items:flex-start;flex-direction:column;gap:15px}.map-workspace{grid-template-columns:1fr}.map-list{max-height:220px}.map-details{grid-column:auto}}.campaign-switcher{margin:0 4px 12px;padding:12px;background:#201d18;border:1px solid #373128}.campaign-switcher>span{display:block;color:#766d60;font-size:8px;letter-spacing:1.8px;margin-bottom:7px}.campaign-switcher>div{display:flex}.campaign-switcher select{min-width:0;flex:1;background:#161411;border:1px solid #443c32;color:#eee2d0;padding:9px;font:500 11px DM Sans}.campaign-switcher #campaign-manage{width:38px;background:#161411;border:1px solid #443c32;border-left:0;color:#b9a98d;cursor:pointer}.campaign-switcher #new-campaign{width:100%;margin-top:7px;border:1px dashed #5d4b31;background:transparent;color:#d1ae70;padding:7px;font:600 9px DM Sans;text-transform:uppercase;letter-spacing:.7px;cursor:pointer}.campaign-switcher #new-campaign:hover{background:#2e2519}.campaign-dialog .campaign-tools{display:flex;gap:7px;flex-wrap:wrap;margin-top:15px;padding-top:15px;border-top:1px solid var(--line)}.campaign-tools button,.import-campaign{border:1px solid var(--line);background:#f4eee2;color:#6d5a3d;padding:8px 10px;font:600 9px DM Sans;text-transform:uppercase;cursor:pointer}.import-campaign{display:block!important;margin:0!important;position:relative}.import-campaign input{position:absolute;inset:0;opacity:0;cursor:pointer}.markdown-body h2{scroll-margin-top:85px}.on-page a{cursor:pointer}.on-page a:hover{color:var(--gold);padding-left:4px}.chat-drawer{position:fixed;inset:0;z-index:200;display:flex;justify-content:flex-end}.chat-scrim{position:absolute;inset:0;border:0;background:#0b0a08a8}.chat-panel{position:relative;width:min(470px,100vw);height:100%;background:#f8f4eb;border-left:1px solid #aa762d;box-shadow:-20px 0 60px #0005;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto}.chat-panel>header{background:linear-gradient(135deg,#1b1813,#2e261d);color:#eee4d4;padding:22px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:3px solid #aa762d}.chat-panel>header span{font-size:8px;letter-spacing:2px;color:#d5b171}.chat-panel>header h2{font:600 25px Cinzel;margin:4px 0 0}.chat-panel>header button{border:0;background:none;color:#d5b171;font-size:30px;cursor:pointer}.chat-profile{padding:14px 20px;border-bottom:1px solid #dcd3c4;display:flex;align-items:flex-end;gap:12px}.chat-profile label{flex:1;font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#776f63}.chat-profile input{display:block;width:100%;margin-top:5px;border:1px solid #d5ccbd;background:#fffdf8;padding:9px 10px;font:12px DM Sans}.chat-profile>b{font:600 9px DM Sans;text-transform:uppercase;letter-spacing:1px;border:1px solid #9daf9d;color:#476448;padding:9px}.chat-profile>b.dm{border-color:#c09e68;color:#79541e}.chat-messages{overflow:auto;padding:18px;scroll-behavior:smooth}.chat-message{display:grid;grid-template-columns:35px 1fr;gap:10px;margin-bottom:18px}.chat-avatar{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#445f52;color:#fff;font:600 10px Cinzel}.chat-message.dm .chat-avatar{background:#71312d}.chat-message header{display:flex;align-items:center;gap:7px}.chat-message header b{font:600 11px Cinzel}.chat-message header span{font-size:7px;letter-spacing:1px;text-transform:uppercase;color:#aa762d}.chat-message time{margin-left:auto;font-size:8px;color:#8a8174}.chat-message p{display:inline-block;margin:5px 0 0;background:#fffdf8;border:1px solid #e2dacd;padding:9px 11px;font:12px/1.55 DM Sans;overflow-wrap:anywhere}.chat-message.dm p{border-left:2px solid #aa762d}.chat-empty,.chat-status{text-align:center;color:#776f63;padding:70px 25px}.chat-empty>span{font-size:30px;color:#aa762d}.chat-empty h3{font:600 17px Cinzel;color:#1c1915}.chat-empty.error{color:#71312d}.chat-panel form{border-top:1px solid #dcd3c4;background:#eee8dc;padding:14px;display:grid;grid-template-columns:1fr auto;gap:8px}.chat-panel textarea{resize:none;border:1px solid #cabfad;background:#fffdf8;padding:10px;font:12px/1.4 DM Sans}.chat-panel form button{border:0;background:#aa762d;color:#fff;padding:0 18px;font:600 9px DM Sans;text-transform:uppercase;letter-spacing:1px;cursor:pointer}.chat-panel form button:disabled{opacity:.5}.chat-panel form small{grid-column:1/-1;color:#887e70;font-size:8px}@media(max-width:520px){.chat-panel{width:100%}.chat-profile{align-items:stretch;flex-direction:column}.chat-profile>b{align-self:flex-start}.chat-message time{display:none}}.workspace-drawer{position:fixed;inset:0;z-index:190;display:flex;justify-content:flex-end}.workspace-scrim{position:absolute;inset:0;border:0;background:#0b0a08aa}.workspace-panel{position:relative;width:min(940px,100vw);height:100%;background:#f5f0e6;border-left:1px solid var(--gold);box-shadow:-20px 0 60px #0005;display:grid;grid-template-rows:auto minmax(0,1fr)}.workspace-panel>header{background:linear-gradient(135deg,#1b1813,#32281d);color:#eee4d4;border-bottom:3px solid var(--gold);padding:22px 28px;display:flex;justify-content:space-between;align-items:start}.workspace-panel>header span{font-size:8px;letter-spacing:2px;color:var(--gold2)}.workspace-panel>header h2{font:600 28px Cinzel;margin:4px 0}.workspace-panel>header p{color:#a99e8c;margin:0;font-size:11px}.workspace-panel>header>button{border:0;background:none;color:var(--gold2);font-size:30px;cursor:pointer}.workspace-body{overflow:auto;padding:24px 28px}.tool-empty{text-align:center;padding:70px 25px;color:var(--muted)}.tool-empty>span{font-size:28px;color:var(--gold)}.tool-empty.error{color:var(--red)}.tool-form{display:grid;gap:14px}.tool-form label{display:grid;gap:6px;color:#756b5f;font-size:9px;letter-spacing:1px;text-transform:uppercase}.tool-form input,.tool-form textarea,.tool-form select,.tool-toolbar input,.tool-toolbar select,.encounter-head input{width:100%;border:1px solid var(--line);background:#fffdf8;color:var(--ink);padding:10px;font:12px/1.5 DM Sans;text-transform:none;letter-spacing:0}.tool-form textarea{resize:vertical}.tool-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.tool-actions,.tool-toolbar,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:9px}.tool-actions span{color:var(--green);font-size:10px}.tool-toolbar{margin-bottom:18px}.tool-toolbar>p{color:var(--muted);font-size:11px}.tool-toolbar button,.quest-card button,.relation-list button,.note-grid button,.encounter-head button,.initiative-list button{border:1px solid var(--line);background:#fffdf8;color:#71593b;padding:8px 11px;font:600 9px DM Sans;text-transform:uppercase;cursor:pointer}.status-tabs{display:flex;gap:4px;flex-wrap:wrap}.status-tabs button{background:transparent}.quest-list{display:grid;gap:10px}.quest-card{display:flex;justify-content:space-between;gap:20px;background:var(--sheet);border:1px solid var(--line);border-left:3px solid var(--gold);padding:17px}.quest-card>div:first-child{min-width:0}.quest-card span{font-size:8px;letter-spacing:1px;color:var(--gold);text-transform:uppercase}.quest-card h3,.note-grid h3{font:600 16px Cinzel;margin:5px 0}.quest-card p{font:12px/1.5 DM Sans}.quest-card small{display:block;color:var(--muted);white-space:pre-line}.quest-card>div:last-child{display:flex;align-items:start;gap:4px}.tool-search{display:flex;align-items:center;gap:8px;flex:1;border:1px solid var(--line);background:var(--sheet);padding-left:10px}.tool-search input{border:0}.event-line{position:relative;display:grid;gap:2px}.event-line:before{content:"";position:absolute;left:16px;top:15px;bottom:15px;width:1px;background:var(--gold2)}.event-line button{position:relative;display:grid;grid-template-columns:34px 1fr;gap:13px;align-items:center;text-align:left;border:0;background:transparent;padding:10px;cursor:pointer}.event-line button:hover{background:#eee6d8}.event-line i{width:34px;height:34px;border:1px solid var(--gold);background:var(--paper);border-radius:50%;display:grid;place-items:center;font:9px Cinzel;color:var(--gold)}.event-line b{display:block;font:600 12px Cinzel}.event-line small{display:block;color:var(--muted);font-size:10px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.relation-list{display:grid;gap:9px}.relation-list article{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:13px;background:var(--sheet);border:1px solid var(--line);padding:16px}.relation-list article>b{font:600 12px Cinzel}.relation-list article>span{color:var(--gold);font-size:9px;text-transform:uppercase}.relation-list article>p{grid-column:1/-1;color:var(--muted);font-size:11px;margin:0}.relation-list article>button{position:absolute;right:5px;top:5px;border:0;background:none}.newspaper{background:#fdf9ee;border:1px solid #cfc3ad;padding:35px;max-width:760px;margin:auto;box-shadow:0 15px 40px #392d1b18}.newspaper>header{text-align:center;border-top:4px double var(--ink);border-bottom:4px double var(--ink);padding:15px;margin-bottom:25px}.newspaper>header span{font:700 10px Cinzel;letter-spacing:3px}.newspaper>header h2{font:700 32px Cinzel;margin:5px}.newspaper>header p{font:italic 12px Libre Caslon Text}.newspaper>div{columns:2;column-gap:34px;font:12px/1.65 Libre Caslon Text}.newspaper h1{display:none}.newspaper h2,.newspaper h3{font-family:Cinzel;break-after:avoid}.inventory-table{border:1px solid var(--line);background:var(--sheet)}.inventory-table>div{display:grid;grid-template-columns:2fr 1fr 60px 90px 100px 30px;align-items:center;gap:10px;padding:11px 13px;border-bottom:1px solid var(--line);font-size:11px}.inventory-head{background:#29231d;color:#eee1cc;font-size:8px!important;text-transform:uppercase;letter-spacing:1px}.inventory-table button{border:0;background:none;color:var(--red);cursor:pointer}.encounter-head{display:grid;grid-template-columns:1fr auto auto auto;gap:9px;align-items:center;margin-bottom:16px}.encounter-head>span{white-space:nowrap;font:11px Cinzel}.initiative-list{display:grid;gap:7px}.initiative-list article{display:grid;grid-template-columns:50px 1fr 170px 30px;gap:12px;align-items:center;background:var(--sheet);border:1px solid var(--line);padding:12px}.initiative-list article.active{border-left:4px solid var(--gold);background:#fff8e9}.initiative-list strong{font:600 24px Cinzel;color:var(--red);text-align:center}.initiative-list b{display:block;font:600 12px Cinzel}.initiative-list small{color:var(--muted)}.initiative-list label{display:flex;align-items:center;gap:7px;font-size:10px}.initiative-list input{width:65px;border:1px solid var(--line);padding:7px}.note-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.note-grid article{background:var(--sheet);border:1px solid var(--line);padding:17px}.note-grid article>span{font-size:8px;color:var(--gold)}.note-grid p{white-space:pre-line;font:12px/1.6 DM Sans;color:#514a41}.ask-form{display:flex;gap:8px}.ask-form input{flex:1;border:1px solid var(--line);background:var(--sheet);padding:13px}.answer-results{display:grid;gap:8px;margin-top:20px}.answer-results>button{border:1px solid var(--line);background:var(--sheet);padding:15px;text-align:left;cursor:pointer}.answer-results>button span{font-size:8px;color:var(--gold);text-transform:uppercase}.answer-results h3{font:600 15px Cinzel;margin:5px 0}.answer-results p{color:var(--muted);font-size:11px}@media(max-width:700px){.workspace-body{padding:18px}.tool-grid,.note-grid{grid-template-columns:1fr}.newspaper>div{columns:1}.inventory-table>div{grid-template-columns:1.5fr 1fr 45px 25px}.inventory-table>div span:nth-of-type(3),.inventory-table>div span:nth-of-type(4){display:none}.encounter-head{grid-template-columns:1fr 1fr}.initiative-list article{grid-template-columns:40px 1fr 100px 25px}.relation-list article{grid-template-columns:1fr}.relation-list article>p{grid-column:auto}}@media print{body>*:not(#workspace-drawer){display:none!important}.workspace-drawer,.workspace-panel,.workspace-body{position:static;width:auto;height:auto;overflow:visible}.workspace-scrim,.workspace-panel>header,.tool-toolbar{display:none}.newspaper{box-shadow:none;border:0}}.sidebar nav{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-right:4px;scrollbar-color:#5a4a34 transparent;scrollbar-width:thin}.sidebar nav::-webkit-scrollbar{width:6px}.sidebar nav::-webkit-scrollbar-thumb{background:#5a4a34;border-radius:999px}.campaign-switcher,.mode-card{flex:0 0 auto}.mode-card a,.mode-card button{color:#c9953e;font-size:.7rem;letter-spacing:.08em;text-decoration:none;text-transform:uppercase}.mode-card button{width:auto;height:auto;border:0;border-radius:0;background:transparent;padding:0;cursor:pointer}.map-canvas.map-pin-placement{cursor:crosshair;outline:2px solid #b67821;outline-offset:3px}.map-pin-helper{margin-left:auto;opacity:1!important;pointer-events:auto!important}.chat-bubble-icon,.chat-empty-bubble{display:inline-block;width:15px;height:11px;border:1.5px solid currentColor;border-radius:5px;position:relative;box-sizing:border-box}.chat-bubble-icon:after,.chat-empty-bubble:after{content:"";position:absolute;left:2px;bottom:-4px;width:5px;height:5px;border-left:1.5px solid currentColor;transform:skewY(-35deg)}.chat-empty-bubble{width:28px;height:21px;border-width:2px;border-radius:8px;color:#aa762d;margin-bottom:10px}.public-shell{min-height:100vh;background:radial-gradient(circle at 78% 20%,rgba(166,119,50,.16),transparent 34%),linear-gradient(135deg,#12100d,#1d1913 58%,#11100e);color:#f4ead9;font-family:DM Sans,sans-serif}.public-nav{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,6vw,88px);border-bottom:1px solid rgba(232,210,173,.14)}.public-brand{display:flex;align-items:center;gap:13px;color:inherit;text-decoration:none}.public-brand-mark{display:grid;place-items:center;width:38px;height:38px;border:1px solid #b98a48;color:#d8b578;font:700 21px Georgia,serif;transform:rotate(45deg)}.public-brand-mark span{transform:rotate(-45deg)}.public-brand strong{display:block;font:700 13px Georgia,serif;letter-spacing:1.8px}.public-brand small{display:block;margin-top:3px;color:#9d927f;font-size:8px;letter-spacing:2px}.public-nav-actions{display:flex;align-items:center;gap:10px}.public-nav-actions a,.public-nav-actions button,.landing-actions a{border:1px solid rgba(230,205,164,.32);background:transparent;color:#f5ead8;padding:11px 17px;text-decoration:none;font:700 10px DM Sans,sans-serif;letter-spacing:1.1px;text-transform:uppercase;cursor:pointer}.public-nav-actions .accent,.landing-actions .accent{background:#b07a35;border-color:#b07a35;color:#120f0b}.landing{min-height:calc(100vh - 77px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);align-items:center;gap:8vw;padding:70px clamp(24px,8vw,128px)}.landing-copy{max-width:760px}.landing-kicker{color:#c49b60;font-size:10px;letter-spacing:3px;text-transform:uppercase}.landing h1{margin:18px 0 22px;max-width:780px;font:500 clamp(48px,7.4vw,96px)/.96 Georgia,serif;letter-spacing:-3px}.landing p{max-width:640px;color:#b9ad9a;font-size:17px;line-height:1.8}.landing-actions{display:flex;gap:12px;margin-top:34px}.landing-aside{position:relative;border:1px solid rgba(231,207,167,.2);padding:36px;background:#1e1a14b8;box-shadow:0 40px 100px #00000059}.landing-aside:before{content:"";position:absolute;inset:10px;border:1px solid rgba(231,207,167,.08);pointer-events:none}.landing-aside>span{color:#a88452;font-size:9px;letter-spacing:2px}.landing-aside h2{margin:13px 0 24px;font:500 31px Georgia,serif}.landing-feature{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:16px 0;border-top:1px solid rgba(231,207,167,.12)}.landing-feature i{display:grid;place-items:center;width:30px;height:30px;border:1px solid #5d4930;color:#d7ae70;font-style:normal}.landing-feature b{display:block;font:600 13px Georgia,serif}.landing-feature small{display:block;margin-top:4px;color:#8e8577;font-size:11px;line-height:1.45}.auth-page{min-height:calc(100vh - 77px);display:grid;place-items:center;padding:48px 20px}.auth-card{width:min(100%,470px);border:1px solid rgba(232,210,173,.2);background:#1d1914;padding:40px;box-shadow:0 30px 90px #00000059}.auth-card .eyebrow{color:#b88a4c}.auth-card h1{margin:10px 0 8px;font:500 35px Georgia,serif}.auth-card>p{color:#9f9587;font-size:13px;line-height:1.6}.auth-form{display:grid;gap:16px;margin-top:26px}.auth-form label,.campaign-create-form label{display:grid;gap:7px;color:#bfb2a0;font-size:10px;letter-spacing:.6px;text-transform:uppercase}.auth-form input,.campaign-create-form input,.campaign-create-form textarea,.campaign-create-form select{width:100%;box-sizing:border-box;border:1px solid #4a4033;background:#13110e;color:#f5ead8;padding:13px;font:500 13px DM Sans,sans-serif}.auth-form button,.campaign-create-form .submit{border:1px solid #b07a35;background:#b07a35;color:#17110a;padding:13px;font:700 10px DM Sans,sans-serif;letter-spacing:1px;text-transform:uppercase;cursor:pointer}.auth-form button:disabled{opacity:.55}.auth-status{min-height:18px;color:#d4b47f;font-size:11px;line-height:1.5}.auth-switch{display:block;margin-top:22px;color:#bca983;font-size:12px}.campaign-dashboard{min-height:100vh;background:#eee8dc;color:#242019;font-family:DM Sans,sans-serif}.campaign-dashboard header{display:flex;align-items:center;justify-content:space-between;padding:18px clamp(22px,5vw,72px);background:#171511;color:#f0e5d2;border-bottom:1px solid #3a3329}.campaign-dashboard main{padding:52px clamp(22px,7vw,102px)}.campaign-dashboard-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.campaign-dashboard h1{margin:6px 0 0;font:500 45px Georgia,serif}.campaign-dashboard-head p{margin:9px 0 0;color:#72695c}.dashboard-create{border:1px solid #936428;background:#a97635;color:#fff8eb;padding:13px 18px;font:700 10px DM Sans;letter-spacing:.8px;text-transform:uppercase;cursor:pointer}.campaign-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}.campaign-card{display:flex;flex-direction:column;min-height:230px;padding:25px;background:#faf7f0;border:1px solid #d4cabc;box-shadow:0 12px 30px #2e25190f}.campaign-card .role{align-self:flex-start;padding:5px 8px;background:#e8decd;color:#76582d;font-size:8px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.campaign-card h2{margin:20px 0 8px;font:500 25px Georgia,serif}.campaign-card p{color:#756c60;font-size:12px;line-height:1.55;flex:1}.campaign-card dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:18px 0}.campaign-card dt{color:#93897b;font-size:8px;letter-spacing:.8px;text-transform:uppercase}.campaign-card dd{margin:3px 0 0;color:#453b2f;font-size:11px}.campaign-card a{display:block;text-align:center;background:#27231d;color:#f5ead9;padding:11px;text-decoration:none;font-size:9px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.campaign-zero{padding:55px;text-align:center;border:1px dashed #baa98f;background:#ffffff61}.campaign-zero span{font:500 48px Georgia,serif;color:#aa7940}.campaign-zero h2{font:500 28px Georgia,serif}.campaign-zero p{max-width:520px;margin:10px auto 22px;color:#756b5e}.campaign-create-form{display:grid;gap:15px}.campaign-create-form .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.campaign-create-form .status{min-height:16px;color:#a16a2e;font-size:11px}.campaign-create-form .invite-link{display:grid;grid-template-columns:1fr auto;gap:8px}.campaign-create-form .invite-link button{border:1px solid #70522d;background:#e7d7bd;color:#4b3821;cursor:pointer}.empty-codex{margin-top:22px;padding:42px;border:1px dashed #bbaa8d;background:#ffffff52;text-align:center}.empty-codex h2{margin:8px 0;font:500 27px Georgia,serif}.empty-codex p{max-width:610px;margin:0 auto;color:#746b5e;line-height:1.6}.empty-codex-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:22px}.empty-codex-actions button,.library-add{border:1px solid #8b642f;background:#f8f2e7;color:#725025;padding:10px 13px;font:700 9px DM Sans;letter-spacing:.6px;text-transform:uppercase;cursor:pointer}.join-result{text-align:center}.join-result .submit{display:inline-block;margin-top:18px;text-decoration:none}.route-error{max-width:680px;margin:80px auto;padding:35px;border:1px solid #c7b9a4;background:#fbf7ef}.route-error h1{font:500 31px Georgia,serif}.route-error p{color:#71685b;line-height:1.6}@media(max-width:800px){.landing{grid-template-columns:1fr;padding-top:45px}.landing h1{font-size:52px;letter-spacing:-2px}.landing-aside{display:none}.public-nav{padding:0 18px}.public-nav-actions a:first-child{display:none}.campaign-dashboard-head{align-items:flex-start;flex-direction:column}.auth-card{padding:28px}.campaign-create-form .form-grid{grid-template-columns:1fr}}.auth-links{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:22px}.auth-notice{margin-top:20px;padding:12px 14px;border:1px solid rgba(184,138,76,.45);background:#b88a4c1a;color:#dec69e;font-size:12px;line-height:1.5}.auth-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:26px}.auth-actions a,.route-actions a{border:1px solid #8d6737;background:#2a241d;color:#f8eddc;padding:12px 16px;text-decoration:none;font:700 9px DM Sans,sans-serif;letter-spacing:.8px;text-transform:uppercase}.auth-actions .accent,.route-actions a:first-child{background:#a97635;border-color:#936428;color:#fff8eb}.route-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.route-actions a.secondary{background:#fbf7ef;color:#59452c}.public-shell{--ember: #c68a3c;--ember-light: #efc27c;--ink: #11100e;--panel: #1a1713;--ivory: #f2e7d5;background-image:radial-gradient(circle at 82% 6%,rgba(198,138,60,.17),transparent 30%),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(145deg,#0d0c0a,#1a1713 62%,#0c0b09);background-size:auto,42px 42px,42px 42px,auto}.public-nav{position:relative;z-index:5;min-height:120px;height:auto;gap:28px}.public-brand{display:inline-flex;align-items:center;gap:11px;color:var(--ivory);text-decoration:none}.public-brand-mark{width:96px;height:96px;flex:0 0 96px;border-radius:50%;object-fit:cover;transform:none;box-shadow:0 0 22px #c68a3c33}.public-brand>span{display:flex;flex-direction:column;gap:5px}.public-brand small{color:#a99982;font-size:8px;font-weight:700;letter-spacing:1.7px;line-height:1;text-transform:uppercase}.public-brand strong,.footer-wordmark,.auth-wordmark{color:var(--ivory);font:600 21px/1 Georgia,serif;letter-spacing:.2px}.auth-card{box-sizing:border-box}.public-brand strong:first-letter,.footer-wordmark:first-letter,.auth-wordmark:first-letter{color:var(--ember-light)}.public-site-links{display:flex;align-items:center;gap:25px;margin-left:auto}.public-site-links a{position:relative;color:#a9a093;text-decoration:none;font-size:13px}.public-site-links a:hover,.public-site-links a[aria-current=page]{color:#f5ead8}.public-site-links a[aria-current=page]:after{content:"";position:absolute;right:0;bottom:-10px;left:0;height:1px;background:var(--ember)}.public-nav-actions a,.public-nav-actions button,.landing-actions a{border-radius:2px;transition:background .18s ease,border-color .18s ease,color .18s ease}.public-nav-actions a:hover,.public-nav-actions button:hover,.landing-actions a:hover{border-color:var(--ember-light);background:#c68a3c14}.public-nav-actions .accent:hover,.landing-actions .accent:hover{background:#d69b4d;color:#100d09}.landing{min-height:calc(100vh - 77px);padding-top:90px;padding-bottom:90px}.landing h1{font-size:clamp(54px,7vw,98px);letter-spacing:-3.8px}.landing-note{display:block;margin-top:22px;color:#777064;font-size:13px}.landing-aside{background:linear-gradient(150deg,#231e17eb,#12100de0);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.landing-feature i{font:600 10px DM Sans,sans-serif;letter-spacing:.4px}.home-proof{padding:110px clamp(24px,8vw,128px);background:#e8dfd1;color:#1b1814}.home-proof>span,.home-cta>span,.marketing-intro>span,.about-grid article>span,.contact-card>span,.pricing-grid article>span{color:#b27a37;font-size:10px;font-weight:700;letter-spacing:2.2px}.home-proof>span,.home-proof article>span{color:#94662d}.home-proof>h2{max-width:720px;margin:15px 0 55px;font:500 clamp(36px,5vw,62px) / 1.08 Georgia,serif;letter-spacing:-1.8px}.home-proof>div{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border:1px solid #bfb3a1;background:#bfb3a1}.home-proof article{padding:34px;background:#f4eee4}.home-proof h3{margin:0 0 14px;font:500 22px Georgia,serif}.home-proof p{margin:0;color:#71685c;font-size:15px;line-height:1.7}.home-cta{padding:100px 24px;text-align:center}.home-cta h2{max-width:760px;margin:16px auto 32px;font:500 clamp(38px,6vw,68px) / 1.02 Georgia,serif;letter-spacing:-2px}.home-cta a,.contact-card a,.pricing-grid a{display:inline-block;padding:14px 22px;background:var(--ember);color:#130f09;text-decoration:none;font-size:11px;font-weight:800;letter-spacing:1px;text-transform:uppercase}.public-footer{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:28px;padding:44px clamp(24px,6vw,88px);border-top:1px solid rgba(232,210,173,.14);color:#847d72}.public-footer .footer-wordmark{text-decoration:none}.public-footer p{margin:0;font-size:13px}.public-footer nav{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:16px}.public-footer nav a{color:#aaa194;text-decoration:none;font-size:12px}.public-footer small{grid-column:1 / -1;color:#625d55;font-size:12px}.marketing-page{min-height:70vh;padding:85px clamp(24px,8vw,128px) 110px}.marketing-intro{max-width:900px;margin-bottom:62px}.marketing-intro h1{margin:18px 0 22px;font:500 clamp(48px,7vw,82px) / 1 Georgia,serif;letter-spacing:-3px}.marketing-intro p{max-width:720px;margin:0;color:#aea496;font-size:17px;line-height:1.75}.feature-catalog{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(232,210,173,.18);border-left:1px solid rgba(232,210,173,.18)}.feature-catalog article{position:relative;min-height:180px;padding:36px;border-right:1px solid rgba(232,210,173,.18);border-bottom:1px solid rgba(232,210,173,.18);background:#1916128c}.feature-catalog article>span{position:absolute;top:22px;right:24px;color:#574b3b;font:500 28px Georgia,serif}.feature-catalog h2,.about-grid h2,.contact-card h2{margin:0 0 13px;font:500 26px Georgia,serif}.feature-catalog p,.about-grid p,.contact-card p,.pricing-grid p,.legal-copy p{margin:0;color:#a59b8d;font-size:15px;line-height:1.7}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.beta-pricing-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);max-width:960px}.beta-pricing-grid .beta-access-card,.beta-pricing-grid .planned-plans{min-height:310px}.pricing-grid article{display:flex;flex-direction:column;min-height:340px;padding:34px;border:1px solid rgba(232,210,173,.17);background:#1916129e}.pricing-grid article.featured{border-color:#a87638;background:linear-gradient(150deg,#5f411f61,#191612b3)}.pricing-grid h2{margin:16px 0 28px;font:500 29px Georgia,serif}.pricing-grid strong{display:block;min-height:52px;margin-bottom:22px;color:#f0dfc6;font:500 28px Georgia,serif}.pricing-grid strong small{display:block;margin-top:6px;color:#83796c;font:500 12px DM Sans,sans-serif}.pricing-intervals{display:flex;gap:24px;min-height:52px;margin-bottom:8px}.pricing-intervals strong{min-height:0;margin:0}.pricing-savings{color:#d4b47f!important;font-size:13px!important}.pricing-actions,.account-upgrade-actions{display:flex;flex-wrap:wrap;gap:8px}.pricing-grid p{flex:1}.pricing-grid a,.pricing-grid button{align-self:flex-start;margin-top:30px;border:1px solid #a87638;background:#a87638;color:#17110a;padding:11px 17px;font:700 10px DM Sans,sans-serif;letter-spacing:1px;text-decoration:none;text-transform:uppercase;cursor:pointer}.pricing-grid button:disabled{cursor:wait;opacity:.6}.pricing-note{margin:24px 0 0;color:#8e8578;font-size:13px}.billing-status{display:block;min-height:20px;margin-top:13px;color:#d4b47f;font-size:13px}.account-plan{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:center;margin:0 0 28px;padding:22px 24px;border:1px solid #d4c4ad;background:#25211b;color:#f5ead9}.account-plan>div:first-child>span{color:#c49b60;font-size:9px;font-weight:700;letter-spacing:1.6px}.account-plan h2{margin:6px 0;font:500 25px Georgia,serif}.account-plan p{margin:0;color:#b4a896;font-size:13px}.account-plan>div:nth-child(2){display:flex;gap:9px;align-items:center}.account-plan button,.account-plan a{border:1px solid #a87638;background:#a87638;color:#17110a;padding:10px 13px;font:700 9px DM Sans,sans-serif;letter-spacing:.8px;text-decoration:none;text-transform:uppercase;cursor:pointer}.account-plan a{background:transparent;color:#e6d3b5}.account-plan .billing-status{grid-column:1 / -1;margin:0}.dashboard-create:disabled{cursor:not-allowed;opacity:.55}.about-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.about-grid article{padding:40px;border:1px solid rgba(232,210,173,.17);background:#1916128c}.about-grid article:first-child{grid-row:span 2;display:flex;flex-direction:column;justify-content:flex-end;min-height:390px;background:linear-gradient(160deg,#94662d40,#19161285)}.about-grid h2{margin-top:18px;font-size:32px}.faq-list{max-width:900px;border-top:1px solid rgba(232,210,173,.17)}.faq-list details{border-bottom:1px solid rgba(232,210,173,.17)}.faq-list summary{padding:26px 8px;cursor:pointer;color:#eee1cd;font:500 20px Georgia,serif}.faq-list p{max-width:760px;margin:0;padding:0 8px 26px;color:#a79d8f;font-size:15px;line-height:1.75}.contact-card{max-width:760px;padding:44px;border:1px solid rgba(232,210,173,.18);background:#19161294}.contact-card h2{margin-top:15px;font-size:34px}.contact-card p{max-width:600px;margin-bottom:28px}.legal-copy{max-width:850px;padding:48px;border-top:4px solid #ad7838;background:#eee7da;color:#211d17}.legal-copy h2{margin:34px 0 10px;font:500 24px Georgia,serif}.legal-copy h2:first-child{margin-top:0}.legal-copy p{color:#5e564b}.legal-copy a{color:#7a4f20}.auth-wordmark{display:inline-block;margin-bottom:28px;text-decoration:none}.auth-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-top:20px}.auth-links a{color:#bca983;font-size:12px}@media(max-width:1000px){.public-site-links{display:none}.home-proof>div,.pricing-grid{grid-template-columns:1fr}.beta-pricing-grid,.about-grid{grid-template-columns:1fr}.about-grid article:first-child{grid-row:auto;min-height:280px}.public-footer{grid-template-columns:1fr}.public-footer nav{justify-content:flex-start}.public-footer small{grid-column:auto}}@media(max-width:800px){.account-plan{grid-template-columns:1fr}.account-plan>div:nth-child(2){align-items:stretch;flex-direction:column}.account-plan button,.account-plan a{text-align:center}.landing{padding-bottom:70px}.landing h1{font-size:clamp(46px,13vw,64px);letter-spacing:-2.4px}.home-proof{padding-top:75px;padding-bottom:75px}.feature-catalog{grid-template-columns:1fr}.marketing-page{padding-top:60px}.marketing-intro h1{font-size:clamp(42px,12vw,62px)}.public-nav-actions a:not(.accent),.public-nav-actions a:first-child{display:inline-block}}@media(max-width:520px){.public-nav{min-height:92px;gap:8px;padding-right:10px;padding-left:10px}.public-brand strong{font-size:18px}.public-brand{gap:8px}.public-brand-mark{width:72px;height:72px;flex-basis:72px}.public-brand small{display:block}.public-nav-actions a,.public-nav-actions button{padding:9px 8px}.landing-actions{align-items:stretch;flex-direction:column}.landing-actions a{text-align:center}.home-proof article,.feature-catalog article,.about-grid article,.pricing-grid article,.contact-card,.legal-copy{padding:26px}.public-footer{padding-top:35px;padding-bottom:35px}}.gazette-drawer{position:fixed;inset:0;z-index:195;display:flex;justify-content:flex-end}.gazette-scrim{position:absolute;inset:0;border:0;background:#0b0a08aa}.gazette-panel{position:relative;width:min(1040px,100vw);height:100%;background:#f1ebdf;border-left:1px solid #aa762d;display:grid;grid-template-rows:auto minmax(0,1fr);box-shadow:-20px 0 60px #0005}.gazette-panel>header{background:linear-gradient(135deg,#1b1813,#32281d);color:#eee4d4;border-bottom:3px solid #aa762d;padding:22px 28px;display:flex;justify-content:space-between}.gazette-panel>header span{font-size:8px;letter-spacing:2px;color:#d5b171}.gazette-panel>header h2{font:600 28px Cinzel;margin:4px 0}.gazette-panel>header p{color:#a99e8c;margin:0;font-size:11px}.gazette-panel>header button{border:0;background:none;color:#d5b171;font-size:30px;cursor:pointer}.gazette-body{overflow:auto;padding:24px 28px}.gazette-loading,.gazette-empty{text-align:center;padding:70px 25px;color:#776f63}.gazette-empty h3{font:600 20px Cinzel;color:#1c1915}.gazette-toolbar{display:grid;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto;gap:9px;align-items:end;margin-bottom:16px}.gazette-toolbar label{display:grid;gap:5px;font-size:8px;letter-spacing:1px;text-transform:uppercase;color:#776f63}.gazette-toolbar select,.gazette-toolbar button{border:1px solid #d2c6b4;background:#fffdf8;padding:10px;color:#1c1915}.gazette-editor{display:grid;gap:11px;padding:17px;margin-bottom:18px;border:1px solid #d2c6b4;background:#e8dece}.gazette-editor>label,.gazette-grid label{display:grid;gap:5px;color:#776f63;font-size:8px;letter-spacing:1px;text-transform:uppercase}.gazette-editor input,.gazette-editor textarea{border:1px solid #d2c6b4;background:#fffdf8;padding:9px;font:12px/1.5 DM Sans;text-transform:none;letter-spacing:0}.gazette-grid{display:grid;grid-template-columns:2fr 1fr;gap:10px}.gazette-check{display:flex!important;flex-direction:row;align-items:center}.gazette-check input{width:auto}.gazette-editor>div:last-child{display:flex;align-items:center;gap:12px}.gazette-primary{border:0;background:#aa762d;color:#fff;padding:10px 15px;text-transform:uppercase;font:600 9px DM Sans;letter-spacing:1px}.gazette-editor #gazette-state{color:#476448;font-size:10px}.realm-paper{background:#fdf9ee;border:1px solid #cfc3ad;padding:35px;max-width:820px;margin:auto;box-shadow:0 15px 40px #392d1b18}.realm-paper>header{text-align:center;border-top:4px double #1c1915;border-bottom:4px double #1c1915;padding:15px;margin-bottom:25px}.realm-paper>header span{font:700 11px Cinzel;letter-spacing:4px}.realm-paper>header h1{font:700 34px Cinzel;margin:6px}.realm-paper>header p{font:italic 13px Libre Caslon Text;margin:5px}.realm-paper>header small{font:9px DM Sans}.gazette-lead{border-bottom:1px solid #b9aa91;padding-bottom:15px;margin-bottom:18px}.gazette-lead h2{font:700 24px Cinzel;margin:0 0 8px}.gazette-lead p,.gazette-columns p{font:12px/1.7 Libre Caslon Text;white-space:pre-line}.gazette-columns{columns:2;column-gap:34px}.gazette-columns section,.gazette-columns aside{break-inside:avoid;margin-bottom:18px}.gazette-columns h3{font:700 15px Cinzel;border-bottom:1px solid #b9aa91;padding-bottom:5px}.gazette-columns aside{border:1px solid #b9aa91;padding:12px;background:#f4ecd9}.realm-paper footer{border-top:3px double #1c1915;margin-top:20px;padding-top:10px;text-align:center;font:8px DM Sans;text-transform:uppercase;letter-spacing:1px}@media(max-width:760px){.gazette-toolbar,.gazette-grid{grid-template-columns:1fr}.gazette-columns{columns:1}.gazette-body{padding:16px}.realm-paper{padding:22px}}@media print{body>*:not(#gazette-drawer){display:none!important}.gazette-drawer,.gazette-panel,.gazette-body{position:static;width:auto;height:auto;overflow:visible}.gazette-scrim,.gazette-panel>header,.gazette-toolbar,.gazette-editor{display:none!important}.realm-paper{box-shadow:none;border:0}}.adventure-board-drawer{position:fixed;inset:0;z-index:196;display:flex;justify-content:flex-end}.board-scrim{position:absolute;inset:0;border:0;background:#090806b5}.board-panel{position:relative;width:min(1320px,100vw);height:100%;background:#e9e1d3;border-left:1px solid #aa762d;display:grid;grid-template-rows:auto minmax(0,1fr);box-shadow:-24px 0 70px #0007}.board-panel>header{background:linear-gradient(135deg,#17140f,#322719);color:#eee4d4;border-bottom:3px solid #aa762d;padding:20px 26px;display:flex;justify-content:space-between}.board-panel>header span{font-size:8px;letter-spacing:2px;color:#d5b171}.board-panel>header h2{font:600 27px Cinzel;margin:4px 0}.board-panel>header p{color:#afa28f;margin:0;font-size:11px}.board-panel>header button{border:0;background:none;color:#d5b171;font-size:30px;cursor:pointer}.board-body{overflow:hidden;display:grid;grid-template-rows:auto auto minmax(0,1fr);padding:14px 18px 18px}.board-loading,.board-empty{text-align:center;padding:70px 25px;color:#776f63}.board-empty h3{font:600 20px Cinzel;color:#1c1915}.board-toolbar{display:flex;align-items:end;gap:7px;flex-wrap:wrap}.board-toolbar label{display:grid;gap:4px;font-size:8px;letter-spacing:1px;text-transform:uppercase;color:#776f63}.board-toolbar select,.board-toolbar input,.board-toolbar button{height:36px;border:1px solid #cbbda9;background:#fffdf8;color:#332a20;padding:0 10px;font:10px DM Sans}.board-toolbar label:first-child{min-width:210px}.board-toolbar label:last-of-type{margin-left:auto}.board-toolbar #board-save-state{min-width:50px;color:#567158;font-size:9px}.board-help{font-size:9px;color:#786d5f;padding:8px 2px}.board-scroll{overflow:auto;border:1px solid #b9aa91;background-color:#1b1813;background-image:linear-gradient(#2c271f 1px,transparent 1px),linear-gradient(90deg,#2c271f 1px,transparent 1px);background-size:24px 24px}.board-stage{position:relative;width:1800px;height:1100px;isolation:isolate}.board-stage canvas{position:absolute;inset:0;z-index:0;pointer-events:none}.board-stage-empty{position:absolute;left:50%;top:40%;transform:translate(-50%,-50%);color:#887b68;font:13px Cinzel}.board-node{position:absolute;z-index:2;width:200px;min-height:90px;background:#f8f1e3;border:1px solid #a88755;border-left:4px solid #aa762d;padding:11px;box-shadow:0 8px 18px #0006;cursor:grab;-webkit-user-select:none;user-select:none}.board-node:active{cursor:grabbing}.board-node.connecting{outline:3px solid #d7ad52;outline-offset:3px}.board-node header{display:flex;justify-content:space-between;align-items:center}.board-node header span{font:700 8px DM Sans;text-transform:uppercase;letter-spacing:1px;color:#9a6824}.board-node header i{font:7px DM Sans;color:#857867}.board-node h3{font:600 14px Cinzel;margin:7px 0 5px;color:#241d15}.board-node p{font:10px/1.4 DM Sans;color:#5c5246;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.board-node small{display:block;margin-top:7px;color:#8a622c;font:8px DM Sans}.board-node footer{margin-top:7px;font:8px DM Sans;color:#6c785e}.board-node.type-clue{border-left-color:#547786}.board-node.type-revelation{border-left-color:#724b78}.board-node.type-encounter{border-left-color:#8c3931}.board-node.type-location{border-left-color:#4e7354}.board-node.type-npc{border-left-color:#4b6283}.board-node.type-quest{border-left-color:#9d782b}.board-form{min-width:min(560px,90vw);display:grid;gap:12px;padding:22px;background:#f5f0e6;color:#2a231b}.board-form h2{font:600 21px Cinzel;margin:0}.board-form label{display:grid;gap:5px;color:#776f63;font:8px DM Sans;text-transform:uppercase;letter-spacing:1px}.board-form input,.board-form textarea,.board-form select{border:1px solid #cbbda9;background:#fffdf8;padding:9px;font:12px/1.4 DM Sans;text-transform:none;letter-spacing:0}.board-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.clue-fields{display:grid;gap:10px;border:1px solid #cbbda9;padding:12px;background:#ede5d7}.board-check{display:flex!important;flex-direction:row;align-items:center}.board-check input{width:auto}.board-form-actions,.board-form>div:last-child{display:flex;justify-content:flex-end;gap:7px}.board-form button{border:1px solid #bba889;background:#fffdf8;padding:9px 12px;font:600 9px DM Sans;text-transform:uppercase}.board-form .board-primary{background:#aa762d;color:#fff;border-color:#aa762d}.board-form .board-delete{margin-right:auto;color:#813b32}.board-form .board-connect{color:#685183}@media(max-width:760px){.board-body{padding:10px}.board-toolbar label:last-of-type{margin-left:0}.board-form-grid{grid-template-columns:1fr}.board-panel>header p{display:none}}.forge-drawer{position:fixed;inset:0;z-index:197;display:flex;justify-content:flex-end}.forge-scrim{position:absolute;inset:0;border:0;background:#090806b5}.forge-panel{position:relative;width:min(1100px,100vw);height:100%;background:#f1eadf;border-left:1px solid #a86f2c;display:grid;grid-template-rows:auto auto minmax(0,1fr);box-shadow:-24px 0 70px #0007}.forge-panel>header{background:linear-gradient(135deg,#17140f,#382617);color:#eee4d4;border-bottom:3px solid #b47a32;padding:20px 26px;display:flex;justify-content:space-between}.forge-panel>header span{font-size:8px;letter-spacing:2px;color:#deb86f}.forge-panel>header h2{font:600 27px Cinzel;margin:4px 0}.forge-panel>header p{color:#afa28f;margin:0;font-size:11px}.forge-panel>header button{border:0;background:none;color:#d5b171;font-size:30px;cursor:pointer}.forge-tabs{display:flex;background:#2a2118;border-bottom:1px solid #a86f2c;padding:0 20px}.forge-tabs button{border:0;border-bottom:3px solid transparent;background:none;color:#bdb09d;padding:12px 16px;font:600 9px DM Sans;text-transform:uppercase;letter-spacing:1px}.forge-tabs button.active{color:#f0d49e;border-bottom-color:#c78d3c}.forge-body{overflow:auto;padding:22px 26px}.forge-empty{text-align:center;padding:65px 25px;color:#776f63}.forge-empty h3{font:600 19px Cinzel;color:#1c1915}.forge-toolbar{display:flex;gap:8px;align-items:end;margin-bottom:15px;flex-wrap:wrap}.forge-toolbar label{display:grid;gap:4px;min-width:250px;font:8px DM Sans;text-transform:uppercase;letter-spacing:1px;color:#776f63}.forge-toolbar input,.forge-toolbar button{height:37px;border:1px solid #cbbda9;background:#fffdf8;padding:0 11px}.forge-toolbar p{margin-right:auto;color:#655b4e;font-size:11px}.forge-primary{background:#a86f2c!important;color:#fff!important;border-color:#a86f2c!important}.forge-notice{border:1px solid #c7b691;background:#fff8e8;padding:10px 13px;margin-bottom:15px;color:#675b49;font-size:10px}.creation-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.creation-grid article{background:#fffdf8;border:1px solid #d3c6b3;border-top:3px solid #a86f2c;padding:15px;display:flex;flex-direction:column}.creation-grid article header{display:flex;justify-content:space-between}.creation-grid article header span,.creation-grid article header i{font:8px DM Sans;text-transform:uppercase;letter-spacing:1px;color:#a86f2c}.creation-grid h3{font:600 15px Cinzel;margin:7px 0}.creation-grid p{font:11px/1.5 DM Sans;color:#554b3f;flex:1}.creation-grid small{color:#847767;font-size:8px;margin-bottom:8px}.creation-grid button,.roll-table-grid button,.calendar-line button{border:1px solid #cbbda9;background:#f8f1e6;padding:7px 10px;font:600 8px DM Sans;text-transform:uppercase}.forge-form{min-width:min(620px,90vw);display:grid;gap:11px;padding:22px;background:#f5f0e6}.forge-form h2{font:600 21px Cinzel;margin:0}.forge-form label{display:grid;gap:5px;color:#776f63;font:8px DM Sans;text-transform:uppercase;letter-spacing:1px}.forge-form input,.forge-form textarea,.forge-form select{border:1px solid #cbbda9;background:#fffdf8;padding:9px;font:12px/1.45 DM Sans;text-transform:none;letter-spacing:0}.forge-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.forge-form-actions,.forge-form>div:last-child{display:flex;justify-content:flex-end;gap:7px}.forge-form button{border:1px solid #bba889;background:#fffdf8;padding:9px 12px;font:600 9px DM Sans;text-transform:uppercase}.forge-form .forge-delete{margin-right:auto;color:#813b32}.roll-table-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.roll-table-grid article{background:#fffdf8;border:1px solid #d3c6b3;padding:16px}.roll-table-grid header{display:flex;justify-content:space-between}.roll-table-grid h3{font:600 16px Cinzel;margin:0}.roll-table-grid header span{font-size:8px;color:#9b6b2e}.roll-table-grid p{font-size:10px;color:#766b5e}.roll-result{border:1px dashed #b99b6c;background:#fff7e8;padding:15px;margin:12px 0;font:italic 13px/1.5 Libre Caslon Text}.calendar-line{position:relative;display:grid;gap:8px}.calendar-line:before{content:"";position:absolute;left:125px;top:10px;bottom:10px;width:1px;background:#b98a4b}.calendar-line article{display:grid;grid-template-columns:110px 1fr auto;gap:30px;position:relative;background:#fffdf8;border:1px solid #d3c6b3;padding:14px}.calendar-line article:before{content:"";position:absolute;left:120px;top:20px;width:10px;height:10px;border-radius:50%;background:#a86f2c;border:2px solid #f1eadf}.calendar-line time{font:600 10px Cinzel;color:#795425;text-align:right}.calendar-line span{font:8px DM Sans;text-transform:uppercase;color:#a86f2c}.calendar-line h3{font:600 14px Cinzel;margin:3px 0}.calendar-line p{font:10px/1.45 DM Sans;margin:0;color:#5b5145}.calendar-line small{color:#8a7d6c}@media(max-width:760px){.creation-grid,.roll-table-grid,.forge-form-grid{grid-template-columns:1fr}.forge-body{padding:16px}.calendar-line:before{display:none}.calendar-line article{grid-template-columns:1fr}.calendar-line article:before{display:none}.calendar-line time{text-align:left}.forge-panel>header p{display:none}}.treasure-generator-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;background:linear-gradient(115deg,rgba(176,119,32,.1),transparent 42%),var(--sheet)}.treasure-card-mark{width:54px;height:54px;border:1px solid var(--gold);color:var(--gold);display:grid;place-items:center;font:600 25px Cinzel;transform:rotate(45deg)}.treasure-card-mark:first-letter{transform:rotate(-45deg)}.treasure-generator-card h2{margin:4px 0 5px}.treasure-generator-card p{max-width:560px;margin:0;color:var(--muted);font:13px/1.55 Libre Caslon Text}.generator-card-actions{min-width:210px;display:grid;gap:5px}.generator-card-actions button{border:1px solid var(--line);background:#ffffff73;color:var(--ink);padding:8px 10px;display:flex;justify-content:space-between;gap:12px;font:600 9px DM Sans;text-transform:uppercase;letter-spacing:.7px;cursor:pointer}.generator-card-actions button:hover,.generator-card-actions button:focus-visible{border-color:var(--gold);color:var(--gold);outline:none}@media(max-width:760px){.treasure-generator-card{grid-template-columns:auto minmax(0,1fr)}.generator-card-actions{grid-column:1 / -1;min-width:0;width:100%}}.turnstile-field{width:100%;min-width:0;overflow:hidden}.turnstile-field iframe{max-width:100%}.generators-page{max-width:1600px}.generators-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.generators-page-head h1{font:600 clamp(36px,5vw,58px) Cinzel;margin:4px 0 8px}.generators-page-head p{max-width:820px;margin:0;color:var(--muted);font:15px/1.65 Libre Caslon Text}.generator-version{border:1px solid var(--gold);color:#71593b;padding:7px 10px;font-size:9px;letter-spacing:1.4px;text-transform:uppercase;white-space:nowrap}.generator-toolkit{margin:0 -2px}@scope(.generator-toolkit){:scope{--bg:#15120e;--panel:#211b14;--panel2:#2a2118;--panel3:#18130f;--text:#f4ead8;--muted:#b9a88d;--line:#5d4933;--accent:#a7583f;--accent2:#d39b5c;--good:#84ad82;--bad:#c86a5a;--warn:#d1a45f;--blue:#7f9db8 }*{box-sizing:border-box}:scope{margin:0;background:radial-gradient(circle at top,#2a2118 0,#15120e 42%);color:var(--text);font-family:Georgia,serif}:scope{max-width:1280px;margin:auto;padding:28px 18px 50px}header{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;flex-wrap:wrap;margin-bottom:20px}h1{margin:0;font-size:clamp(1.8rem,4vw,3rem)}h2,h3,h4{margin:0 0 10px}.sub{color:var(--muted);margin-top:6px}.badge,.tag,.conditionChip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;padding:5px 10px;color:#dcc7a7;font-size:.82rem}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}.tab,button{border:0;border-radius:9px;min-height:44px;padding:10px 15px;font:inherit;font-size:16px;font-weight:700;cursor:pointer;background:var(--accent);color:#fff}.tab{background:transparent;border:1px solid var(--line);color:var(--text);min-width:145px}.tab.active{background:var(--accent);border-color:transparent}.panel{background:linear-gradient(180deg,var(--panel),#1b1712);border:1px solid var(--line);border-radius:14px;padding:17px}.panel.soft{background:var(--panel3)}.controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(165px,1fr));gap:13px}.layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.45fr);gap:17px;margin-top:17px}.layout.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.wideLayout{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.7fr);gap:17px;margin-top:17px}label{display:block;text-transform:uppercase;letter-spacing:.06em;font-size:.75rem;color:#d3bd99;font-weight:700;margin-bottom:6px}select,input,textarea{width:100%;min-height:44px;border-radius:9px;border:1px solid var(--line);background:#14110e;color:var(--text);font:inherit;font-size:16px;padding:9px 11px}textarea{min-height:80px;resize:vertical}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.secondary{background:transparent;border:1px solid var(--line);color:var(--text)}.danger{background:#7e352d}.goodBtn{background:#486f4d}.small{min-height:34px;padding:5px 10px;font-size:.84rem}.tiny{min-height:28px;padding:3px 8px;font-size:.76rem}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.stat{background:var(--panel2);border-radius:9px;padding:10px}.stat strong{display:block;font-size:1.08rem;margin-top:3px}.muted{color:var(--muted);font-size:.92rem}.section{margin-top:17px}.callout{border-left:4px solid var(--accent2);background:#2b2218;padding:10px 12px;border-radius:0 8px 8px 0}.callout.good{border-left-color:var(--good)}.callout.bad{border-left-color:var(--bad)}table{width:100%;border-collapse:collapse;margin-top:8px;font-size:.91rem}th,td{text-align:left;padding:8px 6px;border-bottom:1px solid #403326;vertical-align:top}th{text-transform:uppercase;letter-spacing:.05em;font-size:.73rem;color:#d1b180}.hidden{display:none!important}.nameList,.historyList{display:grid;gap:8px;margin-top:13px}.nameRow,.historyRow{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:9px;background:var(--panel2)}.nameRow span{font-size:1.05rem;font-weight:700;overflow-wrap:anywhere}.note{font-size:.84rem;padding:9px 10px;border:1px dashed var(--line);border-radius:8px;margin-top:12px}.footer{color:#8f816e;margin-top:26px;font-size:.82rem;text-align:center}.turnBar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.turnControls{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.turnDisplay{font-size:1.15rem}.turnDisplay strong{font-size:1.45rem}.combatList{display:grid;gap:10px;margin-top:12px}.combatant{border:1px solid var(--line);border-radius:12px;background:var(--panel2);padding:12px;transition:.15s ease}.combatant.active{outline:2px solid var(--accent2);background:#30251a}.combatant.dying{border-color:#9b5b4f;background:#2b1d19}.combatant.dead{border-color:#693b35;background:#211715}.combatant.dead .combatTop,.combatant.dead .hpbar,.combatant.dead .conditions{opacity:.58}.combatant.dead .combatActions{opacity:1}.combatTop{display:grid;grid-template-columns:minmax(140px,1.3fr) repeat(5,minmax(68px,.45fr));gap:8px;align-items:center}.combatName{font-size:1.06rem;font-weight:700}.combatMeta{font-size:.78rem;color:var(--muted)}.numberBlock{text-align:center}.numberBlock b{display:block;font-size:1.04rem}.numberBlock small{display:block;color:var(--muted)}.numberBlock .initiativeScore{width:64px;min-height:36px;margin:0 auto 2px;padding:4px 6px;text-align:center;font-size:1.04rem;font-weight:700;border-radius:7px}.numberBlock .initiativeScore:focus-visible{outline:3px solid var(--accent2);outline-offset:2px}.hpbar{height:8px;background:#120f0d;border-radius:99px;overflow:hidden;margin-top:9px}.hpbar i{display:block;height:100%;background:var(--good);width:100%}.hpbar i.low{background:var(--bad)}.combatActions{display:flex;gap:7px;align-items:end;flex-wrap:wrap;margin-top:10px}.combatActions>div{min-width:84px}.combatActions input,.combatActions select{min-height:36px;padding:6px 8px;font-size:14px}.conditions{display:flex;gap:6px;flex-wrap:wrap;margin-top:9px}.conditionChip{background:#18130f;padding:4px 8px}.conditionChip button{min-height:22px;padding:0 5px;border-radius:50%;font-size:12px;background:transparent;border:1px solid var(--line)}.statusBadge{display:inline-flex;align-items:center;border-radius:999px;padding:2px 7px;margin-left:6px;font-size:.72rem;font-weight:700;letter-spacing:.03em}.statusBadge.dying{background:#6f3029;color:#ffd9d2}.statusBadge.stable{background:#35583a;color:#e1ffe3}.statusBadge.dead{background:#4b2723;color:#ffc9c2}.statusBadge.disabled{background:#5d5030;color:#ffe7a8}.stabilizePanel{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:10px;padding:10px 11px;border:1px solid #7a4c40;border-radius:9px;background:#241713}.stabilizePanel.success{border-color:#4d7654;background:#18231a}.stabilizePanel .stabilizeText{min-width:180px}.stabilizeBtn[disabled]{cursor:not-allowed;opacity:.55}.combatIdentity{display:flex;align-items:center;gap:9px;min-width:0}.reorderTools{display:flex;align-items:center;gap:4px;flex:0 0 auto}.dragHandle{display:inline-flex;align-items:center;justify-content:center;width:30px;height:34px;border:1px solid var(--line);border-radius:7px;color:#d9c5a5;cursor:grab;-webkit-user-select:none;user-select:none;font-size:1.05rem}.dragHandle:active{cursor:grabbing}.moveOrderBtn{min-height:30px;min-width:28px;padding:2px 7px;font-size:.78rem}.combatant.dragging{opacity:.55}.combatant.dragOver{outline:2px dashed var(--accent2);outline-offset:2px}.specialBadge{display:inline-flex;align-items:center;border-radius:999px;padding:2px 7px;margin-left:6px;font-size:.72rem;font-weight:700;letter-spacing:.03em}.specialBadge.delaying{background:#5a4930;color:#ffe2a3}.specialBadge.ready{background:#334b62;color:#d9efff}.ruleActions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:9px}.ruleActions .small{min-height:32px}.orderHint{font-size:.79rem;color:var(--muted)}.generatorResults{display:grid;gap:12px;margin-top:14px}.generatedCard{background:var(--panel2);border:1px solid #463728;border-radius:12px;padding:14px}.generatedCard h3{margin-bottom:5px}.generatedMeta{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.generatedMeta .tag{font-size:.76rem}.dmNote{margin-top:11px;padding:10px 12px;border-left:4px solid var(--blue);background:#1c2025;border-radius:0 8px 8px 0}.posting{margin-top:10px;padding:12px;border:1px dashed #806343;border-radius:9px;background:#19140f}.weatherHeadline{font-size:1.25rem;font-weight:700}.weatherTemps{font-size:1.05rem;margin-top:4px}.ruleList{margin:8px 0 0;padding-left:19px}.ruleList li{margin:4px 0}.eventScene{font-size:1rem;line-height:1.45}.eventHook{margin-top:9px;color:#dfc9a6}.boardHeader{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.difficultyRoutine{border-left:4px solid var(--good)}.difficultyDangerous{border-left:4px solid var(--warn)}.difficultySevere{border-left:4px solid var(--bad)}.diceButtons{display:grid;grid-template-columns:repeat(7,minmax(54px,1fr));gap:8px}.dieBtn{min-width:0;padding:8px 6px}.diceResult{font-size:2rem;font-weight:700;line-height:1.15;margin:6px 0}.rollBreakdown{color:#dfc8a6;word-break:break-word}.resultCard{background:var(--panel2);border-radius:12px;padding:13px;margin-top:11px}.resultCard.hit{border-left:4px solid var(--good)}.resultCard.miss{border-left:4px solid var(--bad)}.resultCard.crit{border-left:4px solid var(--warn)}.quickGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px}.quickCard{background:var(--panel2);border-radius:11px;padding:12px}.inlineInputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.inlineInputs.three{grid-template-columns:repeat(3,minmax(0,1fr))}.inlineInputs.four{grid-template-columns:repeat(4,minmax(0,1fr))}.rollNatural{font-size:.82rem;color:var(--accent2)}@media(max-width:900px){.wideLayout,.layout.equal{grid-template-columns:1fr}.combatTop{grid-template-columns:minmax(130px,1fr) repeat(3,minmax(64px,.45fr))}.combatTop .optionalStat{display:none}}@media(max-width:780px){.layout{grid-template-columns:1fr}.diceButtons{grid-template-columns:repeat(4,1fr)}}@media(max-width:560px){.combatTop{grid-template-columns:1fr repeat(2,72px)}.combatTop .compactHide{display:none}.inlineInputs.four,.inlineInputs.three{grid-template-columns:repeat(2,1fr)}}@media(max-width:430px){.shell{padding:18px 12px 38px}.stats{grid-template-columns:1fr}.nameRow{align-items:flex-start;flex-direction:column}.diceButtons{grid-template-columns:repeat(3,1fr)}.inlineInputs,.inlineInputs.three,.inlineInputs.four{grid-template-columns:1fr}}.codexLink{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--text);text-decoration:none;font-weight:700;background:transparent}.codexLink:hover{background:var(--panel2)}.emptyOutput{min-height:120px;display:flex;align-items:center;justify-content:center;color:var(--muted);text-align:center;border:1px dashed #4f3f2e;border-radius:12px;padding:18px}:scope{--bg: #f3efe5;--panel: #fcfaf5;--panel2: #f1eadf;--panel3: #f7f3eb;--text: #1c1915;--muted: #776f63;--line: #d7cbbb;--accent: #71312d;--accent2: #aa762d;--good: #536f55;--bad: #9a4137;--warn: #aa762d;--blue: #5a7390;margin:0;padding:0;color:var(--text);background:transparent;font-family:DM Sans,sans-serif}:scope h2,:scope h3,:scope h4{font-family:Cinzel,serif}:scope .tabs{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));position:sticky;top:62px;z-index:8;padding:10px;background:#f3efe5f2;border:1px solid var(--line);box-shadow:0 8px 20px #3b2c170c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@scope(.generator-toolkit){:scope .trapLayout{grid-template-columns:minmax(280px,.72fr) minmax(0,1.55fr)}:scope .trapResultPanel{min-height:330px}:scope .trapStatBlock{display:grid;grid-template-columns:repeat(auto-fit,minmax(115px,1fr));gap:8px}:scope .trapStatBlock>div{padding:10px;border:1px solid var(--line);background:var(--panel2)}:scope .trapStatBlock span{display:block;color:var(--muted);font-size:.72rem;letter-spacing:.05em;text-transform:uppercase}:scope .trapStatBlock strong{display:block;margin-top:3px}:scope .trapSection{margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}:scope .trapSection p{line-height:1.55}:scope .successfulSearch{padding:14px;border:1px solid #b79564;border-left:4px solid var(--accent2);background:#f7efe2}:scope .trapOutcomes{display:grid;grid-template-columns:145px 1fr;gap:8px 12px;margin:0}:scope .trapOutcomes dt{font-weight:700;color:var(--accent)}:scope .trapOutcomes dd{margin:0;line-height:1.45}:scope .trapDetailGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:900px){:scope .trapLayout,:scope .trapDetailGrid{grid-template-columns:1fr}}}:scope .tab{min-width:0;border:1px solid #d2c3ae;background:#fbf8f1;color:#342b22;font-size:12px;transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}:scope .tab:hover{border-color:#b79564;background:#efe5d6;color:#241d17}:scope .tab.active,:scope .tab[aria-selected=true]{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 5px 12px #71312d33;text-shadow:0 1px 1px #2d110f66}:scope .tab.active:hover,:scope .tab[aria-selected=true]:hover{border-color:#5e2825;background:#5e2825;color:#fff}:scope button:focus-visible{outline:3px solid #d39b5c;outline-offset:2px}:scope button:not(:disabled):active{transform:translateY(1px)}:scope button:disabled{cursor:not-allowed;opacity:.55}:scope [hidden]{display:none!important}:scope .panel{background:var(--panel);border-radius:4px;box-shadow:0 7px 20px #3b2c1710}:scope select,:scope input,:scope textarea{background:#fffdfa;color:var(--text)}:scope .secondary{border-color:#c8b496;background:#eee4d5;color:#3c3025;box-shadow:0 1px 2px #3b2c1712}:scope .secondary:hover{border-color:#aa762d;background:#e2d3bd;color:#261f19}:scope .danger{border:1px solid #b35a4f;background:#f1ddd8;color:#792e27}:scope .danger:hover{border-color:#7e352d;background:#7e352d;color:#fff}:scope .goodBtn{border:1px solid #486f4d;background:#486f4d;color:#fff}:scope .goodBtn:hover{border-color:#36583b;background:#36583b}:scope .badge,:scope .tag,:scope .conditionChip{color:#71593b}:scope .stat,:scope .nameRow,:scope .historyRow,:scope .generatedCard,:scope .resultCard,:scope .quickCard,:scope .combatant{background:var(--panel2)}:scope .callout{background:#f4ede2}:scope .dmNote{background:#edf1f5}:scope .posting{background:#fbf6ee}:scope .combatant.active{background:#f5ead8}:scope .combatant.dying{background:#fae8e4}:scope .combatant.dead{background:#eee5e2}:scope .stabilizePanel{background:#f8e9e5}:scope .stabilizePanel.success{background:#eaf3ea}:scope .conditionChip{background:#f8f3ea}:scope .codex-save-row{display:flex;align-items:end;gap:9px;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}:scope .codex-save-row label{min-width:150px;margin:0}:scope .codex-save-row select{min-height:38px;margin-top:5px}:scope .codex-save-row>span{align-self:center;color:var(--good);font-size:12px}:scope .initiative-import{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 16px;padding:12px;border:1px solid var(--line);background:#f7f2e9}:scope .initiative-import .sync-toggle{display:inline-flex;align-items:center;gap:7px;margin:0;text-transform:none;letter-spacing:0;font-size:12px}:scope .initiative-import .sync-toggle input{width:auto;min-height:auto}:scope .initiative-import span{color:var(--muted);font-size:12px}}.saved-generators{margin-top:26px;padding:24px}.saved-generators-head{display:flex;align-items:end;justify-content:space-between;gap:22px}.saved-generators-head h2{font:600 26px Cinzel;margin:4px 0 6px}.saved-generators-head p{color:var(--muted);margin:0}.saved-generators-head label{color:var(--muted);font-size:10px;letter-spacing:1px;text-transform:uppercase}.saved-generators-head select{display:block;min-width:210px;margin-top:6px;padding:8px 10px;border:1px solid var(--line);background:var(--sheet)}.campaign-manager-connection{margin:18px 0;padding:13px;border:1px solid var(--line);background:#f7f3eb}.campaign-manager-connection>div,.campaign-manager-connection form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.campaign-manager-connection>div>div,.campaign-manager-connection form>div{display:grid;margin-right:auto}.campaign-manager-connection small{display:block;color:var(--muted)}.campaign-manager-connection input{min-height:38px;padding:8px 10px;border:1px solid var(--line);background:var(--sheet)}.campaign-manager-connection button,.saved-generator-actions button{min-height:36px;border:1px solid var(--gold);background:var(--red);color:#fff;padding:7px 11px;cursor:pointer}.campaign-manager-connection button.secondary,.saved-generator-actions button:not(.delete){background:transparent;color:var(--ink);border-color:var(--line)}.connection-dot{width:8px;height:8px;border-radius:50%;background:var(--green)}.campaign-manager-connection .connection-warning strong{color:#87362f}.saved-generator-list{display:grid;gap:10px}.saved-generator-card{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;padding:15px;border:1px solid var(--line);background:var(--sheet)}.saved-generator-card.archived{opacity:.66}.saved-generator-card h3{font:600 18px Cinzel;margin:3px 0 5px}.saved-generator-card p,.saved-generator-card small{color:var(--muted);margin:0}.saved-type{color:var(--gold);font-size:9px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase}.saved-generator-actions{display:flex;justify-content:flex-end;align-items:center;gap:7px;flex-wrap:wrap}.visibility-badge,.archive-badge{border:1px solid var(--line);padding:5px 8px;color:#6c5e4a;font-size:10px;text-transform:uppercase;letter-spacing:.8px}.visibility-badge.party{border-color:#8da68f;color:#3f6744;background:#edf5ed}.archive-badge{background:#eee7dc}.saved-empty{padding:34px;border:1px dashed var(--line);color:var(--muted);text-align:center}.saved-generator-dialog{width:min(760px,calc(100vw - 30px));max-height:86vh;border:1px solid var(--line);background:var(--sheet);color:var(--ink);padding:0}.saved-generator-dialog::backdrop{background:#16130fbb}.saved-generator-dialog form{padding:26px}.saved-generator-dialog h2{font:600 28px Cinzel;margin:5px 0 8px}.dialog-close{float:right;border:0;background:transparent;font-size:26px;cursor:pointer}.saved-result-preview{display:grid;gap:10px;margin:18px 0;padding:16px;border:1px solid var(--line);background:#f5f0e7}.saved-result-preview article{border-bottom:1px solid var(--line)}.saved-preview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.saved-preview-grid>div{display:grid}.saved-preview-grid span{color:var(--muted);font-size:11px}.saved-generator-dialog pre{max-height:300px;overflow:auto;white-space:pre-wrap;background:#171512;color:#e9dfce;padding:14px;font:12px/1.55 Consolas,monospace}@media(max-width:780px){.generators-page-head,.saved-generators-head{align-items:flex-start;flex-direction:column}.saved-generator-card{grid-template-columns:1fr}.saved-generator-actions{justify-content:flex-start}}@media(max-width:1050px){@scope(.generator-toolkit){:scope .tabs{grid-template-columns:repeat(4,minmax(0,1fr))}}}@media(max-width:620px){@scope(.generator-toolkit){:scope .tabs{grid-template-columns:repeat(2,minmax(0,1fr))}}}.dm-access-page{min-height:100vh;display:grid;place-items:center;padding:32px 18px;background:radial-gradient(circle at 78% 18%,rgba(179,118,33,.1),transparent 28%),#f3eee4;color:#201c17}.dm-access-card{width:min(100%,590px);padding:clamp(26px,5vw,52px);border:1px solid #d7c9b2;border-top:4px solid #8b3028;background:#fffdf9;box-shadow:0 22px 60px #251d121f}.dm-access-brand{display:flex;align-items:center;gap:12px;margin-bottom:38px}.dm-access-brand>span{display:grid;width:40px;height:40px;place-items:center;border:1px solid #b87a21;color:#b87a21;font:24px Georgia,serif}.dm-access-brand div{display:grid;letter-spacing:.12em}.dm-access-brand small{margin-top:3px;color:#967954;font-size:9px}.dm-access-card h1{margin:8px 0 12px;font:46px/1 Georgia,serif}.dm-access-card>p{color:#755f47;font:18px/1.55 Georgia,serif}.dm-access-card form,.dm-access-message{display:grid;gap:13px;margin-top:28px;padding:18px;border:1px solid #d7c9b2;background:#f7f2e9}.dm-access-card label{display:grid;gap:6px;color:#8b6c45;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.dm-access-card input{min-height:44px;padding:10px 12px;border:1px solid #d7c9b2;background:#fffdf9;color:#201c17;font:15px Arial,sans-serif}.dm-access-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:7px}.dm-access-actions button{min-height:42px;padding:10px 15px;border:1px solid #8b3028;background:#8b3028;color:#fff;cursor:pointer}.dm-access-actions button.secondary{border-color:#d7c9b2;background:transparent;color:#201c17}.dm-access-message.denied{border-left:4px solid #8b3028}.dm-access-message span,#dm-access-status{color:#755f47;font-size:13px}.dm-access-player{display:inline-block;margin-top:22px;color:#8b3028;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}@media(max-width:560px){.dm-access-card h1{font-size:36px}.dm-access-actions{display:grid}}.site-admin-page{color:#201c17}.site-admin-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:10px 0 28px;border-bottom:1px solid #d9cfbf}.site-admin-head h1{margin:8px 0 10px;font:52px/1 Georgia,serif}.site-admin-head p{max-width:760px;margin:0;color:#6e5d49;font:17px/1.55 Georgia,serif}.site-admin-seal{flex:0 0 auto;padding:10px 13px;border:1px solid #8b3028;color:#8b3028;font-size:10px;font-weight:800;letter-spacing:.14em}.site-admin-stats,.site-admin-detail-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;margin:24px 0;border:1px solid #d9cfbf;background:#d9cfbf}.site-admin-stats article,.site-admin-detail-stats article{display:grid;gap:5px;padding:22px;background:#fffdf9}.site-admin-stats span,.site-admin-detail-stats span{color:#8b3028;font:34px/1 Georgia,serif}.site-admin-stats small,.site-admin-detail-stats small{color:#7a6852;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.site-admin-panel{border:1px solid #d9cfbf;background:#fffdf9}.site-admin-panel-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 22px;border-bottom:1px solid #e5dccf}.site-admin-panel-head h2{margin:4px 0 0;font:28px/1 Georgia,serif}.site-admin-panel-head>span{color:#8b3028;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.site-admin-table-wrap{overflow-x:auto}.site-admin-table{width:100%;border-collapse:collapse;text-align:left}.site-admin-table th{padding:12px 18px;background:#f4eee4;color:#806b50;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.site-admin-table td{min-width:120px;padding:17px 18px;border-top:1px solid #eee6da;vertical-align:top}.site-admin-table td:first-child{min-width:310px}.site-admin-table td strong,.site-admin-table td small{display:block}.site-admin-table td p{max-width:430px;margin:6px 0;color:#75644f;line-height:1.4}.site-admin-table code,.site-admin-campaign-meta code,.site-admin-list code{color:#8a7760;font-size:10px;word-break:break-all}.site-admin-table button,.site-admin-error button,.site-admin-back{min-height:38px;padding:9px 12px;border:1px solid #8b3028;background:#8b3028;color:#fff;cursor:pointer;white-space:nowrap}.site-admin-count,.site-admin-role{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:5px 8px;border:1px solid #cbb99f;color:#8b3028;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.site-admin-back{margin-bottom:18px;border-color:#cbb99f;background:transparent;color:#4d4032}.site-admin-campaign-meta{display:grid;grid-template-columns:1.4fr 1fr .7fr;gap:1px;margin-top:24px;border:1px solid #d9cfbf;background:#d9cfbf}.site-admin-campaign-meta>div{display:grid;align-content:start;gap:5px;padding:18px;background:#f7f2e9}.site-admin-campaign-meta small{color:#806b50;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.site-admin-campaign-meta span{color:#6e5d49;font-size:12px}.site-admin-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.site-admin-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 18px;border-top:1px solid #eee6da}.site-admin-list article:first-child{border-top:0}.site-admin-list article>div{display:grid;gap:4px}.site-admin-list small{color:#75644f}.site-admin-empty{padding:22px;color:#7a6852}.site-admin-error{display:flex;gap:20px;max-width:760px;padding:28px;border:1px solid #d9cfbf;border-left:4px solid #8b3028;background:#fffdf9}.site-admin-error>span{display:grid;width:42px;height:42px;flex:0 0 auto;place-items:center;border:1px solid #8b3028;color:#8b3028;font:24px Georgia,serif}.site-admin-error h1{margin:7px 0;font:34px/1.1 Georgia,serif}@media(max-width:900px){.site-admin-stats,.site-admin-detail-stats,.site-admin-campaign-meta,.site-admin-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.site-admin-head{align-items:flex-start;flex-direction:column}.site-admin-head h1{font-size:40px}.site-admin-stats,.site-admin-detail-stats,.site-admin-campaign-meta,.site-admin-detail-grid{grid-template-columns:1fr}}.tabletop-page{height:calc(100vh - 62px);min-height:620px;display:grid;grid-template-rows:46px minmax(0,1fr);background:#11100e;color:#e8dfcf;overflow:hidden}.tabletop-commandbar{display:grid;grid-template-columns:minmax(330px,1fr) auto minmax(390px,1fr);align-items:center;gap:12px;padding:5px 10px;border-bottom:1px solid #3b342a;background:linear-gradient(180deg,#25211c,#1a1815);box-shadow:0 5px 18px #0008;z-index:8}.tabletop-scene-tools,.tabletop-view-tools,.tabletop-button-row,.tabletop-turn-controls{display:flex;align-items:center;gap:5px}.tabletop-view-tools{justify-content:flex-end}.tabletop-commandbar button,.tabletop-commandbar select,.tabletop-button-row button,.tabletop-add-combatant,.tabletop-turn-controls button{min-height:30px;border:1px solid #50463a;border-radius:3px;background:#2c2822;color:#d8cdbb;font:600 10px DM Sans,sans-serif;cursor:pointer}.tabletop-commandbar button{min-width:30px;padding:0 9px}.tabletop-commandbar select{width:min(210px,22vw);padding:0 8px}.tabletop-commandbar button:hover,.tabletop-button-row button:hover,.tabletop-add-combatant:hover,.tabletop-turn-controls button:hover{border-color:var(--gold);color:#fff4db}.tabletop-commandbar button.primary{border-color:#bc8437;background:#9a6728;color:#fff9eb}.tabletop-commandbar button.active{border-color:#cf9b4e;background:#4a3821;color:#fff1cf;box-shadow:inset 0 0 0 1px #d3a05344}.tabletop-commandbar button.danger,.tabletop-button-row button.danger{color:#d99489}.tabletop-kicker,.tabletop-panel-heading span{color:#c79850;font-size:7px;font-weight:700;letter-spacing:1.5px}.tabletop-kicker{margin-right:4px;white-space:nowrap}.tabletop-campaign-name{max-width:190px;overflow:hidden;color:#8f8475;font:600 9px Cinzel,serif;letter-spacing:.7px;text-overflow:ellipsis;white-space:nowrap}#tabletop-save-state{max-width:180px;margin-right:5px;overflow:hidden;color:#8f8475;font-size:9px;text-overflow:ellipsis;white-space:nowrap}#tabletop-save-state[data-state=saved]{color:#83a783}#tabletop-save-state[data-state=error]{color:#e0a095}#tabletop-zoom{width:40px;color:#9c9180;font-size:9px;text-align:center}.tabletop-workspace{min-height:0;display:grid;grid-template-columns:210px minmax(320px,1fr) 285px}.tabletop-library,.tabletop-rightbar{min-height:0;background:#1b1916;overflow:auto;scrollbar-color:#504536 #1b1916;scrollbar-width:thin}.tabletop-library{border-right:1px solid #373129}.tabletop-rightbar{border-left:1px solid #373129}.tabletop-library>section,.tabletop-rightbar>section{padding:14px;border-bottom:1px solid #332e27}.tabletop-token-library-section{min-height:280px}.tabletop-panel-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px}.tabletop-panel-heading h2{margin:2px 0 0;color:#e7dcc9;font:600 15px Cinzel,serif}.tabletop-panel-heading>small{display:grid;place-items:center;min-width:23px;height:23px;border:1px solid #443c31;border-radius:50%;color:#948878;font-size:9px}.tabletop-upload{display:grid;place-items:center;min-height:32px;border:1px solid #a57432;border-radius:3px;background:#8e5e25;color:#fff8e8;font-size:9px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;cursor:pointer}.tabletop-upload.secondary{border-color:#514638;background:#29251f;color:#d1c4b1}.tabletop-upload input{display:none}.tabletop-asset-filter{display:grid;gap:5px;margin-bottom:7px;color:#8f8578;font-size:8px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.tabletop-asset-filter select{width:100%;min-height:30px;border:1px solid #443c31;border-radius:2px;background:#11100e;color:#d8cdbb;padding:5px 7px;font:10px DM Sans,sans-serif}.tabletop-hint,.tabletop-mini-empty{color:#776e62;font-size:9px;line-height:1.45}.tabletop-control-stack{display:grid;gap:10px}.tabletop-control-stack>label,.tabletop-two-col>label,.initiative-heading label{display:grid;grid-template-columns:1fr auto;gap:5px;color:#8f8578;font-size:8px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}.tabletop-control-stack input:not([type=checkbox]),.tabletop-control-stack select,.initiative-heading input{grid-column:1 / -1;width:100%;min-height:30px;border:1px solid #443c31;border-radius:2px;background:#11100e;color:#d8cdbb;padding:5px 7px;font:10px DM Sans,sans-serif}.tabletop-control-stack input[type=range]{min-height:18px;padding:0;accent-color:var(--gold)}.tabletop-control-stack output{color:#c7a66f;font-size:8px}.tabletop-two-col{display:grid;grid-template-columns:1fr 1fr;gap:7px}.tabletop-control-stack>label.tabletop-check{display:flex;align-items:center;gap:7px;min-height:25px;text-transform:none}.tabletop-check input{accent-color:var(--gold)}.tabletop-check.warning{color:#c59b75}.tabletop-check.fog{color:#b5a4d6}.tabletop-player-control{display:grid;gap:5px;margin:2px 0;padding:9px;border:1px solid #4a4032;border-radius:3px}.tabletop-player-control legend{padding:0 5px;color:#c7a66f;font-size:8px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.tabletop-player-control .tabletop-check{display:flex;align-items:center;gap:7px;min-height:24px;color:#cfc2ae;font-size:10px}.tabletop-reset-fog{min-height:30px;border:1px solid #55466b;border-radius:3px;background:#2c2636;color:#cbbce5;font:600 9px DM Sans,sans-serif;cursor:pointer}.tabletop-reset-fog:disabled{opacity:.42;cursor:default}.tabletop-rule{height:1px;background:#332e27}.tabletop-light-summary{display:flex;align-items:center;justify-content:space-between;gap:8px}.tabletop-light-summary button{min-height:30px;border:1px solid #8b6c33;border-radius:3px;background:#302611;color:#f2d28b;font-size:9px;cursor:pointer}.tabletop-light-summary small{color:#827765;font-size:8px;white-space:nowrap}.tabletop-token-library{display:grid;grid-template-columns:1fr 1fr;gap:7px}.tabletop-token-asset{min-width:0;display:grid;grid-template-columns:30px 1fr;gap:6px;align-items:center;padding:6px;border:1px solid #39332a;border-radius:3px;background:#24211c;cursor:grab}.tabletop-token-asset:active{cursor:grabbing}.tabletop-token-asset>div{grid-row:1 / 3;display:grid;place-items:center;width:30px;height:30px;overflow:hidden;border:1px solid #655642;border-radius:50%;background:#11100e;color:#bca274;font:600 11px Cinzel}.tabletop-token-asset img{width:100%;height:100%;object-fit:cover}.tabletop-token-asset.map>div,.tabletop-token-asset.prop>div,.tabletop-token-asset.attachment>div{border-radius:3px}.tabletop-token-asset strong{min-width:0;overflow:hidden;color:#d7cbb8;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.tabletop-token-asset button{justify-self:start;border:0;background:none;color:#bd8a45;padding:0;font-size:8px;cursor:pointer}.tabletop-mini-empty{grid-column:1 / -1;padding:14px 4px;text-align:center}.tabletop-canvas-frame{position:relative;min-width:0;min-height:0;overflow:hidden;background-color:#0e0e0d;background-image:radial-gradient(circle at 50% 35%,#2c29234f,transparent 45%),linear-gradient(45deg,#ffffff08 25%,transparent 25%,transparent 75%,#ffffff08 75%),linear-gradient(45deg,#ffffff08 25%,transparent 25%,transparent 75%,#ffffff08 75%);background-position:0 0,0 0,10px 10px;background-size:auto,20px 20px,20px 20px;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.tabletop-canvas-frame.panning,.tabletop-canvas-frame.dragging-object,.tabletop-canvas-frame.dragging-object .tabletop-map,.tabletop-canvas-frame.dragging-object .tabletop-token,.tabletop-canvas-frame.dragging-object .tabletop-light-source{cursor:grabbing}.tabletop-world{position:absolute;left:0;top:0;width:0;height:0;transform-origin:0 0;will-change:transform}.tabletop-grid-layer{position:absolute;z-index:1500;display:block;max-width:none;overflow:visible;pointer-events:none}.tabletop-grid-layer[hidden]{display:none}.tabletop-map{position:absolute;z-index:1000;display:block;max-width:none;outline:1px solid #b98b4859;box-shadow:0 18px 45px #000b;object-fit:fill;cursor:grab;will-change:transform;-webkit-user-drag:none}.tabletop-map.locked{pointer-events:none}.tabletop-token{position:absolute;z-index:4000;display:grid;place-items:center;border:2px solid #d2b36d;border-radius:50%;background:#332b21;box-shadow:0 5px 13px #000c;color:#fff;padding:0;cursor:grab;transform-origin:center;will-change:transform;-webkit-user-drag:none}.tabletop-token.tabletop-object-map,.tabletop-token.tabletop-object-prop,.tabletop-token.tabletop-object-attachment{border-radius:4px;background:#1c1a17}.tabletop-token.tabletop-object-map img,.tabletop-token.tabletop-object-prop img,.tabletop-token.tabletop-object-attachment img{border-radius:2px;object-fit:contain}.tabletop-token.locked-object{cursor:default;border-style:dashed}.tabletop-token img{width:100%;height:100%;border-radius:50%;object-fit:cover;pointer-events:none}.tabletop-token>span{font:700 13px Cinzel;pointer-events:none}.tabletop-token b{position:absolute;left:50%;top:calc(100% + 5px);max-width:150px;padding:2px 5px;border-radius:2px;background:#0b0b0adb;color:#f5ead8;font-size:8px;font-weight:600;text-overflow:ellipsis;white-space:nowrap;transform-origin:left top;pointer-events:none}.tabletop-token i{position:absolute;right:-9px;top:-7px;padding:2px 4px;border-radius:2px;background:#71312d;color:#fff0e8;font-size:6px;font-style:normal;font-weight:800;letter-spacing:.5px;transform-origin:right top;pointer-events:none}.tabletop-token em{position:absolute;left:-8px;top:-8px;display:grid;place-items:center;width:17px;height:17px;border:1px solid #8c764f;border-radius:50%;background:#191611;color:#d9bc7e;font-size:9px;font-style:normal;transform-origin:center;pointer-events:none}.tabletop-token.selected{border-color:#fff3bb;box-shadow:0 0 0 3px #c98b31aa,0 7px 18px #000d}.tabletop-token.hidden-token{opacity:.58;border-style:dashed}.tabletop-token.gm-token{filter:saturate(.65)}.tabletop-fog-layer{position:absolute;z-index:9000;left:0;top:0;opacity:.68;pointer-events:none}.tabletop-fog-layer.preview{opacity:.98}.tabletop-player-view .tabletop-fog-layer{opacity:1}.tabletop-fog-layer svg{position:absolute;display:block;max-width:none;overflow:visible}.tabletop-light-layer{position:absolute;z-index:9700;left:0;top:0;pointer-events:none}.tabletop-light-source{position:absolute;display:grid;place-items:center;overflow:visible;border:1px solid #877961;border-radius:50%;background:#292620e8;box-shadow:0 3px 10px #000c;color:#b7aa93;padding:0;cursor:grab;pointer-events:auto;will-change:transform}.tabletop-light-source.active{border-color:#ffce65;background:#5e4617e8;box-shadow:0 0 0 3px #ffbd3a3d,0 0 18px #ffb62d99;color:#fff2bd}.tabletop-light-source.dormant{border-style:dashed}.tabletop-light-source.selected{outline:2px solid #fff2b0;outline-offset:2px}.tabletop-light-source.locked{cursor:default}.tabletop-light-source>span{position:relative;z-index:2;font-size:14px;line-height:1;pointer-events:none}.tabletop-light-source>b{position:absolute;z-index:2;left:50%;top:calc(100% + 5px);padding:2px 5px;border-radius:2px;background:#0b0b0adb;color:#f4e8d4;font-size:8px;font-weight:600;white-space:nowrap;pointer-events:none}.tabletop-light-trigger-zone{position:absolute;z-index:1;border:1px dashed #f5bd5799;border-radius:50%;background:#e9a92b0b;pointer-events:none}.tabletop-barrier-layer{position:absolute;z-index:9500;left:-50000px;top:-50000px;display:block;width:100000px;height:100000px;max-width:none;overflow:visible;pointer-events:none}.tabletop-tool-layer{position:absolute;z-index:9800;left:-50000px;top:-50000px;display:block;width:100000px;height:100000px;max-width:none;overflow:visible;pointer-events:none}.tabletop-measure-line{stroke:#7b6de3;stroke-linecap:round;opacity:.78}.tabletop-measure-label{fill:#fff;font-family:Cinzel,Georgia,serif;font-weight:700;paint-order:stroke;stroke:#171327;stroke-width:4px;stroke-linejoin:round;text-anchor:middle}.tabletop-barrier{cursor:pointer;pointer-events:stroke}.tabletop-barrier .hit{stroke:transparent}.tabletop-barrier .visible,.tabletop-barrier-draft{fill:none;stroke:#e25b54;stroke-linecap:round;pointer-events:none}.tabletop-barrier.door .visible,.tabletop-barrier-draft.door{stroke:#efb34d}.tabletop-barrier.door.open .visible{stroke:#83d1a3}.tabletop-barrier.selected .visible{filter:drop-shadow(0 0 3px #fff4c7);stroke:#fff1aa}.tabletop-barrier circle{fill:#17120e;stroke:#fff1aa;stroke-width:1px;pointer-events:none}.tabletop-barrier-draft{opacity:.8;pointer-events:none}.tabletop-canvas-frame.drawing-barrier,.tabletop-canvas-frame.measuring{cursor:crosshair}.tabletop-barrier-tools{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.tabletop-barrier-tools button{min-width:0;border:1px solid #594934;background:#171511;color:#c9b999;font-size:9px}.tabletop-barrier-tools button.active{border-color:#b98b48;background:#50381e;color:#fff1d3}.tabletop-player-view .tabletop-workspace{grid-template-columns:minmax(0,1fr) 250px}.tabletop-player-view .tabletop-token{cursor:default}.tabletop-player-view .tabletop-token.player-controlled{cursor:grab;box-shadow:0 0 0 3px #58b9a45c,0 5px 13px #000c}.tabletop-player-view .tabletop-token.player-controlled:active{cursor:grabbing}.tabletop-player-view .tabletop-canvas-help.warning{color:#f0c98a;border-color:#b7823d80;background:#21190ee8}.tabletop-control-warning{margin:0;padding:8px 10px;color:#f0c98a;border:1px solid #b7823d66;background:#6a451d22;font:600 10px/1.4 Inter,sans-serif}.tabletop-player-scene strong{max-width:240px;overflow:hidden;color:#f3e4c6;font:600 12px Cinzel;text-overflow:ellipsis;white-space:nowrap}.tabletop-player-turn{margin:10px 12px;padding:12px;border:1px solid #816237;background:#2c2115}.tabletop-player-turn small{display:block;color:#b8945c;font-size:8px;letter-spacing:1px}.tabletop-player-turn strong{display:block;margin-top:4px;color:#fff0d0;font:600 14px Cinzel}.tabletop-player-initiative{display:grid;gap:4px;padding:0 12px 14px}.tabletop-player-initiative article{display:grid;grid-template-columns:32px 1fr;gap:7px;align-items:center;padding:7px;border:1px solid #332e25;background:#171613;color:#cfc4b2}.tabletop-player-initiative article.active{border-color:#a67a3b;color:#fff0ce}.tabletop-player-initiative b{color:#d0ad6b;text-align:center}.tabletop-access-card{width:min(520px,calc(100% - 40px));margin:8vh auto;padding:28px;border:1px solid #d9c9ad;background:#fffdf8;box-shadow:0 24px 60px #2d24151f}.tabletop-access-card form{display:grid;gap:12px;margin-top:20px}.tabletop-access-card label{display:grid;gap:5px;color:#5d5140;font-size:11px;font-weight:700}.tabletop-access-card input{min-height:40px;border:1px solid #cfc1aa;border-radius:3px;padding:8px 10px}.tabletop-empty{position:absolute;z-index:1;inset:0;display:grid;place-content:center;gap:7px;color:#72695d;text-align:center;pointer-events:none}.tabletop-empty[hidden]{display:none}.tabletop-empty>span{color:#7d6440;font-size:34px}.tabletop-empty strong{color:#978a78;font:600 15px Cinzel}.tabletop-empty small{font-size:9px}.tabletop-canvas-help{position:absolute;z-index:7;left:10px;bottom:9px;padding:5px 7px;border:1px solid #50483b66;border-radius:3px;background:#0d0d0bbf;color:#756d62;font-size:8px;pointer-events:none}.tabletop-inspector-empty{display:grid;place-items:center;gap:7px;min-height:140px;color:#7f7568;text-align:center}.tabletop-inspector-empty span{color:#a67a3c;font-size:27px}.tabletop-inspector-empty p{max-width:210px;margin:0;font-size:9px;line-height:1.5}.tabletop-button-row{flex-wrap:wrap;margin-top:3px}.tabletop-button-row button,.tabletop-add-combatant{padding:7px 8px}.initiative-heading{align-items:center}.initiative-heading label{display:flex;align-items:center;gap:5px}.initiative-heading input{grid-column:auto;width:52px;min-height:27px}.tabletop-turn-controls{display:grid;grid-template-columns:30px 1fr 30px;margin-bottom:8px}.tabletop-turn-controls strong{min-width:0;overflow:hidden;color:#d8ccb8;font:600 10px Cinzel;text-align:center;text-overflow:ellipsis;white-space:nowrap}.tabletop-initiative-list{display:grid;gap:4px}.tabletop-initiative-list article{display:grid;grid-template-columns:24px 45px minmax(0,1fr) 22px;gap:4px;align-items:center;padding:4px;border:1px solid #373129;border-radius:3px;background:#211e1a}.tabletop-initiative-list article.active{border-color:#ad7b37;background:#30271b;box-shadow:inset 2px 0 #d0a35b}.tabletop-initiative-list article.private{border-style:dashed}.tabletop-initiative-list button,.tabletop-initiative-list input{min-width:0;height:25px;border:1px solid #3d372e;border-radius:2px;background:#11100e;color:#cfc3b1;font:9px DM Sans,sans-serif}.tabletop-initiative-list input{width:100%;padding:4px}.tabletop-initiative-list button{color:#a8895b;cursor:pointer}.tabletop-add-combatant{width:100%;margin-top:7px;background:#29251f}.tabletop-failure{min-height:calc(100vh - 62px);display:grid;grid-template-columns:auto minmax(0,520px);place-content:center;gap:18px;padding:30px;background:#151310;color:#dcd0bd}.tabletop-failure>span{display:grid;place-items:center;width:45px;height:45px;border:1px solid #875147;border-radius:50%;color:#dd978b;font:700 20px Cinzel}.tabletop-failure h1{margin:4px 0 8px;font:600 24px Cinzel}.tabletop-failure p{color:#948879;line-height:1.55}.tabletop-failure a{color:#d4a25a}.tabletop-dialog{width:min(430px,calc(100vw - 32px));border:1px solid #5a4b38;border-radius:4px;background:#1b1916;box-shadow:0 24px 70px #000d;color:#ded2be;padding:0}.tabletop-dialog::backdrop{background:#080705c7;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.tabletop-dialog form{display:grid;gap:12px;padding:22px}.tabletop-dialog h2{margin:0;color:#eee1ca;font:600 21px Cinzel,serif}.tabletop-dialog p{margin:0;color:#958979;font-size:11px;line-height:1.55}.tabletop-dialog label{display:grid;gap:6px;color:#a99b88;font-size:8px;font-weight:700;letter-spacing:.7px;text-transform:uppercase}.tabletop-dialog label[hidden]{display:none}.tabletop-dialog input{min-height:38px;border:1px solid #504536;border-radius:3px;outline:none;background:#11100e;color:#eee1ca;padding:8px 10px;font:12px DM Sans,sans-serif}.tabletop-dialog input:focus{border-color:#c38a3e;box-shadow:0 0 0 2px #c38a3e33}.tabletop-dialog-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:5px}.tabletop-dialog-actions button{min-height:34px;border:1px solid #504536;border-radius:3px;background:#2a261f;color:#d8cdbb;padding:0 13px;font:600 10px DM Sans,sans-serif;cursor:pointer}.tabletop-dialog-actions button.primary{border-color:#bc8437;background:#946225;color:#fff8e8}.tabletop-dialog-actions button.danger{border-color:#8f4d45;background:#71312d}@media(max-width:1280px){.tabletop-commandbar{grid-template-columns:minmax(300px,1fr) auto}.tabletop-campaign-name{display:none}.tabletop-workspace{grid-template-columns:190px minmax(300px,1fr) 250px}.tabletop-token-library{grid-template-columns:1fr}}@media(max-width:900px){.tabletop-page{height:auto;min-height:calc(100vh - 62px);overflow:visible}.tabletop-commandbar{position:sticky;top:62px;grid-template-columns:1fr;height:auto}.tabletop-view-tools{justify-content:flex-start}.tabletop-workspace{grid-template-columns:1fr}.tabletop-library,.tabletop-rightbar{overflow:visible}.tabletop-canvas-frame{min-height:65vh;grid-row:1}.tabletop-library,.tabletop-rightbar{border:0;border-top:1px solid #373129}}.party-page{max-width:1500px}.party-loading,.party-error{min-height:420px;display:grid;place-content:center;text-align:center;color:var(--muted)}.party-error button{justify-self:center}.party-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:24px}.party-page-head>div>span,.party-panel-heading span,.party-editor-head span{font:700 9px DM Sans;letter-spacing:2px;color:var(--gold)}.party-page-head h1{font:600 clamp(34px,4vw,56px) Cinzel;margin:7px 0}.party-page-head p,.party-editor-head p{max-width:760px;margin:0;color:var(--muted);line-height:1.7}.party-role{border:1px solid #cbbda7;background:#faf5eb;color:#6e5836;padding:9px 12px;font:700 9px DM Sans;letter-spacing:1px;text-transform:uppercase;white-space:nowrap}.party-overview{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(310px,.7fr);gap:18px;align-items:start}.party-overview>div{display:grid;gap:18px}.party-panel,.party-character-editor{background:var(--sheet);border:1px solid var(--line);padding:22px}.party-panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.party-panel-heading h2,.party-editor-head h2{font:600 22px Cinzel;margin:5px 0 0}.party-character-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.party-character-card{position:relative;border:1px solid var(--line);background:#f8f4ec}.party-character-card>a{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px;color:inherit;text-decoration:none}.party-character-card>a:hover{background:#f1e9db}.party-portrait{width:52px;height:52px;border:1px solid #c9b58f;background:#28231c;display:grid;place-items:center;color:#d8b573;font:600 18px Cinzel;overflow:hidden}.party-portrait img{width:100%;height:100%;object-fit:cover}.party-character-copy{min-width:0;display:grid;gap:3px}.party-character-copy strong{font:600 14px Cinzel;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.party-character-copy small{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.party-character-copy em{font:500 10px DM Sans;color:#9a835f;font-style:normal}.party-hp{text-align:center;font:700 13px DM Sans;color:#5d745d}.party-hp small{display:block;font-size:8px;letter-spacing:1px}.party-edit-badge{position:absolute;top:4px;right:5px;font:700 7px DM Sans;letter-spacing:.7px;text-transform:uppercase;color:#927344}.party-empty{grid-column:1/-1;min-height:150px;display:grid;place-content:center;text-align:center;color:var(--muted)}.party-empty span{font-size:28px;color:var(--gold2)}.party-panel form,.party-character-form,.party-portrait-editor form{display:grid;gap:12px}.party-panel label,.party-character-form label,.party-portrait-editor label{display:grid;gap:6px;color:#665d51;font:700 9px DM Sans;letter-spacing:.8px;text-transform:uppercase}.party-panel input,.party-panel select,.party-character-form input,.party-character-form select,.party-character-form textarea,.party-portrait-editor input{width:100%;border:1px solid var(--line);background:#fffdfa;color:var(--ink);padding:10px;font:400 13px DM Sans;text-transform:none;letter-spacing:0}.party-panel button,.party-character-editor button,.party-error button{border:1px solid #8d642c;background:#a77530;color:#fff;padding:10px 13px;font:700 9px DM Sans;letter-spacing:.8px;text-transform:uppercase;cursor:pointer}.party-panel button:disabled,.party-character-editor button:disabled{opacity:.5}.party-status{min-height:16px;color:var(--red);font-size:11px}.party-member-list,.party-invitation-list{display:grid;margin-bottom:18px}.party-member-list>div,.party-invitation-list>div{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.party-member-list span,.party-invitation-list span{display:grid;gap:2px}.party-member-list strong,.party-invitation-list strong{font:600 12px Cinzel}.party-member-list small,.party-invitation-list small{font-size:10px;color:var(--muted)}.party-member-list button,.party-invitation-list button{background:transparent;color:var(--red);border-color:#c9aaa4;padding:6px 8px}.party-invitation-list h3{font:600 13px Cinzel;margin:20px 0 0}.party-invite-form{padding-top:4px}.party-invite-link{display:flex;gap:6px;margin-top:12px}.party-invite-link input{min-width:0}.party-invite-link button{white-space:nowrap}.party-character-editor{margin-bottom:18px;scroll-margin-top:78px}.party-editor-head{display:flex;justify-content:space-between;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}.party-editor-head>a{color:#785b32;font:700 9px DM Sans;letter-spacing:.8px;text-transform:uppercase}.party-editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:24px;padding-top:20px}.party-character-form{grid-template-columns:repeat(2,minmax(0,1fr))}.party-character-form .party-background,.party-form-actions,.party-character-form>.party-status{grid-column:1/-1}.party-background textarea{resize:vertical;line-height:1.5}.party-form-actions{display:flex;gap:8px}.party-character-editor .danger{background:transparent;border-color:#a8716b;color:var(--red)}.party-portrait-editor{display:grid;align-content:start;justify-items:center;gap:14px;padding:16px;background:#f4eee4;border:1px solid var(--line)}.party-portrait.large{width:150px;height:150px;font-size:38px}.party-portrait-editor form{width:100%}.party-portrait-editor small{color:var(--muted);font-size:9px;line-height:1.5}@media(max-width:1050px){.party-overview{grid-template-columns:1fr}.party-people-panel{grid-row:auto}.party-editor-layout{grid-template-columns:1fr}.party-portrait-editor{grid-template-columns:160px 1fr;align-items:center}.party-portrait.large{width:140px;height:140px}}@media(max-width:700px){.party-page-head{display:block}.party-role{display:inline-block;margin-top:14px}.party-panel,.party-character-editor{padding:16px}.party-character-form{grid-template-columns:1fr}.party-character-form>*{grid-column:1!important}.party-portrait-editor,.party-character-grid{grid-template-columns:1fr}}.character-sheet-page{max-width:1500px;padding-bottom:92px}.sheet-loading,.sheet-error{min-height:440px;display:grid;place-content:center;text-align:center;color:var(--muted)}.sheet-error h1{font:600 36px Cinzel;color:var(--ink);margin:0 0 12px}.character-sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.character-sheet-head>a{color:#76582f;text-decoration:none;font:700 10px DM Sans;letter-spacing:1px;text-transform:uppercase}.sheet-head-actions{display:flex;align-items:center;gap:8px}.sheet-head-actions button,.character-sheet-hero button,.sheet-savebar button,.feature-heading button,.inventory-item button,.inventory-add>button{border:1px solid #9b733b;background:#f9f3e8;color:#73552e;padding:9px 12px;font:700 9px DM Sans;letter-spacing:.8px;text-transform:uppercase;cursor:pointer}.sheet-head-actions .primary,.sheet-savebar button:last-child,.inventory-add>button{background:#a77530;color:#fff}.read-only-badge{border:1px solid var(--line);padding:8px 11px;color:var(--muted);font:700 9px DM Sans;letter-spacing:1px;text-transform:uppercase}.character-sheet-hero{display:grid;grid-template-columns:132px minmax(0,1fr) 190px;gap:24px;align-items:center;padding:23px;background:linear-gradient(135deg,#201b15,#3a2d20);color:#f5ecdd;border:1px solid #4b3d2e}.sheet-portrait{width:132px;height:148px;display:grid;place-items:center;overflow:hidden;border:1px solid #a98045;background:#15120e;color:#c99b52;font:600 35px Cinzel}.sheet-portrait img{width:100%;height:100%;object-fit:cover}.character-sheet-hero>div>span{font:700 9px DM Sans;letter-spacing:2px;color:#d0a25d}.character-sheet-hero h1{font:600 clamp(32px,4.5vw,62px) Cinzel;margin:6px 0}.character-sheet-hero p{color:#cfc2af;margin:0 0 15px}.sheet-hp{display:flex;gap:12px;align-items:center;max-width:620px}.sheet-hp>div{display:flex;align-items:baseline;gap:5px}.sheet-hp strong{font:600 26px Cinzel}.sheet-hp small{color:#bbaa91}.sheet-hp>span{height:6px;background:#0f0d0b;flex:1;min-width:80px}.sheet-hp>span i{display:block;height:100%;background:#8bab75}.sheet-hp em{font:600 9px DM Sans;font-style:normal;color:#d0a25d;white-space:nowrap}.hp-actions{display:flex;gap:6px;margin-top:13px}.hp-actions input{width:62px;background:#17130f;border:1px solid #63513b;color:#fff;padding:8px}.character-sheet-hero>aside{display:grid;gap:8px;align-content:center}.character-sheet-hero aside form{display:grid;gap:7px}.character-sheet-hero aside label{display:grid;gap:5px;color:#cfc2af;font:700 8px DM Sans;letter-spacing:1px;text-transform:uppercase}.character-sheet-hero aside input{font-size:10px;max-width:190px}.character-sheet-hero .portrait-remove{color:#d7a5a0;border-color:#79554f;background:transparent}.sheet-tabs{display:flex;overflow-x:auto;background:#ece4d7;border:1px solid var(--line);border-top:0;position:sticky;top:0;z-index:5}.sheet-tabs button{flex:1;min-width:max-content;border:0;border-right:1px solid var(--line);background:transparent;color:#736957;padding:13px 16px;font:700 9px DM Sans;letter-spacing:.8px;text-transform:uppercase;cursor:pointer}.sheet-tabs button.active{background:var(--sheet);color:#8a6029;box-shadow:inset 0 -2px #a77530}.sheet-panel{display:none;background:var(--sheet);border:1px solid var(--line);border-top:0;padding:25px}.sheet-panel.active{display:block}.sheet-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--line)}.sheet-section-head.minor{margin-top:28px}.sheet-section-head span{font:700 9px DM Sans;letter-spacing:2px;color:var(--gold)}.sheet-section-head h2{font:600 24px Cinzel;margin:5px 0 0}.sheet-section-head small{color:var(--muted);font-size:10px}.sheet-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.sheet-panel label,.sheet-owner{display:grid;gap:6px}.sheet-panel label>span,.sheet-owner>span{font:700 9px DM Sans;letter-spacing:.7px;text-transform:uppercase;color:#6e6252}.sheet-panel input,.sheet-panel textarea,.sheet-panel select,.sheet-owner select{width:100%;border:1px solid var(--line);background:#fffdfa;color:var(--ink);padding:10px;font:400 13px DM Sans}.sheet-panel textarea{resize:vertical;line-height:1.5}.sheet-panel input:disabled,.sheet-panel textarea:disabled,.sheet-panel select:disabled{background:#f4efe7;color:#675d4f}.sheet-panel .wide{grid-column:1/-1}.sheet-owner{margin-top:15px;max-width:520px}.sheet-owner small{color:var(--muted)}.ability-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px}.ability-grid label{grid-template-columns:1fr;justify-items:center;padding:12px;border:1px solid var(--line);background:#f6f0e7}.ability-grid label span{font:700 10px DM Sans}.ability-grid input{text-align:center;font:600 22px Cinzel}.ability-grid strong{font:600 18px Cinzel;color:#8b622f}.save-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:16px 0 22px}.save-grid label{grid-template-columns:1fr 90px;align-items:center;padding:10px;background:#2c251d;color:#fff}.save-grid label span{color:#d7c6ac}.save-grid input{text-align:center}.skill-table{border:1px solid var(--line)}.skill-row{display:grid;grid-template-columns:minmax(170px,1.6fr) 65px 80px 80px 70px 46px;align-items:center;gap:7px;min-height:42px;padding:6px 10px;border-bottom:1px solid #e1d7c8}.skill-row:last-child{border:0}.skill-row:nth-child(odd){background:#faf6ef}.skill-row input{padding:7px}.skill-row input[type=checkbox]{width:auto;justify-self:center}.skill-row strong{text-align:center;color:#71552e}.skill-head{background:#29231c!important;color:#e9dcc8;min-height:34px;font:700 8px DM Sans;letter-spacing:.8px;text-transform:uppercase}.sheet-footnote{font-size:10px;color:var(--muted)}.feature-block+.feature-block{margin-top:26px;padding-top:22px;border-top:1px solid var(--line)}.feature-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.feature-heading h3,.inventory-add h3{font:600 16px Cinzel;margin:0}.feature-heading button{padding:7px 9px}.feature-row{display:grid;gap:8px;align-items:start;padding:8px;margin-bottom:7px;border:1px solid var(--line);background:#faf6ef}.class-row{grid-template-columns:1.1fr 1.1fr 90px 100px 34px}.text-row{grid-template-columns:1fr .65fr 1.5fr 34px}.ability-row{grid-template-columns:1fr .7fr 70px 70px .7fr 1.5fr 34px}.spell-row{grid-template-columns:1fr 1.2fr 68px .8fr 72px 34px}.slot-row{grid-template-columns:1fr repeat(4,80px) 34px}.feature-row textarea{min-height:39px;padding:8px}.feature-row input,.feature-row select{padding:8px}.feature-row .mini-check{display:flex;align-items:center;gap:6px;font-size:9px}.feature-row .mini-check input{width:auto}.row-remove{height:34px;border:1px solid #c4a59e;background:transparent;color:#973d34;font-size:18px;cursor:pointer}.feature-empty{padding:22px;text-align:center;background:#f7f2ea;color:var(--muted);border:1px dashed var(--line)}.feature-columns{display:grid;grid-template-columns:1fr 1.2fr 68px .8fr 72px 34px;gap:8px;padding:0 9px 5px;color:var(--muted);font:700 8px DM Sans;letter-spacing:.6px;text-transform:uppercase}.inventory-list{display:grid;gap:8px}.inventory-item{display:grid;grid-template-columns:1fr 80px 1.5fr auto auto auto;gap:8px;align-items:center;padding:10px;border:1px solid var(--line);background:#faf6ef}.inventory-item label{display:flex;align-items:center;gap:5px;font:600 9px DM Sans;text-transform:uppercase}.inventory-item label input{width:auto}.inventory-item>div{display:flex;gap:5px}.inventory-item .danger,.sheet-savebar button:first-of-type{color:#963b34;border-color:#be908a;background:transparent}.sheet-inline-status{grid-column:1/-1;color:var(--red);font-size:10px}.inventory-add{display:grid;gap:10px;margin-top:24px;padding:18px;background:#eee5d7;border:1px solid var(--line)}.inventory-add>div{display:grid;grid-template-columns:1fr 140px;gap:10px}.inventory-add .inventory-checks{display:flex;gap:18px}.inventory-add .inventory-checks label{display:flex;align-items:center;gap:6px}.inventory-add .inventory-checks input{width:auto}.inventory-add>button{justify-self:start}.activity-list{display:grid}.activity-list article{display:grid;grid-template-columns:120px 1fr;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.activity-list article>span{color:#93682f;font:700 8px DM Sans;letter-spacing:.8px;text-transform:uppercase}.activity-list article div{display:grid;gap:3px}.activity-list article strong{font:600 13px Cinzel}.activity-list article small{color:var(--muted)}.sheet-savebar{position:fixed;z-index:12;left:calc(var(--sidebar,240px) + 24px);right:24px;bottom:14px;display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:10px 14px;background:#211c16ef;border:1px solid #5e4a35;box-shadow:0 8px 30px #0005;color:#eadfce}.sheet-savebar span{margin-right:auto;font-size:10px}.sheet-savebar button:last-child{min-width:150px}.sheet-savebar button:disabled{opacity:.5}@media(max-width:1100px){.sheet-fields{grid-template-columns:repeat(2,1fr)}.ability-grid{grid-template-columns:repeat(3,1fr)}.character-sheet-hero{grid-template-columns:110px 1fr}.sheet-portrait{width:110px;height:130px}.character-sheet-hero>aside{grid-column:1/-1;grid-template-columns:1fr auto}.feature-row{overflow-x:auto}.inventory-item{grid-template-columns:1fr 70px 1fr}.inventory-item label,.inventory-item>div{grid-row:2}.sheet-savebar{left:22px}}@media(max-width:700px){.character-sheet-page{padding:14px 14px 90px}.character-sheet-hero{grid-template-columns:82px 1fr;padding:15px;gap:14px}.sheet-portrait{width:82px;height:100px}.character-sheet-hero h1{font-size:30px}.character-sheet-hero>aside{display:none}.sheet-hp em{display:none}.sheet-panel{padding:15px}.sheet-fields{grid-template-columns:1fr}.ability-grid{grid-template-columns:repeat(2,1fr)}.skill-table{overflow-x:auto}.skill-row{min-width:600px}.class-row,.text-row,.ability-row,.spell-row,.slot-row{grid-template-columns:1fr}.feature-columns{display:none}.inventory-item{grid-template-columns:1fr}.inventory-item>*{grid-row:auto!important}.sheet-savebar{left:10px;right:10px}.sheet-savebar span{display:none}}@media print{.sidebar,.topbar,.character-sheet-head,.sheet-tabs,.sheet-savebar,.hp-actions,.character-sheet-hero>aside,.feature-heading button,.row-remove{display:none!important}.shell main{margin:0}.character-sheet-page{max-width:none;padding:0}.sheet-panel{display:block!important;border:1px solid #bbb;break-inside:avoid}.character-sheet-hero{color:#111;background:#eee}.character-sheet-hero p{color:#333}}.spellcasting-card{border:1px solid var(--line);background:#f8f2e8;margin-bottom:20px}.spellcasting-card-head{display:grid;grid-template-columns:minmax(210px,.7fr) minmax(280px,1.3fr);gap:20px;align-items:end;padding:18px 20px;background:#2c251d;color:#f3e8d7}.spellcasting-card-head span{font:700 8px DM Sans;letter-spacing:1.8px;color:#d0a25d}.spellcasting-card-head h3{font:600 20px Cinzel;margin:5px 0 0}.spellcasting-card-head p{margin:0;color:#cfc2af;font-size:11px;line-height:1.5}.spellcasting-card>.feature-block{padding:18px 20px}.spellcasting-card>.feature-block+.feature-block{margin:0;border-top:1px solid var(--line)}.class-spell-head{display:grid;grid-template-columns:120px 76px minmax(190px,1fr) 90px 34px;gap:8px;padding:0 9px 5px;color:var(--muted);font:700 8px DM Sans;letter-spacing:.6px;text-transform:uppercase}.class-spell-row{grid-template-columns:120px 76px minmax(190px,1fr) 90px 34px}.spell-list-label,.spell-not-prepared{display:grid;place-items:center;min-height:34px;border:1px solid var(--line);background:#f3ecdf;color:#746955;font:700 8px DM Sans;letter-spacing:.6px;text-transform:uppercase}.spell-slot-help{margin:-2px 0 12px;color:var(--muted);font-size:10px}.slot-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.slot-level{display:grid;grid-template-columns:75px repeat(3,minmax(72px,1fr));gap:8px;align-items:end;padding:10px;border:1px solid #ded1be;background:#fffdfa}.slot-level>strong{align-self:center;font:600 12px Cinzel;color:#6f512c}.slot-level label{gap:4px}.slot-level label>span{font-size:7px}.slot-level input{padding:7px;text-align:center}.spellcasting-empty{display:grid;justify-items:center;text-align:center;padding:55px 24px;border:1px dashed var(--line);background:#f8f3eb;color:var(--muted)}.spellcasting-empty>span{font-size:24px;color:#a77530}.spellcasting-empty h3{font:600 20px Cinzel;color:var(--ink);margin:10px 0 6px}.spellcasting-empty p{max-width:600px;margin:0;line-height:1.6}#character-print-root{display:none}.character-print-page{margin:0;background:#fff;color:#111}.character-print-page .character-print-copy{max-width:none;padding:0}.character-print-page .sheet-panel{display:block!important;border:1px solid #bbb;break-inside:auto}.character-print-page .character-sheet-hero{color:#111;background:#eee}.character-print-page .character-sheet-hero p{color:#333}.character-print-page .spellcasting-card-head{background:#e7dfd3;color:#111}.character-print-page .spellcasting-card-head p{color:#333}.character-print-page .sheet-section-head,.character-print-page .ability-grid,.character-print-page .save-grid,.character-print-page .feature-row,.character-print-page .slot-level,.character-print-page .inventory-item{break-inside:avoid}@media(max-width:900px){.spellcasting-card-head,.slot-grid{grid-template-columns:1fr}}@media(max-width:700px){.class-spell-head{display:none}.class-spell-row,.slot-level{grid-template-columns:1fr}.slot-level>strong{justify-self:start}.spellcasting-card>.feature-block{padding:14px}.spellcasting-card-head{padding:15px}}@media print{@page{margin:.45in}body.character-printing>*:not(#character-print-root){display:none!important}body.character-printing #character-print-root{display:block!important;position:static;width:auto;max-width:none;margin:0;background:#fff;color:#111}body.character-printing #character-print-root .character-print-copy{display:block!important}.character-print-page .character-sheet-hero{break-inside:avoid}.character-print-page .sheet-panel{margin-top:12px}.character-print-page input,.character-print-page textarea,.character-print-page select{color:#111!important;background:#fff!important;border-color:#aaa!important}.character-print-page .spellcasting-card{break-inside:auto}}.campaign-calendar-page{max-width:1500px}.calendar-loading,.calendar-error{min-height:440px;display:grid;place-content:center;text-align:center;color:var(--muted)}.calendar-error h1{font:600 36px Cinzel;color:var(--ink)}.calendar-hero{display:flex;justify-content:space-between;gap:28px;padding:24px;background:linear-gradient(135deg,#201b15,#3a2d20);border:1px solid #4b3d2e;color:#f5ecdd}.calendar-hero>div>span,.calendar-panel-head span{font:700 9px DM Sans;letter-spacing:2px;color:#d0a25d}.calendar-hero h1{font:600 clamp(29px,3.5vw,48px) Cinzel;margin:7px 0}.calendar-hero p{margin:0;color:#c9baa5}.calendar-hero>form{display:grid;align-content:start;gap:8px;min-width:440px}.calendar-date-fields{display:grid;grid-template-columns:100px minmax(160px,1fr) 75px;gap:7px}.calendar-date-fields label,.calendar-event-editor label{display:grid;gap:4px;color:#cdbfa9;font:700 8px DM Sans;letter-spacing:.7px;text-transform:uppercase}.calendar-hero input,.calendar-hero select,.calendar-event-editor input,.calendar-event-editor select,.calendar-event-editor textarea{width:100%;border:1px solid #66533d;background:#17130f;color:#f4eadb;padding:8px;font:400 11px DM Sans}.calendar-hero button,.calendar-toolbar button,.calendar-panel button{border:1px solid #9a733c;background:#f5eddf;color:#72532b;padding:8px 11px;font:700 8px DM Sans;letter-spacing:.8px;text-transform:uppercase;cursor:pointer}.calendar-hero>form>button{justify-self:start;background:#a77530;color:#fff}.calendar-advance{display:flex;gap:5px}.calendar-advance input{width:68px}.calendar-role{align-self:flex-start;border:1px solid #756146;padding:9px;color:#dec9a9;font:700 9px DM Sans;letter-spacing:1px;text-transform:uppercase}.calendar-status{min-height:14px;color:#d9a29b;font-size:10px}.calendar-toolbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:10px;background:#eee5d7;border:1px solid var(--line);border-top:0}.calendar-toolbar>div{display:flex;gap:5px}.calendar-toolbar>div:nth-child(2){display:grid;text-align:center}.calendar-toolbar>div:nth-child(2) span{font:600 15px Cinzel}.calendar-toolbar>div:nth-child(2) strong{font:700 9px DM Sans;letter-spacing:1px;color:#97703a}.calendar-toolbar>div:last-child{justify-content:flex-end}.calendar-toolbar button.active{background:#29231c;color:#fff}.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:15px;margin-top:15px;align-items:start}.calendar-board,.calendar-panel{background:var(--sheet);border:1px solid var(--line)}.calendar-weekdays{display:grid;grid-template-columns:repeat(10,1fr);background:#29231c;color:#e7d7c0}.calendar-weekdays span{text-align:center;padding:9px 2px;border-right:1px solid #4b4034;font:700 7px DM Sans;letter-spacing:.3px;text-transform:uppercase}.calendar-grid{display:grid;grid-template-columns:repeat(10,1fr)}.calendar-day{min-height:112px;display:flex;flex-direction:column;gap:4px;padding:7px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fffdfa;color:var(--ink);text-align:left;cursor:pointer}.calendar-day:hover,.calendar-day.selected{background:#f1e6d5}.calendar-day.today{box-shadow:inset 0 0 0 2px #a77530}.calendar-day>span{display:flex;justify-content:space-between;align-items:center}.calendar-day strong{font:600 15px Cinzel}.calendar-day small{font-size:6px;color:var(--muted)}.calendar-day em{font:600 7px DM Sans;color:#8c6d42;font-style:normal}.calendar-event-badge{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#e8d7bd;border-left:2px solid #a67430;padding:3px;color:#56442e;font:600 7px DM Sans}.calendar-event-badge.dm{background:#ddd2da;border-color:#70516d}.calendar-layout>aside{display:grid;gap:15px}.calendar-panel{padding:16px}.calendar-panel-head{display:flex;justify-content:space-between;gap:8px;padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid var(--line)}.calendar-panel-head h2{font:600 18px Cinzel;margin:4px 0}.calendar-panel-head button{padding:5px 7px}.calendar-upcoming>button{width:100%;display:grid;grid-template-columns:40px 1fr;gap:9px;align-items:center;background:transparent;border:0;border-bottom:1px solid var(--line);padding:10px 0;text-align:left;text-transform:none}.calendar-upcoming>button>span{width:38px;height:38px;display:grid;place-items:center;background:#2b251e;color:#e9d8bc;font:600 16px Cinzel}.calendar-upcoming>button div{display:grid;gap:2px}.calendar-upcoming strong{font:600 11px Cinzel;color:var(--ink)}.calendar-upcoming small{font-size:9px;color:var(--muted)}.calendar-event-editor form{display:grid;gap:10px}.calendar-event-editor input,.calendar-event-editor select,.calendar-event-editor textarea{background:#fffdfa;border-color:var(--line);color:var(--ink)}.calendar-event-editor fieldset{border:1px solid var(--line);padding:8px}.calendar-event-editor legend{font:700 8px DM Sans;letter-spacing:.8px;color:#896638;text-transform:uppercase}.calendar-event-editor label{color:#6d6253}.calendar-checks{display:grid;gap:9px}.calendar-checks>.calendar-check{display:flex;align-items:center;gap:6px}.calendar-checks>small{margin-top:-4px;color:var(--muted);font:9px/1.4 DM Sans}.calendar-checks input[type=checkbox]{width:auto}.calendar-event-editor form>button{justify-self:start;background:#a77530;color:#fff}.calendar-event-list article{display:flex;justify-content:space-between;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.calendar-event-list article span{font:700 8px DM Sans;letter-spacing:.8px;text-transform:uppercase;color:#9a6a2d}.calendar-event-list h3{font:600 16px Cinzel;margin:5px 0}.calendar-event-list p{margin:0 0 5px;color:#5f564a}.calendar-event-list small{color:var(--muted)}.calendar-event-list article>div:last-child{display:flex;align-items:start;gap:5px}.calendar-panel .danger{color:#963b34;border-color:#be908a;background:transparent}.calendar-empty{padding:18px;text-align:center;color:var(--muted)}.calendar-year-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;padding:15px}.calendar-year-grid button{min-height:130px;display:grid;align-content:center;text-align:left;border:1px solid var(--line);background:#faf6ee;padding:16px;color:var(--ink);cursor:pointer}.calendar-year-grid button:hover{background:#efe4d2}.calendar-year-grid button>span{color:#a77530;font:700 9px DM Sans}.calendar-year-grid strong{font:600 20px Cinzel;margin:5px 0}.calendar-year-grid small{color:var(--muted)}.calendar-year-grid em{font:700 8px DM Sans;font-style:normal;color:#8c6a3b;margin-top:12px;text-transform:uppercase}.calendar-continuity{margin-top:15px;padding:14px 18px;border:1px solid #cdbb9e;background:#f4ede0;color:#65543d}.calendar-continuity strong{font:600 12px Cinzel}.calendar-continuity p{margin:5px 0 0;font-size:11px;line-height:1.5}@media(max-width:1150px){.calendar-layout{grid-template-columns:1fr}.calendar-layout>aside{grid-template-columns:1fr 1fr}.calendar-day{min-height:96px}.calendar-hero{display:grid}.calendar-hero>form{min-width:0}.calendar-year-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:750px){.campaign-calendar-page{padding:14px}.calendar-hero{padding:16px}.calendar-date-fields{grid-template-columns:80px 1fr 65px}.calendar-layout>aside{grid-template-columns:1fr}.calendar-toolbar{grid-template-columns:1fr}.calendar-toolbar>div{justify-content:center!important}.calendar-grid,.calendar-weekdays{grid-template-columns:repeat(4,1fr)}.calendar-weekdays span:nth-child(n+5){display:none}.calendar-day{min-height:92px}.calendar-year-grid{grid-template-columns:repeat(2,1fr)}}.calendar-board{overflow-x:auto}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(10,1fr);min-width:800px}.calendar-weekdays span:nth-child(n){display:block}.calendar-blank{min-height:112px;background:#f2ece3;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}@media(max-width:750px){.calendar-day,.calendar-blank{min-height:92px}}
