
.sess-read-title{font:700 clamp(24px,4vw,38px) Cinzel,serif;margin:12px 0 20px;color:var(--cx-accent)}
.sess-read-value{font:18px/1.5 'EB Garamond',serif;color:var(--cx-text-soft);overflow-wrap:anywhere}
.sess-private,.sess-visibility{font-size:13px;color:var(--cx-text-dim)}.sess-prep{border-style:dashed}
.sess-reading .session-card{padding:24px}.sess-reading .sess-text-view{font-size:18px!important;line-height:1.8!important}
.sess-reading .session-meta{gap:20px}.session-nav-bar,.session-nav-bar>div{flex-wrap:wrap}
.sess-reading input[hidden],.sess-reading textarea[hidden]{display:none!important}
@media(max-width:700px){.session-nav-bar{gap:12px;align-items:stretch}.session-nav-bar>div{justify-content:center}.sess-reading .session-card{padding:18px}}

.wkx-order-row{display:flex;align-items:center;min-width:0}.wkx-order-row>.wkx-nav-page{flex:1;min-width:0}.wkx-order-controls{display:flex;gap:2px}.wkx-order-controls button{background:transparent;border:1px solid var(--cx-accent-deep);color:var(--cx-text);border-radius:5px;min-width:28px;min-height:32px;cursor:pointer}.wkx-order-controls button:disabled{opacity:.25;cursor:default}
.quest-reading h2{font:700 clamp(24px,4vw,36px) Cinzel,serif;overflow-wrap:anywhere}.quest-reading-toolbar{display:flex;justify-content:flex-end;margin-bottom:16px}.quest-reading p{font:18px/1.7 'EB Garamond',serif;margin:0 0 12px;overflow-wrap:anywhere}.qread-empty{color:var(--cx-text-dim);font-style:italic}.qread-facts{margin:0}.qread-facts dt{font-weight:bold;color:var(--cx-accent)}.qread-facts dd{margin:4px 0 16px}.qread-objective{display:flex;gap:12px}.qread-objective.done{opacity:.7}.qread-update,.qread-character{padding:12px 0;border-bottom:1px solid var(--cx-accent-deep)}.qread-update time{font-size:12px;color:var(--cx-text-dim)}

