:root{--ink:#2b1d10;--parch:#e9d8b4;--gold:#b8862b;--stone:#3a3631;--stone-dark:#26231f;--blood:#7a1f1f}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'EB Garamond',serif;background:#15120e;color:var(--parch);height:100vh;overflow:hidden}
.ed-wrap{display:flex;height:100vh}
.hidden{display:none!important}
.ed-panel{width:330px;background:#1f1a13;border-right:2px solid var(--gold);overflow-y:auto;padding:16px;flex-shrink:0}
.ed-panel h1{font-family:'Cinzel';color:var(--gold);font-size:1.2rem;margin-bottom:14px}
.ed-panel h2{font-family:'Cinzel';color:#c8a35a;font-size:.82rem;text-transform:uppercase;letter-spacing:1px;margin:16px 0 8px;border-bottom:1px solid #3a3026;padding-bottom:4px}
.ed-panel section:first-of-type h2{margin-top:0}
label{display:block;font-size:.78rem;margin-bottom:8px;color:#cdbb95}
input,select,textarea{width:100%;margin-top:3px;padding:7px 9px;border:1px solid var(--gold);background:#2a241a;color:var(--parch);border-radius:3px;font-family:'EB Garamond';font-size:.88rem}
input[type=color]{padding:2px;height:34px;cursor:pointer}
textarea{resize:vertical}
.chk{display:flex;align-items:center;gap:6px}.chk input{width:auto;margin:0}
.hint{font-size:.72rem;color:#9a8b6f;font-style:italic;margin:4px 0 8px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:8px;align-items:end}
.row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;align-items:end}
.mon-preview{margin:6px 0;min-height:4px}
.mon-preview img{width:56px;height:56px;object-fit:cover;border-radius:50%;border:2px solid var(--gold)}
details summary{cursor:pointer;font-size:.78rem;color:#c8a35a;margin-bottom:6px}
.btn{font-family:'Cinzel';font-weight:700;cursor:pointer;background:linear-gradient(180deg,var(--stone),var(--stone-dark));color:var(--parch);border:1px solid #000;border-radius:3px;padding:8px 12px;font-size:.8rem;width:100%;margin-top:6px}
.btn:hover{filter:brightness(1.2)}
.btn-gold{background:linear-gradient(180deg,#e0a93a,var(--gold));color:#2b1d10}
.btn-sm{font-size:.74rem;padding:7px 8px}
.tools{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:6px}
.tool{font-family:'Cinzel';font-size:.74rem;padding:9px 4px;cursor:pointer;background:#2a241a;color:var(--parch);border:1px solid #4a3d2a;border-radius:3px}
.tool.active{background:var(--gold);color:#2b1d10;border-color:#e0a93a;font-weight:700}
.sub{background:#241e16;border-radius:4px;padding:10px;margin-bottom:8px}
.zone-list{list-style:none;font-size:.8rem}
.zone-list li{display:flex;align-items:center;gap:6px;padding:5px 7px;margin-bottom:4px;border-radius:3px;border:1px solid transparent}
.zone-list li.active{border-color:var(--gold);background:#2a241a}
.zone-list .swatch{width:14px;height:14px;border-radius:2px;flex-shrink:0;border:1px solid #000;cursor:pointer}
.zone-list .zname{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}
.zone-list .zdel{color:var(--blood);cursor:pointer;font-weight:700}
.actions{padding-bottom:30px}
.save-msg{font-size:.8rem;margin-top:8px;min-height:1em;color:#7cc47c}
.ed-board{flex:1;display:flex;flex-direction:column;min-width:0}
.ed-board-head{display:flex;align-items:center;gap:16px;padding:8px 14px;background:#1f1a13;border-bottom:1px solid var(--gold);font-size:.78rem}
.ed-board-head #coordLabel{font-family:'Cinzel';color:var(--gold);min-width:70px}
.head-hint{color:#9a8b6f;font-style:italic;margin-left:auto}
#edCanvas{flex:1;display:block;cursor:crosshair;background:#0a0805}
.acc-badge{font-size:.78rem;opacity:.85;margin-bottom:8px;font-style:italic}
