.fab[data-v-e53bdfbc]{position:fixed;right:max(16px,calc(50% - var(--max-width) / 2 + 16px));bottom:calc(72px + env(safe-area-inset-bottom));width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--color-primary),var(--color-lavender));box-shadow:0 6px 20px #c9a9a659;display:flex;align-items:center;justify-content:center;z-index:60}:root{--color-primary: #c9a9a6;--color-primary-dark: #a8847f;--color-sage: #a8b5a2;--color-apricot: #d9c7b8;--color-lavender: #b8a9d9;--color-bg: #fbf8f4;--color-card: #ffffff;--color-text: #4a4038;--color-text-secondary: #9a8f86;--color-border: #efe8e0;--color-warning: #d98c8c;--radius-card: 20px;--radius-btn: 28px;--radius-modal: 24px;--shadow-soft: 0 4px 16px rgba(201, 169, 166, .08);--max-width: 480px;--font-body: "PingFang SC", "Noto Sans SC", system-ui, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body,#app{min-height:100%;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.8;-webkit-font-smoothing:antialiased}body{background:radial-gradient(600px 300px at 10% -5%,rgba(245,230,224,.45),transparent 60%),radial-gradient(500px 250px at 90% 0%,rgba(237,228,240,.35),transparent 55%),var(--color-bg)}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none}input,textarea{font-family:inherit;font-size:16px}.page-shell{max-width:var(--max-width);margin:0 auto;min-height:100vh;display:flex;flex-direction:column;position:relative}.page-content{flex:1;padding:0 24px 100px}.hero-banner{background:linear-gradient(135deg,#f5e6e0,#ede4f0);color:var(--color-text);border-radius:var(--radius-card);padding:28px 24px;margin-bottom:16px;box-shadow:var(--shadow-soft)}.hero-banner .kicker{font-size:12px;letter-spacing:.12em;color:var(--color-primary-dark);margin-bottom:8px}.hero-banner h1,.hero-banner h2{font-size:22px;font-weight:600;line-height:1.4;margin-bottom:8px}.hero-banner p{font-size:15px;color:var(--color-text-secondary);line-height:1.7}.card{background:var(--color-card);border-radius:var(--radius-card);padding:24px;margin-bottom:16px;box-shadow:var(--shadow-soft)}.card h3{font-size:18px;font-weight:500;margin-bottom:8px}.card p{color:var(--color-text-secondary);font-size:15px}.btn-primary{display:block;width:100%;height:50px;line-height:50px;text-align:center;background:var(--color-primary);color:#fff;border-radius:var(--radius-btn);font-size:16px;font-weight:500;margin-top:12px}.btn-primary:active{opacity:.9}.btn-secondary{display:block;width:100%;height:48px;line-height:46px;text-align:center;background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary);border-radius:var(--radius-btn);font-size:15px;margin-top:12px}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0}.chip{background:#d9c7b873;color:var(--color-text);padding:6px 14px;border-radius:999px;font-size:13px}.app-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;position:sticky;top:0;z-index:10;background:#fbf8f4eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-header strong{font-size:18px;color:var(--color-primary-dark)}.link-btn{color:var(--color-primary);font-size:14px}.progress-bar{height:6px;background:var(--color-border);border-radius:999px;overflow:hidden;margin:16px 0}.progress-bar .fill{height:100%;background:linear-gradient(90deg,var(--color-primary),var(--color-lavender));border-radius:999px;transition:width .3s}.option-btn{display:block;width:100%;text-align:left;padding:14px 18px;margin-bottom:10px;border-radius:16px;border:1.5px solid var(--color-border);background:var(--color-card);color:var(--color-text);transition:all .2s}.option-btn.selected{border-color:var(--color-primary);background:#c9a9a61f;color:var(--color-primary-dark)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#4a403840;display:flex;align-items:center;justify-content:center;z-index:100;padding:24px}.modal-box{background:var(--color-card);border-radius:var(--radius-modal);padding:28px 24px;width:100%;max-width:360px}