.floating-dice-launcher{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:max(16px,env(safe-area-inset-bottom));z-index:8500;width:72px;height:80px;border:0;background:transparent;color:var(--cx-accent,#e9c578);cursor:pointer;filter:drop-shadow(0 4px 9px #0008)}
.floating-d20{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;clip-path:polygon(50% 0,95% 25%,95% 75%,50% 100%,5% 75%,5% 25%);background:var(--cx-accent,#d4ab58);padding:3px;position:relative}
.floating-d20:before{content:'';position:absolute;inset:3px;clip-path:inherit;background:var(--cx-bg,#15110c)}
.floating-d20 span,.floating-d20 b{position:relative;font:700 22px Cinzel,serif}.floating-d20 b{font-size:12px;letter-spacing:.14em}
.floating-dice-launcher:focus-visible{outline:3px solid var(--cx-accent);outline-offset:4px}
.floating-dice-panel{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:108px;z-index:8501;width:min(400px,calc(100vw - 32px));max-height:calc(100dvh - 132px);overflow:auto;overscroll-behavior:contain;box-sizing:border-box;padding:22px;border:1px solid var(--cx-accent-deep,#b98a3b);border-radius:20px;background:var(--cx-bg,#15110c);color:var(--cx-text,#efe4cd);box-shadow:0 15px 70px #0009}
.floating-dice-panel[hidden]{display:none!important}.floating-dice-panel header{display:flex;justify-content:space-between;align-items:center;gap:16px}.floating-dice-panel h2{font:700 24px Cinzel,serif;margin:4px 0 18px}.floating-dice-eyebrow{font-size:10px;letter-spacing:.15em;color:var(--cx-accent)}
#campaign-roll-notice{position:fixed;left:max(16px,env(safe-area-inset-left));bottom:108px;z-index:8500;max-width:min(400px,calc(100vw - 32px));padding:12px 16px;border:1px solid var(--cx-accent-deep,#b98a3b);border-radius:12px;background:var(--cx-bg,#15110c);color:var(--cx-text,#efe4cd);box-shadow:0 6px 24px #0006;text-align:left;cursor:pointer;overflow-wrap:anywhere}
#campaign-roll-notice[hidden]{display:none}.floating-dice-panel [data-campaign-roll-history]{max-height:260px;overflow:auto}
.floating-dice-panel button{cursor:pointer;color:var(--cx-text);background:var(--cx-bg-deep,var(--cx-bg));border:1px solid var(--cx-accent-deep);border-radius:9px;padding:10px 13px;min-height:42px}
.floating-dice-panel button:hover{border-color:var(--cx-accent);background:color-mix(in srgb,var(--cx-accent) 12%,transparent)}
.floating-dice-panel input{box-sizing:border-box;min-width:0;color:var(--cx-text);background:var(--cx-bg-deep,var(--cx-bg));border:1px solid var(--cx-accent-deep);border-radius:8px;padding:10px;font:inherit}
.floating-dice-quantity{display:flex;justify-content:space-between;align-items:center;gap:16px}.floating-dice-quantity input{width:80px}
.floating-dice-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:16px 0 9px}.floating-dice-types button{font:700 20px Cinzel,serif}.floating-dice-percentile{width:100%}
.floating-dice-panel form{display:flex;align-items:end;gap:8px;margin:20px 0}.floating-dice-panel form label{display:grid;gap:7px;flex:1;min-width:0;font-size:13px}.floating-dice-panel form input{width:100%}
.floating-dice-result{padding:18px;border:1px solid var(--cx-accent-deep);border-radius:12px;overflow-wrap:anywhere}.floating-dice-result strong{display:block;font:700 46px Cinzel,serif;color:var(--cx-accent);text-align:center}.floating-dice-result span{display:block;margin-top:10px;line-height:1.5}.floating-dice-note{font-size:12px;color:var(--cx-text-dim)}
.floating-dice-panel summary{cursor:pointer;margin:16px 0}.floating-dice-panel ol{padding-left:22px;font-size:13px}.floating-dice-panel li{margin:8px 0;overflow-wrap:anywhere}.floating-dice-panel .dice-sets-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.floating-dice-panel .dc-dice-colors{display:flex;flex-wrap:wrap}
@media(max-width:480px){.floating-dice-panel{padding:16px;bottom:96px;max-height:calc(100dvh - 120px)}.floating-dice-launcher{width:64px;height:72px}}

.party-companions{margin:32px 0;padding:24px;border:1px solid var(--cx-accent-deep);border-radius:18px}.party-companions[hidden]{display:none}.party-companion-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:16px}.party-companion-grid article{padding:20px;border:1px solid var(--cx-accent-deep);border-radius:12px}.party-companion-grid h3{margin:0 0 10px;font-family:Cinzel,serif}.party-companion-stats{display:flex;gap:24px;margin:16px 0}.party-companions button,.party-companion-dialog button[data-companion-close]{padding:9px 14px;border:1px solid var(--cx-accent-deep);border-radius:8px;color:var(--cx-text);background:var(--cx-bg);cursor:pointer}.party-companion-dialog{position:fixed;inset:0;z-index:8400;display:grid;place-items:center;padding:16px;background:#000a}.party-companion-dialog-card{position:relative;max-height:90dvh;overflow:auto;width:min(1050px,100%);padding:24px;box-sizing:border-box;border:1px solid var(--cx-accent-deep);border-radius:18px;background:var(--cx-bg);color:var(--cx-text)}.party-companion-dialog button[data-companion-close]{position:absolute;right:16px;top:16px;z-index:2}

.party-companion-title{font:700 26px Cinzel,serif;padding-right:48px;margin:0 0 16px;overflow-wrap:anywhere}
#wk-status [data-wk-retry]{margin-left:8px;padding:5px 10px;color:var(--cx-text);background:var(--cx-bg);border:1px solid var(--cx-accent-deep);border-radius:5px;cursor:pointer}

.floating-d20-faces{position:absolute;inset:3px;width:calc(100% - 6px);height:calc(100% - 6px);fill:none;stroke:currentColor;stroke-width:1;opacity:.55}.floating-d20 span,.floating-d20 b{background:var(--cx-bg,#15110c);padding:0 2px}

/* Legendary stat rows and abilities share one readable name/description layout. */
#page-items .leg-stat-row,#page-items .leg-ability{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;align-items:start;min-width:0;border-left:2px solid color-mix(in srgb,var(--cx-accent-deep) 35%,transparent);padding:6px 0 6px 12px}
#page-items .leg-stat-key,#page-items .leg-ability-name{display:block;min-width:0;width:100%;margin:0}
#page-items .leg-stat-val,#page-items .leg-ability-body{min-width:0;width:100%}
#page-items .leg-stat-val input,#page-items .leg-ability-body textarea,#page-items .leg-ability-view{min-width:0;overflow-wrap:anywhere;white-space:pre-wrap}
#page-items .leg-abilities,#page-items .leg-stat-rows{gap:14px}

#page-items .leg-stat-view, #page-items .leg-ability-view { flex:1; min-width:0; white-space:pre-wrap; overflow-wrap:anywhere; color:var(--cx-text-soft); font-family:"EB Garamond",serif; font-size:15px; line-height:1.6; }
#page-items .leg-stat-val textarea { flex:1; width:100%; min-width:0; min-height:64px; resize:vertical; }
