:root{--bg:#070b09;--panel:#0c1410;--line:#42644d;--green:#9bc89f;--dim:#6d8c72;--amber:#d0a75b;--red:#a75b4f}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 50% 0,#152018 0,#070b09 45%,#030504 100%);color:var(--green);font-family:Consolas,"Courier New",monospace;min-height:100vh}
body:before{content:"";position:fixed;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 4px);z-index:9}
header{padding:18px 4vw;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;background:#070b09e8;position:sticky;top:0;z-index:5}header small{display:block;color:var(--dim);margin-top:5px}#identity{color:var(--amber)}
nav{display:flex;gap:7px;flex-wrap:wrap;padding:10px 4vw;border-bottom:1px solid #243b2c;background:#09100c}
button{background:#101a13;color:var(--green);border:1px solid var(--line);padding:10px 13px;font:inherit;cursor:pointer}button:hover{background:#1b2b20;color:#d8ffda;box-shadow:0 0 12px #5b9b6b33}
main{width:min(1180px,92vw);margin:28px auto 70px}.hidden{display:none!important}h1{font-size:clamp(22px,4vw,34px);font-weight:500;letter-spacing:2px;border-bottom:1px solid var(--line);padding-bottom:12px}h2,h3{letter-spacing:1px}.amber{color:var(--amber)}
.panel,.card{background:linear-gradient(145deg,#0e1711dd,#080d0add);border:1px solid #314a38;padding:20px;margin:15px 0;box-shadow:inset 0 0 25px #0008}.hero{display:grid;grid-template-columns:1fr 220px;gap:25px;align-items:center}.sigil{text-align:center;font-size:70px;color:#58745f;border:1px solid #314a38;padding:25px}.sigil span{color:var(--amber)}
.stats{display:flex;gap:12px;flex-wrap:wrap}.stat{border-left:3px solid var(--amber);padding:8px 15px;background:#0c120e}.stat b{font-size:24px;display:block}
.auth input,.form input,.form textarea,#roundTitle,#loreTitle,#loreEdit,.score{background:#050806;color:#bde4c1;border:1px solid #385440;padding:11px;font:inherit;margin:5px 4px 5px 0}.auth input{min-width:210px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:15px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.card{margin:0;cursor:pointer}.card img{width:100%;height:180px;object-fit:cover;filter:saturate(.65) contrast(1.1);border:1px solid #314a38}.card .tag{color:var(--amber);font-size:12px}.card h3{margin-bottom:5px}.card p{color:#8eaa93}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid #273b2d}th{color:var(--amber)}.tablewrap{overflow:auto}
.form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form label{display:flex;flex-direction:column}.form .wide{grid-column:1/-1}.form input,.form textarea{width:100%;margin-top:7px}.dossier{white-space:pre-wrap;line-height:1.7}
.round{margin-bottom:22px}.match{padding:13px;border-top:1px dashed #35503b;display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}.match .vs{color:var(--amber);text-align:center}.right{text-align:right}
.modal{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:20;padding:20px}.modalbox{width:min(750px,95vw);max-height:90vh;overflow:auto;background:#09100c;border:1px solid var(--amber);padding:24px;box-shadow:0 0 40px #000}.modalbox>button{float:right}.portrait{max-width:100%;max-height:340px;object-fit:contain;border:1px solid var(--line)}
footer{position:fixed;bottom:0;width:100%;text-align:center;padding:9px;background:#050806;border-top:1px solid #243b2c;color:#526c57;font-size:12px}
@media(max-width:700px){.hero,.grid2,.form{grid-template-columns:1fr}.sigil{display:none}.match{grid-template-columns:1fr}.right{text-align:left}header{position:static}.auth input{width:100%}}
/* v0.4 — mobile first */
.admin-tabs{display:flex;gap:7px;overflow-x:auto;padding:4px 0 10px;position:sticky;top:73px;background:#070b09;z-index:4}
.admin-tabs button{white-space:nowrap}.checkgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px;margin:12px 0}
.adminmatch{border:1px solid #314a38;padding:14px;margin:12px 0;background:#080d0a}.scoreline{display:grid;grid-template-columns:minmax(90px,1fr) 70px 20px 70px minmax(90px,1fr);align-items:center;gap:8px;margin:10px 0}.adminmatch textarea{width:100%;background:#050806;color:#bde4c1;border:1px solid #385440;padding:9px}.miniChron{border-bottom:1px dashed #35503b;padding:12px 0;display:grid;gap:6px}.miniChron small{color:var(--dim)}.switchrow{display:block;margin:12px 0}.chronicle small{color:var(--dim)}
@media(max-width:700px){
 body{padding-bottom:68px} header{padding:12px 14px} header small{font-size:10px} #identity{font-size:11px;max-width:42%;text-align:right}
 nav{position:fixed;bottom:0;left:0;right:0;z-index:15;padding:6px;background:#060a08;border-top:1px solid var(--line);border-bottom:0;display:flex;flex-wrap:nowrap;overflow-x:auto}
 nav button{font-size:10px;padding:10px 9px;min-width:max-content}
 main{width:94vw;margin:18px auto 20px} h1{font-size:21px;letter-spacing:1px} h2{font-size:19px}
 .panel,.card{padding:14px}.grid{grid-template-columns:1fr}.grid2{grid-template-columns:1fr}.form{grid-template-columns:1fr}.form .wide{grid-column:auto}
 .card{display:grid;grid-template-columns:88px 1fr;column-gap:12px}.card img{width:88px;height:88px;grid-row:1/5}.card .tag,.card h3,.card b,.card p{grid-column:2}.card h3{margin:2px 0}
 .stats{display:grid;grid-template-columns:1fr 1fr}.stat b{font-size:19px}
 .match{display:grid;grid-template-columns:1fr auto 1fr;font-size:13px}.match .right{text-align:right}.match>div:last-child{grid-column:1/-1}
 .tablewrap{padding:5px;overflow-x:auto} table{min-width:650px} th,td{padding:9px;font-size:12px}
 .auth input{display:block;width:100%;margin:7px 0}.auth button{width:100%;margin-top:7px}
 .admin-tabs{top:0;position:sticky}.scoreline{grid-template-columns:1fr 58px 14px 58px 1fr;font-size:11px}.scoreline input{width:58px;margin:0;padding:8px 4px}
 #loreEdit,#chronBody,#chronTitle,#chronRound,#roundTitle{width:100%}
 .modal{padding:8px}.modalbox{padding:15px;width:100%;max-height:94vh}
 footer{display:none}
}
@media(max-width:420px){
 .scoreline{grid-template-columns:1fr 52px 12px 52px 1fr;gap:4px}.scoreline input{width:52px}
 .stats{grid-template-columns:1fr}.match{grid-template-columns:1fr}.match .right{text-align:left}.match .vs{text-align:left}
}

/* v0.5 — distinción editorial y generador de enfrentamientos */
.rich-text{line-height:1.65;color:#b4cbb6;overflow-wrap:anywhere}
.rich-text p{margin:.5rem 0}.rich-gap{height:.65rem}.rich-chapter{color:#d9b66d;border-left:4px solid #d9b66d;padding:10px 14px;margin:1.5rem 0 .7rem;background:#332a1622;font-size:1.35rem}
.rich-section{color:#89c7a0;margin:1.1rem 0 .5rem;border-bottom:1px solid #38523e;padding-bottom:7px;font-size:1.13rem}
.rich-sub{color:#c6d6bc;font-size:1rem;margin:1rem 0 .4rem}.rich-quote{margin:.8rem 0;padding:8px 14px;border-left:3px solid #7996ae;color:#b6cadb;background:#17212a77}
.rich-alert{color:#d79c8d;background:#30181577;border-left:3px solid #ba6555;padding:8px 12px}
.format-help{font-size:13px;color:#a9b7a7;line-height:1.7}.format-help code{color:#e3c67f}.preview{min-height:100px;padding:14px;border:1px dashed #58715d;margin-bottom:14px}
.draftpair{display:grid;grid-template-columns:90px 1fr 30px 1fr;align-items:center;gap:9px;padding:12px 0;border-bottom:1px solid #304536}.draftpair select{min-width:0;width:100%;background:#07100a;color:#c6e4ca;border:1px solid #49634d;padding:10px;font:inherit}.draftok{color:#8ed4a3;margin:14px 0}#pairPreviewPanel{scroll-margin-top:25px}#pairPreviewPanel button{margin:5px}
button:disabled{opacity:.4;cursor:not-allowed}
@media(max-width:700px){.draftpair{grid-template-columns:1fr 1fr;gap:8px}.draftpair span{grid-column:1/-1}.draftpair b{display:none}.draftpair select{font-size:13px}.rich-chapter{font-size:1.2rem}}

/* v0.5.2 — tonos imperiales, legibilidad y jerarquía editorial */
:root{--green:#b6d9bb;--dim:#91ad98;--amber:#e6c27b;--red:#ef897d}
.rich-text{color:#d0ddd0;line-height:1.78;font-size:15px}
.rich-text p{margin:.45rem 0}
.rich-text .rich-chapter{color:#f3d28a;background:linear-gradient(90deg,#42301799,#18190f55);border-left:5px solid #e9b956;border-bottom:1px solid #806333;font-weight:700;letter-spacing:.6px;padding:12px 14px}
.rich-text .rich-section{color:#a4e5b6;background:#15322177;border-bottom:1px solid #50855e;padding:8px 10px;font-weight:700}
.rich-text .rich-sub{color:#d8e4d1}
.rich-text .rich-quote{color:#bed9f2;border-left:4px solid #719fd4;background:#172b4277}
.rich-text .rich-alert,.rich-text .rich-danger{color:#ffc0b6;background:#4b171ab3;border-left:5px solid #e46d69;padding:10px 14px;font-weight:700}
.rich-text .rich-info{color:#a8cbea;background:#15273b99;border-left:4px solid #5e94c9;padding:8px 12px}
.rich-text .rich-success{color:#b1efb6;background:#173d2477;border-left:4px solid #65ba7a;padding:8px 12px}
.rich-text .rich-terminal{color:#e2c989;background:#2d281788;border-left:3px solid #bd9b55;padding:8px 12px;letter-spacing:.4px}
.rich-text strong{color:#fff1ba}
#admin-history h3,#admin-planet h3{color:#e9c37a}
.admin-tabs button{border-bottom:3px solid #4c6e54}
.admin-tabs button:hover,.admin-tabs button:focus-visible{border-bottom-color:#e5b96e}
#admin-history .panel{border-top:3px solid #6b9bc7}
#admin-planet .panel{border-top:3px solid #d5b16d}
.format-help{background:#172019;padding:10px;border-left:3px solid #8fb69b}
.format-help code{color:#f4d392}
@media(max-width:700px){.rich-text{font-size:14px;line-height:1.7}}
