:root{--page-max: 1120px;--read-max: 720px;--scale: 1;--ink: #303330;--ink-soft: #626c65;--paper: #f5f1ee;--surface: #fffefc;--panel: #fffcf1;--gold-line: rgba(214, 176, 92, .65);--brand: #343b35;--accent: #00877f;--danger: #b42318;--line: rgba(48, 51, 48, .1);--input-line: #e4e0d9;--shadow-soft: 0 5px 8px rgba(77, 61, 46, .07);--shadow-lift: 0 5px 16px rgba(77, 61, 46, .07);--radius-lg: 22px;--radius-md: 16px;--radius-sm: 12px;--stat: #00877f;--teal: #0baba8;--teal-soft: #ddf5ef;--bubble-child: #fce8d5;--cool-border: rgba(230, 232, 246, .9);--cool-shadow: 0 8px 12px rgba(79, 70, 229, .08);--cool-ink: #202238;--cool-muted: #666c82;--cool-faint: #9aa0b5}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased}button,input,textarea,select{font-family:inherit}.layout-read{width:min(100%,var(--read-max));margin-inline:auto}.page-body{width:min(100%,calc(390px * var(--scale, 1)));margin-inline:auto;padding:calc(40px * var(--scale, 1)) calc(24px * var(--scale, 1)) max(calc(40px * var(--scale, 1)),calc(var(--nav-block, 0px) + 16px * var(--scale, 1)))}.ph-mark{margin:0;color:var(--ink-soft);font-size:13px;letter-spacing:.08em}.ph-title{margin:8px 0 0;color:var(--ink);font-size:28px;font-weight:700;line-height:1.25}.ph-hint{margin:12px 0 0;color:var(--ink-soft);font-size:14px;line-height:1.6}.ph-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;padding:0 22px;border:0;border-radius:22px;background:var(--brand);color:#fffefc;font:inherit;font-size:15px;font-weight:700;text-decoration:none;box-shadow:var(--shadow-soft);cursor:pointer}.btn:hover{opacity:.92}.btn:disabled{opacity:.55;cursor:default}.btn.is-ghost{border:1px solid var(--line);background:var(--surface);color:var(--ink);font-weight:400;box-shadow:none}.btn.is-danger{color:var(--danger)}.btn.is-block{width:100%}.btn.is-sm{height:36px;padding:0 14px;border-radius:18px;font-size:13px;font-weight:400}.btn.is-teal{background:var(--teal);box-shadow:none}.btn.is-stat{background:var(--stat);box-shadow:none}.chip{display:inline-flex;align-items:center;justify-content:center;padding:8px 12px;border:1px solid #eae4de;border-radius:16px;background:var(--surface);color:var(--stat);font:inherit;font-size:13px;line-height:20px;text-decoration:none;white-space:nowrap;cursor:pointer}.chip.is-primary{border-color:var(--teal);background:var(--teal);color:#f3f2fe;font-weight:700}.chip:hover{opacity:.85}.chip:disabled{opacity:.55;cursor:default}.card{background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lift)}.card.is-panel{border:1.5px solid var(--gold-line);background:var(--panel);box-shadow:var(--shadow-soft)}.card.is-cool{border:1px solid var(--cool-border);background:#fff;box-shadow:var(--cool-shadow)}.field{display:flex;flex-direction:column;gap:6px;color:var(--ink-soft);font-size:13px}.input,.select,.textarea{width:100%;height:44px;padding:0 12px;border:1px solid var(--input-line);border-radius:var(--radius-sm);background:#fff;color:var(--ink);font:inherit;font-size:16px}.textarea{height:auto;padding:10px 12px;resize:vertical;line-height:1.6}.input:focus,.select:focus,.textarea:focus{outline:2px solid rgba(214,176,92,.5);outline-offset:0}.note{color:var(--ink-soft);font-size:14px;line-height:1.6}.note.is-error{color:var(--danger);font-size:13px}.note a{color:var(--ink)}
