:root{color-scheme:dark;--gold:#d9b56d;--ink:#10141d;--muted:#bac0cb}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:#0c1018;color:#f5f5f5;font:16px/1.6 Arial,sans-serif}header{max-width:1160px;margin:auto;padding:24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #303849}.brand{letter-spacing:.18em;font-size:14px}.brand strong,.eyebrow{color:var(--gold)}main{max-width:1100px;margin:36px auto;padding:0 24px}.card{background:#171d29;border:1px solid #303849;border-radius:18px;padding:28px}.narrow{max-width:460px;margin:60px auto}.eyebrow{font-size:12px;letter-spacing:.2em}h1{font:normal 36px/1.2 Georgia,serif;margin:12px 0 20px}h2{font:normal 28px Georgia,serif}p,.muted{color:var(--muted)}label{display:block;margin:18px 0 7px}input,button{font:inherit;border-radius:9px;padding:12px}input{background:#0c1018;color:white;border:1px solid #465064;max-width:100%}form:not(.inline) input,form:not(.inline) button{width:100%}button{cursor:pointer;border:0;background:var(--gold);color:#151515;font-weight:bold}form button{margin-top:16px}button.secondary{background:transparent;border:1px solid var(--gold);color:var(--gold)}button:disabled{opacity:.5;cursor:wait}nav{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0}nav button{background:#232b3a;color:#eee}nav button[aria-current="page"]{background:var(--gold);color:#111}.inline{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.inline input:first-child{flex:1}.inline button{margin:0}.readerTools{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:22px 0}progress{width:100%;accent-color:var(--gold)}#canvasWrap{overflow:auto;background:#262c35;border-radius:8px;text-align:center}canvas{display:block;max-width:100%;height:auto;margin:auto}ul{list-style:none;padding:0}li{display:flex;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid #303849}li span{flex:1;overflow-wrap:anywhere}li button{padding:6px 12px;font-size:13px}#message{min-height:24px}#message:empty{display:none}#message:not(:empty){padding:12px;border-left:3px solid var(--gold)}@media(max-width:600px){main{padding:0 14px}.card{padding:20px}h1{font-size:30px}.inline{display:grid}.readerTools button{padding:10px;font-size:13px}}
