
:root{color-scheme:light;font-family:system-ui,'Microsoft YaHei',sans-serif;color:#3c1747;background:#251032}*{box-sizing:border-box}body{margin:0}.book{max-width:590px;margin:auto;min-height:100svh;padding:clamp(55px,12vw,90px) clamp(16px,5vw,42px) 36px;background:#fff1da url('assets/concert-background.webp') center top/cover no-repeat}header{text-align:center;text-shadow:0 1px 8px #fff8ec}header p{margin:0;font-size:clamp(11px,3vw,14px);letter-spacing:.1em;font-weight:650}h1{font-family:'Songti SC',SimSun,serif;font-size:clamp(41px,11vw,64px);line-height:1.13;margin:11px 0 8px;letter-spacing:.07em}.date{font-size:13px;color:#754b27;letter-spacing:.12em}#pages{margin-top:23px;touch-action:pan-y}.page{border:1px solid #c19353aa;border-radius:16px;background:#fffaf0f5;box-shadow:0 12px 36px #38134728;padding:6px clamp(12px,4vw,25px)}ol{margin:0;padding:0;list-style:none}li{display:grid;grid-template-columns:29px minmax(0,1fr);gap:8px;padding:11px 0;border-bottom:1px solid #dbc7ae}li:last-child{border:0}.num{font:18px Georgia,serif;color:#855422;padding-top:1px}h2{font-size:clamp(16px,4.4vw,21px);line-height:1.36;margin:0 0 4px}li p,aside{font-size:clamp(12px,3.4vw,14px);line-height:1.55;margin:2px 0;color:#614752}aside{border-top:1px solid #dbc7ae;padding:9px 0}nav{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:15px 0 0}button{min-height:44px;padding:0 15px;border:1px solid #bd8b50;border-radius:30px;background:#3c1747;color:#fff8ea;font:inherit;font-size:14px;cursor:pointer}button:disabled{background:#fff6e9;color:#705d6a;cursor:default}button:focus-visible{outline:3px solid #b47b29;outline-offset:3px}#status,.hint{color:#4a2452;background:#fff8ebf0;padding:4px 11px;border-radius:18px;font-size:12px}.hint{width:max-content;margin:8px auto 0}
