:root{--bg: #ffffff;--surface: #ffffff;--surface-hover: #f8f8f8;--border: #e0e0e0;--text: #000000;--text-muted: #555555;--accent: #00b5ad;--accent-hover: #009a94;--accent-soft: rgba(0, 181, 173, .12);--header-bg: #ffffff;--continue-accent: #c45d00;--continue-soft: rgba(196, 93, 0, .08);--success: #0d7d4d;--warning: #b86d00;--danger: #c41e1e;--radius: 10px;--btn-radius: 8px;--btn-height: 44px;--card-padding: 1.5rem;--font: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--page-max-md: 680px;--page-max-lg: 960px;--page-padding-x: 20px;--page-padding-y: 24px;--section-gap: 24px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font);font-size:15px;color:var(--text);line-height:1.65;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg)}@media (min-width: 768px){body{font-size:16px}}#root{min-height:100vh;min-height:100dvh}button,[role=button]{font-family:inherit;cursor:pointer;font-size:inherit;-webkit-tap-highlight-color:transparent;touch-action:manipulation}input,textarea,select{font-family:inherit;font-size:1rem;touch-action:manipulation;background:var(--surface);color:var(--text)}a{color:var(--accent);text-decoration:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation}a:hover{text-decoration:underline}@media (max-width: 600px){:root{--radius: 8px;--page-padding-x: 16px;--page-padding-y: 20px;--section-gap: 20px}}@media (min-width: 768px){:root{--page-padding-x: 28px;--page-padding-y: 28px;--section-gap: 28px}}article .passage,.passage,.q-text,.notice,.part-desc{line-height:1.75}.btn-primary,button.btn-primary{display:inline-flex;align-items:center;justify-content:center;min-height:var(--btn-height);padding:0 24px;font-size:1rem;font-weight:600;color:#fff;background:var(--accent);border:none;border-radius:var(--btn-radius);cursor:pointer;transition:background .15s,transform .1s}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:active:not(:disabled){opacity:.95}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.btn-primary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary.full-width{width:100%}.btn-secondary,button.btn-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:var(--btn-height);padding:0 20px;font-size:.95rem;font-weight:500;color:var(--text);background:transparent;border:2px solid var(--border);border-radius:var(--btn-radius);cursor:pointer;transition:background .15s,border-color .15s,color .15s}.btn-secondary:hover:not(:disabled){background:var(--surface-hover);border-color:var(--text-muted)}.btn-secondary:active:not(:disabled){opacity:.95}.btn-secondary:disabled{opacity:.7;cursor:not-allowed}.btn-secondary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--card-padding);box-shadow:0 1px 3px #0000000a}.card-title{margin:0 0 .75rem;font-size:1.05rem;font-weight:700;color:var(--text)}.empty-state{text-align:center;padding:var(--section-gap);background:var(--surface);border:2px solid var(--border);border-radius:var(--radius)}.empty-state-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.9}.empty-state-title{font-size:1.1rem;font-weight:600;color:var(--text);margin:0 0 .35rem}.empty-state-desc{font-size:.9rem;color:var(--text-muted);line-height:1.5;margin:0}
