:root{color-scheme:dark;font-family:Manrope,Avenir Next,Segoe UI,sans-serif;background:radial-gradient(circle at top,rgba(34,197,94,.16),transparent 36%),linear-gradient(180deg,#07111f,#0f172a 42%,#121827);color:#eff6ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-shell{max-width:560px;min-height:100vh;margin:0 auto;padding:calc(env(safe-area-inset-top) + 1rem) 1rem calc(env(safe-area-inset-bottom) + 5.75rem)}.app-shell__content,.stack{display:flex;flex-direction:column;gap:1rem}.shell-toolbar{display:flex;justify-content:flex-end;margin-bottom:1rem}.shell-toolbar__button{padding:.7rem .95rem}.login-screen,.screen-center{min-height:100vh;display:grid;place-items:center;padding:1.5rem}.login-card,.loading-card,.panel,.stat-card,.error-card{border:1px solid rgba(148,163,184,.16);background:#0f172ad1;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 24px 48px #00000040;border-radius:24px}.login-card{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.login-card h1{margin:0;font-size:2.15rem;line-height:1.05}.login-card p,.page-header__subtitle,.field span,.entry-card p,.entry-card__meta,.empty-state p,.form-status,.form-helper,.stat-card__hint,.stat-card__label,.sub-panel__header span{color:#bfdbfe}.login-card__pill,.page-header__eyebrow{width:fit-content;border-radius:999px;background:#22c55e29;color:#dcfce7;padding:.35rem .7rem;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem}.page-header h1,.panel__header h2,.entry-card h3,.empty-state h3{margin:0}.page-header__subtitle,.panel__header span,.entry-card span{margin:.25rem 0 0;font-size:.95rem}.panel{padding:1rem;display:flex;flex-direction:column;gap:.8rem}.sub-panel{display:flex;flex-direction:column;gap:.85rem;border-radius:20px;border:1px solid rgba(148,163,184,.12);background:#02061766;padding:1rem}.sub-panel__header h2{margin:0;font-size:1rem}.panel__header{display:flex;justify-content:space-between;gap:1rem;align-items:center}.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.target-editor{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:end}.target-editor__button{white-space:nowrap}.trend-chart{display:grid;grid-template-columns:repeat(auto-fit,minmax(28px,1fr));gap:.65rem;align-items:end;min-height:160px}.trend-chart__item{display:flex;flex-direction:column;align-items:center;gap:.45rem}.trend-chart__value,.trend-chart__label{font-size:.72rem;color:#bfdbfe}.trend-chart__bar-rail{position:relative;width:100%;min-height:96px;height:96px;border-radius:14px;background:#94a3b814;display:flex;align-items:flex-end;overflow:hidden}.trend-chart__bar{position:relative;z-index:1;width:100%;border-radius:14px;background:linear-gradient(180deg,#34d399,#14b8a6)}.trend-chart__bar.is-over-target{background:linear-gradient(180deg,#f59e0b,#f97316)}.trend-chart__target{position:absolute;left:0;right:0;border-top:2px dashed rgba(250,204,21,.9);z-index:0}.consistency-heatmap{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.45rem}.consistency-heatmap__item{display:grid;gap:.3rem;justify-items:center}.consistency-heatmap__tile{width:100%;aspect-ratio:1;border-radius:10px;border:1px solid rgba(148,163,184,.12)}.consistency-heatmap__tile.level-0{background:#94a3b814}.consistency-heatmap__tile.level-1{background:#22c55e38}.consistency-heatmap__tile.level-2{background:#10b98161}.consistency-heatmap__tile.level-3{background:#14b8a68f}.consistency-heatmap__label{font-size:.7rem;color:#bfdbfe}.stat-card{padding:1rem}.stat-card__value{display:block;margin:.35rem 0;font-size:1.5rem}.entry-card{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-top:1px solid rgba(148,163,184,.1)}.entry-card__aside{display:grid;gap:.4rem;justify-items:end}.entry-card__action{display:flex}.entry-card__action button{border:0;border-radius:999px;padding:.35rem .7rem;background:#94a3b824;color:#eff6ff}.entry-card:first-of-type{border-top:0;padding-top:0}.form-panel{gap:1rem}.field,.field-grid{display:grid;gap:.65rem}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.field input,.field select,.field textarea{border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:.9rem 1rem;background:#0f172ab3;color:#eff6ff}.field textarea{resize:vertical}.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.option-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.choice-chip{border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:.9rem 1rem;background:#0f172a8f;color:#e2e8f0;text-align:left}.choice-chip.is-selected{border-color:#22c55e80;background:#22c55e2e;color:#f0fdf4}.form-helper{margin:0;font-size:.92rem}.primary-button,.ghost-button{border:0;border-radius:18px;padding:.95rem 1rem;font-weight:700}.primary-button{background:linear-gradient(135deg,#22c55e,#14b8a6);color:#052e16}.ghost-button{background:#94a3b81f;color:#eff6ff}.error-card,.empty-state,.loading-card{padding:1rem}.empty-state{border:1px dashed rgba(148,163,184,.3);border-radius:24px;background:#0f172a59}.loading-card{display:grid;place-items:center;gap:.75rem;min-height:120px}.spinner{width:1.3rem;height:1.3rem;border-radius:50%;border:2px solid rgba(191,219,254,.2);border-top-color:#22c55e;animation:spin 1s linear infinite}.bottom-nav{position:fixed;left:50%;bottom:0;transform:translate(-50%);width:min(560px,100%);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem;padding:.6rem .8rem calc(env(safe-area-inset-bottom) + .6rem);border-top:1px solid rgba(148,163,184,.16);background:#030712f0;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.bottom-nav__item{display:grid;gap:.2rem;justify-items:center;color:#94a3b8;font-size:.72rem}.bottom-nav__icon{font-size:.82rem;text-transform:uppercase}.bottom-nav__item.is-active{color:#f8fafc}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:420px){.stats-grid,.target-editor,.field-grid,.option-grid,.option-grid--compact{grid-template-columns:1fr}.page-header,.entry-card{flex-direction:column;align-items:flex-start}.entry-card__aside{justify-items:start}}
