@import "https://fonts.googleapis.com/css2?family=Fredoka:wght@500;600;700&family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500;600;700&display=swap";:root{--bg:#241b3d;--ink:#fff;--ink-soft:#b4a9d6;--moss:#58d68d;--moss-deep:#2fa968;--moss-light:#dffce9;--clay:#ff7a45;--clay-light:#ffe3d3;--amber:#ffb627;--amber-light:#ffebc2;--pink:#ff3d81;--pink-deep:#c40059;--cyan:#2fe6e6;--cyan-deep:#0ea5a5;--card:#2e2350;--line:#ffffff1a;--danger:#ff5c6c}*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100%;overflow-x:hidden}body.drawer-locked{width:100%;position:fixed;left:0;right:0;overflow:hidden}body.drawer-locked .main{overflow:hidden!important}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Inter,sans-serif}.shell{background:var(--bg);background-image:radial-gradient(420px 300px at 10% -5%,#ff3d8147,#0000 60%),radial-gradient(380px 280px at 100% 15%,#2fe6e633,#0000 55%),radial-gradient(340px 260px at 90% 80%,#ffb62729,#0000 55%);background-repeat:no-repeat;flex-direction:column;max-width:440px;min-height:100vh;margin:0 auto;display:flex;position:relative}.auth-screen{background:var(--bg);background-image:radial-gradient(460px 340px at 15% 0,#ff3d814d,#0000 60%),radial-gradient(400px 300px at 100% 100%,#2fe6e633,#0000 55%);background-repeat:no-repeat;flex-direction:column;justify-content:center;max-width:440px;min-height:100vh;margin:0 auto;padding:32px 28px;display:flex}.auth-logo{color:var(--pink);text-shadow:0 0 30px #ff3d8173;font-family:Fredoka,sans-serif;font-size:42px;font-weight:700}.auth-sub{color:var(--ink-soft);margin-top:6px;margin-bottom:28px;font-size:14px}.auth-screen input{border:2px solid var(--line);background:var(--card);width:100%;color:var(--ink);border-radius:14px;margin-bottom:10px;padding:13px 14px;font-family:Inter,sans-serif;font-size:14.5px}.auth-screen input::placeholder{color:var(--ink-soft)}.password-field{position:relative}.password-field input{padding-right:46px}.password-toggle{cursor:pointer;width:34px;color:var(--ink-soft);background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;top:0;bottom:10px;right:6px}.password-toggle svg{width:19px;height:19px}.auth-screen .btn{margin-top:6px}.auth-toggle{text-align:center;color:var(--ink-soft);margin-top:16px;font-size:13.5px}.auth-toggle a{color:var(--cyan);cursor:pointer;font-weight:700;text-decoration:none}.auth-error{color:var(--danger);min-height:16px;margin-top:8px;font-size:13px;font-weight:600}.auth-loading{text-align:center;color:var(--ink-soft);padding:60px 20px}.top{padding:28px 22px 16px}.top-row{justify-content:flex-end;align-items:center;margin-bottom:14px;display:flex}.eyebrow{letter-spacing:.1em;text-transform:uppercase;color:var(--cyan);font-family:Fredoka,sans-serif;font-size:12px;font-weight:600}.greeting{margin-top:4px;font-family:Fredoka,sans-serif;font-size:30px;font-weight:700;line-height:1.1}.quote{color:var(--ink-soft);margin-top:6px;font-size:13.5px;font-style:italic}.logout-btn{background:var(--card);border:2px solid var(--line);color:var(--ink-soft);cursor:pointer;border-radius:10px;padding:7px 14px;font-family:Fredoka,sans-serif;font-size:12px;font-weight:700;text-decoration:none;transition:transform .1s,box-shadow .1s;box-shadow:0 3px #00000059}.logout-btn:active{transform:translateY(2px);box-shadow:0 1px #00000059}.content{flex:1;padding:4px 22px 140px;overflow-y:auto}.view{animation:.25s fade;display:none}.view.active{display:block}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.rings-wrap{justify-content:center;padding:18px 0 10px;display:flex}.rings-label{text-align:center;margin-top:6px}.rings-label .big{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:13px}.stat-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:18px;display:grid}.stat-card{border:none;border-radius:16px;padding:14px 16px}.stat-card .k{font-family:Fredoka,sans-serif;font-size:24px;font-weight:700}.stat-card .l{text-transform:uppercase;letter-spacing:.05em;opacity:.85;margin-top:2px;font-size:11px;font-weight:600}.stat-card.moss{background:linear-gradient(155deg, var(--moss), var(--moss-deep));color:#0f2e1c}.stat-card.moss .l{color:#0f2e1c}.stat-card.amber{background:linear-gradient(155deg, var(--amber), #e89a0c);color:#3a2600}.stat-card.amber .l{color:#3a2600}.stat-card.clay{background:linear-gradient(155deg, var(--pink), var(--pink-deep));color:#fff}.stat-card.clay .l{color:#ffe1ee}.stat-card:not(.moss):not(.amber):not(.clay){background:linear-gradient(155deg, var(--cyan), var(--cyan-deep));color:#06312e}.stat-card:not(.moss):not(.amber):not(.clay) .l{color:#06312e}.section-title{justify-content:space-between;align-items:baseline;margin:26px 0 12px;font-family:Fredoka,sans-serif;font-size:19px;font-weight:700;display:flex}.section-title .count{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:400}.row{background:var(--card);border:2px solid var(--line);border-radius:16px;align-items:center;gap:12px;margin-bottom:8px;padding:13px 14px;transition:border-color .15s,transform .1s;display:flex}.row.done{opacity:.5;border-color:#58d68d59}.row.done .title{text-decoration:line-through}.check{border:2.5px solid var(--cyan);cursor:pointer;background:0 0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.check.checked{background:var(--moss);border-color:var(--moss);box-shadow:0 0 14px #58d68d99}.check svg{width:13px;height:13px;display:none}.check.checked svg{stroke:#0f2e1c;display:block}.row-body{flex:1;min-width:0}.title{font-family:Fredoka,sans-serif;font-size:14.5px;font-weight:700}.meta{color:var(--ink-soft);margin-top:1px;font-family:IBM Plex Mono,monospace;font-size:12px}.streak-pill{background:linear-gradient(135deg, var(--amber), #e8620c);color:#fff;border-radius:20px;flex-shrink:0;padding:4px 9px;font-family:Fredoka,sans-serif;font-size:12px;font-weight:700}.del-btn{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:18px}.edit-btn{color:var(--cyan);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:15px}.category-tag{text-transform:uppercase;letter-spacing:.03em;color:var(--ink-soft);background:#ffffff0f;border-radius:6px;margin-right:6px;padding:2px 7px;font-family:Fredoka,sans-serif;font-size:10.5px;font-weight:600}.day-picker{gap:5px;margin-bottom:10px;display:flex}.day-chip{aspect-ratio:1;border:2px solid var(--line);background:var(--bg);min-width:0;color:var(--ink-soft);cursor:pointer;border-radius:9px;flex:1;font-family:Fredoka,sans-serif;font-size:12px;font-weight:700}.day-chip.on{background:var(--cyan);border-color:var(--cyan);color:#06312e}.calendar-nav{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.cal-month{font-family:Fredoka,sans-serif;font-size:16px;font-weight:700}.cal-arrow{border:2px solid var(--line);background:var(--card);width:34px;height:34px;color:var(--ink);cursor:pointer;border-radius:10px;font-family:Fredoka,sans-serif;font-size:18px}.calendar-weekdays{text-align:center;color:var(--ink-soft);grid-template-columns:repeat(7,minmax(0,1fr));margin-bottom:6px;font-size:11px;font-weight:700;display:grid}.calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;min-width:0;display:grid}.cal-day{aspect-ratio:1;color:#fff;cursor:pointer;background:#3a3355;border:2px solid #0000;border-radius:9px;justify-content:center;align-items:center;min-width:0;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:600;display:flex;position:relative}.cal-day.empty{cursor:default;background:0 0}.cal-day.future{opacity:.35;cursor:default}.cal-day.selected{border-color:#fff}.cal-day.today{box-shadow:inset 0 0 0 2px var(--cyan)}.calendar-legend{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;font-size:11px;display:flex}.leg-dot{border-radius:3px;width:10px;height:10px;margin-left:8px;display:inline-block}.leg-dot:first-child{margin-left:0}#dayDetail{margin-top:16px}#dayDetail .row{margin-bottom:6px;padding:10px 12px}#dayDetail .title{font-size:13px}.level-card{background:linear-gradient(150deg,#3a2a6b,#241b3d);border:2px solid #ffb62766;border-radius:18px;padding:20px;box-shadow:0 0 30px #ffb6271a}.level-top{align-items:center;gap:12px;display:flex}.level-icon{font-size:32px}.level-name{font-family:Fredoka,sans-serif;font-size:19px;font-weight:700}.level-pts{color:var(--amber);font-family:IBM Plex Mono,monospace;font-size:12px}.level-bar-track{background:#ffffff14;border-radius:6px;height:10px;margin-top:14px;overflow:hidden}.level-bar-fill{background:linear-gradient(90deg, var(--amber), var(--pink));border-radius:6px;height:100%;transition:width .5s}.level-next{color:var(--ink-soft);margin-top:8px;font-size:11.5px}.achievements-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.ach-card{background:var(--card);border:2px solid var(--line);text-align:center;opacity:.5;border-radius:14px;padding:13px}.ach-card.unlocked{opacity:1;background:linear-gradient(150deg, #ffb6271f, var(--card));border-color:#ffb62766}.trophy{border:4px solid var(--tier-color);background:radial-gradient(circle at 32% 30%,#2a2350,#150f2a);border-radius:50%;justify-content:center;align-items:center;width:62px;height:62px;margin:0 auto 6px;font-size:28px;display:flex;position:relative}.trophy.locked{filter:grayscale()brightness(.55);border-color:#ffffff26}.trophy.unlocked{box-shadow:0 0 16px var(--tier-glow), inset 0 0 10px #ffffff14}.trophy-icon{filter:drop-shadow(0 1px 2px #0006)}.lock-badge{border:2px solid var(--card);background:#1b1533;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:10px;display:flex;position:absolute;bottom:-3px;right:-3px}.tier-tag{text-transform:uppercase;letter-spacing:.05em;font-family:IBM Plex Mono,monospace;font-size:9.5px;font-weight:700}.ach-title{margin-top:4px;font-family:Fredoka,sans-serif;font-size:12.5px;font-weight:700}.ach-desc{color:var(--ink-soft);min-height:24px;margin-top:2px;font-size:10.5px}.ach-bar-track{background:#ffffff14;border-radius:4px;height:5px;margin-top:8px;overflow:hidden}.ach-bar-fill{background:var(--cyan);border-radius:4px;height:100%}.ach-pts{color:var(--amber);margin-top:5px;font-family:IBM Plex Mono,monospace;font-size:10px}.area-row{margin-bottom:12px}.area-top{justify-content:space-between;align-items:baseline;margin-bottom:5px;display:flex}.area-name{font-family:Fredoka,sans-serif;font-size:13.5px;font-weight:600}.area-pct{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:12px}.area-bar-track{background:#ffffff12;border-radius:6px;height:9px;overflow:hidden}.area-bar-fill{border-radius:6px;height:100%;transition:width .4s}.notif-hint{color:var(--ink-soft);margin-bottom:4px;font-size:11.5px}.loading-state{flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:80px 20px;display:flex}.loading-state.hidden{display:none}.spinner{border:4px solid #ffffff1f;border-top-color:var(--pink);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:var(--ink-soft);font-family:Fredoka,sans-serif;font-size:13.5px}.goal-card{background:linear-gradient(135deg, var(--pink), #7a2e8c);border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:16px 18px;display:flex;box-shadow:0 0 26px #ff3d8140}.goal-label{color:#ffe1ee;font-family:Fredoka,sans-serif;font-size:13px;font-weight:600}.goal-days{color:#fff;font-family:Fredoka,sans-serif;font-size:24px;font-weight:700}.goal-days small{opacity:.85;font-size:12px;font-weight:600}.week-summary-card{background:var(--card);border:2px solid var(--line);border-radius:16px;justify-content:space-between;align-items:center;gap:14px;padding:18px;display:flex}.week-pct{font-family:Fredoka,sans-serif;font-size:30px;font-weight:700}.week-label{color:var(--ink-soft);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:600}.week-delta{border-radius:20px;padding:5px 10px;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:700}.week-delta.up{color:var(--moss);background:#58d68d26}.week-delta.down{color:var(--danger);background:#ff5c6c26}.week-delta.flat{color:var(--ink-soft);background:#ffffff14}.week-bar-track{background:#ffffff14;border-radius:6px;height:9px;margin-top:10px;overflow:hidden}.week-bar-fill{background:linear-gradient(90deg, var(--cyan), var(--moss));border-radius:6px;height:100%;transition:width .5s}.next-task-card{background:linear-gradient(150deg,#3a2a6b,#1b1533);border:2px solid #2fe6e666;border-radius:16px;margin-bottom:16px;padding:15px 18px}.next-task-label{text-transform:uppercase;letter-spacing:.05em;color:var(--cyan);font-family:Fredoka,sans-serif;font-size:10.5px;font-weight:700}.next-task-title{margin-top:4px;font-family:Fredoka,sans-serif;font-size:17px;font-weight:700}.next-task-meta{color:var(--ink-soft);margin-top:2px;font-family:IBM Plex Mono,monospace;font-size:12px}.routine-group{margin-bottom:16px}.routine-group-header{text-transform:uppercase;letter-spacing:.04em;border-radius:12px 12px 0 0;align-items:center;gap:8px;padding:10px 14px;font-family:Fredoka,sans-serif;font-size:12px;font-weight:700;display:flex}.routine-group-header.inprogress{background:linear-gradient(90deg, var(--cyan), var(--cyan-deep));color:#06312e}.routine-group-header.overdue{background:linear-gradient(90deg, var(--clay), #c4501e);color:#fff}.routine-group-header.upcoming{background:linear-gradient(90deg, var(--amber), #e8620c);color:#3a2600}.routine-group-header.done{background:linear-gradient(90deg, var(--moss), var(--moss-deep));color:#0f2e1c}.routine-group-body{border:2px solid var(--line);background:var(--card);border-top:none;border-radius:0 0 14px 14px;padding:10px}.routine-group-body .row{margin-bottom:8px}.routine-group-body .row:last-child{margin-bottom:0}.subtask-panel{margin:-4px 0 8px;padding-left:12px}.subtask-list{background:#ffffff08;border-radius:10px;padding:8px}.subtask-row{align-items:center;gap:8px;padding:5px 4px;display:flex}.subtask-row.done .subtask-title{opacity:.55;text-decoration:line-through}.subtask-title{flex:1;font-size:12.5px}.check.small{border-width:2px;width:17px;height:17px}.check.small svg{width:9px;height:9px}.subtask-add input{border:none;border-top:1px solid var(--line);width:100%;color:var(--ink);background:0 0;padding:8px 4px 2px;font-family:Inter,sans-serif;font-size:12.5px}.focus-mode-toggle{gap:8px;margin-bottom:24px;display:flex}.focus-mode-btn{border:2px solid var(--line);background:var(--card);color:var(--ink-soft);cursor:pointer;border-radius:12px;flex:1;padding:10px;font-family:Fredoka,sans-serif;font-size:12.5px;font-weight:700}.focus-mode-btn.active{background:var(--pink);border-color:var(--pink);color:#fff}.focus-timer-wrap{justify-content:center;padding:10px 0 20px;display:flex}.focus-controls{justify-content:center;gap:10px;margin-top:8px;display:flex}.focus-controls .btn{width:auto;padding:12px 24px}.focus-session-count{text-align:center;color:var(--ink-soft);margin-top:18px;font-family:IBM Plex Mono,monospace;font-size:12.5px}.budget-card{background:var(--card);border:2px solid var(--line);border-radius:16px;margin-top:10px;padding:16px 18px}.budget-top{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.budget-label{font-family:Fredoka,sans-serif;font-size:13px;font-weight:700}.budget-values{font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:700}.budget-values span{color:var(--ink-soft);font-weight:400}.budget-bar-track{background:#ffffff14;border-radius:6px;height:10px;overflow:hidden}.budget-bar-fill{border-radius:6px;height:100%;transition:width .4s}.budget-alert{color:var(--amber);margin-top:8px;font-size:12px;font-weight:600}.toast-container{z-index:10000;flex-direction:column;align-items:center;gap:8px;max-width:90vw;display:flex;position:fixed;top:16px;left:50%;transform:translate(-50%)}.toast{background:var(--card);color:var(--ink);opacity:0;text-align:center;border:2px solid #2fe6e673;border-radius:14px;padding:11px 18px;font-family:Fredoka,sans-serif;font-size:13px;font-weight:600;animation:.35s cubic-bezier(.25,.8,.35,1.4) forwards toastIn;transform:translateY(-14px);box-shadow:0 10px 30px #0006}.toast.out{animation:.3s forwards toastOut}@keyframes toastIn{to{opacity:1;transform:translateY(0)}}@keyframes toastOut{to{opacity:0;transform:translateY(-14px)}}@keyframes checkPop{0%{transform:scale(.65)}55%{transform:scale(1.18)}to{transform:scale(1)}}.check.checked{animation:.32s cubic-bezier(.25,.8,.35,1.4) checkPop}@keyframes rowSettle{0%{transform:scale(.985)}to{transform:scale(1)}}.row{animation:.2s rowSettle}.empty{text-align:center;color:var(--ink-soft);border:1.5px dashed var(--line);border-radius:14px;padding:30px 10px;font-size:13.5px}.add-form{background:var(--card);border:2px solid var(--line);border-radius:16px;margin-bottom:16px;padding:14px;display:none}.add-form.open{display:block}.add-form input,.add-form select{border:2px solid var(--line);background:var(--bg);width:100%;color:var(--ink);border-radius:11px;margin-bottom:8px;padding:10px 12px;font-family:Inter,sans-serif;font-size:13.5px}.add-form input::placeholder{color:var(--ink-soft)}.add-form .two{gap:8px;display:flex}.add-form .two>*{flex:1}.btn{background:var(--pink);color:#fff;cursor:pointer;width:100%;box-shadow:0 4px 0 var(--pink-deep);border:none;border-radius:14px;padding:13px 16px;font-family:Fredoka,sans-serif;font-size:14px;font-weight:700;transition:transform .1s,box-shadow .1s}.btn:active{box-shadow:0 1px 0 var(--pink-deep);transform:translateY(3px)}.btn.ghost{color:var(--ink-soft);border:2px solid var(--line);box-shadow:none;background:0 0;font-weight:600}.btn.ghost:active{transform:none}.btn-row{gap:8px;display:flex}.btn-row .btn{flex:1;width:auto}.add-toggle{border:2px dashed var(--cyan);width:100%;color:var(--cyan);cursor:pointer;background:#2fe6e61a;border-radius:14px;margin-bottom:14px;padding:12px;font-family:Fredoka,sans-serif;font-size:13.5px;font-weight:700}.balance-hero{color:var(--ink);background:linear-gradient(150deg,#3a2a6b,#241b3d);border:2px solid #ff3d8159;border-radius:20px;margin-top:6px;padding:22px;box-shadow:0 0 40px #ff3d811f}.balance-hero .l{opacity:.8;text-transform:uppercase;letter-spacing:.06em;font-size:12px;font-weight:700}.balance-hero .v{color:var(--pink);text-shadow:0 0 24px #ff3d8180;margin-top:4px;font-family:Fredoka,sans-serif;font-size:36px;font-weight:700}.tx-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:11px 0;display:flex}.tx-row:last-child{border-bottom:none}.tx-desc{font-size:13.5px;font-weight:500}.tx-date{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:11px}.tx-amt{font-family:IBM Plex Mono,monospace;font-size:14px;font-weight:600}.tx-amt.in{color:var(--moss)}.tx-amt.out{color:var(--danger)}.profile-field{margin-bottom:14px}.profile-field label{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-soft);font-size:11.5px;font-weight:600}.profile-field input{border:1px solid var(--line);background:var(--card);width:100%;color:var(--ink);border-radius:9px;margin-top:5px;padding:10px 12px;font-family:Inter,sans-serif;font-size:14px}.profile-value{color:var(--ink);background:#ffffff08;border-radius:9px;margin-top:5px;padding:10px 12px;font-family:Inter,sans-serif;font-size:14px}.section-title .edit-btn{font-family:Fredoka,sans-serif;font-size:13px;font-weight:600}.sidebar{border-right:2px solid var(--line);z-index:2000;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#1b1533;flex-direction:column;width:260px;max-width:80vw;height:100dvh;padding:26px 16px;transition:transform .28s cubic-bezier(.25,.8,.35,1);display:flex;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-logo{color:var(--pink);padding:4px 12px 22px;font-family:Fredoka,sans-serif;font-size:21px;font-weight:700}.sidebar .tab{border-radius:12px;flex-direction:row;justify-content:flex-start;gap:12px;width:100%;padding:12px 14px}.sidebar .tab.active{background:#ff3d8129}.sidebar .tab span{font-size:14px}.sidebar .tab svg{width:21px;height:21px}.sidebar .logout-btn{align-self:flex-start;margin-top:12px}.sidebar-backdrop{z-index:1999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0000008c;display:none;position:fixed;inset:0}.sidebar-backdrop.show{display:block}.hamburger-btn{z-index:1500;background:var(--card);border:2px solid var(--line);width:38px;height:38px;color:var(--ink);cursor:pointer;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;transition:transform .1s,box-shadow .1s;display:flex;position:fixed;top:24px;left:22px;box-shadow:0 3px #00000059}.hamburger-btn svg{width:18px;height:18px}.hamburger-btn:active{transform:translateY(2px);box-shadow:0 1px #00000059}.tabbar{-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);width:100%;max-width:440px;padding:8px 6px calc(8px + env(safe-area-inset-bottom));background:#171c18eb;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab{cursor:pointer;color:var(--ink-soft);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;padding:6px 2px;font-family:Fredoka,sans-serif;display:flex}.tab.active{color:var(--pink)}.tab.active svg{filter:drop-shadow(0 0 6px #ff3d81b3)}.tab svg{width:20px;height:20px}.tab span{font-size:10.5px;font-weight:700}.hidden{display:none!important}.logout-btn{color:var(--ink-soft)}::-webkit-scrollbar{width:0}@media (width>=900px){body{min-height:100vh}.shell{background-image:none;flex-direction:row;align-items:stretch;max-width:none;min-height:100vh;margin:0;display:flex}.sidebar-logo{color:var(--pink);padding:4px 12px 26px;font-family:Fredoka,sans-serif;font-size:22px;font-weight:700}.sidebar .tab:hover{background:#ffffff0f}.sidebar .logout-btn{text-align:left;margin-top:12px}.tabbar{display:none}.main{flex:1;min-width:0;height:100vh;overflow-y:auto}.top{max-width:900px;margin:0 auto;padding:34px 40px 10px}.top-row .logout-btn{display:none}.content{max-width:900px;margin:0 auto;padding:4px 40px 60px}.dashboard-grid{display:block}.view{background:var(--card);border:2px solid var(--line);border-radius:20px;padding:26px}#view-inicio .rings-wrap{padding-top:4px}.stat-grid{grid-template-columns:repeat(4,1fr)}.auth-screen{border:2px solid var(--line);border-radius:24px;max-width:420px;min-height:auto;margin:auto;box-shadow:0 30px 80px #00000073}body:has(#authScreen:not(.hidden)){justify-content:center;align-items:center;min-height:100vh;display:flex}}@media (width<=899px){input,select,textarea{font-size:16px!important}}
