:root{color-scheme:light;--background: #fff8f5;--on-surface: #1e1b18;--on-surface-variant: #48454e;--primary: #5e5587;--primary-strong: #3d365f;--secondary: #176c66;--accent: #b85c38;--danger: #9f1d35;--outline: #dfd3cb;--surface: #fffdfb;--surface-container-low: #fbf2ed;--surface-container: #f4e9e2;--shadow: 0 20px 60px rgb(63 48 34 / 14%)}*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--on-surface);font-family:Plus Jakarta Sans,system-ui,sans-serif}.page-shell{min-height:100vh;padding:24px}.hero{display:grid;min-height:calc(100vh - 48px);align-content:center;gap:16px;max-width:760px;margin:0 auto}.eyebrow{margin:0;color:var(--primary);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1{margin:0;font-family:"Noto Serif",Georgia,serif;font-size:clamp(2.5rem,8vw,4.5rem);font-weight:400;line-height:1.1}.intro{max-width:580px;margin:0;color:var(--on-surface-variant);font-size:1.125rem;line-height:1.6}.primary-link,.primary-action,.text-link{min-height:48px;border-radius:8px;font:inherit;font-weight:800}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.primary-link,.primary-action{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:0 22px;border:0;background:var(--primary-strong);color:#fffdfb;text-decoration:none;box-shadow:0 10px 28px #3d365f38}.primary-action{width:100%;cursor:pointer}.primary-action:disabled{cursor:wait;opacity:.72}.text-link{display:inline-flex;align-items:center;color:var(--primary-strong)}.auth-page{display:grid;min-height:100vh;grid-template-columns:minmax(0,1fr) minmax(360px,480px);gap:48px;align-items:center;width:min(1120px,100%);margin:0 auto;padding:32px 24px}.auth-copy{display:grid;gap:16px;align-content:center}.brand-link{width:fit-content;color:var(--primary-strong);font-family:"Noto Serif",Georgia,serif;font-size:1.35rem;font-weight:700;text-decoration:none}.signup-panel,.setup-panel{border:1px solid var(--outline);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.signup-panel{padding:28px}.panel-heading{display:grid;gap:4px;margin-bottom:24px}.step-label{margin:0;color:var(--secondary);font-size:.82rem;font-weight:800;text-transform:uppercase}h2{margin:0;font-family:"Noto Serif",Georgia,serif;font-size:1.7rem;font-weight:500}.signup-form,.field-group{display:grid;gap:10px}.signup-form{gap:18px}label{color:var(--on-surface);font-size:.94rem;font-weight:800}input[type=email],input[type=password],input[type=text],input[type=date],input[type=color],select,textarea{min-height:48px;width:100%;border:1px solid var(--outline);border-radius:8px;background:#fff;color:var(--on-surface);font:inherit;padding:0 14px}textarea{min-height:112px;padding:12px 14px;resize:vertical}input[type=color]{padding:4px}input:focus-visible,.primary-action:focus-visible,.primary-link:focus-visible,.text-link:focus-visible,.brand-link:focus-visible{outline:3px solid rgb(23 108 102 / 32%);outline-offset:3px}input[aria-invalid=true]{border-color:var(--danger)}.field-hint,.field-error,.form-alert{margin:0;font-size:.9rem;line-height:1.45}.field-hint{color:var(--on-surface-variant)}.password-guide{display:grid;gap:6px;border-radius:8px;background:var(--surface-container-low);color:var(--on-surface-variant);font-size:.9rem;line-height:1.45;padding:12px 14px}.password-guide p,.password-guide ul{margin:0}.password-guide ul{padding-left:18px}.field-error,.form-alert{color:var(--danger)}.checkbox-row{display:grid;grid-template-columns:20px minmax(0,1fr);gap:10px;align-items:start;font-weight:700;line-height:1.45}.checkbox-row input{width:18px;height:18px;margin:2px 0 0;accent-color:var(--secondary)}.checkbox-error{margin-top:-12px;padding-left:30px}.form-alert{border-left:4px solid var(--danger);background:#fff4f4;padding:12px 14px}.edition-grid{display:grid;gap:10px;min-width:0;margin:0;padding:0;border:0}.edition-grid legend{margin-bottom:10px;font-weight:800}.edition-option{display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;align-items:start;min-height:64px;border:1px solid var(--outline);border-radius:8px;background:var(--surface-container-low);padding:12px}.edition-option input{width:16px;height:16px;margin-top:4px;accent-color:var(--primary-strong)}.edition-option span{display:grid;gap:2px}.edition-option small{color:var(--on-surface-variant);font-size:.86rem;font-weight:500;line-height:1.35}.dashboard-page{display:grid;gap:28px;width:min(1120px,100%);min-height:100vh;margin:0 auto;padding:28px 24px 48px}.dashboard-hero{--lifebook-accent: var(--primary-strong);display:grid;grid-template-columns:minmax(180px,280px) minmax(0,1fr);gap:28px;align-items:center;min-height:360px;border-bottom:1px solid var(--outline)}.dashboard-cover{display:grid;place-items:end start;min-height:300px;border-radius:8px;background:linear-gradient(135deg,#ffffff7a,#ffffff14),var(--lifebook-accent);box-shadow:var(--shadow);padding:18px}.dashboard-cover span{border-radius:999px;background:#fffdfbe0;color:var(--primary-strong);font-size:.8rem;font-weight:900;padding:8px 12px;text-transform:uppercase}.dashboard-heading{display:grid;gap:14px}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.stats-grid article,.empty-state,.moment-card{border:1px solid var(--outline);border-radius:8px;background:var(--surface)}.stats-grid article{display:grid;gap:4px;min-height:104px;align-content:center;padding:18px}.stats-grid strong{font-family:"Noto Serif",Georgia,serif;font-size:2rem;font-weight:600}.stats-grid span,.moment-card span{color:var(--on-surface-variant)}.dashboard-band{display:grid;gap:18px}.section-heading{display:grid;gap:4px}.moment-list{display:grid;gap:12px}.moment-card{padding:18px}.moment-card p{margin:0 0 8px;color:var(--accent);font-size:.86rem;font-weight:800}.moment-card h3,.empty-state h3{margin:0 0 8px;font-size:1.1rem}.empty-state{display:grid;gap:10px;max-width:560px;padding:22px}.empty-state p{margin:0;color:var(--on-surface-variant);line-height:1.55}.empty-state .primary-action{width:fit-content;margin-top:4px}.dashboard-loading{align-self:center;justify-self:center}.timeline-page{display:grid;gap:24px;width:min(960px,100%);min-height:100vh;margin:0 auto;padding:28px 24px 56px}.timeline-nav{min-height:48px}.timeline-heading{display:grid;gap:12px;border-bottom:1px solid var(--outline);padding-bottom:24px}.timeline-list{display:grid;gap:18px;position:relative}.moment-create-panel{border:1px solid var(--outline);border-radius:8px;background:var(--surface);box-shadow:0 14px 36px #3f30221a;padding:22px}.moment-create-form{display:grid;gap:18px}.moment-form-grid{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:14px}.timeline-list:before{content:"";position:absolute;top:0;bottom:0;left:104px;width:1px;background:var(--outline)}.timeline-item{display:grid;grid-template-columns:88px minmax(0,1fr);gap:32px;align-items:start;position:relative}.timeline-item:before{content:"";position:absolute;top:8px;left:98px;width:13px;height:13px;border:3px solid var(--surface);border-radius:999px;background:var(--accent);box-shadow:0 0 0 1px var(--outline)}.timeline-item time{color:var(--accent);font-size:.9rem;font-weight:900}.timeline-card{display:grid;gap:12px;border:1px solid var(--outline);border-radius:8px;background:var(--surface);box-shadow:0 14px 36px #3f30221a;padding:20px}.timeline-card h2{font-size:1.35rem}.timeline-card p{margin:0;color:var(--on-surface-variant);line-height:1.6}.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.tag-list li,.media-badge{border-radius:999px;background:var(--surface-container);color:var(--primary-strong);font-size:.78rem;font-weight:900;padding:6px 10px}.media-badge{width:fit-content}.timeline-empty{justify-self:start}.bucket-page{display:grid;gap:24px;width:min(1120px,100%);min-height:100vh;margin:0 auto;padding:28px 24px 56px}.bucket-layout{display:grid;grid-template-columns:minmax(300px,380px) minmax(0,1fr);gap:24px;align-items:start}.bucket-form,.bucket-card{border:1px solid var(--outline);border-radius:8px;background:var(--surface);box-shadow:0 14px 36px #3f30221a}.bucket-form{display:grid;gap:18px;padding:22px}.bucket-items{display:grid;gap:14px}.bucket-card{display:grid;gap:10px;padding:20px}.bucket-card h2{font-size:1.35rem}.bucket-card p{margin:0;color:var(--on-surface-variant);line-height:1.6}.bucket-card span{width:fit-content;border-radius:999px;background:var(--surface-container);color:var(--primary-strong);font-size:.78rem;font-weight:900;padding:6px 10px}.bucket-card.is-complete{background:var(--surface-container-low)}.bucket-empty{align-self:start}.settings-page{display:grid;gap:24px;width:min(1120px,100%);min-height:100vh;margin:0 auto;padding:28px 24px 56px}.settings-layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}.settings-panel{display:grid;gap:18px;border:1px solid var(--outline);border-radius:8px;background:var(--surface);box-shadow:0 14px 36px #3f30221a;padding:22px}.settings-meter{display:grid;gap:4px;min-height:104px;align-content:center;border-radius:8px;background:var(--surface-container-low);padding:18px}.settings-meter strong{font-family:"Noto Serif",Georgia,serif;font-size:2rem}.settings-panel p{margin:0;color:var(--on-surface-variant);line-height:1.55}.secondary-action,.danger-action{min-height:48px;border-radius:8px;font:inherit;font-weight:800;cursor:pointer}.secondary-action{border:1px solid var(--outline);background:var(--surface-container-low);color:var(--primary-strong)}.danger-action{border:0;background:var(--danger);color:#fff}.danger-panel{border-color:#9f1d3566}.setup-shell{display:grid;place-items:center}.setup-panel{display:grid;gap:16px;width:min(620px,100%);padding:32px}@media (max-width: 760px){.page-shell{padding:20px}.hero{min-height:calc(100vh - 40px)}h1{font-size:2.65rem}.auth-page{grid-template-columns:1fr;gap:24px;align-items:start;padding:20px}.auth-copy{gap:12px}.signup-panel{padding:22px}.dashboard-page{padding:20px}.dashboard-hero{grid-template-columns:1fr;min-height:0}.dashboard-cover{min-height:220px}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.timeline-page{padding:20px}.timeline-list:before,.timeline-item:before{display:none}.timeline-item{grid-template-columns:1fr;gap:8px}.moment-form-grid{grid-template-columns:1fr}.bucket-page{padding:20px}.bucket-layout{grid-template-columns:1fr}.settings-page{padding:20px}.settings-layout{grid-template-columns:1fr}}
