.format-toolbar{display:flex;gap:7px;flex-wrap:wrap;padding:12px;background:#241a15;border:1px solid #61402d;position:sticky;top:0;z-index:2}.format-toolbar label{margin:0;align-self:center}.format-toolbar button{padding:7px 10px;font-size:14px}.format-toolbar select{background:#090909;color:#D6C2A2;padding:8px;border:1px solid #D78D34}.rich-input{min-height:60vh;padding:24px;border:1px solid #D78D34;background:#090909;overflow-wrap:anywhere;white-space:normal}.rich-input:focus{outline:2px solid #D78D34}.rich-input p,.rich-text p{margin:0 0 1em}.rich-input h1,.rich-text h1{font-size:2em}.rich-input h2,.rich-text h2{font-size:1.6em}.rich-input h3,.rich-text h3{font-size:1.3em}.rich-input h4,.rich-text h4{font-size:1.1em}.rich-input blockquote,.rich-text blockquote{border-left:3px solid #D78D34;margin:1em 0 1em 40px;padding-left:18px}.rich-input ul,.rich-input ol,.rich-text ul,.rich-text ol{padding-left:2em}.rich-input pre,.rich-text pre{white-space:pre-wrap}.rich-text{white-space:normal}.editor-hint{font:14px/1.5 Arial,sans-serif;color:#c7b99f} [hidden]{display:none!important}


.eb-characters{max-width:1200px;margin:auto;padding:32px 20px;color:#D6C2A2}.eb-characters a{color:#D78D34}.eb-characters h1{font-size:clamp(32px,5vw,58px);color:#D78D34}.eb-character-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:24px}.eb-character-card,.eb-character-panel{padding:24px;background:#171717;border:1px solid #61402d;border-radius:10px;margin-bottom:24px}.eb-portrait{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:6px;background:#241a15}.eb-portrait-empty{display:grid;place-items:center;font:60px Georgia,serif}.eb-character-form{display:grid;gap:18px}.eb-character-form label{display:block}.eb-character-form input:not([type=checkbox]),.eb-character-form textarea,.eb-character-form select,.eb-character-filters input,.eb-character-filters select{display:block;width:100%;padding:12px;color:#D6C2A2;background:#090909;border:1px solid #61402d;font:16px/1.5 Arial,sans-serif}.eb-character-form textarea{min-height:100px}.eb-characters button,.eb-character-button{display:inline-block;padding:10px 16px;background:#241a15;border:1px solid #D78D34;color:#D6C2A2;border-radius:5px;cursor:pointer}.eb-character-filters{display:flex;gap:16px;flex-wrap:wrap;margin:24px 0}.eb-character-filters label{flex:1;min-width:180px}.eb-character-meta{color:#cbb497;font:14px/1.5 Arial,sans-serif}.eb-character-detail{display:grid;grid-template-columns:minmax(180px,300px) minmax(0,1fr);gap:30px}.eb-character-errors{padding:16px;border:1px solid #d87171;background:#2c1313}.eb-character-success{padding:16px;border:1px solid #D78D34}.eb-characters table{width:100%;border-collapse:collapse}.eb-characters td,.eb-characters th{padding:12px;text-align:left;border-bottom:1px solid #443025}.eb-character-table{overflow-x:auto}.eb-characters button:focus-visible,.eb-characters a:focus-visible{outline:3px solid #D78D34;outline-offset:3px}.rich-input{background:#090909;color:#D6C2A2;min-height:400px}@media(max-width:700px){.eb-character-detail{grid-template-columns:1fr}.eb-character-detail .eb-portrait{max-width:300px}.format-toolbar{position:static}}

.eb-portrait-upload-preview{display:block;width:100%;max-width:280px;max-height:350px;object-fit:contain;border:1px solid #61402d;border-radius:8px;margin-bottom:18px}.eb-camera-control{display:none}@media(pointer:coarse){.eb-camera-control{display:block}}

.rich-input img,.rich-text img{max-width:100%;height:auto;object-fit:contain;vertical-align:middle;border-radius:6px}.rich-input figure,.rich-text figure{margin:24px 0;max-width:100%}.rich-input figcaption,.rich-text figcaption{font:14px/1.5 Arial,sans-serif;color:#c7b99f;margin-top:10px}.rich-input .eb-selected-image{outline:3px solid #D78D34;outline-offset:4px}

.rich-input table,.rich-text table{width:100%;border-collapse:collapse;margin:22px 0;table-layout:auto}.rich-input th,.rich-input td,.rich-text th,.rich-text td{border:1px solid #8a7158;padding:10px 12px;min-width:70px;vertical-align:top;overflow-wrap:anywhere}.rich-input th,.rich-text th{font-weight:bold;background:rgba(215,141,52,.12)}.rich-input caption,.rich-text caption{text-align:left;font-weight:bold;padding:8px 0}.rich-input,.rich-text{overflow-x:auto}.eb-table-status{font:13px/1.5 Arial,sans-serif}.eb-table-dialog{max-width:420px;width:calc(100% - 32px);border:1px solid #D78D34;border-radius:8px;background:#171717;color:#D6C2A2;padding:24px}.eb-table-dialog::backdrop{background:rgba(0,0,0,.55)}.eb-table-dialog label{display:block;margin:12px 0}.eb-table-dialog input:not([type=checkbox]){display:block;width:100%;padding:8px}.eb-table-dialog button{padding:8px 12px;cursor:pointer}

.eb-writing-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.eb-writing-actions a{padding:8px}.eb-writing-actions button{padding:8px 12px}

/* Soft-edge Gothic Western treatment. Decorative haze uses backgrounds only:
   text, controls, portraits and focus rings remain sharp. */
.eb-characters {
 --eb-soft-gold: rgba(215,141,52,.25);
 --eb-soft-violet: rgba(126,88,167,.13);
 background: radial-gradient(ellipse at 0 12%,rgba(126,88,167,.09),transparent 48%),radial-gradient(ellipse at 100% 35%,rgba(215,141,52,.06),transparent 50%);
}
.eb-characters .eb-character-card,.eb-characters .eb-character-panel {
 background: radial-gradient(ellipse at top right,var(--eb-soft-violet),transparent 65%),linear-gradient(145deg,#1b191b,#121212 80%);
 border:1px solid rgba(215,141,52,.16);border-radius:20px;
 box-shadow:0 14px 36px #0004,0 0 28px rgba(126,88,167,.055);
}
.eb-characters :is(h2,h3)::after {
 content:"";display:block;height:1px;margin-top:12px;
 background:linear-gradient(90deg,rgba(215,141,52,.5),rgba(126,88,167,.22) 50%,transparent);
}
.eb-characters .eb-portrait {border-radius:14px;box-shadow:0 8px 24px #0005;}
/* Fade only the last portion of public portraits, preserving facial detail.
   Admin previews remain unmasked so image editing is accurate. */
body:not(.admin-body) .eb-characters .eb-portrait:not(.eb-portrait-empty) {
 -webkit-mask-image:linear-gradient(to bottom,#000 85%,transparent 100%);
 mask-image:linear-gradient(to bottom,#000 85%,transparent 100%);
}
.eb-characters :is(.eb-character-form,.eb-character-filters) :is(input:not([type=checkbox]),textarea,select) {
 border-radius:10px;border-color:rgba(215,141,52,.3);background:#0e0d10;
}
.eb-characters :is(input,textarea,select):focus-visible,
.eb-characters .rich-input:focus-visible {outline:2px solid #c6a0e5;outline-offset:3px;box-shadow:0 0 18px #8b5cba22;}
.eb-characters .format-toolbar {border-color:rgba(215,141,52,.24);border-radius:12px;background:linear-gradient(110deg,#221b20,#191615);box-shadow:0 5px 18px #0004;}
.eb-characters .rich-input {border-radius:12px;border-color:rgba(215,141,52,.3);}
.eb-characters :is(button,.eb-character-button) {border-radius:10px;border-color:rgba(215,141,52,.5);background:linear-gradient(135deg,#32231b,#211b26);}
.eb-characters :is(button,.eb-character-button):hover {box-shadow:0 0 16px #9b6bc02b;}
.eb-characters :is(td,th) {border-bottom-color:rgba(215,141,52,.18);}
@media print {
 .eb-characters,.eb-characters .eb-character-card,.eb-characters .eb-character-panel {background:white;box-shadow:none;color:black;}
 body:not(.admin-body) .eb-characters .eb-portrait {-webkit-mask-image:none;mask-image:none;}
}
