:root{--ink:#233747;--paper:#faf8ee;--accent:#b9452e;--line:#d8d6c8;font-family:"DM Sans","Trebuchet MS",Arial,sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0}header{border-bottom:1px solid #c7c7b9}.bar,main{max-width:1180px;margin:auto;padding:0 44px}.bar{height:66px;display:flex;align-items:center;justify-content:space-between;color:#435864;font-size:.82rem}.brand{font-family:Georgia,serif;font-weight:bold;font-size:1.38rem;display:flex;align-items:center;gap:9px;color:var(--ink)}.brand i{font:normal 35px Georgia;color:var(--accent)}main{padding-bottom:56px}.intro{margin:38px 0 29px}h1,h2,p{margin:0}.intro h1{font-family:Georgia,serif;letter-spacing:-.055em;font-weight:normal;font-size:clamp(40px,5vw,70px);line-height:1.04}.intro h1 em{color:var(--accent);font-weight:normal}.intro p{margin-top:12px;line-height:1.5;max-width:68ch;color:#50606a}.desk{display:grid;grid-template-columns:minmax(235px,.78fr) minmax(345px,1.78fr);gap:22px;align-items:start}h2{font:normal 1.48rem Georgia,serif;letter-spacing:-.035em}.controls,.preview{border:1px solid var(--line);border-radius:14px;background:#fffdf5;overflow:hidden}.controls{padding:23px}.controls label{display:block;font-size:.81rem;font-weight:bold;margin:17px 0 7px}select,button{font:inherit;color:var(--ink)}select{appearance:auto;width:100%;border:1px solid #bdbfb5;background:#fffef7;padding:9px;border-radius:6px}button{cursor:pointer}button:disabled{opacity:.44;cursor:default}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #318f9d;outline-offset:2px}#thumb{margin-top:15px;background:#f4f0df;border-radius:7px;height:110px;text-align:center;border:1px solid #e8e3cd}#thumb svg{height:100%;padding:8px}.caption{color:#57636a;font-size:.76rem;margin-top:5px}hr{border:0;border-top:1px solid var(--line);margin:20px 0}.primary,.light,#generate{width:100%;padding:11px 13px;margin-top:8px;border-radius:7px;text-align:left;font-weight:bold;display:flex;justify-content:space-between}.primary,#generate{background:var(--ink);color:white;border:1px solid var(--ink)}.light{background:#fffdf5;border:1px solid #c4c5b8}.controls h2+.primary{margin-top:13px}details{border-top:1px solid var(--line);margin-top:18px;padding-top:13px;font-size:.86rem}summary{cursor:pointer;font-weight:bold}details p,#editor p{line-height:1.45;margin-top:9px}#message:not(:empty){color:#995034;font-size:.83rem;margin-top:12px;line-height:1.45}.stagehead,#footer,#player{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:15px 19px}.tabs{display:flex;gap:2px;background:#eeedde;border-radius:7px;padding:3px}.tabs button{border:0;background:none;border-radius:5px;font-size:.78rem;padding:6px 9px}.tabs button[aria-pressed=true]{background:white;box-shadow:0 1px 3px #0002;font-weight:bold}#board{min-height:300px;position:relative;display:grid;place-items:center;background-color:#dfe8dd;background-image:linear-gradient(#76999025 1px,transparent 1px),linear-gradient(90deg,#76999025 1px,transparent 1px);background-size:20px 20px;border-block:1px solid #bdcec2;padding:12px}.disc,.reveal{width:min(100%,475px);display:block}.disc{filter:drop-shadow(2px 4px 2px #4458462b)}.reveal{background:#fffdf1;border-radius:8px;margin:15px;max-width:90%}.empty{position:absolute;padding:15px;text-align:center}.row{display:flex;gap:8px}.row button,#footer button,#player button{background:transparent;border:1px solid #bcc0b4;border-radius:6px;padding:6px 10px;font-size:.82rem}#footer span,#count{font: .8rem monospace}#step{flex:1;min-width:40px;accent-color:var(--accent)}#pad{width:100%;aspect-ratio:1;display:block;background:#f5f1e6;touch-action:none;cursor:crosshair;border:1px solid var(--line);margin:10px 0}#editor p{font-size:.82rem}[hidden],#pages{display:none!important}@media(max-width:740px){.bar,main{padding-inline:16px}.bar{height:51px}.intro{margin:25px 0 18px}.desk{display:flex;flex-direction:column}.preview,.controls{width:100%}.stagehead,#footer,#player{padding:12px}.preview{order:-1}.disc,.reveal{max-height:340px}.controls{padding:17px}#board{min-height:240px}#pad{max-width:300px}.intro p{font-size:.93rem}}@page{size:auto;margin:11mm}@media print{body{background:white;color:black}header,main{display:none!important}#pages{display:block!important}.sheet{break-after:page;page-break-after:always;text-align:center}.sheet:last-child{break-after:auto;page-break-after:auto}.sheet h1{font:24pt Georgia;margin:4mm 0}.sheet p{font-size:10pt;line-height:1.4;margin:0 auto 4mm;max-width:160mm}.sheet>svg{max-width:none}}
