*{box-sizing:border-box}html{font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;color:#24231f;background:#ece9df}body{margin:0}a{color:inherit}header{height:62px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(16px,4vw,54px);border-bottom:1px solid #bdb9ad;background:#f2efe6;position:sticky;top:0;z-index:5}header nav{display:flex;gap:18px;flex-wrap:wrap}.brand{font-weight:800;text-decoration:none}.reader main{min-height:calc(100vh - 62px)}.page{max-width:760px;margin:auto;padding:7vh 34px 110px;font-family:Georgia,'Times New Roman',serif}.page h1{font-size:clamp(2rem,5vw,3.8rem);line-height:1.02;margin:.25em 0 .8em}.prose{font-size:clamp(1.12rem,2vw,1.38rem);line-height:1.72;text-align:justify}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font:700 .72rem Inter,system-ui;color:#68645b}.pager{position:fixed;bottom:0;left:0;right:0;height:58px;background:#f2efe6;border-top:1px solid #bdb9ad;display:flex;justify-content:space-between;align-items:center;padding:0 clamp(18px,5vw,70px)}.pager a{text-decoration:none}.disabled{pointer-events:none;opacity:.25}.empty{max-width:700px;margin:15vh auto;padding:30px}.admin{background:#101211;color:#e8e8e2}.admin header{background:#151816;border-color:#2c302d}.adminmain{max-width:1240px;margin:auto;padding:38px 24px 80px}.hero{display:flex;justify-content:space-between;align-items:end;gap:30px;padding:35px 0 28px}.hero h1{font-size:clamp(2.4rem,6vw,5.4rem);line-height:.92;margin:.12em 0}.hero p{max-width:700px;color:#aeb5af;font-size:1.08rem}.card{background:#181b19;border:1px solid #303531;border-radius:22px;padding:clamp(20px,4vw,38px);box-shadow:0 18px 60px #0003}.login{max-width:440px;margin:12vh auto}.login h1{font-size:3rem;margin:0}.wizard{max-width:1000px;margin:auto}.wizard h2{margin-top:42px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.split{display:grid;grid-template-columns:1fr 1fr;gap:24px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}label{display:grid;gap:8px;margin:14px 0;color:#cdd2ce;font-weight:650}input,select,textarea{width:100%;border:1px solid #3a403b;background:#101311;color:#f3f4ef;border-radius:12px;padding:13px 14px;font:inherit}textarea{resize:vertical;line-height:1.5}button,.button{border:0;background:#e8e9df;color:#111512;border-radius:999px;padding:12px 19px;font-weight:800;cursor:pointer;text-decoration:none;display:inline-block}.choice{display:flex;gap:18px;flex-wrap:wrap}.choice label{display:flex;align-items:center}.choice input{width:auto}.actions{display:flex;gap:15px;align-items:center}.result{margin-top:24px}.log{white-space:pre-wrap;overflow:auto;color:#cbd1cc}.alert{padding:12px;background:#4b1d1d;border-radius:10px;margin:15px 0}.admin small{display:block;color:#8d958f;margin-top:18px}@media(max-width:760px){header{height:auto;min-height:58px;padding:12px 16px;gap:12px}header nav{gap:10px;font-size:.84rem}.adminmain{padding:18px 14px 60px}.hero{align-items:start;flex-direction:column}.grid,.split{grid-template-columns:1fr}.page{padding:5vh 22px 100px}.prose{text-align:left}.login{margin:8vh 14px}.card{border-radius:16px}}/* v1.2 login polish */
.admin:has(.login){min-height:100vh;background:radial-gradient(circle at 50% 0,#252a26 0,#111411 42%,#090b0a 100%);display:grid;place-items:center;padding:24px}.admin:has(.login) .login{width:min(100%,480px);margin:0;padding:clamp(28px,6vw,52px);border:1px solid #343a35;background:rgba(24,27,25,.94);box-shadow:0 30px 100px #0008}.login:before{content:'E';display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#e8e9df;color:#111512;font:900 28px Georgia,serif;margin-bottom:26px}.login h1{font-size:clamp(2.7rem,10vw,4.4rem);line-height:.9;letter-spacing:-.055em}.login>p{color:#aeb5af;margin:14px 0 28px}.login form{display:grid;gap:16px}.login label{margin:0}.login input{min-height:52px;background:#0d100e;border-color:#414741}.login button{min-height:52px;margin-top:4px;font-size:1rem}.login .alert{border:1px solid #7b3434;background:#361919;color:#ffdede}.login small{line-height:1.55;border-top:1px solid #303531;padding-top:18px;margin-top:26px}@media(max-width:520px){.admin:has(.login){padding:14px}.admin:has(.login) .login{padding:28px 22px}.login:before{width:48px;height:48px;border-radius:14px}.login h1{font-size:3rem}}
/* v1.3 light studio */
.admin{background:#f3f1ea;color:#262722}.admin header{background:rgba(250,249,245,.96);border-color:#d8d5ca;box-shadow:0 1px 12px #25251f0b}.adminmain{max-width:1280px}.admin .hero p,.admin small{color:#6f7069}.admin .card{background:#fffefa;border-color:#ddd9ce;box-shadow:0 14px 45px #39372d12}.admin label{color:#44453f}.admin input,.admin select,.admin textarea{background:#fff;color:#24251f;border-color:#ccc8bc}.admin input:focus,.admin select:focus,.admin textarea:focus{outline:2px solid #8f9187;outline-offset:1px}.admin button,.admin .button{background:#252722;color:#fff}.admin .secondary{background:#eceae2;color:#30312c;border:1px solid #d2cfc4}.admin .eyebrow{color:#77786f}.admin .hero h1{letter-spacing:-.055em}.step{display:flex;align-items:center;gap:12px;margin-top:48px;padding-top:8px;border-top:1px solid #e1ded5}.step span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#292b26;color:#fff;font-weight:800;font-size:.78rem}.step h2{margin:18px 0}.hint{color:#77786f}.character-list{display:grid;gap:18px}.character-card{border:1px solid #dedbd1;background:#f8f7f2;border-radius:18px;padding:20px}.character-head{display:flex;align-items:center;justify-content:space-between}.iconbtn{width:34px;height:34px;padding:0;border-radius:50%;font-size:1.3rem}.admin .choice label{background:#f7f5ef;border:1px solid #ddd9ce;padding:12px 16px;border-radius:14px}.admin .log{color:#333}.admin .alert{background:#fff0f0;color:#7b2626;border:1px solid #e3bcbc}.admin:has(.login){background:#f3f1ea}.admin:has(.login) .login{background:#fffefa;border-color:#d8d5ca;box-shadow:0 30px 90px #3a382b1c}.login:before{background:#292b26;color:#fff}.login>p{color:#6f7069}.login input{background:#fff;border-color:#ccc8bc}.login .alert{background:#fff0f0;color:#7b2626;border-color:#e3bcbc}.login small{border-color:#e1ded5}
@media(max-width:760px){.step{margin-top:36px}.character-card{padding:15px}}
/* v1.4 story modes */
.studio-mode{display:flex;gap:10px;max-width:1000px;margin:0 auto 16px;padding:6px;background:#e9e6dc;border:1px solid #d7d3c7;border-radius:999px;width:max-content;max-width:100%}.admin .modebtn{background:transparent;color:#55574f;padding:11px 18px}.admin .modebtn.active{background:#fffefa;color:#24251f;box-shadow:0 2px 12px #39372d18}.modepanel[hidden]{display:none!important}#randomWizard{border:2px solid #d6d1c3;background:linear-gradient(180deg,#fffefa,#fbfaf5)}#randomWizard .step:first-of-type{margin-top:0;border-top:0}.admin label small{margin:0;color:#85867e;font-weight:500;line-height:1.35}@media(max-width:600px){.studio-mode{width:100%;border-radius:18px}.admin .modebtn{flex:1;padding:11px 10px}.choice{display:grid}.choice label{width:100%}}
