@import "https://fonts.googleapis.com/css2?family=Sarabun:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=Playfair+Display:ital,wght@0,700;1,700&display=swap";:root{--rrise-brick:#8b3a2a;--rrise-brick-dk:#6b2d1f;--rrise-brick-lt:#c05a3e;--rrise-gold:#c98b2e;--rrise-gold-lt:#e8b86d;--rrise-cream:#f5f0e8;--rrise-cream-dk:#ede7da;--rrise-sand:#d4c5a9;--rrise-charcoal:#2c2416;--rrise-muted:#8c7b68;--rrise-white:#fdfaf5;--stage-renewal:#8b3a2a;--stage-growth:#4a7c59;--stage-equil:#4a6b8c;--stage-creative:#7a5c8b;--color-bg:var(--rrise-cream);--color-surface:var(--rrise-white);--color-border:#ddd5c4;--color-text:var(--rrise-charcoal);--color-text-sub:var(--rrise-muted);--color-accent:var(--rrise-brick);--font-display:"Playfair Display", "Sarabun", Georgia, serif;--font-body:"Sarabun", "Helvetica Neue", sans-serif;--text-xs:.72rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--text-4xl:3rem;--space-1:2px;--space-2:6px;--space-3:10px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-sm:6px;--radius-md:12px;--radius-lg:20px;--radius-xl:32px;--shadow-sm:0 1px 3px #2c241614;--shadow-md:0 4px 12px #2c24161f;--shadow-lg:0 8px 32px #2c241629}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;min-height:100vh;line-height:1.6}a{color:inherit;text-decoration:none}.app-shell{flex-direction:column;min-height:100vh;display:flex}.page-wrapper{width:100%;max-width:1160px;padding:var(--space-8) var(--space-6);flex-direction:column;flex:1;margin:0 auto;display:flex}.page-wrapper--wide{max-width:1400px}.progress-nav{background:var(--rrise-white);border-bottom:1px solid var(--color-border);padding:var(--space-3) var(--space-6);z-index:100;box-shadow:var(--shadow-sm);position:sticky;top:0}.progress-nav__inner{align-items:center;gap:var(--space-2);scrollbar-width:none;max-width:1160px;margin:0 auto;display:flex;overflow-x:auto}.progress-nav__inner::-webkit-scrollbar{display:none}.progress-step{font-size:var(--text-xs);color:var(--color-text-sub);border-radius:var(--radius-xl);cursor:default;font-weight:500;font-family:var(--font-body);background:0 0;border:none;flex-shrink:0;align-items:center;gap:6px;padding:4px 10px;transition:all .2s;display:flex}.progress-step__num{background:var(--color-border);width:22px;height:22px;color:var(--rrise-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;font-weight:700;transition:all .2s;display:flex}.progress-step.is-done .progress-step__num{background:var(--rrise-gold);color:#fff;font-size:11px}.progress-step.is-active{color:var(--rrise-brick);background:#8b3a2a12}.progress-step.is-active .progress-step__num{background:var(--rrise-brick);color:#fff}.progress-divider{background:var(--color-border);flex-shrink:0;width:16px;height:1px}.context-bar{gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap;align-items:center;display:flex}.context-chip{background:var(--rrise-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);font-size:var(--text-sm);color:var(--color-text);align-items:center;gap:6px;padding:4px 12px;font-weight:500;display:inline-flex}.step-label{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--rrise-brick);border-radius:var(--radius-xl);margin-bottom:var(--space-4);background:#8b3a2a1a;padding:4px 12px;font-weight:700;display:inline-block}.page-title{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--color-text);margin-bottom:var(--space-3);line-height:1.15}.page-title em{color:var(--rrise-brick);font-style:italic}.page-title strong{color:var(--rrise-gold)}.page-subtitle{font-size:var(--text-base);color:var(--color-text-sub);max-width:600px;margin-bottom:var(--space-8)}.card{background:var(--rrise-white);border:1.5px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:all .2s;position:relative}.card--selectable{cursor:pointer}.card--selectable:hover{border-color:var(--rrise-brick);box-shadow:var(--shadow-md);transform:translateY(-2px)}.card--selected{border-color:var(--rrise-brick);box-shadow:0 0 0 3px #8b3a2a26,var(--shadow-md);background:#8b3a2a08}.card__check{background:var(--rrise-brick);color:#fff;width:26px;height:26px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;font-size:13px;display:flex;position:absolute;top:-9px;right:-9px}.btn{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);cursor:pointer;border:none;font-weight:600;line-height:1;text-decoration:none;transition:all .2s;display:inline-flex}.btn--primary{background:var(--rrise-brick);color:#fff}.btn--primary:hover{background:var(--rrise-brick-dk);box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn--secondary{background:var(--rrise-white);color:var(--color-text);border:1.5px solid var(--color-border)}.btn--secondary:hover{border-color:var(--rrise-brick);color:var(--rrise-brick)}.btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.step-nav{padding:var(--space-6) 0;margin-top:var(--space-8);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.step-nav__info{font-size:var(--text-sm);color:var(--color-text-sub)}.step-nav__actions{gap:var(--space-3);display:flex}.form-field{margin-bottom:var(--space-5)}.form-label{font-size:var(--text-xs);color:var(--color-text);margin-bottom:var(--space-2);text-transform:uppercase;letter-spacing:.08em;font-weight:700;display:block}.form-input{width:100%;padding:var(--space-3) var(--space-4);border:1.5px solid var(--color-border);border-radius:var(--radius-md);font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--rrise-white);outline:none;transition:border-color .2s}.form-input:focus{border-color:var(--rrise-brick);box-shadow:0 0 0 3px #8b3a2a1a}.form-input-wrap{position:relative}.form-input-icon{color:var(--rrise-muted);font-size:var(--text-base);position:absolute;top:50%;left:12px;transform:translateY(-50%)}.form-input--icon{padding-left:38px}.checkbox-wrap{align-items:flex-start;gap:var(--space-3);cursor:pointer;display:flex}.checkbox-wrap input[type=checkbox]{width:18px;height:18px;accent-color:var(--rrise-brick);cursor:pointer;flex-shrink:0;margin-top:2px}.checkbox-label{font-size:var(--text-sm);color:var(--color-text-sub);line-height:1.5}.checkbox-label a{color:var(--rrise-brick);text-decoration:underline}.tag{border-radius:var(--radius-xl);font-size:var(--text-xs);padding:2px 10px;font-weight:600;display:inline-block}.tag--brick{color:var(--rrise-brick);background:#8b3a2a1f}.tag--gold{color:var(--rrise-gold);background:#c98b2e1f}.tag--green{color:var(--stage-growth);background:#4a7c591f}.tag--blue{color:var(--stage-equil);background:#4a6b8c1f}.tag--purple{color:var(--stage-creative);background:#7a5c8b1f}.ai-badge{background:var(--rrise-brick);color:#fff;border-radius:var(--radius-xl);letter-spacing:.04em;align-items:center;gap:4px;padding:2px 7px;font-size:10px;font-weight:700;display:inline-flex}.grid-2{gap:var(--space-5);grid-template-columns:1fr 1fr;display:grid}.grid-3{gap:var(--space-5);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--space-4);grid-template-columns:repeat(4,1fr);display:grid}.text-muted{color:var(--color-text-sub)}.text-accent{color:var(--rrise-brick)}.text-gold{color:var(--rrise-gold)}.text-sm{font-size:var(--text-sm)}.text-xs{font-size:var(--text-xs)}.font-bold{font-weight:700}.flex{display:flex}.flex-center{justify-content:center;align-items:center;display:flex}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.relative{position:relative}.mt-8{margin-top:var(--space-8)}@media (width<=900px){.grid-4,.grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.page-title{font-size:var(--text-2xl)}.page-wrapper{padding:var(--space-6) var(--space-4)}}
