:root{--ink:#0d1818;--panel:#142222;--line:#31413a;--gold:#cfb579;--paper:#e7e2cf;--muted:#94a59a;--red:#bd5b48;--green:#86b699}*{box-sizing:border-box}body{margin:0;background:#0b1516;color:var(--paper);font:14px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft Yahei",sans-serif;background-image:radial-gradient(ellipse at 40% 0,#25362e55,transparent 70%)}button,a,input{touch-action:manipulation}button,input{font:inherit}button,a{color:inherit}button{cursor:pointer;border:1px solid var(--line);background:#1b2c29;padding:9px 15px;transition:.15s}button:hover{border-color:var(--gold);background:#2b3930}button:disabled{opacity:.4;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}a{text-decoration:none}header{height:104px;margin:0 38px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:55px}.brand{font:38px Georgia,"Songti SC",serif;letter-spacing:8px;position:relative;white-space:nowrap}.brand span{color:var(--gold)}.brand small{display:block;font:9px/2 sans-serif;letter-spacing:2px;color:var(--muted)}.chapter{font:18px "Songti SC",serif;letter-spacing:3px}.chapter i{display:inline-block;width:26px;height:1px;background:var(--gold);margin:0 14px;vertical-align:middle}.chapter span{display:block;font:11px/2.8 sans-serif;letter-spacing:2px;color:var(--muted)}nav{margin-left:auto;display:flex;align-items:center;gap:12px;font-size:12px}nav a{color:var(--gold);padding:10px}nav button{background:transparent}main{max-width:1680px;padding:26px 38px 0;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:26px}.hud{display:flex;align-items:center;gap:30px;height:68px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:15px}.life{width:230px}.life span{display:flex;justify-content:space-between;font-size:11px;color:var(--muted)}.life b{font-weight:400;color:var(--paper)}.bar{height:4px;background:#26362e;margin-top:8px}.bar div{height:100%;background:var(--red);transition:width .15s}.hud-item{font-size:11px;color:var(--muted)}.hud-item b{display:block;color:var(--gold);font:20px/1.5 Georgia,serif}.seed{margin-left:auto}.seed b{font-size:13px}.stage{position:relative;border:1px solid #425045;background:#10201e;aspect-ratio:1120/680;overflow:hidden}canvas{width:100%;height:100%;display:block}.stage-caption{position:absolute;top:15px;left:20px;right:20px;display:flex;justify-content:space-between;pointer-events:none;font-size:11px;letter-spacing:2px;color:#b5bd9a}.stage-caption span:last-child{color:#83998c}.skillbar{display:flex;gap:8px;margin-top:15px;align-items:stretch}.skillbar>div,.skillbar>button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 2px;background:#152320;border:1px solid var(--line);font-size:11px;color:var(--muted)}kbd{font:10px/1.4 monospace;letter-spacing:1px;color:var(--paper)}.bottomnote{text-align:center;color:#72877b;font-size:10px;letter-spacing:1px;margin:14px 0}.side-top{position:relative;padding:16px 0 22px;border-bottom:1px solid var(--line)}.eyebrow{font:9px sans-serif;letter-spacing:3px;color:var(--gold)}h2{font:27px "Songti SC",serif;font-weight:400;letter-spacing:5px;margin:12px 0 0}.seal{position:absolute;right:5px;top:32px;color:#c26b51;border:1px solid #a05d47;font:28px "Songti SC",serif;padding:3px 8px;transform:rotate(5deg)}.rule{margin:20px 0;padding-left:14px;border-left:2px solid var(--gold)}.rule b{font:17px/1.6 "Songti SC",serif;color:var(--paper)}.rule p{font-size:11px;line-height:1.8;color:var(--muted);margin:7px 0}.rule .tag{font-size:9px;letter-spacing:2px;color:var(--gold)}.bell-panel{padding:16px;background:#1e2e27;border:1px solid #3a4b3c;margin:20px 0}.bell-panel>span{font-size:11px;color:var(--muted)}.bell-panel strong{float:right;font:23px Georgia;color:var(--gold)}.bell-panel .bar{clear:both;margin-top:15px}.bell-panel .bar div{background:var(--gold)}.bell-panel small{font-size:10px;color:var(--muted);display:block;margin-top:10px}.bell-panel.danger{border-color:var(--red);background:#402923}.build-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}h3{font-size:13px;font-weight:400;letter-spacing:2px}.build-heading span{font:13px Georgia;color:var(--gold)}.build-list{max-height:260px;overflow:auto}.build-item{padding:11px 0;border-bottom:1px solid #26392e;font-size:12px;display:flex;gap:8px;align-items:center}.build-item .glyph{color:var(--gold);border:1px solid #536044;width:27px;height:27px;text-align:center;line-height:27px}.build-item small{display:block;font-size:10px;color:var(--muted)}.build-item em{margin-left:auto;color:var(--gold);font-style:normal}.muted{color:var(--muted);font-size:12px}.side-footer{margin-top:24px;padding-top:16px;border-top:1px solid var(--line)}.side-footer>span{font-size:10px;color:var(--gold);letter-spacing:2px}.side-footer p{font-size:11px;color:var(--muted);line-height:2}.side-footer b{color:var(--paper)}.overlay{position:absolute;inset:0;background:rgba(8,18,18,.88);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;padding:26px;overflow:auto}.overlay.hidden{display:none}.screen{width:100%;max-width:780px;max-height:100%;text-align:center}.screen .eyebrow{color:#b4bd95;font-size:10px;letter-spacing:4px}.screen h1{font:76px/1 "Songti SC",Georgia,serif;font-weight:400;letter-spacing:18px;color:var(--paper);margin:28px 0 16px}.screen h1 span{color:var(--gold)}.screen h2{font-size:29px;letter-spacing:5px;margin:8px 0 10px}.screen .subtitle{color:#b1bca7;font:15px/2 "Songti SC",serif;letter-spacing:2px}.screen .intro{font-size:12px;color:var(--muted);line-height:1.9;max-width:550px;margin:14px auto}.primary{background:var(--gold);color:#18221c;border-color:var(--gold);font-weight:600;letter-spacing:3px;padding:12px 32px}.primary:hover{background:#e5cea0;color:#0b1711}.actions{display:flex;gap:10px;justify-content:center;margin-top:20px}.screen input{border:1px solid #455544;background:#11211e;color:var(--paper);padding:8px 10px;width:150px;font-size:11px}.seed-input{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:14px;color:var(--muted);font-size:10px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0 10px}.card{position:relative;text-align:left;min-height:168px;background:#1c2c27;border:1px solid #42533f;padding:20px 16px;white-space:normal}.card:hover{transform:translateY(-3px);background:#28372c}.card .glyph{display:block;font:33px "Songti SC",serif;color:var(--gold);margin-bottom:12px}.card h3{font:17px "Songti SC",serif;letter-spacing:2px;margin:0 0 9px}.card p{font-size:11px;line-height:1.8;color:#b6c1af;margin:0}.card .rarity{display:block;font-size:9px;letter-spacing:2px;color:var(--gold);margin-bottom:8px}.card.selected{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}.starter-cards{max-width:590px;margin:20px auto 0;gap:10px}.starter-cards .card{min-height:90px;padding:12px 14px}.starter-cards .card h3{font-size:14px}.starter-cards .card p{font-size:10px}.stats{display:flex;justify-content:center;gap:30px;color:var(--muted);font-size:11px;margin:18px 0}.stats b{color:var(--gold);font:22px Georgia;display:block}.path{display:flex;justify-content:center;gap:8px;align-items:center;margin:18px 0}.path span{font-size:10px;width:31px;height:31px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;color:var(--muted)}.path .done{background:#3d503a;color:var(--paper)}.path .current{border-color:var(--gold);color:var(--gold)}.path i{width:22px;height:1px;background:var(--line)}#toast{position:absolute;left:50%;bottom:25px;transform:translateX(-50%);padding:9px 18px;background:#10221eef;border:1px solid #6b7654;color:#e0d3aa;font-size:12px;text-align:center;pointer-events:none;opacity:0;transition:opacity .2s;max-width:90%;width:max-content;z-index:3}.help-grid{display:grid;grid-template-columns:1fr 1fr;text-align:left;gap:12px;margin:15px 0}.help-grid p{margin:0;padding:12px;background:#1b2d27;font-size:12px;color:var(--muted)}.help-grid b{color:var(--gold)}@media(max-width:1100px){header{margin:0 20px;gap:25px}.chapter{display:none}main{padding:20px;gap:16px;grid-template-columns:minmax(0,1fr) 210px}.screen h1{font-size:52px;margin:15px 0}.card{padding:12px;min-height:140px}.cards{margin:12px 0}.card .glyph{font-size:24px;margin-bottom:6px}.hud{gap:20px}.screen .intro{font-size:11px}.overlay{padding:18px}.starter-cards .card{min-height:70px}.actions{margin-top:12px}.screen .subtitle{font-size:13px}.stats{margin:8px}.side-top{padding-top:8px}.life{width:170px}}@media(max-width:800px){header{height:80px}.brand{font-size:28px}nav{gap:4px}nav button{padding:7px}main{display:block;padding:12px}aside{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.side-top,.side-footer{display:none}.bell-panel{margin:0}.build-list{max-height:150px}.build-heading{display:none}.rule{margin:0 0 12px}.stage{min-height:420px;aspect-ratio:auto}canvas{object-fit:contain}.seed{display:none}.overlay{padding:12px}.screen h1{font-size:46px}.card{min-height:135px;padding:10px}.card p{font-size:10px}.screen .intro{margin:8px auto}.bottomnote{font-size:9px}.starter-cards .card p{font-size:9px}.hud{height:56px}.skillbar{gap:4px}}
/* Art edition: aged bronze, jade mist and vermilion paper. */
:root{--line:#3d4847;--gold:#d5b983;--paper:#eee7d6;--muted:#a4b4b1}
body{background:#0a1117;background-image:radial-gradient(ellipse at 65% 0,#273f4345,transparent 65%)}
header{height:88px;border-color:#b7a16c30}.brand{font-weight:600}.brand small{font-size:8px;letter-spacing:2.6px}
main{padding-top:20px;gap:22px}.hud{height:59px;margin-bottom:12px;border-top:0}.bar{height:5px;background:#080f13}.life .bar div{background:linear-gradient(90deg,#843e35,#d18d64);box-shadow:0 0 13px #b95b3840}
.stage{border-color:#89755480;box-shadow:0 12px 45px #0007,inset 0 0 0 4px #baaa7033}.stage-caption{top:0;left:0;right:0;padding:14px 20px;background:linear-gradient(#08131cd9,transparent);color:#d8c69d;text-shadow:0 1px 4px #000}.stage-caption span:last-child{color:#bccac3}
aside{padding:0 18px 18px;background:linear-gradient(155deg,#1c2c31dd,#101b20);border:1px solid #6e756740;box-shadow:inset 0 0 35px #080f1460}.side-top{padding-bottom:20px}.side-top h2{font-size:25px}.seal{background:#6b2d2338;color:#e0926d}.rule{border-color:#a38e61}.bell-panel{background:linear-gradient(135deg,#33382c,#17282a);border-color:#b39b634d}.bell-panel.danger{background:linear-gradient(135deg,#5b302a,#282126);box-shadow:0 0 20px #a6462522}.side-footer{margin-top:18px}
.skillbar>div,.skillbar>button{background:linear-gradient(135deg,#233035,#101c22);border-color:#68716655}.skillbar button:hover{border-color:var(--gold);box-shadow:inset 0 0 20px #b49b4e20}.skillbar kbd{color:#dfc797}.bottomnote{color:#92a5a3}
.overlay{background:#07121ce8;backdrop-filter:blur(7px)}.screen h2{color:#e3c99c}.screen .eyebrow{color:#d2b47e}.screen .subtitle{color:#ded6bd}.screen .intro{color:#b6c7c5}
body[data-screen="menu"] .overlay{background:linear-gradient(90deg,#06121aee 0%,#07141bbb 38%,#07141b22 72%),url('assets/title.png') center/cover;backdrop-filter:none;justify-content:flex-start;padding:30px 38px}
body[data-screen="menu"] .screen{max-width:540px;text-align:left;text-shadow:0 2px 12px #0009}
body[data-screen="menu"] .screen h1{font-size:88px;letter-spacing:24px;margin:22px 0 18px;font-weight:600;text-shadow:0 3px 20px #06151a}
body[data-screen="menu"] .screen h1 span{color:#ddc49a}
body[data-screen="menu"] .intro{margin:12px 0;max-width:440px}
body[data-screen="menu"] .starter-cards{margin:18px 0 0;max-width:480px}
body[data-screen="menu"] .actions,body[data-screen="menu"] .seed-input{justify-content:flex-start}
.card{background:linear-gradient(150deg,#304047e8,#142127);border:1px solid #8c876157;box-shadow:inset 0 0 24px #07111966,0 8px 20px #0003;padding-top:25px}
.card:before{content:'';position:absolute;inset:5px;border:1px solid #b8a36c25;pointer-events:none}
.card .glyph{width:55px;height:64px;text-align:center;padding-top:6px;background:linear-gradient(155deg,#d5bc89,#92734c);color:#67382c;box-shadow:0 3px 10px #0005;clip-path:polygon(0 0,100% 0,100% 90%,85% 100%,0 100%);font-size:32px;text-shadow:none}
.card:hover{background:linear-gradient(150deg,#3d514e,#21312e)}.card.selected{background:linear-gradient(135deg,#4a4d39df,#152b2bed);box-shadow:inset 0 0 0 1px #b7a476}
.starter-cards .card{background:#0b1b24c9}.starter-cards .card.selected{background:#485043b8}.starter-cards .card:disabled{opacity:.6}.primary{background:linear-gradient(110deg,#dfcba0,#ac8a54);border-color:#e3cca0;box-shadow:0 4px 20px #0005;text-shadow:none}.screen input{background:#09151ddb;border-color:#78877588}.screen button:not(.primary):not(.card){background:#0b1b23d9}.path .current{box-shadow:0 0 12px #ddbe6625}
@media(max-width:1300px){body[data-screen="menu"] .overlay{padding:24px}body[data-screen="menu"] .screen{max-width:470px}body[data-screen="menu"] .screen h1{font-size:66px;margin:12px 0}body[data-screen="menu"] .starter-cards{margin-top:12px}body[data-screen="menu"] .starter-cards .card{padding:10px;min-height:78px}body[data-screen="menu"] .intro{margin:8px 0;font-size:11px}body[data-screen="menu"] .seed-input{margin-top:10px}body[data-screen="menu"] .actions{margin-top:12px}}
@media(max-width:800px){header{height:76px}aside{padding:14px}body[data-screen="menu"] .overlay{padding:20px;background-position:62% center}body[data-screen="menu"] .screen{max-width:450px}body[data-screen="menu"] .screen h1{font-size:56px}.screen .eyebrow{font-size:9px}.stage-caption{font-size:9px}.starter-cards .card h3{font-size:12px}}
.audio-controls{position:relative;z-index:10;font-size:12px}.audio-controls summary{cursor:pointer;border:1px solid var(--line);padding:9px 12px;list-style:none}.audio-controls summary:focus-visible{outline:2px solid var(--gold)}.audio-popover{position:absolute;right:0;top:46px;width:260px;padding:20px;background:#112028;border:1px solid #998360;box-shadow:0 10px 35px #000a}.audio-popover b{font:20px 'Songti SC',serif;color:var(--gold)}.audio-popover p{font-size:10px;color:var(--muted);line-height:1.8}.audio-popover label{display:block;margin-top:15px}.audio-popover output{float:right;color:var(--gold)}.audio-popover input{display:block;width:100%;margin:10px 0;accent-color:var(--gold)}.audio-popover button{padding:5px 10px;font-size:11px}@media(max-width:800px){nav{flex-wrap:wrap;justify-content:flex-end}.audio-controls summary{padding:7px}.audio-popover{right:-75px}}

.trial-entry{margin:12px 0}.trial-entry a{display:inline-block;padding:8px 16px;border:1px solid #d7bb7c;background:#2a3e3be8;color:#ecd39e;font-size:14px}.trial-entry small{display:block;font-size:10px;color:#b2c7bc}
