:root{color-scheme:dark;--ink:#f2ead8;--dim:#b7bcb5;--gold:#e3bc74;--panel:#182426}*{box-sizing:border-box}body{margin:0;background:#0e181b;color:var(--ink);font:16px/1.65 system-ui,sans-serif}header{max-width:1100px;margin:auto;padding:20px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{font:22px Georgia,serif;color:var(--ink);text-decoration:none}.brand strong{font-weight:normal;color:var(--gold)}.edition{font-size:12px;color:var(--dim)}main{max-width:1040px;margin:auto;padding:0 24px}.scene{height:290px;background:linear-gradient(110deg,#263c3d,#1b2c31 60%,#334348);position:relative;overflow:hidden;border-radius:8px 8px 0 0}.setting{position:absolute;top:42px;left:36px;z-index:2}.setting span{font-size:11px;letter-spacing:2px;color:#c1c9bb}.setting h1{font:clamp(26px,4vw,40px) Georgia,serif;margin:14px 0;color:#f6e7c7}.setting p{color:#c8ccc3;margin:0;max-width:270px}.window{position:absolute;right:7%;top:24px;width:220px;height:220px;background:linear-gradient(#25394e,#69837e);border:12px solid #172a2d;border-radius:100px 100px 0 0;overflow:hidden}.window:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent 48%,#172a2d 48%,#172a2d 52%,transparent 52%)}.moon{width:28px;height:28px;background:#d0cbae;border-radius:50%;margin:26px 0 0 110px}.hills{height:200px;width:320px;transform:rotate(-22deg);background:#344f49;margin:70px 0 0 -40px}.desk{position:absolute;bottom:0;left:0;right:0;height:45px;background:#67513b;border-top:5px solid #9b7b51}.notebook{position:absolute;right:25%;top:-8px;background:#b4a584;width:115px;height:16px;transform:skew(-25deg);border-bottom:4px solid #596b66}.cup{position:absolute;right:17%;top:-32px;height:30px;width:25px;border-radius:2px 2px 10px 10px;background:#c2bba0}.dialogue{background:var(--panel);border:1px solid #41504b;border-top:3px solid #b48e50;padding:22px 36px 30px;min-height:300px}.caption{display:flex;align-items:center;justify-content:space-between;gap:20px}.caption h2{font-size:17px;letter-spacing:1px;margin:0;color:var(--gold)}#day{color:var(--dim);font-size:13px}#story{font:clamp(19px,2.2vw,23px)/1.7 Georgia,serif;white-space:pre-line;margin:18px 0 26px}#choices{display:grid;gap:9px}button,.file-button{font:inherit;color:var(--ink);background:#223235;border:1px solid #58615a;border-radius:4px;padding:9px 14px;cursor:pointer;text-align:left}button:hover,.file-button:hover{background:#354642;border-color:var(--gold)}button:focus-visible,.file-button:focus-within,a:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}button:disabled{opacity:.5;cursor:wait}#choices button{border-left:3px solid #b48e50}.controls{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding:18px 0}.controls button,.file-button{font-size:13px;background:transparent}.file-button input{position:absolute;width:1px;height:1px;opacity:0}#save-status{font-size:12px;color:var(--dim);margin-left:auto}#error{color:#ffc6b8}#end-note,footer{font-size:13px;color:var(--dim)}footer{padding:22px;text-align:center}#history-panel,#diagnostic{border-top:1px solid #58615a;padding:16px 0}#history-content p{white-space:pre-line;border-left:2px solid #b48e50;padding-left:20px}select{padding:10px;background:#223235;color:var(--ink);margin-right:8px}[hidden]{display:none!important}@media(max-width:620px){header{padding:16px 20px;align-items:flex-start;flex-direction:column;gap:3px}main{padding:0 12px}.scene{height:260px}.setting{left:22px;top:25px;max-width:75%}.setting p{max-width:210px}.window{right:-70px;opacity:.45}.dialogue{padding:20px}.controls{gap:7px}#save-status{width:100%;margin:0}.caption h2{font-size:15px}}
/* Delivery 1: presentation and dossier, shared legacy styles above remain intact. */
.campaign .scene{height:270px}.campaign .setting{max-width:65%}.campaign .setting h1{max-width:560px}.campaign .dialogue{min-height:250px}.campaign #story{font-size:21px;line-height:1.75;max-width:850px}.campaign .scene-sprite{position:absolute;right:6%;bottom:42px;width:160px;height:160px;image-rendering:pixelated;z-index:3;filter:drop-shadow(0 8px 6px #0006)}.avatar-layout{display:grid;grid-template-columns:180px 1fr;gap:28px;align-items:center;margin:25px 0}.avatar-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.avatar-fields label{display:flex;flex-direction:column;font-size:13px;color:var(--dim);gap:5px}.avatar-fields input,.avatar-fields select{font:inherit;font-size:16px;padding:10px;background:#112124;color:var(--ink);border:1px solid #58615a;border-radius:4px;width:100%;margin:0}.primary{background:#455845;border-color:var(--gold)}.portrait-wrap{text-align:center;color:var(--dim);font-size:13px}.portrait{--skin:#b87950;--hair:#523c2e;--coat:#52705b;position:relative;width:150px;height:180px;margin:auto;background:linear-gradient(#304347,#192b2e);border-radius:80px 80px 8px 8px;overflow:hidden;border:1px solid #647364}.portrait[data-skin="clara"]{--skin:#edc09c}.portrait[data-skin="oscura"]{--skin:#704634}.portrait[data-hair="negro"]{--hair:#232225}.portrait[data-hair="cobrizo"]{--hair:#a65232}.portrait[data-coat="azul"]{--coat:#436780}.portrait[data-coat="granate"]{--coat:#854b59}.portrait-face{position:absolute;background:var(--skin);width:60px;height:73px;left:44px;top:35px;border-radius:25px 25px 30px 30px;z-index:2}.portrait-face i{position:absolute;width:5px;height:6px;background:#252728;border-radius:50%;top:34px;left:16px}.portrait-face i+i{left:39px}.portrait-hair{position:absolute;width:74px;height:54px;left:37px;top:25px;border-radius:40px 40px 12px 12px;background:var(--hair);z-index:3}.portrait[data-cut="corto"] .portrait-hair{height:32px;transform:rotate(-7deg)}.portrait[data-cut="largo"] .portrait-hair{height:105px;z-index:1}.portrait[data-cut="largo"] .portrait-face:before{content:'';position:absolute;inset:0 -5px auto;height:17px;background:var(--hair);border-radius:15px 15px 5px 0}.portrait[data-cut="rizado"] .portrait-hair{height:37px;border-radius:40%;box-shadow:-5px 5px 0 var(--hair),6px 4px 0 var(--hair)}.portrait-body{position:absolute;top:109px;left:20px;width:110px;height:100px;border-radius:40px 40px 0 0;background:var(--coat);border-top:7px solid #c6bda1}.portrait-body:after{content:'';position:absolute;left:52px;top:0;width:3px;height:72px;background:#18272a}.detail-panel{padding:24px 0;border-top:1px solid #58615a;scroll-margin-top:20px}.detail-panel h2{font:26px Georgia,serif;color:var(--gold)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.card{padding:18px;background:#18282b;border:1px solid #3f514d;border-radius:6px}.card h3,.card h4{margin:0 0 8px;color:var(--gold)}.card p{font-size:14px;color:var(--dim);margin:8px 0}.own-team{border-color:var(--gold)}.pokemon-header{display:flex;gap:22px;align-items:center}.pokemon-sprite{image-rendering:pixelated;object-fit:contain}.pokemon-header h3{font:28px Georgia,serif;margin:0}.table-scroll{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}caption{text-align:left;color:var(--dim);margin-bottom:10px}td,th{text-align:left;padding:9px 12px;border-bottom:1px solid #465751;white-space:nowrap}th{color:var(--gold)}dl{display:grid;grid-template-columns:160px 1fr;gap:12px}dt{color:var(--gold)}dd{margin:0}details{padding:14px;border:1px solid #465751;margin:12px 0}summary{cursor:pointer}details p{white-space:pre-line;font-size:15px}#complete-note{color:var(--dim);font-size:14px;margin-top:25px}a{color:var(--gold)}@media(max-width:620px){.campaign .scene{height:265px}.campaign .setting{max-width:75%}.campaign .setting h1{font-size:27px}.campaign .scene-sprite{width:96px;height:96px;right:4%;bottom:38px}.campaign #story{font-size:19px}.avatar-layout{grid-template-columns:1fr;gap:15px}.avatar-fields{gap:12px}.portrait{width:150px}.card-grid{grid-template-columns:1fr 1fr}.card{padding:13px}.card li{font-size:14px}.card ul{padding-left:18px}dl{grid-template-columns:1fr;gap:4px}dd{margin-bottom:12px}.pokemon-header{gap:8px}.pokemon-header h3{font-size:23px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
