:root{--gold:#fa9f0b;--teal:#20a29e;--green:#5aa661;--navy:#001f3f;--orange:#ef5802;--bg:#ffffff;--surface:rgba(255,255,255,.72);--text:#0b1220;--muted:#3a4a5c;--line:rgba(0,0,0,.10);--radius:16px;--shadow:0 12px 34px rgba(0,0,0,.10);--maxw:1120px;--headerH:64px;--bottomNavH:76px}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.6;overflow-x:hidden}a,a:visited{color:inherit}body:after,body:before{content:"";position:fixed;inset:-20%;z-index:-2;pointer-events:none;filter:blur(40px);opacity:.55;transform:translateZ(0)}body:before{background:radial-gradient(600px 420px at 18% 12%,rgba(32,162,158,.22),transparent 60%),radial-gradient(560px 420px at 80% 18%,rgba(250,159,11,.18),transparent 62%),radial-gradient(680px 520px at 70% 80%,rgba(239,88,2,.14),transparent 65%);animation:fwFloat1 18s ease-in-out infinite}body:after{background:radial-gradient(620px 520px at 30% 75%,rgba(0,31,63,.2),transparent 62%),radial-gradient(520px 420px at 92% 62%,rgba(90,166,97,.14),transparent 60%);animation:fwFloat2 22s ease-in-out infinite;opacity:.42}@keyframes fwFloat1{0%{transform:translate3d(-1.5%,-1%,0)}50%{transform:translate3d(1.2%,1.4%,0)}to{transform:translate3d(-1.5%,-1%,0)}}@keyframes fwFloat2{0%{transform:translate3d(1.2%,-1.2%,0)}50%{transform:translate3d(-1%,1%,0)}to{transform:translate3d(1.2%,-1.2%,0)}}.container{max-width:var(--maxw);margin:0 auto;padding:0 18px}.section{padding:28px 0}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.card:hover{transform:translateY(-1px);box-shadow:0 14px 36px rgba(0,0,0,.11)}.h1,.h2{font-family:Bebas Neue,system-ui,sans-serif;letter-spacing:.8px;margin:0}.h1{font-size:clamp(40px,6vw,64px);color:var(--navy);line-height:.95}.h2{font-size:34px;color:var(--orange);line-height:1}.p{margin:10px 0 0}.p,.small{color:var(--muted)}.small{font-size:13px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:14px;border:1px solid rgba(0,0,0,.14);background:#fff;color:var(--navy);text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease}.btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(0,0,0,.1)}.btn.primary{background:var(--orange);color:#fff;border-color:rgba(239,88,2,.35)}.btn.secondary{background:var(--navy);color:#fff;border-color:rgba(0,31,63,.35)}.btn:disabled{opacity:.6;cursor:not-allowed}.input{display:grid;gap:6px}label{font-weight:700;color:var(--navy)}input,select,textarea{width:100%;padding:12px;border-radius:14px;border:1px solid rgba(0,0,0,.18);background:#fff;color:var(--text)}textarea{min-height:120px;resize:vertical}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.grid{display:grid;gap:14px}@media (min-width:900px){.grid.cols-2{grid-template-columns:1fr 1fr}.grid.cols-3{grid-template-columns:repeat(3,1fr)}}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{position:sticky;top:0;z-index:50;height:var(--headerH);justify-content:space-between;padding:0 16px;background:rgba(0,31,63,.86);border-bottom:1px solid rgba(255,255,255,.18);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.app-header,.brand{display:flex;align-items:center;color:#fff}.brand{gap:10px;text-decoration:none;min-width:0}.brand-text{font-weight:800;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand img{border-radius:10px;display:block}.app-main{flex:1 1;padding:28px 18px;padding-bottom:calc(var(--bottomNavH) + 18px + env(safe-area-inset-bottom))}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:60;display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(20,36,55,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.08)}.nav-item{display:flex;align-items:center;justify-content:center;text-align:center;min-width:0;padding:12px 8px;border-radius:16px;text-decoration:none;font-weight:700;font-size:13px;letter-spacing:.1px;line-height:1.1;color:rgba(255,255,255,.92);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,border-color .16s ease}.nav-item:hover{transform:translateY(-1px)}.nav-item:active{transform:scale(.98)}.nav-item.active{background:rgba(239,88,2,.2);border-color:rgba(239,88,2,.35);color:#fff;box-shadow:0 10px 22px rgba(0,0,0,.18)}@media (min-width:900px){.bottom-nav{width:min(820px,calc(100vw - 24px));margin:0 auto 14px;left:50%;right:auto;transform:translateX(-50%);border-radius:20px;border:1px solid rgba(255,255,255,.1)}.app-main{padding-left:18px;padding-right:18px;padding-bottom:calc(var(--bottomNavH) + 30px + env(safe-area-inset-bottom))}.nav-item{font-size:14px;padding:12px 10px}}.today-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(0,31,63,.94),rgba(32,162,158,.78));border-color:rgba(255,255,255,.1);color:#fff}.today-hero:before{inset:auto -10% -40% auto;width:320px;height:320px;background:radial-gradient(circle,rgba(250,159,11,.34),transparent 65%);animation:heroGlow 8s ease-in-out infinite}.today-hero:after,.today-hero:before{content:"";position:absolute;border-radius:999px;pointer-events:none}.today-hero:after{inset:-30% auto auto -10%;width:240px;height:240px;background:radial-gradient(circle,rgba(255,255,255,.1),transparent 68%);animation:heroGlow2 10s ease-in-out infinite}@keyframes heroGlow{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(-8px,-10px,0) scale(1.05)}to{transform:translateZ(0) scale(1)}}@keyframes heroGlow2{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(8px,8px,0) scale(1.08)}to{transform:translateZ(0) scale(1)}}.today-hero-title{color:#fff}.today-hero-copy{color:rgba(255,255,255,.88);margin:0;max-width:520px}.today-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);color:#fff;font-size:13px;font-weight:700;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.hero-cta{box-shadow:0 14px 28px rgba(0,0,0,.2)}.stat-card{animation:fadeLift .45s ease both}.floating-card{animation:fadeLift .52s ease both}.pillar-card{animation:fadeLift .58s ease both}.challenge-item{transition:transform .16s ease,box-shadow .16s ease}.challenge-item:hover{transform:translateY(-1px)}.challenge-link{background:rgba(255,255,255,.92)}.progress-card{animation:fadeLift .5s ease both}.progress-fill{transform-origin:left center;animation:fillGrow .75s ease both}@keyframes fadeLift{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fillGrow{0%{transform:scaleX(.25);opacity:.65}to{transform:scaleX(1);opacity:1}input,select,textarea{transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:rgba(32,162,158,.55);box-shadow:0 0 0 4px rgba(32,162,158,.12)}form .card{animation:fadeLift .45s ease both}form .card:nth-child(2){animation-delay:.03s}form .card:nth-child(3){animation-delay:.06s}form .card:nth-child(4){animation-delay:.09s}form .card:nth-child(5){animation-delay:.12s}}.success-banner{border-color:rgba(90,166,97,.3);background:linear-gradient(135deg,rgba(90,166,97,.18),rgba(255,255,255,.86));animation:fadeLift .35s ease both}.milestone-banner{border-color:rgba(250,159,11,.34);background:linear-gradient(135deg,rgba(250,159,11,.18),rgba(255,255,255,.88));animation:fadeLift .4s ease both}.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.header-actions form{margin:0}.header-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 16px;border-radius:20px;border:1px solid rgba(0,0,0,.14);background:#fff;color:var(--navy);text-decoration:none;font-weight:700;white-space:nowrap;cursor:pointer;box-shadow:0 4px 12px rgba(0,0,0,.08);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.header-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(0,0,0,.12)}.profile-btn{min-width:96px}@media (max-width:640px){.app-header{padding:0 12px}.brand{gap:8px}.brand-text{font-size:16px}.header-actions{gap:8px}.header-btn{min-height:42px;padding:8px 12px;border-radius:18px;font-size:14px}.profile-btn{min-width:auto}}.chip-success{background:rgba(90,166,97,.18);border:1px solid rgba(90,166,97,.35);color:#1d5e29;font-weight:700}body.midnight-reset{animation:midnightPulse 1.4s ease}@keyframes midnightPulse{0%{filter:brightness(1)}30%{filter:brightness(1.08)}60%{filter:brightness(1)}to{filter:brightness(1)}}