:root{font-family:ui-rounded,"Arial Rounded MT Bold",system-ui,sans-serif;color:#143526;background:#fff4d8}*{box-sizing:border-box}body{margin:0;min-height:100vh}.topbar{height:72px;background:#173e2c;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,5vw,80px);font-weight:800}.topbar a{color:inherit;text-decoration:none;font-size:1.2rem}.topbar span{font-size:.9rem}.layout{min-height:calc(100vh - 72px);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}.art{background:#204531 url('./book-journey.webp') center/cover no-repeat}.panel{padding:clamp(28px,5vw,80px);display:flex;flex-direction:column;justify-content:center;max-width:680px}.eyebrow{color:#9d5a22;letter-spacing:.15em;font-size:.8rem;font-weight:900}h1{font-size:clamp(2.35rem,4vw,4.3rem);line-height:1.05;letter-spacing:-.04em;margin:.2em 0}.intro{font-size:clamp(1rem,1.6vw,1.2rem);line-height:1.6;margin:0 0 1.5rem}.notice{min-height:1.5em;margin:.4rem 0 1rem;font-weight:700}.notice.error{color:#a02d25}.flow{display:grid;gap:12px;max-width:450px}.flow[hidden],.reader[hidden],button[hidden]{display:none}.flow label{font-weight:800}input{font:inherit;padding:15px 18px;border:2px solid #b6b79c;border-radius:14px;background:#fff}input:focus{outline:3px solid #f4cd67;outline-offset:2px}button{font:inherit;font-weight:900;border:0;border-radius:999px;background:#f4c951;color:#193522;padding:15px 22px;cursor:pointer;transition:transform .15s ease,background .15s ease}button:hover{transform:translateY(-2px);background:#ffda70}button:disabled{opacity:.55;cursor:wait;transform:none}.text-button{background:transparent;padding:8px;color:#245541;text-decoration:underline;text-align:left}.text-button:hover{background:transparent}.access-state{line-height:1.5}.fine{font-size:.85rem;line-height:1.5;color:#556453;margin-top:2rem}.reader{position:fixed;inset:0;z-index:10;background:#173e2c}.reader-bar{height:54px;display:flex;align-items:center;justify-content:space-between;color:#fff;padding:0 16px;font-weight:800}.reader-bar button{font-size:.85rem;padding:9px 16px}#book-frame{display:block;border:0;width:100%;height:calc(100vh - 54px);background:#fff}@media(max-width:800px){.layout{display:block}.art{height:34vh;min-height:210px;background-position:center 45%}.panel{padding:30px 24px 60px;margin:auto}.topbar{height:64px}}
