@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@500;600;700&family=DM+Sans:wght@400;500;600&family=Instrument+Serif:ital@1&display=swap";:root{color-scheme:dark;--bg: #0c100e;--bg-soft: #121916;--panel: rgba(18, 25, 22, .82);--panel-strong: rgba(24, 34, 28, .94);--card: rgba(160, 200, 180, .06);--line: rgba(160, 200, 180, .12);--text: #e2ece6;--muted: #98b0a4;--cream: #f0ead8;--sandstone: #c4a870;--teal: #2a8a7a;--forest: #3d6b56;--earth: #6b5340;--shadow: 0 24px 70px rgba(0, 0, 0, .36);--radius-xl: 28px;--radius-lg: 22px;--radius-md: 16px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:DM Sans,system-ui,sans-serif;color:var(--text);line-height:1.5;background:radial-gradient(circle at top left,rgba(42,138,122,.18),transparent 30%),radial-gradient(circle at bottom right,rgba(107,83,64,.16),transparent 28%),linear-gradient(160deg,#060a08,#0e1610 42%,#151f18)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}h1,h2,h3{margin:0;font-family:Space Grotesk,system-ui,sans-serif;font-weight:600;line-height:1.1}p{margin:0}.app-shell{position:relative;min-height:100vh;padding:32px clamp(18px,4vw,48px) 56px;overflow:hidden}.ambient-orb{position:absolute;width:360px;height:360px;border-radius:999px;filter:blur(40px);opacity:.2;pointer-events:none}.ambient-orb-left{background:#2a8a7a5c;left:-120px;top:80px}.ambient-orb-right{background:#6b53404d;right:-120px;bottom:80px}.app-header,.panel,.hero-panel,.auth-panel{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.app-header{position:relative;z-index:1;display:flex;justify-content:space-between;gap:24px;align-items:flex-start;padding:28px;background:linear-gradient(145deg,#18221ce6,#0c100eb8);border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.app-header h1{font-size:clamp(2.6rem,4vw,4rem)}.header-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.main-nav{display:flex;gap:10px;flex-wrap:wrap}.nav-link,.button-secondary,.button-tertiary{border-radius:999px;transition:transform .18s ease,background-color .18s ease}.nav-link{display:inline-flex;align-items:center;gap:.4rem;padding:10px 16px;color:var(--muted);border:1px solid transparent}.nav-link:hover,.button-secondary:hover,.button-primary:hover{transform:translateY(-1px)}.nav-link.active{color:var(--text);background:#a0c8b414;border-color:#a0c8b41f}.user-chip{display:flex;gap:14px;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:999px;background:#ffffff0a}.app-content{position:relative;z-index:1;margin-top:28px}.page-grid{display:grid;gap:24px}.two-column-grid{display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.hero-panel,.panel,.auth-panel{border:1px solid var(--line);border-radius:var(--radius-xl);box-shadow:var(--shadow)}.hero-panel{display:grid;grid-template-columns:1.4fr .9fr;gap:24px;padding:clamp(22px,4vw,34px);background:linear-gradient(140deg,#18261ef0,#0c100ec7),radial-gradient(circle at top left,rgba(42,138,122,.1),transparent 34%)}.hero-copy{display:grid;gap:18px}.hero-copy h2,.panel h2,.auth-panel h1{font-size:clamp(2rem,3vw,3.2rem)}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--sandstone);font-size:.72rem;font-weight:700}.muted-copy{color:var(--muted)}.button-row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.button-primary,.button-secondary,.button-tertiary{border:1px solid transparent;padding:12px 18px;border-radius:999px}.button-primary{background:linear-gradient(135deg,var(--teal),#3aaa96);color:#0c100e;font-weight:700}.button-secondary{background:#a0c8b414;border-color:#a0c8b41f;color:var(--text)}.button-tertiary{background:transparent;color:var(--muted);border:none;padding:0}.button-link{color:var(--sandstone)}.panel{padding:24px;background:linear-gradient(160deg,#141c18e0,#0a0e0cc7)}.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;margin-bottom:18px}.stack-list{display:grid;gap:14px}.list-card{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:18px;border-radius:var(--radius-lg);border:1px solid rgba(160,200,180,.09);background:#a0c8b40a}.goal-row{display:flex;gap:10px;flex-wrap:wrap}.goal-chip{padding:10px 18px;border-radius:999px;border:1px solid rgba(160,200,180,.14);background:#a0c8b40d;color:var(--muted);cursor:pointer;transition:all .18s ease}.goal-chip:hover{transform:translateY(-1px)}.goal-chip.active{background:#2a8a7a33;border-color:var(--teal);color:var(--text)}.line-card{padding:14px 16px;border-radius:var(--radius-md);background:#2a8a7a14;border:1px solid rgba(42,138,122,.14)}.line-card h4{margin:0 0 4px;font-family:Space Grotesk,system-ui,sans-serif;color:var(--sandstone);font-size:.95rem}.strength-tag{display:inline-block;padding:3px 8px;border-radius:999px;font-size:.72rem;font-weight:600}.strength-strong{background:#2a8a7a33;color:var(--teal)}.strength-moderate{background:#c4a87026;color:var(--sandstone)}.strength-subtle{background:#a0c8b41a;color:var(--muted)}.field{display:grid;gap:10px}.field span{font-size:.92rem;color:var(--cream)}.field input,.field textarea{width:100%;padding:14px 16px;border-radius:16px;border:1px solid rgba(160,200,180,.12);background:#0a0e0c3d;color:var(--text);resize:vertical}.status-banner{color:var(--cream);padding:18px;border-radius:var(--radius-lg);border:1px solid rgba(196,168,112,.18);background:linear-gradient(140deg,#322c1e8c,#100e0cc7)}.auth-stage{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-panel{width:min(620px,100%);padding:36px;display:grid;gap:18px;background:linear-gradient(145deg,#18221cf0,#0a0e0cd6)}.empty-state{display:grid;gap:14px;justify-items:start}.text-link{color:var(--sandstone)}@media (max-width: 980px){.app-header,.hero-panel,.two-column-grid{grid-template-columns:1fr}.app-header{padding:22px}.header-actions{width:100%;justify-content:space-between}}@media (max-width: 720px){.app-shell{padding:18px 14px 38px}.user-chip,.list-card{align-items:flex-start;flex-direction:column}.hero-copy h2,.panel h2,.auth-panel h1{font-size:2.25rem}.main-nav{width:100%}.nav-link{flex:1 1 auto;text-align:center}}
