@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap";:root{--bg: linear-gradient( 135deg, #f8fbff 0%, #eef4ff 45%, #f8fafc 100% );--card: rgba(255,255,255,.82);--card-solid: #ffffff;--border: rgba(15,23,42,.06);--text: #0f172a;--muted: #64748b;--blue: #2563eb;--cyan: #06b6d4;--green: #10b981;--danger: #ef4444;--shadow: 0 20px 50px rgba(15,23,42,.08)}html{font-family:Inter,sans-serif;scroll-behavior:smooth}*{margin:0;padding:0;box-sizing:border-box;font-family:inherit}button,input,select,textarea{font-family:Inter,sans-serif}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#cbd5e1,#94a3b8);border-radius:999px}body{min-height:100vh;font-family:Inter,sans-serif;background:radial-gradient(circle at top left,rgba(37,99,235,.08),transparent 28%),radial-gradient(circle at bottom right,rgba(6,182,212,.08),transparent 25%),var(--bg);color:var(--text);padding:36px}body.is-landing{padding:0;background:none}.landing-section{min-height:100vh;padding:28px;border-radius:0;background:#070d24;color:#fff;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:32px}.landing-nav{max-width:1160px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px}.landing-logo{width:132px;height:auto}.landing-nav-actions,.landing-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.landing-link-btn,.landing-primary-btn,.landing-secondary-btn{min-height:44px;padding:0 18px;border-radius:999px;box-shadow:none;font-size:.9rem;font-weight:800}.landing-link-btn{background:transparent;color:#ffffffd1}.landing-primary-btn{background:#ce36ff;color:#fff}.landing-secondary-btn{background:#ffffff14;border:1px solid rgba(255,255,255,.18);color:#fff}.landing-hero{max-width:1160px;width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(0,.95fr) minmax(320px,.8fr);align-items:center;gap:56px;flex:1}.landing-copy{max-width:660px}.landing-kicker{margin-bottom:16px;color:#3af0ae;font-size:.82rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.landing-copy h1{margin-bottom:18px;color:#fff;font-size:clamp(3.8rem,8vw,7.4rem);line-height:.9;letter-spacing:0}.landing-subtitle{max-width:600px;margin-bottom:28px;color:#ffffffd1;font-size:clamp(1.05rem,2vw,1.32rem);line-height:1.55}.landing-preview{border:1px solid rgba(255,255,255,.14);border-radius:24px;padding:20px;background:#0a163cd1;box-shadow:0 30px 80px #00000057;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.landing-preview-bar{display:flex;gap:7px;margin-bottom:18px}.landing-preview-bar span{width:9px;height:9px;border-radius:999px;background:#ffffff57}.landing-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}.landing-preview-grid div{min-height:92px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:#ffffff0f}.landing-preview-grid small{display:block;margin-bottom:12px;color:#ffffff94;font-size:.76rem;font-weight:800;text-transform:uppercase}.landing-preview-grid strong{color:#fff;font-size:1.35rem}.landing-chart{height:150px;display:flex;align-items:end;gap:10px;padding:18px;border-radius:18px;background:#ffffff0f}.landing-chart span{flex:1;min-width:14px;border-radius:999px 999px 6px 6px;background:linear-gradient(180deg,#ce36ff,#3af0ae)}.landing-benefits{max-width:1160px;width:100%;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.landing-benefits div{padding-top:20px;border-top:1px solid rgba(255,255,255,.16)}.landing-benefits h2{margin-bottom:8px;color:#fff;font-size:1rem}.landing-benefits p{color:#ffffffad;font-size:.92rem;line-height:1.55}.landing-nav-links{display:flex;align-items:center;gap:28px}.landing-nav-links a{color:#ffffffad;font-size:.9rem;font-weight:600;text-decoration:none;transition:color .15s ease}.landing-nav-links a:hover{color:#fff}.landing-panel{padding:96px 28px;background:var(--bg)}.landing-panel-alt{background:#f1f5fb}.landing-panel-inner{max-width:1160px;margin:0 auto}.landing-eyebrow{margin-bottom:12px;color:var(--blue);font-size:.82rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.landing-panel-title{max-width:640px;margin-bottom:14px;color:var(--text);font-size:clamp(1.9rem,3.4vw,2.6rem);line-height:1.15;letter-spacing:-.01em}.landing-panel-subtitle{max-width:560px;margin-bottom:48px;color:var(--muted);font-size:1.05rem;line-height:1.6}.landing-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.landing-feature-card{padding:28px;border:1px solid var(--border);border-radius:20px;background:var(--card-solid);box-shadow:var(--shadow)}.landing-feature-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:18px;border-radius:14px;background:#2563eb1a;color:var(--blue);font-size:1.2rem}.landing-feature-card h3{margin-bottom:8px;color:var(--text);font-size:1.08rem}.landing-feature-card p{color:var(--muted);font-size:.92rem;line-height:1.6}.landing-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.landing-step{position:relative;padding-top:8px}.landing-step-number{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-bottom:18px;border-radius:999px;background:linear-gradient(135deg,#ce36ff,#3af0ae);color:#070d24;font-weight:900;font-size:1.05rem}.landing-step h3{margin-bottom:8px;color:var(--text);font-size:1.08rem}.landing-step p{color:var(--muted);font-size:.92rem;line-height:1.6}.landing-ai-section{background:#070d24}.landing-ai-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(300px,.8fr);align-items:center;gap:56px}.landing-eyebrow-light{color:#3af0ae}.landing-panel-title-light{color:#fff}.landing-panel-subtitle-light{color:#ffffffb8;margin-bottom:24px}.landing-ai-list{display:flex;flex-direction:column;gap:14px;list-style:none}.landing-ai-list li{position:relative;padding-left:26px;color:#ffffffd1;font-size:.95rem;line-height:1.55}.landing-ai-list li:before{content:"✓";position:absolute;left:0;color:#3af0ae;font-weight:900}.landing-ai-preview{display:flex;flex-direction:column;gap:14px}.landing-ai-preview-card{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:#ffffff0f;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.landing-ai-preview-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;color:#3af0ae;font-size:1.1rem}.landing-ai-preview-card strong{display:block;margin-bottom:4px;color:#fff;font-size:.95rem}.landing-ai-preview-card p{color:#ffffffad;font-size:.85rem;line-height:1.5}.landing-final-cta{padding:100px 28px;background:radial-gradient(circle at top left,rgba(206,54,255,.35),transparent 45%),radial-gradient(circle at bottom right,rgba(58,240,174,.25),transparent 45%),#070d24;text-align:center}.landing-final-cta-inner{display:flex;flex-direction:column;align-items:center}.landing-final-cta h2{max-width:560px;margin-bottom:14px;color:#fff;font-size:clamp(1.9rem,3.4vw,2.6rem);line-height:1.15}.landing-final-cta p{max-width:480px;margin-bottom:32px;color:#ffffffb8;font-size:1.02rem;line-height:1.6}.landing-footer{padding:40px 28px;background:#050817}.landing-footer-inner{max-width:1160px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.landing-footer-brand{display:flex;align-items:center;gap:12px}.landing-footer-logo{width:96px;height:auto}.landing-footer-brand p{color:#ffffff80;font-size:.85rem}.landing-footer-copy{color:#ffffff6b;font-size:.82rem}.container{max-width:1200px;margin:0 auto}.weight-unit-setting{margin-bottom:1.25rem}.weight-unit-setting label{display:block;font-size:15px;font-weight:600;color:#ffffffb3;margin-bottom:.5rem;letter-spacing:.05em}.weight-unit-setting select{width:100%;height:48px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff0d;color:#fff;padding:0 1rem;font-size:.95rem;font-weight:500;outline:none;transition:all .2s ease;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#c53df5 50%),linear-gradient(135deg,#c53df5 50%,transparent 50%);background-position:calc(100% - 20px) calc(50% - 3px),calc(100% - 14px) calc(50% - 3px);background-size:6px 6px;background-repeat:no-repeat}.weight-unit-setting select:hover{border-color:#c53df566}.weight-unit-setting select:focus{border-color:#c53df5;box-shadow:0 0 0 3px #c53df526}.weight-unit-setting select option{background:#0b163f;color:#fff}.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-bottom:.75rem}.profile-grid label{display:block;font-size:15px;font-weight:600;color:#ffffffb3;margin-bottom:.5rem;letter-spacing:.05em}.profile-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:.5rem}.profile-label-row label{margin-bottom:0}.profile-height-actions{display:flex;align-items:center;gap:8px}.height-unit-select{height:26px;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:#ffffff0d;color:#fff;padding:0 10px;font-size:.72rem;font-weight:700;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.height-unit-select option{background:#0b163f;color:#fff}.profile-edit-btn{min-height:26px;padding:0 12px;border-radius:999px;background:#c53df52e;color:#fff;font-size:.75rem;font-weight:800;box-shadow:none}.profile-edit-btn:hover{background:#c53df552}#profileSex{width:100%;height:48px;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff0d;color:#fff;padding:0 1rem;font-size:.95rem;font-weight:500;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,#c53df5 50%),linear-gradient(135deg,#c53df5 50%,transparent 50%);background-position:calc(100% - 20px) calc(50% - 3px),calc(100% - 14px) calc(50% - 3px);background-size:6px 6px;background-repeat:no-repeat}#profileSex option{background:#0b163f;color:#fff}.profile-grid input:disabled,.profile-grid select:disabled{cursor:not-allowed;opacity:.72;border-color:#3af0ae38;background-color:#3af0ae14}.profile-grid-note{color:#ffffff80;font-size:.82rem;margin-bottom:1.25rem;line-height:1.5}@media (max-width: 760px){.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.dashboard-intro{justify-content:center;text-align:center}.dashboard-intro>div{width:100%;display:flex;flex-direction:column;align-items:center}.dashboard-intro .hero-logo{margin:0 auto 15px}.dashboard-intro p{max-width:100%}.hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:42px;margin-bottom:34px;border-radius:36px;background:linear-gradient(145deg,#ffffffeb,#f8fafce6);border:1px solid rgba(255,255,255,.7);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow)}.hero:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(37,99,235,.08),transparent 70%);top:-250px;right:-150px}.hero h1{font-size:4rem;line-height:.95;font-weight:800;letter-spacing:-3px;margin-bottom:14px}.hero p{color:var(--muted);font-size:1.08rem;max-width:620px;line-height:1.7}.phase-badge{background:linear-gradient(135deg,var(--blue),var(--cyan));color:#fff;padding:16px 24px;border-radius:999px;font-weight:700;font-size:.95rem;box-shadow:0 12px 30px #2563eb2e;white-space:nowrap}.hero-logo{width:205px;max-width:100%;height:auto;display:block;margin-bottom:15px}.login-logo{width:220px;max-width:100%;height:auto;display:block;margin:0 auto 20px}.card{background:var(--card);border:1px solid rgba(255,255,255,.7);border-radius:32px;padding:30px;margin-bottom:28px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:var(--shadow);transition:transform .28s ease,box-shadow .28s ease}.card:hover{transform:translateY(-3px);box-shadow:0 24px 50px #0f172a1a}.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:26px;gap:24px}.section-header h2{font-size:1.7rem;font-weight:700;margin-bottom:6px}.section-header p{color:var(--muted);line-height:1.6}.goals-grid,.metric-grid,.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}label{display:block;margin-bottom:10px;color:var(--muted);font-size:.92rem;font-weight:600}input{width:100%;border:1px solid #dbe4f0;background:#ffffffeb;color:var(--text);border-radius:20px;padding:18px;font-size:1rem;transition:.25s ease}input:focus{outline:none;border-color:#2563eb73;box-shadow:0 0 0 4px #2563eb1a}.metric-card{position:relative;overflow:hidden;border-radius:28px;padding:28px;background:linear-gradient(145deg,#fffffff5,#f8fafcf0);border:1px solid rgba(226,232,240,.8);transition:transform .3s ease,box-shadow .3s ease}.metric-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(37,99,235,.04),transparent);pointer-events:none}.metric-card:hover{transform:translateY(-5px);box-shadow:0 18px 40px #0f172a14}.metric-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px;gap:14px}.metric-top span{font-size:1rem;font-weight:700}.metric-top small{color:var(--muted);text-align:right;line-height:1.5}.metric-card input{border:none;padding:20px;background:transparent;font-size:2rem;font-weight:800;letter-spacing:-2px}.metric-card input:focus{box-shadow:none}.metric-unit{margin-top:12px;color:var(--muted);font-size:.92rem}button{position:relative;overflow:hidden;border:none;background:#ce36ff;color:#fff;padding:18px 24px;border-radius:18px;font-size:1rem;font-weight:700;cursor:pointer;transition:.25s ease;box-shadow:0 12px 28px #2563eb29}button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,rgba(255,255,255,.18),transparent);opacity:0;transition:.25s ease}button:hover{transform:translateY(-2px);opacity:.96}button:hover:before{opacity:1}.save-btn{width:100%;margin-top:28px}.stat-card{background:linear-gradient(145deg,#fffffff5,#f8fafcf0);border:1px solid rgba(226,232,240,.8);border-radius:28px;padding:28px;box-shadow:var(--shadow);transition:transform .28s ease,box-shadow .28s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #0f172a14}.stat-card h3{color:var(--muted);margin-bottom:14px;font-size:.92rem;text-transform:uppercase;letter-spacing:.08em}.stat-value{font-size:3rem;font-weight:800;letter-spacing:-3px}.week-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;align-items:stretch}.week-card{background:linear-gradient(145deg,#fffffff5,#f8fafcf0);border:1px solid rgba(226,232,240,.8);border-radius:26px;padding:24px;height:100%;transition:transform .28s ease,box-shadow .28s ease}.history-accordion{display:grid;gap:14px}.history-empty{color:var(--muted);line-height:1.6}.history-month{overflow:hidden;background:linear-gradient(145deg,#fffffff5,#f8fafcf0);border:1px solid rgba(226,232,240,.8);border-radius:18px}.history-month-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;color:#0f172a;cursor:pointer;font-weight:800;list-style:none}.history-month-header::-webkit-details-marker{display:none}.history-month-header:before{content:"▸";color:var(--muted);font-size:.9rem;transition:transform .2s ease}.history-month[open] .history-month-header:before{transform:rotate(90deg)}.history-month-header span{flex:1}.history-month-header small{color:var(--muted);font-size:.86rem;font-weight:700;white-space:nowrap}.history-month-table{border-top:1px solid #e2e8f0}.history-month-table .entries-table{min-width:760px}.week-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px #0f172a14}.week-card h3{margin-bottom:16px}.week-card p{color:#334155;line-height:1.8}.table-wrap{overflow-x:auto}.entries-table{width:100%;border-collapse:collapse;min-width:760px}.entries-table thead{background:#f8fafce6}.entries-table th{color:var(--muted);text-transform:uppercase;font-size:.82rem;letter-spacing:.08em;font-weight:700}.entries-table th,.entries-table td{padding:20px;border-bottom:1px solid #e2e8f0;text-align:left}.entries-table tbody tr{transition:.25s ease}.entries-table tbody tr:hover{background:#2563eb0a}.entries-table td{vertical-align:middle;font-weight:500}.entries-table button{padding:10px 14px;border-radius:12px;font-size:.85rem;box-shadow:none}.delete-btn{background:linear-gradient(135deg,#ef4444,#dc2626)}.chart-container{position:relative;width:100%;height:460px;overflow:hidden;border-radius:24px;background:linear-gradient(145deg,#ffffff8c,#f8fafcbf);padding:18px}#trendChart{width:100%!important;height:100%!important}.date-wrap{min-width:240px}.date-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 auto}.today-btn{width:100%;display:flex;justify-content:center}.date-nav input{flex:1}.date-btn{width:48px;height:48px;padding:0;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0}.targets-box{margin:1.5rem 0 2rem;padding:1.25rem;border:1px solid rgba(255,255,255,.08);background:#ffffff08;border-radius:18px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.targets-header{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem}.targets-header h3{margin:0;font-size:1rem;font-weight:600}.targets-header p{margin:.2rem 0 0;opacity:.7;font-size:.85rem}.targets-save-btn{padding:.65rem 1rem;border-radius:12px;font-size:.85rem}.targets-box .goals-grid{gap:1rem}.targets-box input{background:#ffffff0a}.entries-table td.goal-met{color:var(--green);font-weight:600}.entries-table td.goal-not-met{color:var(--danger);font-weight:600}.insights-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.insight-card{background:linear-gradient(145deg,#fffffff5,#f8fafcf0);border:1px solid rgba(226,232,240,.8);border-radius:24px;padding:24px;transition:transform .28s ease,box-shadow .28s ease}.insight-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px #0f172a14}.insight-icon{font-size:1.8rem;margin-bottom:12px}.insight-card h4{font-size:1.05rem;font-weight:700;margin-bottom:10px;color:#fff}.insight-card p{color:var(--muted);line-height:1.6;font-size:.95rem}.insight-card.positive{border-left:4px solid var(--green)}.insight-card.warning,.insight-card.tip{border-left:4px solid #ac34fd}.ai-insights-empty{color:var(--muted)}.ai-section-title{color:#fff;font-size:1.1rem;font-weight:700;margin-bottom:16px}.ai-action-plan{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-bottom:28px}.ai-confidence-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.ai-confidence-badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:999px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ai-confidence-badge.high{background:#10b98126;color:#10b981}.ai-confidence-badge.medium{background:#f59e0b26;color:#f59e0b}.ai-confidence-badge.low{background:#ef444426;color:#ef4444}.ai-confidence-meta{color:#ffffffad;font-size:.85rem}.ai-goal-headline{color:#fff;font-size:1rem;line-height:1.6;margin-bottom:22px}.ai-projection-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:24px}.ai-date-planner{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:20px;margin-bottom:24px}.ai-date-planner label{display:block;color:#ffffffb3;font-size:.9rem;font-weight:600;margin-bottom:10px}.ai-date-planner input[type=date]{width:100%;max-width:260px;margin-bottom:14px}.ai-date-result{color:#ffffffd9;font-size:.92rem;line-height:1.6}.ai-date-result p{margin-bottom:8px}.ai-date-result strong{color:#fff}.ai-date-warning{color:#f59e0b}.ai-cardio-suggestions{margin-top:14px;padding:14px 16px;border:1px solid rgba(58,240,174,.22);border-radius:16px;background:#3af0ae14}.ai-cardio-suggestions h4{color:#fff;font-size:.85rem;margin-bottom:8px}.ai-cardio-suggestions ul{padding-left:18px}.ai-cardio-suggestions li{margin-bottom:6px}.ai-projection-card{background:linear-gradient(145deg,#fffffff5,#f8fafcf0);border:1px solid rgba(226,232,240,.8);border-radius:24px;padding:22px}.ai-projection-card.best{border-left:4px solid #10b981}.ai-projection-card.expected{border-left:4px solid #ac34fd}.ai-projection-card.conservative{border-left:4px solid #64748b}.ai-projection-card h4{font-size:.8rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:12px}.ai-rate{font-size:1.4rem;font-weight:800;letter-spacing:-.5px;margin-bottom:8px;color:var(--text)}.ai-goal-date{font-size:.85rem;color:var(--muted)}.ai-insights-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.ai-mini-stat{background:linear-gradient(145deg,#fffffff5,#f8fafcf0);border:1px solid rgba(226,232,240,.8);border-radius:20px;padding:18px}.ai-mini-stat h4{font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px}.ai-mini-value{font-size:1.3rem;font-weight:800;color:var(--text)}.ai-body-comp-note{padding:16px 18px;border-radius:18px;background:#ac34fd1a;border:1px solid rgba(172,52,253,.2);font-size:.9rem;line-height:1.6;color:#fff}.ai-body-comp-note strong{color:#fff}@media (max-width: 900px){.ai-projection-grid,.ai-insights-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.ai-projection-grid{grid-template-columns:1fr}}@media (max-width:768px){.targets-header{flex-direction:column;align-items:flex-start}.targets-save-btn{width:100%}}@media (max-width: 1150px){.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-grid,.stats-grid,.goals-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){body{padding:14px}.hero,.section-header{flex-direction:column;align-items:flex-start}.hero{padding:26px;border-radius:28px;margin-bottom:22px}.hero h1{font-size:2.4rem;letter-spacing:-2px}.hero p{font-size:.98rem;line-height:1.6}.phase-badge{width:100%;text-align:center}.metric-grid,.stats-grid,.goals-grid,.week-grid{grid-template-columns:1fr}.card{padding:22px;border-radius:24px}.metric-card{padding:24px}.metric-card input{font-size:1.4rem}.stat-card{padding:24px}.stat-value{font-size:2rem}.entries-table{min-width:640px}.entries-table th,.entries-table td{padding:16px}.chart-container{height:280px;padding:10px;border-radius:20px}#trendChart{height:260px!important}.dashboard-intro{justify-content:center;text-align:center}.dashboard-intro>div:first-child{width:100%}.hero-logo{margin:0 auto 15px}}.hidden-field{position:absolute;left:-9999px;opacity:0;pointer-events:none}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;background:#0a193a;display:flex;flex-direction:column;justify-content:center;align-items:center;transition:opacity .3s ease}.loading-logo{width:180px;margin-bottom:20px}.loading-screen.hidden{opacity:0;pointer-events:none}.loading-screen p{color:#fff;font-weight:600}.hidden{display:none!important}.login-container{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bd;display:flex;align-items:center;justify-content:center;z-index:9999;overflow-y:auto;padding:24px 16px}.login-container.hidden{display:none}.login-box{background:#090f29;border-radius:36px;padding:48px 42px;width:100%;max-width:420px;box-shadow:0 20px 60px #0f172a1f,0 0 1px #0f172a14}.close-login-btn{position:absolute;top:20px;right:20px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.5rem;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.2s ease}.close-login-btn:hover{background:#ffffff26;transform:rotate(90deg)}.login-box{position:relative}.login-header{text-align:center;margin-bottom:40px}.login-header h1{font-size:2.8rem;font-weight:800;letter-spacing:-2px;margin-bottom:8px;background:#ac34fd;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-header p{color:#fff;font-size:1.05rem}.auth-tabs{display:flex;gap:12px;margin-bottom:32px;background:#fff;padding:8px;border-radius:18px}.auth-tab{flex:1;padding:12px 20px;border:none;background:transparent;color:var(--muted);font-weight:600;font-size:.95rem;border-radius:14px;cursor:pointer;transition:.25s ease;box-shadow:none}.auth-tab:hover{background:#ffffff80;transform:none}.auth-tab.active{background:#ce36ff;color:#fff;box-shadow:0 8px 20px #2563eb33}.auth-form{display:none}.auth-form.active{display:block}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:10px;color:#fff;font-weight:600;font-size:.95rem}.form-group input{width:100%;padding:14px 18px;border:1.5px solid #dbe4f0;background:#ffffffeb;color:var(--text);border-radius:16px;font-size:.95rem;transition:.25s ease}.form-group input:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px #2563eb1a}.auth-submit-btn{width:100%;padding:14px;background:#ce36ff;color:#fff;border:none;border-radius:16px;font-weight:700;font-size:1rem;cursor:pointer;transition:.25s ease;box-shadow:0 8px 20px #2563eb33;margin-top:12px}.auth-submit-btn:hover{transform:translateY(-2px);box-shadow:0 12px 28px #2563eb47;opacity:.98}.auth-submit-btn:active{transform:translateY(0)}.auth-error{margin-top:14px;padding:12px 16px;background:#ef44441a;color:#fff!important;border-radius:12px;text-align:center;font-size:1.1rem;display:none;border:1px solid rgba(239,68,68,.2)}.auth-error:not(:empty){display:block}#signupError{color:var(--danger)}#signupError.success-message{background:#10b9811a;color:var(--green);border-color:#10b98133}.dashboard-section{display:block;position:relative;isolation:isolate;min-height:100vh;margin:-36px;padding:28px}.dashboard-section:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:#000;pointer-events:none}.dashboard-section>*{position:relative;z-index:1}.dashboard-section .hero,.dashboard-section .card{color:#fff;background:#0a183a}.dashboard-shell{display:grid;grid-template-columns:220px minmax(0,1fr);gap:22px;width:100%;max-width:none;min-height:calc(100vh - 72px);margin:0 auto;padding:20px;background:#090f29;border:1px solid rgba(0,0,0,.72);border-radius:30px;box-shadow:0 24px 70px #00000038}.dashboard-sidebar{display:flex;flex-direction:column;min-height:100%;padding:18px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:24px}.brand-lockup{display:flex;align-items:center;gap:10px;margin-bottom:28px;color:#0f172a;font-weight:800;font-size:1rem}.brand-mark{width:26px;height:26px;border-radius:50%;background:radial-gradient(circle at center,#f8fafc 0 28%,transparent 30%),linear-gradient(135deg,#ce36ff,#8b1dff);box-shadow:0 8px 18px #ce36ff3d}.side-nav{display:grid;gap:6px}.side-nav a{position:relative;display:flex;align-items:center;min-height:38px;padding:0 12px;color:#64748b;border-radius:12px;font-size:.9rem;font-weight:700;text-decoration:none}.side-nav a.active,.side-nav a:hover{color:#0f172a;background:#fff}.side-nav a.active:before{content:"";position:absolute;left:-14px;width:3px;height:22px;border-radius:999px;background:#ce36ff}.sidebar-card{display:grid;gap:10px;margin-top:auto;padding:14px;color:#fff;background:#ac34fd;border-radius:18px;box-shadow:0 18px 34px #064e3b38}.sidebar-card strong{font-size:.95rem;text-align:center}.mini-action{min-height:34px;padding:0 12px;color:#064e3b;background:#fff;border-radius:999px;box-shadow:none;font-size:.78rem}.streak-pill{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:28px;padding:0 12px;border-radius:999px;background:#ffffff2e;color:#fff;font-size:.78rem;font-weight:700;justify-self:center}.streak-pill-mobile{display:none;color:#0f172a;background:#f1e4ff}.dashboard-main{min-width:0}@media (min-width: 761px){.dashboard-shell{height:calc(100vh - 72px);overflow:hidden}.dashboard-sidebar{position:sticky;top:20px;height:calc(100vh - 112px);align-self:start}.dashboard-main{max-height:calc(100vh - 112px);overflow-y:auto;padding-right:6px}}.dashboard-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 16px;padding:0;border-bottom:0}.search-shell{display:flex;align-items:center;gap:10px;width:min(360px,100%);min-height:44px;padding:0 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px}.search-shell span{color:#94a3b8;font-size:1rem}.search-shell input{height:40px;padding:0;border:0;background:transparent;border-radius:0;font-size:.9rem}.search-shell input:focus{box-shadow:none}.profile-actions{display:flex;align-items:center;gap:10px}.icon-btn{width:42px;height:42px;padding:0;color:#ce36ff;background:#f8fafc;border:1px solid #e2e8f0;border-radius:50%;box-shadow:none;font-size:.8rem}.logout-btn{min-height:42px;padding:0 18px;background:#ce36ff;border-radius:999px;box-shadow:none}.signin-btn{min-height:42px;padding:0 18px;background:#ce36ff;color:#fff;border:none;border-radius:999px;font-weight:600;cursor:pointer;transition:.2s ease;box-shadow:none}.signin-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ce36ff4d}.container.dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;max-width:none;margin:0}.dashboard-grid>*{grid-column:span 12;margin-bottom:0}.dashboard-intro{grid-column:span 12;min-height:150px;padding:28px;border-radius:22px}.dashboard-intro h1{max-width:560px;font-size:2.25rem;letter-spacing:0}.dashboard-intro p{font-size:.98rem}.phase-badge{background:#ce36ff;border-radius:999px;box-shadow:none}.checkin-card{grid-column:span 7}.targets-card{grid-column:span 5}.trend-card,.weekly-card,.history-card{grid-column:span 12}.dashboard-section .card{padding:22px;border-radius:22px;border-color:#ffffff14;box-shadow:0 12px 34px #0000002e}.section-header{margin-bottom:18px}.section-header h2{font-size:1.2rem;letter-spacing:0}.section-header p{color:#ffffffad;font-size:.88rem}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric-card,.stat-card,.week-card,.insight-card{color:#fff;background:#0a183a;border-color:#ffffff1a;border-radius:18px;box-shadow:none}.dashboard-section label,.dashboard-section .metric-top small,.dashboard-section .metric-unit,.dashboard-section .hero p,.dashboard-section .week-card p,.dashboard-section .insight-card p,.dashboard-section .stat-card h3{color:#ffffffad}#dashboardSearch{background-color:#fff;color:#111827;border:1px solid #e5e7eb}#dashboardSearch::placeholder{color:#6b7280}.dashboard-section input{color:#fff;background:#ffffff14;border-color:#ffffff1f}.dashboard-section input::placeholder{color:#ffffff6b}.metric-card{padding:18px}.metric-top{margin-bottom:14px}.metric-card input{font-size:1.45rem;letter-spacing:0}.save-btn{min-height:44px;margin-top:16px;padding:0 18px;border-radius:999px;background:#ce36ff;box-shadow:none}.mobile-toggle{display:none}.mobile-content{overflow:visible}.goals-grid,.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.targets-box{margin:0 0 16px;padding:0;border:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.targets-box input,input{border-radius:14px;padding:13px 14px}.chart-container{height:330px;overflow:hidden;background:#ffffff0a;border-radius:18px}.stat-card{padding:18px}.stat-value{font-size:2rem;letter-spacing:0}.week-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.insights-container{grid-template-columns:1fr;gap:12px}.entries-table th,.entries-table td{color:#fff;border-bottom-color:#ffffff1a;padding:14px}.entries-table thead,.entries-table tbody tr:hover{background:#ffffff0d}.dashboard-section .entries-table td.goal-met,.dashboard-section .entries-table td.goal-not-met{color:#fff}.dashboard-section .history-month .entries-table th{color:#64748b}.dashboard-section .history-month .entries-table td{color:#334155;border-bottom-color:#e2e8f0}.dashboard-section .history-month .entries-table thead,.dashboard-section .history-month .entries-table tbody tr:hover{background:#f8fafce6}.dashboard-section .history-month .entries-table td.goal-met{color:var(--green)}.dashboard-section .history-month .entries-table td.goal-not-met{color:var(--danger)}.dashboard-section.hidden{display:none}.logout-btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0f172a29;opacity:.96}input[type=date]::-webkit-calendar-picker-indicator{filter:brightness(0) invert(1);opacity:1}@media (max-width: 760px){.dashboard-section{width:100%;max-width:100%;margin:0;padding:10px;overflow-x:hidden}.dashboard-shell{display:block;width:100%;max-width:100%;overflow-x:hidden;min-height:auto;padding:10px;border-radius:20px}.dashboard-main,.container.dashboard-grid,.dashboard-grid>*,.dashboard-section .card,.metric-card,.stat-card,.week-card,.insight-card,.targets-box,.chart-container{min-width:0;max-width:100%}.dashboard-sidebar{display:block;width:100%;max-width:100%;overflow:hidden;min-height:auto;margin-bottom:12px;padding:12px;border-radius:18px;position:sticky;top:0;z-index:10}.brand-lockup{margin-bottom:12px}.side-nav{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.side-nav::-webkit-scrollbar{display:none}.side-nav a{justify-content:center;flex:0 0 auto;min-height:36px;padding:0 12px;background:#fff;white-space:nowrap;font-size:.82rem}.side-nav a.active:before,.sidebar-card{display:none}.streak-pill-mobile:not([hidden]){display:inline-flex;align-self:center}.dashboard-header{flex-direction:column;align-items:stretch;gap:10px;margin-bottom:12px}.search-shell{width:100%;min-height:40px}.profile-actions{justify-content:space-between}.container.dashboard-grid,.metric-grid,.goals-grid,.stats-grid{grid-template-columns:1fr;gap:12px}.week-grid{grid-template-columns:1fr}.dashboard-grid>*,.checkin-card,.targets-card,.trend-card,.weekly-card{grid-column:1}.dashboard-intro h1{font-size:2rem}.dashboard-intro,.dashboard-section .card{padding:16px;border-radius:18px}.dashboard-intro{min-height:auto;gap:14px}.dashboard-intro h1{font-size:1.75rem;line-height:1.05}.dashboard-intro p,.section-header p{font-size:.86rem;line-height:1.45}.section-header{gap:12px;margin-bottom:14px}.section-header h2{font-size:1.08rem}.collapsible-card .section-header{margin-bottom:10px}.collapsible-card .mobile-toggle{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:40px;margin:14px 0 0;padding:0 16px;color:#fff;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:999px;font:inherit;font-size:.88rem;font-weight:800;cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.collapsible-card .mobile-toggle:hover,.collapsible-card .mobile-toggle:focus-visible{background:#ce36ff38;border-color:#ce36ff80}.collapsible-card .mobile-toggle:focus-visible{outline:3px solid rgba(206,54,255,.35);outline-offset:2px}.collapsible-card .mobile-toggle:active{transform:translateY(1px)}.collapsible-card .mobile-content{position:relative;overflow:hidden;opacity:1;transition:max-height .32s ease,opacity .24s ease;will-change:max-height}.collapsible-card.is-collapsed .mobile-content{opacity:1}.collapsible-card.is-collapsed .mobile-content:after{content:"";position:absolute;right:0;bottom:0;left:0;height:56px;background:linear-gradient(to bottom,#0a183a00,#0a183a);pointer-events:none}.collapsible-card.is-small .mobile-toggle{display:none}.date-wrap,.phase-badge,.save-btn,.logout-btn,.signin-btn,.today-btn{width:100%;max-width:100%}.date-nav{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:8px;width:100%;max-width:100%}.date-btn{width:40px;height:40px;border-radius:12px}.today-btn{grid-column:1 / -1;min-height:40px}.metric-card,.stat-card,.week-card,.insight-card{padding:14px;border-radius:16px}.metric-card input{font-size:1.15rem}.targets-box input,input{min-height:42px;padding:10px 12px;font-size:.95rem}.chart-container{height:250px;padding:8px}#trendChart{height:234px!important}.table-wrap{width:100%;max-width:100%;margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.entries-table{min-width:520px}.entries-table th,.entries-table td{padding:12px;font-size:.84rem}.entries-table button{padding:8px 10px;font-size:.78rem}}@media (min-width: 761px) and (max-width: 1080px){.dashboard-shell{grid-template-columns:170px minmax(0,1fr);gap:16px}.container.dashboard-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-grid>*,.checkin-card,.targets-card,.trend-card,.weekly-card,.history-card{grid-column:span 6}.metric-grid,.goals-grid,.stats-grid,.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.landing-section{min-height:100vh;padding:22px;border-radius:0}.landing-hero{min-height:auto;grid-template-columns:1fr;gap:34px;padding:58px 0 34px}.landing-copy{max-width:720px}.landing-preview{max-width:560px}.landing-benefits{margin-top:0;grid-template-columns:1fr}.landing-nav-links{display:none}.landing-panel{padding:64px 22px}.landing-feature-grid,.landing-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-ai-grid{grid-template-columns:1fr;gap:40px}.landing-final-cta{padding:72px 22px}}@media (max-width: 560px){body{padding:14px}.landing-section{min-height:100vh;padding:18px}.landing-nav{align-items:flex-start}.landing-logo{width:104px}.landing-nav-actions{justify-content:flex-end}.landing-link-btn,.landing-primary-btn,.landing-secondary-btn{min-height:40px;padding:0 14px;font-size:.82rem}.landing-actions{align-items:stretch}.landing-actions button{flex:1 1 160px}.landing-preview-grid{grid-template-columns:1fr}.landing-chart{height:120px}.landing-feature-grid,.landing-steps{grid-template-columns:1fr}.landing-panel-title{font-size:1.7rem}.landing-footer-inner{flex-direction:column;align-items:flex-start}}@media (max-width: 480px){.login-box{padding:32px 24px;border-radius:28px}.login-header h1{font-size:2.2rem}.login-header p{font-size:.95rem}.auth-tabs{margin-bottom:24px}.auth-tab{padding:10px 16px;font-size:.85rem}.form-group{margin-bottom:16px}.form-group input{padding:12px 14px;font-size:.9rem}}.confirm-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.confirm-card{background:linear-gradient(135deg,#1a1f3a,#0f1628);border-radius:20px;padding:32px;width:90%;max-width:320px;box-shadow:0 20px 60px #0f172a66,inset 0 1px #ffffff1a;border:1px solid rgba(255,255,255,.05)}.confirm-message{color:#fff;font-size:1.1rem;margin-bottom:24px;text-align:center;font-weight:500}.confirm-actions{display:flex;gap:12px}.confirm-cancel,.confirm-delete{flex:1;padding:12px 16px;border:none;border-radius:10px;font-size:.95rem;font-weight:600;cursor:pointer;transition:.2s ease}.confirm-cancel{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.15)}.confirm-cancel:hover{background:#ffffff26;transform:translateY(-2px)}.confirm-delete{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff;box-shadow:0 4px 15px #ff6b6b4d}.confirm-delete:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ff6b6b66}.onboarding-card{background:linear-gradient(135deg,#1a1f3a,#0f1628);border-radius:20px;padding:32px;width:90%;max-width:420px;box-shadow:0 20px 60px #0f172a66,inset 0 1px #ffffff1a;border:1px solid rgba(255,255,255,.05)}.onboarding-title{color:#fff;font-size:1.2rem;font-weight:700;margin-bottom:8px;text-align:center}.onboarding-subtitle{color:#ffffffad;font-size:.88rem;text-align:center;margin-bottom:24px}.onboarding-field{margin-bottom:16px}.onboarding-field label{display:block;color:#ffffffd9;font-size:.85rem;font-weight:600;margin-bottom:6px}.onboarding-field input{width:100%;padding:10px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:#fff;font-size:.95rem}.onboarding-actions{margin-top:8px}.onboarding-skip{flex:1;padding:12px 16px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:#ffffff1a;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer}.onboarding-save{flex:1;padding:12px 16px;border:none;border-radius:10px;background:linear-gradient(135deg,#ce36ff,#8b1dff);color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;box-shadow:0 4px 15px #ce36ff4d}.today-nudge-banner{position:fixed;bottom:20px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:14px;max-width:90%;padding:12px 16px;border-radius:14px;background:linear-gradient(135deg,#1a1f3a,#0f1628);color:#fff;font-size:.88rem;box-shadow:0 12px 34px #00000052;border:1px solid rgba(255,255,255,.08);z-index:1800}.today-nudge-dismiss{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:24px;height:24px;padding:0;border:none;border-radius:999px;background:#ffffff1f;color:#fff;font-size:.72rem;font-weight:700;line-height:1;box-shadow:none;cursor:pointer}.today-nudge-dismiss:hover{background:#ffffff3d;transform:none;opacity:1}.in-app-alert{position:fixed;top:20px;left:50%;transform:translate(-50%);padding:14px 24px;border-radius:12px;font-size:.95rem;font-weight:500;z-index:2001;display:none;max-width:90%;animation:fadeInOut .3s ease-in-out;box-shadow:0 8px 24px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1)}.in-app-alert-success{background:#c53afe;color:#fff}.in-app-alert-warning{background:linear-gradient(135deg,#ffd43b,#fab005);color:#333}.in-app-alert-danger{background:linear-gradient(135deg,#ff6b6b,#ee5a6f);color:#fff}@keyframes fadeInOut{0%{opacity:0;transform:translate(-50%) translateY(-10px)}10%{opacity:1;transform:translate(-50%) translateY(0)}90%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-10px)}}
