@import"https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:opsz,wdth,wght@12..96,75..100,200..800&family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&family=Fraunces:ital,opsz,wght,SOFT@0,9..144,100..900,0..100;1,9..144,100..900,0..100&display=swap";@import"https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,400..700,0..1,-25..200&display=block";:root{--color-bg: #f7f4ed;--color-surface: #f7f4ed;--color-surface-elevated: #fcfbf8;--color-surface-soft: rgba(28, 28, 28, .03);--color-surface-tint: rgba(28, 28, 28, .04);--color-ink: #1c1c1c;--color-ink-strong: rgba(28, 28, 28, .83);--color-ink-body: rgba(28, 28, 28, .82);--color-ink-muted: #5f5f5d;--color-ink-soft: rgba(28, 28, 28, .4);--color-ink-faint: rgba(28, 28, 28, .04);--color-ink-rgb: 28, 28, 28;--color-text: var(--color-ink);--color-text-muted: var(--color-ink-muted);--color-cream-fg: #fcfbf8;--color-border: #eceae4;--color-border-strong: rgba(28, 28, 28, .4);--color-border-soft: rgba(28, 28, 28, .06);--color-accent: #EC4899;--color-accent-rgb: 236, 72, 153;--color-accent-hover: #DB2777;--color-accent-tint: rgba(236, 72, 153, .08);--color-accent-haze: rgba(236, 72, 153, .14);--color-accent-glow: rgba(236, 72, 153, .22);--color-primary: var(--color-accent);--color-primary-rgb: var(--color-accent-rgb);--color-primary-hover: var(--color-accent-hover);--color-primary-light: var(--color-accent-tint);--color-success: #16a34a;--color-success-tint: rgba(22, 163, 74, .1);--color-danger: #dc2626;--color-danger-tint: rgba(220, 38, 38, .08);--color-warning: #d97706;--color-warning-tint: rgba(217, 119, 6, .1);--surface-glass: rgba(252, 251, 248, .7);--surface-glass-strong: rgba(252, 251, 248, .92);--surface-soft: rgba(28, 28, 28, .03);--surface-elevated: var(--color-surface-elevated);--border-soft: var(--color-border);--border-strong: var(--color-border-strong);--font-display: "Bricolage Grotesque", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-sans: "Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-heading: var(--font-display);--font-numeric: "Fraunces", ui-serif, Georgia, "Times New Roman", serif;--font-mono: var(--font-numeric);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-2xl: 16px;--radius-3xl: 24px;--radius-full: 9999px;--shadow-inset: rgba(255, 255, 255, .2) 0px .5px 0px 0px inset, rgba(0, 0, 0, .2) 0px 0px 0px .5px inset, rgba(0, 0, 0, .05) 0px 1px 2px 0px;--shadow-focus: rgba(0, 0, 0, .1) 0px 4px 12px;--shadow-sm: 0 1px 2px rgba(28, 28, 28, .04);--shadow-md: 0 8px 24px rgba(28, 28, 28, .06);--shadow-lg: 0 24px 48px rgba(28, 28, 28, .08);--shadow-accent: 0 14px 32px rgba(236, 72, 153, .22);--shadow-accent-soft: 0 8px 20px rgba(236, 72, 153, .14);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--transition-fast: .16s var(--ease-out);--transition-normal: .28s var(--ease-out);--page-max-width: 1200px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-ink);line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}::selection{background:var(--color-accent-haze);color:var(--color-ink)}*{scrollbar-width:thin;scrollbar-color:rgba(28,28,28,.18) transparent}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#1c1c1c29;border-radius:9999px}::-webkit-scrollbar-thumb:hover{background:#1c1c1c52}.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;font-size:1.25rem;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";font-feature-settings:"liga";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.login-container:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:220px 220px;opacity:.04;mix-blend-mode:multiply;z-index:0}.summary-container{display:flex;flex-direction:column;gap:1.6rem}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-bottom:.3rem}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.stats-grid{grid-template-columns:1fr}}.stat-card{position:relative;isolation:isolate;min-height:10.4rem;background:var(--surface-elevated);border-radius:var(--radius-2xl);padding:1.4rem;display:flex;align-items:flex-start;gap:1rem;box-shadow:var(--shadow-sm);border:1px solid var(--border-soft);transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-fast);overflow:hidden}.stat-card:before{content:none}.stat-icon{width:3.4rem;height:3.4rem;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 16px 26px #0f172a1f}.stat-card.balance{grid-column:span 2;background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.06),transparent),var(--surface-elevated);border-color:rgba(var(--color-primary-rgb),.14)}.stat-card.balance .stat-value{font-size:clamp(1.7rem,2.5vw,2.2rem)}.stat-card.balance .stat-icon{background-color:var(--color-primary)}.stat-card.profit .stat-icon{background-color:var(--color-accent)}.stat-card.income .stat-icon{background-color:var(--color-success)}.stat-card.expense .stat-icon{background-color:var(--color-danger)}.stat-card.count .stat-icon{background-color:var(--color-text-muted)}.stat-card.investment .stat-icon{background-color:#0ea5e9}.stat-card h3{font-size:.72rem;color:var(--color-text-muted);font-weight:700;letter-spacing:.16em;text-transform:uppercase}.stat-value{font-size:clamp(1.45rem,2vw,1.9rem);font-weight:600;color:var(--color-text);margin-top:.45rem}.charts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem}.training-streak-card{display:flex;flex-direction:column;gap:1.1rem}.training-streak-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.training-streak-copy{display:flex;flex-direction:column;gap:.3rem}.training-streak-kicker{font-size:.68rem;color:var(--color-text-muted);font-weight:700;letter-spacing:.18em;text-transform:uppercase}.training-streak-head h3{font-family:var(--font-heading);font-size:1.7rem;line-height:1;font-weight:500}.training-streak-icon{color:var(--color-primary)}.training-streak-layout{display:grid;grid-template-columns:minmax(15rem,18rem) minmax(0,1fr);gap:1rem;align-items:stretch}.training-streak-hero{display:flex;flex-direction:column;justify-content:space-between;gap:.85rem;padding:1rem;border-radius:var(--radius-xl);border:1px solid rgba(var(--color-primary-rgb),.12);background:rgba(var(--color-primary-rgb),.07)}.training-streak-badge{width:fit-content;display:inline-flex;align-items:center;gap:.65rem;padding:.85rem 1rem;border-radius:var(--radius-xl);background:#ffffffb8;border:1px solid rgba(255,255,255,.5);color:var(--color-primary)}.training-streak-badge strong{font-family:var(--font-heading);font-size:2rem;line-height:1;color:var(--color-text)}.training-streak-meta{display:flex;flex-direction:column;gap:.35rem}.training-streak-meta span{color:var(--color-text-muted);font-size:.88rem}.training-streak-meta strong{font-size:1rem;color:var(--color-text)}.training-streak-strip{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.6rem;align-content:start}.training-streak-day{min-height:4.8rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.35rem;padding:.65rem .45rem;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:#ffffff61;color:var(--color-text-muted);text-align:center}.training-streak-day span{font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.training-streak-day strong{font-family:var(--font-mono);font-size:1rem;color:var(--color-text)}.training-streak-day.trained{border-color:rgba(var(--color-primary-rgb),.18);background:rgba(var(--color-primary-rgb),.12);color:var(--color-primary)}.training-streak-day.today{box-shadow:var(--shadow-focus)}.training-streak-foot{grid-column:1 / -1;display:inline-flex;align-items:center;gap:.55rem;color:var(--color-text-muted);font-size:.88rem}.training-streak-loading{display:flex;align-items:stretch;gap:1rem}.chart-with-legend{display:flex;align-items:center;gap:1.5rem;width:100%;height:100%}.chart-doughnut-area{flex:1;position:relative;min-height:200px;max-width:220px}.chart-custom-legend{flex:1;display:flex;flex-direction:column;gap:.6rem;min-width:0}.legend-item{display:flex;align-items:center;gap:.55rem;font-size:.85rem}.legend-dot{width:.55rem;height:.55rem;border-radius:50%;flex-shrink:0}.legend-label{flex:1;color:var(--color-text);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legend-value{font-family:var(--font-mono);font-size:.8rem;font-weight:600;color:var(--color-text-muted);flex-shrink:0}@media(max-width:640px){.charts-grid{grid-template-columns:1fr}.chart-with-legend{flex-direction:column}.chart-doughnut-area{max-width:180px}}.chart-card{min-height:25rem;display:flex;flex-direction:column;gap:1rem}.chart-card h3{font-family:var(--font-heading);font-size:1.7rem;line-height:1;font-weight:500}.chart-wrapper{flex:1;position:relative;width:100%;min-height:250px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-xl);background:#ffffff57;border:1px solid rgba(255,255,255,.3);padding:1.2rem}.health-indicator{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.25rem}.health-gauge{position:relative;width:10rem;height:10rem}.health-gauge-svg{width:100%;height:100%}.health-gauge-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.2rem}.health-gauge-label{font-family:var(--font-heading);font-size:1.5rem;font-weight:500}.health-gauge-percent{font-family:var(--font-mono);font-size:.85rem;color:var(--color-text-muted)}.health-details{display:flex;flex-direction:column;gap:.6rem;width:100%;max-width:14rem}.health-detail-row{display:flex;align-items:center;gap:.55rem;font-size:.88rem}.health-detail-row span:nth-child(2){flex:1;color:var(--color-text-muted)}.health-detail-row strong{font-family:var(--font-mono);font-size:.85rem}.health-detail-dot{width:.5rem;height:.5rem;border-radius:50%;flex-shrink:0}@media(max-width:768px){.summary-container{gap:1rem}.stat-card{min-height:auto;padding:1.15rem}.stat-card.balance{grid-column:1 / -1}.stat-card.balance .stat-value{font-size:clamp(1.4rem,5vw,1.8rem)}.stat-icon{width:2.8rem;height:2.8rem}.stat-card h3{font-size:.68rem}.stat-value{font-size:clamp(1.25rem,4vw,1.6rem)}.chart-card{min-height:20rem}.chart-card h3{font-size:1.4rem}.chart-wrapper{padding:.85rem;min-height:200px}.training-streak-head h3{font-size:1.35rem}.training-streak-layout{grid-template-columns:1fr}.training-streak-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.training-streak-day{min-height:4rem;padding:.5rem .35rem}.training-streak-day span{font-size:.62rem}.training-streak-day strong{font-size:.88rem}.training-streak-loading{flex-direction:column}.health-gauge{width:8rem;height:8rem}.health-gauge-label{font-size:1.25rem}}@media(max-width:375px){.stats-grid{gap:.85rem}.stat-card{padding:1rem;gap:.75rem}.training-streak-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.charts-grid{gap:.85rem}.chart-card{min-height:18rem}}@media(hover:hover)and (pointer:fine){.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}}.transactions-table-container{overflow-x:auto;width:100%;margin-top:2rem;padding:1.5rem;background:#fff9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-xl);box-shadow:0 20px 40px -10px #0000000d;border:1px solid rgba(255,255,255,.5);transition:box-shadow var(--transition-normal),background-color var(--transition-normal)}.transactions-table-container:hover{box-shadow:var(--shadow-md);background:#ffffffb3}.transactions-table{width:100%;border-collapse:separate;border-spacing:0}.transactions-table th{text-align:left;padding:1rem 1.5rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);font-weight:600;border-bottom:1px solid rgba(0,0,0,.05)}.transactions-table td{padding:1.25rem 1.5rem;color:var(--color-text);font-size:.95rem;border-bottom:1px solid rgba(0,0,0,.03);transition:background-color var(--transition-fast),color var(--transition-fast);vertical-align:middle}.transactions-table tr:last-child td{border-bottom:none}.transactions-table tbody tr{transition:background-color var(--transition-fast),color var(--transition-fast);border-radius:var(--radius-sm)}.transactions-table tbody tr:hover td{background-color:#ffffff80}.transactions-table tbody tr:hover td:first-child{border-top-left-radius:var(--radius-sm);border-bottom-left-radius:var(--radius-sm)}.transactions-table tbody tr:hover td:last-child{border-top-right-radius:var(--radius-sm);border-bottom-right-radius:var(--radius-sm)}.footer-stat.income .stat-value{color:var(--color-success)}.footer-stat.expense .stat-value{color:var(--color-danger)}.footer-stat.balance.positive .stat-value{color:var(--color-success)}.footer-stat.balance.negative .stat-value{color:var(--color-danger)}@media(max-width:640px){.transactions-table thead{display:none}.date-picker-container{margin-top:.75rem;margin-bottom:1.25rem!important;justify-content:center!important;width:100%}.transactions-table tbody tr{display:flex;flex-direction:column;position:relative;overflow:hidden;width:100%}.transactions-table td{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:right}.transactions-table td:last-child{border-bottom:none!important;justify-content:center}}.pagination-container{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem 0;margin-top:1rem;border-top:1px solid rgba(0,0,0,.05)}.pagination-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-sm);background:#fff;border:1px solid var(--color-border);color:var(--color-text);cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast)}.pagination-btn:disabled{opacity:.5;cursor:not-allowed;background:#00000005}.pagination-info{font-size:.9rem;font-weight:500;color:var(--color-text-muted)}@media(max-width:640px){.pagination-container{padding:.5rem 0;margin-top:.5rem}}.transactions-search-bar{display:flex;gap:.75rem;margin-bottom:.25rem}.transactions-search-input-wrap{position:relative;flex:1}.transactions-search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--color-text-muted);pointer-events:none}.transactions-search-field{padding-left:2.75rem!important}.transactions-account-filter{max-width:14rem;min-width:10rem}@media(max-width:640px){.transactions-search-bar{flex-direction:column}.transactions-account-filter{max-width:none}}.filters-container{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.filters{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem;border-radius:var(--radius-full);background:var(--color-surface-elevated);border:1px solid var(--color-border);box-shadow:none}.filter-btn{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;padding:.5rem .95rem;border:1px solid transparent;border-radius:var(--radius-full);background:transparent;color:var(--color-ink-muted);font-family:var(--font-sans);font-size:.88rem;font-weight:500;letter-spacing:-.005em;line-height:1;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.filter-btn:hover{color:var(--color-ink);background:var(--color-ink-faint)}.filter-btn.active{background:var(--color-surface);color:var(--color-ink);border-color:var(--color-border);box-shadow:var(--shadow-sm);font-weight:600}.filter-btn.active:after{content:"";width:5px;height:5px;border-radius:9999px;background:var(--color-accent);margin-left:.5rem}.transactions-table-container{margin-top:1.35rem;padding:1.35rem;background:var(--surface-elevated);border-radius:var(--radius-2xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-soft);transition:box-shadow var(--transition-normal),background-color var(--transition-normal),border-color var(--transition-normal)}.transactions-table th{padding:.9rem 1rem;font-size:.68rem;letter-spacing:.18em;font-weight:700;border-bottom:1px solid var(--border-soft)}.transactions-table td{padding:1rem;border-bottom:1px solid rgba(15,23,42,.06);transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.transactions-table tbody tr:nth-child(2n) td{background:var(--surface-soft)}.date-picker-container{margin-bottom:1rem}.pagination-container{justify-content:flex-end;gap:.85rem;margin-top:1.25rem;border-top:none}.pagination-btn{width:2.5rem;height:2.5rem;border-radius:999px;border:1px solid var(--border-soft);background:var(--surface-glass);transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.pagination-info{font-size:.85rem}.transactions-footer{margin-top:1.25rem;padding:1.35rem 1.5rem;background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.04),transparent),#fff7f8b3;border-radius:var(--radius-xl);border:1px solid rgba(var(--color-primary-rgb),.1);gap:1rem;box-shadow:var(--shadow-sm)}.footer-label{font-size:.72rem;font-weight:700;letter-spacing:.18em}.footer-stats{gap:2.5rem;flex-wrap:wrap}.stat-label{letter-spacing:.16em}.stat-value{font-size:1.3rem;font-weight:600}.transaction-type-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.transaction-type-btn{min-height:3.2rem;border-radius:var(--radius-full);border:1px solid var(--border-soft);background:linear-gradient(180deg,#fff3,#fff0),var(--surface-glass);color:var(--color-text);box-shadow:inset 0 1px #ffffff38,0 12px 24px rgba(var(--color-primary-rgb),.05);font-weight:700;letter-spacing:-.02em;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.transaction-type-btn.income.active{border-color:#10b98133;background:#10b9811f;color:#065f46}.transaction-type-btn.expense.active{border-color:rgba(var(--color-primary-rgb),.24);background:rgba(var(--color-primary-rgb),.14);color:var(--color-primary-hover)}.transaction-recurrence-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.transaction-recurrence-btn{min-height:3.2rem;padding:.92rem 1rem;border-radius:var(--radius-full);font-size:.94rem;letter-spacing:-.02em}.transaction-recurrence-btn.btn-outline{background:linear-gradient(180deg,#ffffff3d,#fff0),var(--surface-glass);border-color:var(--border-soft);box-shadow:inset 0 1px #ffffff38,0 12px 24px rgba(var(--color-primary-rgb),.05)}@media(max-width:640px){.transactions-table-container{background:transparent!important;border:none!important;box-shadow:none!important;padding:0!important}.transactions-table tbody tr{background:var(--surface-elevated);border-radius:var(--radius-xl);padding:.85rem 1rem;margin-bottom:.65rem;border:1px solid var(--border-soft);box-shadow:var(--shadow-sm);align-items:stretch}.transactions-table td{gap:.75rem;padding:.5rem 0;border-bottom:1px solid rgba(15,23,42,.06)!important;font-size:.88rem}.transactions-table td:before{content:attr(data-label);color:var(--color-text-muted);font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;flex-shrink:0}.transactions-table td:first-child{padding-top:.1rem;justify-content:space-between;font-size:.84rem;color:var(--color-text-muted)}.transactions-table td:first-child:before{display:block}.transactions-table td[data-label=Descrição]{justify-content:space-between;font-size:1rem;font-weight:600;padding:.55rem 0}.transactions-table td[data-label=Descrição]:before{display:block}.transactions-table td[data-label=Valor]{font-family:var(--font-mono);font-weight:600;font-size:.92rem}.transactions-table td:last-child{padding-top:.65rem;border-bottom:none!important}.transactions-footer{flex-direction:column;align-items:flex-start;text-align:left;padding:1.15rem 1rem calc(6rem + env(safe-area-inset-bottom,0px)) 1rem}.footer-stats{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.footer-stat{background:#ffffff8c;border:1px solid var(--border-soft);border-radius:var(--radius-lg);padding:.75rem .85rem;align-items:flex-start;min-height:4.5rem;display:flex;flex-direction:column;justify-content:center}.footer-stat .stat-label{font-size:.68rem}.footer-stat .stat-value{font-size:1.1rem}.footer-stat.balance{grid-column:1 / -1}.pagination-container{justify-content:center}.transaction-form-split{flex-direction:column;gap:1rem}.transaction-recurrence-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.transaction-recurrence-options>:last-child{grid-column:1 / -1}.transaction-form-actions{flex-direction:column-reverse;gap:.65rem}.transaction-form-actions .btn{width:100%;justify-content:center;min-height:3rem}.filters-container{gap:.75rem}.filters{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.filter-btn{white-space:nowrap;flex-shrink:0}}@media(max-width:375px){.transactions-table tbody tr{padding:.75rem .85rem;margin-bottom:.55rem}.transactions-table td{font-size:.84rem}.transactions-table td[data-label=Descrição]{font-size:.95rem}.footer-stat .stat-value{font-size:1rem}}@media(hover:hover)and (pointer:fine){.icon-btn:hover{background-color:var(--color-bg);color:var(--color-primary);transform:translateY(-1px)}.delete-hover:hover{background-color:#f43f5e14;color:var(--color-danger)}.pagination-btn:hover:not(:disabled){background:var(--color-bg);border-color:var(--color-text-muted)}.transactions-table-container:hover{box-shadow:var(--shadow-md);background:var(--surface-elevated)}.transactions-table tbody tr:hover td{background-color:rgba(var(--color-primary-rgb),.04)}.transactions-table tbody tr:hover td:first-child{border-top-left-radius:.9rem;border-bottom-left-radius:.9rem}.transactions-table tbody tr:hover td:last-child{border-top-right-radius:.9rem;border-bottom-right-radius:.9rem}.icon-btn:hover{background-color:rgba(var(--color-primary-rgb),.08);border-color:rgba(var(--color-primary-rgb),.12)}.delete-hover:hover{background-color:#ef444414}.pagination-btn:hover:not(:disabled){transform:translateY(-1px);border-color:rgba(var(--color-primary-rgb),.16)}.transaction-type-btn:hover{transform:translateY(-1px);border-color:var(--border-strong)}}@media(hover:hover)and (pointer:fine)and (max-width:640px){.transactions-table tbody tr:hover{box-shadow:var(--shadow-md)}}@media(max-width:360px){.filters{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.filter-btn{padding:.66rem .5rem;font-size:.78rem;white-space:nowrap}.transactions-footer{padding-left:0;padding-right:0}.footer-stat{padding:.65rem}.stat-value{font-size:1.05rem}}.accounts-header{display:flex;justify-content:flex-end;align-items:center;margin-bottom:2rem}.accounts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.account-card-content{display:flex;flex-direction:column;gap:1rem;min-width:0}.account-name{font-weight:600;word-break:break-word}@media(max-width:640px){.accounts-grid{grid-template-columns:1fr;gap:1rem}}.account-icon-wrapper{padding:.5rem;background:var(--color-primary-light);border-radius:var(--radius-md);color:var(--color-primary)}.account-name{font-weight:600}.account-balance{font-size:1.5rem;font-weight:700;color:var(--color-text)}@media(max-width:640px){.accounts-header{flex-direction:column;align-items:stretch;gap:.85rem;margin-bottom:1rem}.accounts-header .btn{width:100%;justify-content:center;min-height:3rem}.accounts-grid{grid-template-columns:1fr;gap:.85rem}.account-card-content{min-height:auto;gap:1rem;padding:1.15rem}.account-icon-wrapper{width:2.75rem;height:2.75rem}.account-balance{font-size:clamp(1.3rem,5vw,1.7rem)}.accounts-total-card{margin-bottom:1rem;padding:1.15rem}}.accounts-total-card{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1.4rem;background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.06),transparent),var(--surface-elevated);border-color:rgba(var(--color-primary-rgb),.12)}.accounts-header{gap:1rem;margin-bottom:1.4rem;flex-wrap:wrap;justify-content:flex-end}.accounts-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.2rem}.account-card-content{gap:1.4rem;min-height:13.5rem;justify-content:space-between;transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-fast)}.account-name{font-size:1.05rem}.account-icon-wrapper{width:3.25rem;height:3.25rem;display:flex;align-items:center;justify-content:center;padding:0;background:rgba(var(--color-primary-rgb),.12);border-radius:var(--radius-md);color:var(--color-primary);box-shadow:inset 0 1px #ffffff57}.account-balance{font-size:clamp(1.5rem,2.2vw,1.9rem);font-weight:600;margin:.35rem 0}@media(hover:hover)and (pointer:fine){.account-card-content:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}}.categories-grid{display:grid;grid-template-columns:1fr;gap:1rem;margin-top:1.5rem;width:100%}.category-card{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;transition:transform var(--transition-normal),box-shadow var(--transition-normal),border-color var(--transition-fast);width:100%;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.category-icon{width:48px;height:48px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;transition:transform var(--transition-fast)}.category-badge{display:none}.delete-btn{color:var(--color-text-muted);padding:.5rem;border-radius:var(--radius-full);transition:color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast)}.filters{display:flex;gap:.5rem;background-color:var(--color-surface);padding:.25rem;border-radius:var(--radius-md);border:1px solid var(--color-border);width:fit-content}@media(max-width:640px){.filters{flex-wrap:wrap;width:100%}.categories-grid{margin-top:1rem}}.filter-btn{padding:.5rem 1rem;border-radius:var(--radius-sm);border:none;background:transparent;color:var(--color-text-muted);font-size:.9rem;font-weight:500;cursor:pointer;transition:background-color var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.filter-btn.active{background-color:var(--color-primary-light);color:var(--color-primary)}.filters-container{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.categories-grid{gap:.95rem;margin-top:1.35rem}.category-card{gap:1rem;padding:1.2rem 1.35rem;border-radius:var(--radius-xl);transition:transform var(--transition-normal),border-color var(--transition-fast),box-shadow var(--transition-normal)}.category-icon{width:3.2rem;height:3.2rem;border-radius:var(--radius-md);box-shadow:inset 0 1px #ffffff57}.filters{background:var(--surface-glass);padding:.3rem;border-radius:var(--radius-full);border:1px solid var(--border-soft);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.filter-btn{padding:.7rem 1.15rem;border-radius:var(--radius-full);font-size:.88rem;font-weight:700;letter-spacing:-.02em}.filter-btn.active{background:rgba(var(--color-primary-rgb),.12);box-shadow:0 12px 22px rgba(var(--color-primary-rgb),.12)}.category-type-selector{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.category-type-btn{min-height:3.2rem;display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.95rem 1rem;border:1px solid var(--border-soft);border-radius:var(--radius-full);background:linear-gradient(180deg,#fff3,#fff0),var(--surface-glass);color:var(--color-text);font-weight:700;box-shadow:inset 0 1px #ffffff38,0 12px 24px rgba(var(--color-primary-rgb),.05);transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.category-type-btn.income.active{border-color:#10b98133;background:#10b9811f;color:#065f46}.category-type-btn.expense.active{border-color:rgba(var(--color-primary-rgb),.24);background:rgba(var(--color-primary-rgb),.14);color:var(--color-primary-hover)}@media(max-width:640px){.filters-container{gap:.75rem}.filters{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.filters::-webkit-scrollbar{display:none}.filter-btn{white-space:nowrap;flex-shrink:0}.categories-grid{gap:.65rem;margin-top:1rem}.category-card{padding:1rem 1.1rem}.category-icon{width:2.75rem;height:2.75rem}}.color-picker{display:flex;gap:.75rem;flex-wrap:wrap}.color-circle{width:36px;height:36px;border-radius:50%;border:2px solid transparent;cursor:pointer;transition:transform var(--transition-fast)}.color-circle.active{border-color:var(--color-text);transform:scale(1.1)}@media(max-width:640px){.color-picker{gap:.6rem}.color-circle{width:38px;height:38px}}@media(hover:hover)and (pointer:fine){.category-card:hover{transform:translate(5px);box-shadow:var(--shadow-md);border-color:var(--color-primary-light)}.category-card:hover .category-icon{transform:scale(1.1) rotate(5deg)}.delete-btn:hover{color:var(--color-danger);background-color:#f43f5e14;transform:scale(1.1)}.category-card:hover{transform:translate(5px) translateY(-1px);border-color:rgba(var(--color-primary-rgb),.12)}.category-type-btn:hover{transform:translateY(-1px);border-color:var(--border-strong)}.color-circle:hover{transform:scale(1.1)}}.reports-container{display:flex;flex-direction:column;gap:1.25rem;padding-bottom:2rem}.reports-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.reports-period-pill{display:inline-flex;align-items:center;min-height:2.65rem;padding:.55rem 1rem;border-radius:var(--radius-full);border:1px solid var(--border-soft);background:#fff8f9d1;color:var(--color-text);font-family:var(--font-heading);font-size:1.02rem;line-height:1;text-transform:capitalize}.reports-state{min-height:10rem;display:flex;align-items:center;justify-content:center}.reports-state-danger{color:var(--color-danger)}.reports-metrics-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.9rem}.report-metric-card,.report-side-card,.report-panel,.reports-table-card{padding:1.2rem}.report-metric-card{display:flex;flex-direction:column;gap:.45rem;min-height:8.7rem;justify-content:space-between}.report-metric-label,.report-panel-label{font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted)}.report-metric-value,.report-side-value{font-family:var(--font-heading);font-size:1.5rem;line-height:1.05;font-weight:500;letter-spacing:-.03em;color:var(--color-text)}.report-metric-value.positive,.report-side-value.positive{color:var(--color-success)}.report-metric-value.negative,.report-side-value.negative{color:var(--color-danger)}.reports-analysis-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:1rem}.report-panel{display:flex;flex-direction:column;gap:1rem}.report-panel-header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.report-panel-split-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(15rem,.9fr);gap:1rem}.chart-container-large,.chart-container-medium{position:relative;min-height:20rem}.report-compact-list{display:grid;gap:.7rem;align-content:start}.report-compact-item{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem;padding:.9rem 1rem;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:#fff8f9cc}.report-compact-main{display:flex;align-items:flex-start;gap:.75rem;min-width:0}.report-compact-main strong{display:block;color:var(--color-text);line-height:1.35}.report-compact-main span:last-child{display:block;margin-top:.15rem;color:var(--color-text-muted);font-size:.84rem;line-height:1.4}.report-compact-rank{flex-shrink:0;width:1.4rem;color:var(--color-text-muted);font-size:.72rem;font-weight:700}.report-compact-value{flex-shrink:0;font-family:var(--font-mono);font-size:.86rem;font-weight:600;color:var(--color-text)}.report-compact-empty{display:flex;align-items:center;justify-content:center;min-height:100%;padding:1rem;border-radius:var(--radius-lg);border:1px dashed var(--border-strong);color:var(--color-text-muted)}.reports-detail-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(16rem,.72fr);gap:1rem}.table-wrapper{margin-top:.3rem;border-radius:var(--radius-xl);border:1px solid var(--border-soft);background:#fff8f9b3;overflow:auto;-webkit-overflow-scrolling:touch}.modern-table{width:100%;border-collapse:collapse;min-width:20rem}.modern-table thead{position:sticky;top:0;z-index:1;background:#fff8f9f7}.modern-table th{padding:.95rem 1rem;text-align:left;font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted);border-bottom:1px solid var(--border-soft)}.modern-table td{padding:1rem;border-bottom:1px solid rgba(15,23,42,.06);color:var(--color-text);font-size:.94rem}.modern-table tr:last-child td{border-bottom:none}.modern-table tr:hover td{background:rgba(var(--color-primary-rgb),.03)}.category-cell{display:flex;align-items:center;gap:.8rem;font-weight:600}.category-rank{min-width:1.55rem;color:var(--color-text-muted);font-size:.78rem;font-weight:700}.amount-cell,.percentage-cell{text-align:right;font-weight:600}.percentage-cell{color:var(--color-text-muted)}.pareto-bar-container{position:relative;display:flex;align-items:center;justify-content:flex-end;min-width:5rem;height:1.6rem;border-radius:var(--radius-sm);background:rgba(var(--color-primary-rgb),.04);overflow:hidden}.pareto-bar-fill{position:absolute;left:0;top:0;bottom:0;background:rgba(var(--color-primary-rgb),.12);border-radius:var(--radius-sm);transition:width .6s ease}.pareto-bar-label{position:relative;z-index:1;padding:0 .5rem;font-size:.78rem;font-weight:600;color:var(--color-text-muted)}.reports-side-grid{display:grid;gap:.8rem;align-content:start}.report-side-card{display:flex;flex-direction:column;gap:.35rem}.report-side-subvalue{color:var(--color-text-muted);font-size:.82rem;line-height:1.45}.empty-data{display:flex;align-items:center;justify-content:center;min-height:100%;color:var(--color-text-muted);font-style:italic}.reports-empty-row{padding:2rem!important}@media(max-width:1240px){.reports-metrics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.reports-analysis-grid,.reports-detail-grid,.report-panel-split-grid{grid-template-columns:1fr}}@media(max-width:720px){.reports-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.reports-container{gap:.85rem}.reports-toolbar{align-items:stretch;gap:.75rem}.reports-toolbar .react-datepicker-wrapper,.reports-toolbar .custom-datepicker-input{width:100%}.reports-period-pill{font-size:.92rem;padding:.45rem .85rem}.report-metric-card,.report-side-card,.report-panel,.reports-table-card{padding:1rem}.reports-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.report-metric-card{min-height:auto;gap:.35rem}.report-metric-value,.report-side-value{font-size:1.25rem}.chart-container-large,.chart-container-medium{min-height:14rem}.report-compact-item{padding:.75rem .85rem}.report-compact-main strong{font-size:.92rem}.report-compact-value{font-size:.82rem}.table-wrapper{background:transparent;border:none;overflow:visible}.modern-table{min-width:0}.modern-table thead{display:none}.modern-table tbody{display:flex;flex-direction:column;gap:.65rem}.modern-table tr{display:flex;flex-direction:column;gap:0;padding:.65rem .95rem;border-radius:var(--radius-xl);border:1px solid var(--border-soft);background:var(--surface-elevated);box-shadow:var(--shadow-sm);overflow:hidden}.modern-table td{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;width:100%;padding:.65rem 0;border-bottom:1px solid rgba(15,23,42,.06);font-size:.88rem}.modern-table td:before{content:attr(data-label);color:var(--color-text-muted);font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;flex-shrink:0}.modern-table td:first-child{padding-top:.25rem;border-bottom:1px solid rgba(15,23,42,.08)}.modern-table td:first-child:before{display:none}.modern-table td:last-child{border-bottom:none;padding-bottom:.25rem}.category-cell{flex-direction:column;align-items:flex-start;gap:.2rem}.category-rank{min-width:0;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.pareto-bar-container{min-width:4rem;height:1.4rem}.report-side-card{gap:.25rem}.report-side-value{font-size:1.15rem}}@media(max-width:375px){.reports-metrics-grid{grid-template-columns:1fr}.report-metric-value,.report-side-value{font-size:1.15rem}}.training-page{display:flex;flex-direction:column;gap:1rem;padding-bottom:2rem}.training-mobile{gap:1rem;padding-bottom:calc(7.5rem + env(safe-area-inset-bottom,0px))}.training-day-chips{display:flex;gap:.4rem;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:.15rem .15rem .35rem;margin:0 -.15rem;scrollbar-width:none}.training-day-chips::-webkit-scrollbar{display:none}.training-day-chip{flex-shrink:0;display:inline-flex;align-items:center;gap:.4rem;padding:.5rem .9rem;border-radius:var(--radius-full);border:1px solid var(--color-border);background:transparent;color:var(--color-ink-muted);font-family:var(--font-sans);font-size:.86rem;font-weight:500;line-height:1;cursor:pointer;white-space:nowrap;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast)}.training-day-chip-label{color:inherit}.training-day-chip-check{color:var(--color-accent)}.training-day-chip.active{background:var(--color-ink);color:var(--color-cream-fg);border-color:var(--color-ink)}.training-day-chip.active .training-day-chip-check{color:var(--color-accent)}.training-day-chip.completed:not(.active){color:var(--color-accent);border-color:var(--color-accent)}.training-day-chip-add{width:2.4rem;height:2.4rem;padding:0;justify-content:center;color:var(--color-ink-muted)}@media(hover:hover)and (pointer:fine){.training-day-chip:not(.active):hover{background:var(--color-ink-faint);color:var(--color-ink)}}.training-summary{display:flex;flex-direction:column;gap:.95rem;padding:1.2rem 1.15rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-2xl)}.training-summary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.training-summary-copy{display:flex;flex-direction:column;gap:.2rem;min-width:0}.training-summary-title{font-family:var(--font-display);font-variation-settings:"wdth" 95;font-size:clamp(1.6rem,5vw,2.1rem);font-weight:600;line-height:1.05;letter-spacing:-.034em;color:var(--color-ink);margin:0;overflow-wrap:anywhere}.training-summary-focus{font-size:.86rem;color:var(--color-ink-muted);line-height:1.3;margin:0}.training-summary-actions{display:flex;gap:.3rem;flex-shrink:0}.training-summary-action{appearance:none;width:2.15rem;height:2.15rem;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:1px solid var(--color-border);background:transparent;color:var(--color-ink-muted);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast)}.training-summary-action:hover{color:var(--color-ink);background:var(--color-ink-faint)}.training-summary-bar{position:relative;height:4px;border-radius:9999px;background:var(--color-ink-faint);overflow:hidden}.training-summary-bar-fill{position:absolute;inset:0 auto 0 0;background:var(--color-accent);border-radius:9999px;transition:width .48s var(--ease-out)}.training-summary-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:.4rem;margin:0}.training-summary-meta>div{display:flex;flex-direction:column;gap:.1rem;min-width:0}.training-summary-meta dt{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-muted);font-weight:500}.training-summary-meta dd{margin:0;font-family:var(--font-numeric);font-variation-settings:"opsz" 28,"SOFT" 35,"wght" 480;font-feature-settings:"lnum","tnum";font-size:1.15rem;color:var(--color-ink);letter-spacing:-.02em;line-height:1.05;white-space:nowrap}.training-summary-next{display:flex;align-items:center;gap:.55rem;padding:.6rem .85rem;border-radius:var(--radius-md);background:var(--color-accent-tint)}.training-summary-next>span{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent);font-weight:600;flex-shrink:0}.training-summary-next>strong{font-family:var(--font-display);font-variation-settings:"wdth" 96;font-size:.98rem;line-height:1.15;color:var(--color-ink);letter-spacing:-.018em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.training-summary-next.done{background:var(--color-ink-faint);color:var(--color-ink)}.training-summary-next.done>strong{color:var(--color-ink)}.training-exercises{display:flex;flex-direction:column;gap:.85rem}.training-exercise-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.75rem}.training-exercise-card{display:flex;flex-direction:column;gap:.85rem;padding:.95rem 1rem 1rem;background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-xl);transition:border-color var(--transition-fast),background-color var(--transition-fast);position:relative}.training-exercise-card.upnext{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-tint)}.training-exercise-card.completed{background:var(--color-ink-faint);border-color:transparent;opacity:.78}.training-exercise-card.resting{border-color:var(--color-accent)}.training-exercise-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.7rem}.training-exercise-index{font-family:var(--font-numeric);font-variation-settings:"opsz" 24,"SOFT" 30,"wght" 480;font-feature-settings:"lnum","tnum";font-size:.92rem;color:var(--color-ink-muted);letter-spacing:-.01em;align-self:flex-start;margin-top:.15rem}.training-exercise-card.completed .training-exercise-index{color:var(--color-accent)}.training-exercise-head-copy{display:flex;flex-direction:column;gap:.15rem;min-width:0}.training-exercise-focus{font-size:.65rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--color-accent)}.training-exercise-name{font-family:var(--font-display);font-variation-settings:"wdth" 96;font-size:1.05rem;line-height:1.2;font-weight:600;letter-spacing:-.018em;color:var(--color-ink);overflow-wrap:anywhere;word-break:break-word}.training-exercise-meta{display:flex;align-items:center;flex-wrap:wrap;gap:.35rem;font-size:.78rem;color:var(--color-ink-muted);font-feature-settings:"lnum","tnum";line-height:1.3}.training-exercise-meta>span:first-child{color:var(--color-accent);font-weight:600;text-transform:uppercase;font-size:.66rem;letter-spacing:.12em;margin-right:.1rem}.training-exercise-card.completed .training-exercise-meta>span:first-child{color:var(--color-ink-muted)}.training-exercise-head-actions{display:flex;gap:.2rem;flex-shrink:0}.training-exercise-action{appearance:none;width:1.95rem;height:1.95rem;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);border:none;background:transparent;color:var(--color-ink-muted);cursor:pointer;transition:color var(--transition-fast),background-color var(--transition-fast)}.training-exercise-action:hover{color:var(--color-ink);background:var(--color-ink-faint)}.training-exercise-action.danger:hover{color:var(--color-danger);background:var(--color-danger-tint)}.training-set-row{display:flex;flex-direction:column;gap:.45rem}.training-set-row-label{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-muted);font-weight:600;font-feature-settings:"lnum","tnum"}.training-set-dots{display:flex;flex-wrap:wrap;gap:.5rem}.training-set-dot{appearance:none;-webkit-appearance:none;flex:1 1 2.75rem;min-width:2.75rem;height:3rem;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:var(--radius-md);border:1.5px solid var(--color-border);background:var(--color-surface);color:var(--color-ink-muted);font-family:var(--font-numeric);font-variation-settings:"opsz" 24,"SOFT" 30,"wght" 500;font-feature-settings:"lnum","tnum";font-size:1.05rem;line-height:1;cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform .12s var(--ease-out)}.training-set-dot:active{transform:scale(.94)}.training-set-dot.done{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-cream-fg)}.training-set-dot.done svg{stroke-width:2.4}@media(hover:hover)and (pointer:fine){.training-set-dot:not(.done):hover{border-color:var(--color-ink-soft);color:var(--color-ink)}.training-set-dot.done:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}}.training-exercise-rest{display:flex;align-items:center;gap:.6rem;padding:.55rem .85rem;border-radius:var(--radius-md);background:var(--color-accent-tint);color:var(--color-ink)}.training-exercise-rest>span:first-child{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;font-weight:600;color:var(--color-accent)}.training-exercise-rest strong{margin-left:auto;font-family:var(--font-numeric);font-variation-settings:"opsz" 28,"SOFT" 30,"wght" 480;font-feature-settings:"lnum","tnum";font-size:1.1rem;color:var(--color-ink);letter-spacing:-.015em}.training-exercise-rest-skip{appearance:none;background:transparent;border:1px solid var(--color-accent);border-radius:var(--radius-full);padding:.3rem .7rem;color:var(--color-accent);font-size:.72rem;font-weight:600;letter-spacing:.04em;cursor:pointer}.training-rest-floater{position:fixed;left:1rem;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom,0px));z-index:70;display:grid;grid-template-columns:1fr auto;align-items:center;gap:.85rem;padding:.85rem 1rem;background:var(--color-ink);color:var(--color-cream-fg);border-radius:var(--radius-2xl);box-shadow:#ffffff26 0 .5px inset,#0000002e 0 0 0 .5px inset,0 18px 40px #1c1c1c38;animation:trainingFloaterIn .32s var(--ease-out)}@keyframes trainingFloaterIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.training-rest-floater-info{display:flex;flex-direction:column;gap:.05rem;min-width:0}.training-rest-floater-label{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:#fcfbf8b3;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.training-rest-floater-time{font-family:var(--font-numeric);font-variation-settings:"opsz" 96,"SOFT" 30,"wght" 480;font-feature-settings:"lnum","tnum";font-size:1.65rem;line-height:1;letter-spacing:-.025em;color:var(--color-cream-fg)}.training-rest-floater-actions{display:flex;gap:.3rem;align-items:center}.training-rest-floater-btn{appearance:none;border:1px solid rgba(252,251,248,.18);background:transparent;color:var(--color-cream-fg);border-radius:var(--radius-full);padding:.5rem .7rem;font-size:.78rem;font-weight:500;cursor:pointer;min-width:2.5rem;min-height:2.5rem;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast)}.training-rest-floater-btn:hover{background:#fcfbf81a}.training-rest-floater-btn.primary{background:var(--color-accent);border-color:var(--color-accent);width:2.75rem;padding:0}.training-rest-floater-btn.primary:hover{background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.training-fab{position:fixed;right:1.15rem;bottom:calc(1.25rem + env(safe-area-inset-bottom,0px));z-index:60;width:3.5rem;height:3.5rem;border-radius:9999px;border:none;background:var(--color-accent);color:var(--color-cream-fg);box-shadow:var(--shadow-accent);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast),opacity var(--transition-fast)}.training-fab:hover{background:var(--color-accent-hover)}.training-page:has(.training-rest-floater) .training-fab{bottom:calc(6.25rem + env(safe-area-inset-bottom,0px))}@media(min-width:900px){.training-mobile{max-width:44rem;margin:0 auto}.training-rest-floater{left:auto;right:1.5rem;bottom:1.5rem;width:min(28rem,calc(100vw - 3rem))}}@media(max-width:360px){.training-summary-meta{grid-template-columns:repeat(2,1fr);row-gap:.65rem}}.training-selector-surface{max-width:22rem}.training-selector-row{display:flex;align-items:flex-end;gap:.75rem}.training-kicker,.training-exercise-focus,.training-metric-tile span,.training-rest-display span{font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted)}.training-selector-group{width:100%;flex:1}.training-selector-dropdown{position:relative}.training-selector-trigger{width:100%;min-height:3.25rem;display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:.85rem 1.05rem;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:var(--surface-glass);color:var(--color-text);box-shadow:inset 0 1px #ffffff38,0 12px 24px rgba(var(--color-primary-rgb),.04);transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast)}.training-selector-trigger.open{border-color:rgba(var(--color-primary-rgb),.4);box-shadow:var(--shadow-focus);transform:translateY(-1px)}.training-selector-trigger-copy{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:.2rem;text-align:left}.training-selector-current-label{font-size:.96rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.training-selector-current-meta{color:var(--color-text-muted);font-size:.78rem;line-height:1.2}.training-selector-chevron{flex-shrink:0;color:var(--color-text-muted);transition:transform var(--transition-fast),color var(--transition-fast)}.training-selector-chevron.open{transform:rotate(180deg);color:var(--color-text)}.training-selector-menu{position:absolute;top:calc(100% + .45rem);left:0;right:0;z-index:30;display:flex;flex-direction:column;gap:.35rem;padding:.4rem;border-radius:var(--radius-xl);border:1px solid var(--border-soft);background:#fff8f9fa;box-shadow:0 24px 48px rgba(var(--color-primary-rgb),.14),inset 0 1px #fff6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);opacity:0;pointer-events:none;transform:translateY(-6px);transition:opacity var(--transition-fast),transform var(--transition-fast)}.training-selector-menu.open{opacity:1;pointer-events:auto;transform:translateY(0)}.training-selector-option{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.85rem;padding:.82rem .9rem;border-radius:var(--radius-lg);border:1px solid transparent;background:transparent;color:var(--color-text);text-align:left;transition:border-color var(--transition-fast),background-color var(--transition-fast),transform var(--transition-fast)}.training-selector-option.active{border-color:rgba(var(--color-primary-rgb),.18);background:rgba(var(--color-primary-rgb),.1)}.training-selector-option.completed:not(.active){opacity:.82}.training-selector-option-copy{min-width:0;display:flex;flex-direction:column;gap:.18rem}.training-selector-option-copy strong{font-size:.92rem;font-weight:700;letter-spacing:-.02em;color:var(--color-text)}.training-selector-option-copy span{color:var(--color-text-muted);font-size:.76rem}.training-selector-option-badge{display:inline-flex;align-items:center;justify-content:center;min-width:2.4rem;min-height:1.7rem;padding:.2rem .45rem;border-radius:var(--radius-full);background:rgba(var(--color-primary-rgb),.12);color:var(--color-text);font-family:var(--font-mono);font-size:.72rem;line-height:1}.training-add-day-btn{min-height:3.25rem;padding-inline:1rem;white-space:nowrap}.training-dashboard{display:flex;flex-direction:column;gap:.95rem;padding:1.05rem 1.1rem}.training-dashboard-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.85rem}.training-dashboard-actions{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;justify-content:flex-end}.training-dashboard-copy{display:flex;flex-direction:column;gap:.25rem}.training-dashboard-title{font-family:var(--font-heading);font-size:clamp(1.55rem,3vw,2rem);line-height:.98;font-weight:500;color:var(--color-text)}.training-dashboard-subtitle{color:var(--color-text-muted);font-size:.88rem}.training-reset-btn{min-height:2.9rem;white-space:nowrap}.training-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem}.training-metric-tile{display:flex;flex-direction:column;gap:.3rem;min-height:5rem;padding:.85rem .9rem;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:#fff8f9b3}.training-metric-tile strong{font-family:var(--font-heading);font-size:1.15rem;line-height:1;color:var(--color-text)}.training-progress-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.training-progress-head strong{font-family:var(--font-mono);font-size:1rem}.training-progress-track{width:100%;height:.55rem;border-radius:999px;background:rgba(var(--color-primary-rgb),.12);overflow:hidden}.training-progress-bar{height:100%;border-radius:inherit;background:rgba(var(--color-primary-rgb),.82);transition:width var(--transition-normal)}.training-list-shell{padding:0;overflow:hidden}.training-list-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:1rem 1.1rem .85rem;border-bottom:1px solid rgba(var(--color-primary-rgb),.06)}.training-list-header-copy{display:flex;flex-direction:column;gap:.15rem}.training-list-header strong{font-family:var(--font-heading);font-size:1.05rem;font-weight:500;color:var(--color-text)}.training-list{display:flex;flex-direction:column}.training-list-row{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:1rem 1.1rem;border:0;border-bottom:1px solid rgba(var(--color-primary-rgb),.06);background:transparent;color:var(--color-text);text-align:left;transition:background-color var(--transition-fast)}.training-list-row:last-child{border-bottom:0}.training-list-row.completed{background:#10b9810d}.training-list-row-main{min-width:0;display:flex;flex-direction:column;gap:.2rem;flex:1}.training-list-row-title{font-family:var(--font-heading);font-size:1.18rem;line-height:1.06;font-weight:500;color:var(--color-text)}.training-list-row-meta{display:flex;flex-wrap:wrap;gap:.5rem;color:var(--color-text-muted);font-size:.82rem}.training-list-row-side{display:flex;align-items:center;gap:.65rem;flex-shrink:0}.training-list-row-actions{display:flex;align-items:center;gap:.25rem}.training-list-row-progress{font-family:var(--font-mono);font-size:.9rem;color:var(--color-text-muted)}.training-list-row-timer{display:inline-flex;align-items:center;justify-content:center;min-width:4rem;min-height:1.9rem;padding:.25rem .65rem;border-radius:var(--radius-full);border:1px solid rgba(var(--color-primary-rgb),.18);background:rgba(var(--color-primary-rgb),.12);color:var(--color-text);font-family:var(--font-mono);font-size:.8rem;line-height:1;white-space:nowrap}.training-list-row-icon{color:var(--color-text-muted)}.training-list-row-icon-complete{color:var(--color-success)}.training-empty-state,.training-empty-list{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;min-height:12rem;text-align:center;color:var(--color-text)}.training-empty-list{padding:1.4rem}.training-modal-stack{display:flex;flex-direction:column;gap:1rem}.training-modal-intro{display:flex;flex-direction:column;gap:.3rem}.training-modal-meta{display:flex;flex-wrap:wrap;gap:.55rem;color:var(--color-text-muted);font-size:.84rem}.training-modal-progress{display:flex;flex-direction:column;gap:.7rem}.training-set-controller{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.training-set-chip{min-height:3rem;display:inline-flex;align-items:center;justify-content:center;padding:.75rem .9rem;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:var(--surface-elevated);color:var(--color-text);font-weight:700;transition:transform var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),color var(--transition-fast)}.training-set-chip.completed{background:#10b98124;border-color:#10b98138;color:var(--color-success)}.training-rest-controller{display:flex;flex-direction:column;gap:.85rem}.training-rest-adjustments{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.7rem;align-items:stretch}.training-rest-adjust-btn{min-width:4.1rem;min-height:3rem;border-radius:var(--radius-lg);border:1px solid var(--border-soft);background:var(--surface-glass);color:var(--color-text);font-weight:700}.training-rest-display{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:3rem;padding:.6rem .9rem;border-radius:var(--radius-lg);background:#fff8f9c7;border:1px solid var(--border-soft)}.training-rest-display strong{margin-top:.2rem;font-family:var(--font-mono);font-size:1.05rem;color:var(--color-text)}.training-rest-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}.training-rest-toggle,.training-rest-reset{min-height:3.1rem;width:100%}.training-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.training-form-actions{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.5rem}.training-delete-inline-btn{border-color:#c96d832e;color:var(--color-danger)}@media(hover:hover)and (pointer:fine){.training-selector-trigger:hover,.training-selector-option:hover,.training-list-row:hover,.training-set-chip:hover,.training-rest-adjust-btn:hover{transform:translateY(-1px);border-color:var(--border-strong)}.training-selector-trigger:hover{background:var(--surface-glass-strong)}.training-selector-option:hover{background:rgba(var(--color-primary-rgb),.08)}.training-list-row:hover{background:rgba(var(--color-primary-rgb),.05)}}@media(max-width:768px){.training-selector-row{flex-direction:column;align-items:stretch}.training-add-day-btn{width:100%}.training-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.training-set-controller,.training-rest-actions,.training-form-grid{grid-template-columns:1fr}.training-form-actions{flex-direction:column;align-items:stretch}}@media(max-width:640px){.training-page{gap:.85rem}.training-selector-surface{max-width:none}.training-selector-menu{top:calc(100% + .35rem)}.training-dashboard{padding:.95rem}.training-dashboard-head{flex-direction:column;align-items:stretch;gap:.65rem}.training-dashboard-actions{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.training-dashboard-actions .btn{width:100%;min-height:2.85rem}.training-dashboard-title{font-size:1.4rem}.training-dashboard-subtitle{font-size:.82rem}.training-reset-btn{width:100%}.training-dashboard-grid{gap:.5rem}.training-metric-tile{min-height:4.2rem;padding:.7rem .75rem}.training-metric-tile span{font-size:.62rem}.training-metric-tile strong{font-size:.95rem}.training-progress-head strong{font-size:.88rem}.training-list-header,.training-list-row{padding-inline:.85rem}.training-list-header{flex-direction:column;align-items:stretch;gap:.6rem}.training-list-header strong{font-size:.95rem}.training-add-exercise-btn{width:100%;min-height:2.85rem}.training-list-row{gap:.6rem;padding-block:.85rem}.training-list-row-title{font-size:1rem}.training-list-row-meta{font-size:.76rem;gap:.35rem}.training-list-row-progress{font-size:.82rem}.training-list-row-side{align-items:flex-end;flex-direction:column;gap:.4rem}.training-list-row-timer{min-width:3.5rem;min-height:1.75rem;padding-inline:.5rem;font-size:.74rem}.training-rest-adjustments{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.training-rest-display{grid-column:1 / -1;order:-1}.training-rest-adjust-btn,.training-rest-toggle,.training-rest-reset{min-height:2.85rem}.training-set-chip{min-height:2.75rem;font-size:.88rem}.training-form-actions{gap:.65rem}.training-form-actions .btn{min-height:3rem}}@media(max-width:375px){.training-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.training-metric-tile{min-height:3.8rem;padding:.6rem .65rem}.training-metric-tile strong{font-size:.88rem}}.reminders-container{min-height:calc(100dvh - 8rem);padding:1rem;display:flex;flex-direction:column;gap:1.5rem;animation:scaleIn .3s ease-out}.calendar-card{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);display:flex;flex-direction:column;flex:1 1 auto;min-height:clamp(30rem,calc(100dvh - 18rem),44rem);overflow:hidden}.calendar-header{padding:1.5rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--color-border)}.calendar-header h2{font-size:1.5rem;font-weight:300;color:var(--color-text);text-transform:capitalize;margin:0}.calendar-controls{display:flex;align-items:center;gap:.5rem}.btn-today{background-color:var(--color-primary);color:#fff;border:none;padding:.5rem 1rem;border-radius:var(--radius-md);font-weight:500;cursor:pointer;transition:background-color var(--transition-fast)}.nav-group{display:flex;background-color:var(--color-bg);border-radius:var(--radius-md);border:1px solid var(--color-border)}.btn-nav{background:none;border:none;padding:.5rem;cursor:pointer;color:var(--color-text-muted);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast),color var(--transition-fast)}.calendar-body{flex:1;display:flex;flex-direction:column;padding:.5rem 1.5rem 1.5rem;overflow:hidden}.weekdays-grid{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:.5rem;flex-shrink:0}.weekday-label{text-align:right;padding-right:.5rem;font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--color-text-muted);letter-spacing:.05em}.days-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-auto-rows:1fr;flex:1;border-top:1px solid var(--color-border);border-left:1px solid var(--color-border);height:100%}.day-cell{border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);padding:.25rem;position:relative;cursor:pointer;display:flex;flex-direction:column;align-items:flex-end;transition:background-color var(--transition-fast);overflow:hidden}.day-number{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-size:.875rem;font-weight:500;border-radius:50%;margin-bottom:.25rem;color:var(--color-text-muted)}.day-cell.today .day-number{background-color:var(--color-primary);color:#fff}.day-cell.other-month{background-color:#00000005}.add-icon-hover{position:absolute;top:.5rem;left:.5rem;opacity:0;transition:opacity var(--transition-fast);color:var(--color-text-muted)}.reminders-list{width:100%;display:flex;flex-direction:column;gap:.25rem;overflow-y:auto}.reminders-list::-webkit-scrollbar{display:none}.reminder-chip{font-size:.75rem;padding:.25rem .5rem;border-radius:4px;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;justify-content:space-between;background-color:var(--color-primary);color:#fff;cursor:pointer;transition:transform var(--transition-fast)}.reminder-chip.sent{background-color:var(--color-success)}.reminder-chip.urgent{background-color:var(--color-warning);animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1}50%{opacity:.8}}.reminder-chip .delete-btn{opacity:0;background:none;border:none;color:#fff;cursor:pointer;padding:0;margin-left:.25rem;display:flex;align-items:center;transition:opacity var(--transition-fast)}.reminder-helper-text{margin-top:.45rem;font-size:.82rem;color:var(--color-text-muted)}.mobile-reminder-meta{margin-top:.35rem;font-size:.75rem;color:var(--color-text-muted)}@media(max-width:768px){.reminders-container{height:auto;min-height:calc(100dvh - 8rem);padding:.35rem;gap:.85rem}.calendar-card{height:auto;flex:none;min-height:auto;border-radius:var(--radius-xl)}.calendar-header{padding:.85rem;flex-wrap:wrap;gap:.65rem}.calendar-header h2{font-size:1.15rem;width:100%;text-align:center;font-weight:500}.calendar-controls{width:100%;justify-content:center;gap:.4rem}.btn-today{padding:.45rem .85rem;font-size:.85rem;border-radius:var(--radius-full)}.btn-nav{min-width:2.5rem;min-height:2.5rem}.calendar-body{padding:.3rem .45rem .45rem}.weekdays-grid{margin-bottom:.2rem}.weekday-label{font-size:.62rem;text-align:center;padding-right:0;font-weight:700}.day-cell{min-height:3.2rem;padding:.2rem;align-items:center}.day-number{width:1.35rem;height:1.35rem;font-size:.72rem;margin-bottom:.1rem}.reminders-list{flex-direction:row;flex-wrap:wrap;justify-content:center;gap:3px;overflow:visible;pointer-events:none}.reminder-chip{width:8px;height:8px;min-width:8px;padding:0;border-radius:50%;font-size:0;pointer-events:none}.reminder-chip span,.reminder-chip .delete-btn,.add-icon-hover{display:none}}@media(max-width:480px){.calendar-header{align-items:stretch}.calendar-controls{justify-content:space-between}.btn-today{flex:1}}.mobile-reminders-section{display:none}@media(max-width:768px){.mobile-reminders-section{display:block;background:var(--surface-elevated);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-soft);padding:1rem;margin-top:.25rem}.mobile-reminders-section h3{font-family:var(--font-heading);font-size:1.05rem;font-weight:500;color:var(--color-text);margin:0 0 .85rem;display:flex;align-items:center;gap:.5rem}.mobile-reminders-list{display:flex;flex-direction:column;gap:.6rem}.mobile-reminder-item{display:flex;align-items:flex-start;gap:.75rem;padding:.85rem;background:#fff8f9cc;border-radius:var(--radius-lg);border-left:3px solid var(--color-primary)}.mobile-reminder-item.sent{border-left-color:var(--color-success);opacity:.7}.mobile-reminder-item.urgent{border-left-color:var(--color-warning);background-color:#d6a16a14}.mobile-reminder-date{display:flex;flex-direction:column;align-items:center;min-width:3rem;padding:.5rem;background-color:var(--color-surface);border-radius:var(--radius-sm);border:1px solid var(--color-border)}.mobile-reminder-date .day{font-size:1.25rem;font-weight:700;color:var(--color-text);line-height:1}.mobile-reminder-date .weekday{font-size:.65rem;text-transform:uppercase;color:var(--color-text-muted);font-weight:600}.mobile-reminder-content{flex:1;min-width:0}.mobile-reminder-time{font-size:.75rem;color:var(--color-primary);font-weight:600;margin-bottom:.25rem}.mobile-reminder-item.sent .mobile-reminder-time{color:var(--color-success)}.mobile-reminder-message{font-size:.875rem;color:var(--color-text);word-break:break-word}.mobile-reminder-actions{display:flex;gap:.5rem}.mobile-reminder-actions button{padding:.5rem;border:none;background:none;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast),color var(--transition-fast)}.mobile-empty-state{text-align:center;padding:2rem 1rem;color:var(--color-text-muted)}.mobile-empty-state p{margin:0;font-size:.875rem}}@media(hover:hover)and (pointer:fine){.btn-today:hover{background-color:var(--color-primary-hover)}.btn-nav:hover{background-color:#0000000d;color:var(--color-text)}.day-cell:hover{background-color:var(--color-bg)}.day-cell:hover .add-icon-hover{opacity:1}.reminder-chip:hover{transform:scale(1.02)}.reminder-chip:hover .delete-btn{opacity:1}}@media(hover:hover)and (pointer:fine)and (max-width:768px){.mobile-reminder-actions button:hover{background-color:var(--color-surface);color:var(--color-text)}.mobile-reminder-actions button.delete:hover{color:var(--color-danger)}}.settings-page{display:flex;flex-direction:column;gap:1.5rem}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.settings-card{display:flex;flex-direction:column;gap:1.2rem;min-height:15rem}.settings-card strong{color:var(--color-text)}.settings-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.settings-kicker{font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:.45rem;font-weight:700}.settings-card-title{font-family:var(--font-heading);font-size:1.7rem;line-height:1;font-weight:500}.settings-card-icon{font-size:1.6rem;color:var(--color-primary);font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.settings-profile{display:flex;align-items:center;gap:1rem}.settings-avatar{width:4rem;height:4rem;border-radius:var(--radius-lg);display:grid;place-items:center;font-family:var(--font-heading);font-size:1.2rem;font-weight:600;color:#fff;background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.9),rgba(var(--color-primary-rgb),.6));border:1px solid rgba(var(--color-primary-rgb),.2);box-shadow:inset 0 1px #ffffff38,0 8px 20px rgba(var(--color-primary-rgb),.18)}.settings-profile-copy{display:flex;flex-direction:column;gap:.2rem;min-width:0}.settings-profile-copy strong{font-size:1.05rem;overflow-wrap:anywhere}.settings-profile-copy span{color:var(--color-text-muted);overflow-wrap:anywhere}.settings-detail-list{display:flex;flex-direction:column;gap:.7rem}.settings-detail-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.85rem .95rem;border-radius:var(--radius-md);background:#ffffff57;border:1px solid rgba(255,255,255,.22)}.settings-detail-row span{color:var(--color-text-muted)}.settings-session{display:flex;flex-direction:column;gap:.9rem}.settings-session .session-timer{width:fit-content}.settings-phone-form{display:flex;flex-direction:column;gap:.75rem}.settings-input-label{font-size:.82rem;font-weight:600;color:var(--color-text)}.settings-help-text{font-size:.82rem;color:var(--color-text-muted)}.settings-phone-btn{width:fit-content}.settings-actions-card{justify-content:space-between}.settings-logout-btn{width:fit-content}.settings-button-icon{font-size:1.15rem;font-variation-settings:"FILL" 0,"wght" 600,"GRAD" 0,"opsz" 24}@media(max-width:900px){.settings-grid{grid-template-columns:1fr}}@media(max-width:640px){.settings-page{gap:1rem}.settings-card{min-height:auto;gap:.95rem;padding:1.15rem}.settings-card-title{font-size:1.35rem}.settings-card-header{gap:.75rem}.settings-profile{align-items:flex-start;gap:.85rem}.settings-avatar{width:3.5rem;height:3.5rem;font-size:1.05rem}.settings-profile-copy strong{font-size:.98rem}.settings-profile-copy span{font-size:.84rem}.settings-detail-list{gap:.55rem}.settings-detail-row{flex-direction:column;gap:.25rem;padding:.75rem .85rem;align-items:flex-start}.settings-detail-row span{font-size:.82rem}.settings-detail-row strong{font-size:.92rem;margin-left:0;text-align:left}.settings-logout-btn{width:100%;justify-content:center;min-height:3rem}.settings-phone-btn{width:100%;justify-content:center}}.app-pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;width:100%;margin-top:1rem}.app-pagination-pages{display:flex;align-items:center;gap:.45rem;min-width:0;overflow-x:auto;padding:.15rem 0;-webkit-overflow-scrolling:touch;scrollbar-width:none}.app-pagination-pages::-webkit-scrollbar{display:none}.app-pagination-item{display:inline-flex;align-items:center;gap:.45rem}.app-pagination-gap{color:var(--color-text-muted);font-size:.92rem;font-weight:700}.app-pagination-nav,.app-pagination-page{min-width:2.5rem;height:2.5rem;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid var(--border-soft);background:var(--surface-glass);color:var(--color-text);font-weight:700;transition:transform var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast),color var(--transition-fast)}.app-pagination-page.active{background:rgba(var(--color-primary-rgb),.14);border-color:rgba(var(--color-primary-rgb),.18);color:var(--color-primary);box-shadow:0 12px 24px rgba(var(--color-primary-rgb),.12)}.app-pagination-nav:disabled,.app-pagination-page:disabled{opacity:.45;cursor:not-allowed}@media(hover:hover)and (pointer:fine){.app-pagination-nav:hover:not(:disabled),.app-pagination-page:hover:not(.active):not(:disabled){transform:translateY(-1px);border-color:var(--border-strong);background:var(--surface-glass-strong)}}@media(max-width:640px){.app-pagination{gap:.55rem;margin-top:.85rem}.app-pagination-nav,.app-pagination-page{min-width:2.3rem;height:2.3rem;font-size:.86rem}}.modal-overlay{position:fixed;inset:0;background:radial-gradient(circle at top center,rgba(var(--color-primary-rgb),.12),transparent 32%),#0f172a61;display:flex;align-items:center;justify-content:center;z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:fadeIn .2s var(--ease-out);padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom))}.modal-content{width:min(100%,560px);max-width:min(560px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);overflow-y:auto;animation:slideUp .28s var(--ease-out);margin:0;scrollbar-width:thin;padding:1.5rem}@media(max-width:640px){.modal-overlay{align-items:flex-end;padding:max(.75rem,env(safe-area-inset-top)) 0 0}.modal-content{width:100%;max-width:none;border-bottom-left-radius:0;border-bottom-right-radius:0;border-top-left-radius:var(--radius-2xl);border-top-right-radius:var(--radius-2xl);max-height:calc(100dvh - max(.75rem,env(safe-area-inset-top)));padding:.65rem 1.15rem max(1.25rem,env(safe-area-inset-bottom));animation:slideUpMobile .28s var(--ease-out)}.modal-content:before{content:"";display:block;width:2.5rem;height:.25rem;border-radius:999px;background:rgba(var(--color-primary-rgb),.18);margin:0 auto .65rem}@keyframes slideUpMobile{0%{transform:translateY(100%)}to{transform:translateY(0)}}}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid var(--border-soft)}.modal-title{font-family:var(--font-heading);font-size:1.8rem;line-height:1;font-weight:500;color:var(--color-text)}@media(max-width:640px){.modal-title{font-size:1.55rem;line-height:1.05}.modal-header{margin-bottom:1rem;padding-bottom:.85rem}}.modal-body{display:flex;flex-direction:column;gap:1.1rem}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.custom-datepicker-input{min-height:3.25rem;min-width:13rem;max-width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1.05rem .85rem 1.15rem;border-radius:var(--radius-full);border:1px solid var(--border-soft);background:linear-gradient(180deg,#ffffff38,#fff0),var(--surface-glass);color:var(--color-text);font-size:.94rem;font-weight:600;line-height:1.2;box-shadow:inset 0 1px #ffffff3d,0 12px 24px rgba(var(--color-primary-rgb),.04);transition:transform var(--transition-fast),border-color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)}.custom-datepicker-input:focus-visible{outline:none;border-color:rgba(var(--color-primary-rgb),.4);box-shadow:var(--shadow-focus)}.react-datepicker-wrapper{width:auto;max-width:100%}.react-datepicker__input-container{max-width:100%}.react-datepicker-popper{z-index:9999!important}.react-datepicker{font-family:var(--font-sans)!important;background:var(--surface-elevated)!important;border:1px solid var(--border-soft)!important;border-radius:var(--radius-lg)!important;box-shadow:var(--shadow-md)!important;overflow:hidden;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.react-datepicker__triangle{display:none!important}.react-datepicker__header{background:radial-gradient(circle at top center,rgba(var(--color-primary-rgb),.1),transparent 72%),#ffffff8a!important;border-bottom:1px solid var(--border-soft)!important;padding-top:1rem!important}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{color:var(--color-text)!important;font-family:var(--font-heading)!important;font-size:1.02rem!important;font-weight:600!important;letter-spacing:-.02em}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{color:var(--color-text)!important;font-weight:500!important}.react-datepicker__day-name{color:var(--color-text-muted)!important}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__month-text--selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__quarter-text--selected,.react-datepicker__year-text--keyboard-selected,.react-datepicker__year-text--selected{background:linear-gradient(135deg,rgba(var(--color-primary-rgb),.96),rgba(var(--color-primary-rgb),.76))!important;color:#fff!important;border-radius:var(--radius-sm)}.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{padding:.6rem .9rem!important;margin:.2rem!important}.react-datepicker__navigation-icon:before{border-color:var(--color-text-muted)!important;border-width:1.5px 1.5px 0 0!important}@media(max-width:640px){.custom-datepicker-input{width:100%;min-width:0}.react-datepicker-wrapper{width:100%}}@media(hover:hover)and (pointer:fine){.custom-datepicker-input:hover{transform:translateY(-1px);border-color:var(--border-strong);background:linear-gradient(180deg,#ffffff42,#fff0),var(--surface-glass-strong)}.react-datepicker__day:hover,.react-datepicker__month-text:hover,.react-datepicker__quarter-text:hover,.react-datepicker__year-text:hover{background:rgba(var(--color-primary-rgb),.1)!important;color:var(--color-primary)!important;border-radius:var(--radius-sm)}.react-datepicker__navigation:hover *:before{border-color:var(--color-primary)!important}}html,body,button,input,select,textarea{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{touch-action:pan-x pan-y;overscroll-behavior-y:auto;font-weight:400;color:var(--color-ink-body);font-size:16px;line-height:1.5}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-variation-settings:"wdth" 95;color:var(--color-ink);font-weight:600;line-height:1.05;letter-spacing:-.025em}h1{font-size:clamp(2.4rem,4.6vw,3.75rem);line-height:1.04;letter-spacing:-.04em}h2{font-size:clamp(1.9rem,3.4vw,3rem);letter-spacing:-.034em}h3{font-size:clamp(1.45rem,2.4vw,2.25rem);letter-spacing:-.026em}h4{font-size:1.25rem;letter-spacing:-.018em;font-weight:500}h5{font-size:1.05rem;letter-spacing:-.012em;font-weight:500}h6{font-size:.92rem;letter-spacing:0;font-weight:600}p{color:var(--color-ink-body);line-height:1.55}strong,b{font-weight:600;color:var(--color-ink)}label,button,.btn,input,select,textarea{font-weight:500;color:var(--color-ink)}::selection{background:var(--color-accent-haze)}.container{max-width:var(--page-max-width);margin:0 auto;padding:0 1.5rem}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-4{gap:1rem}.gap-3{gap:.75rem}.gap-2{gap:.5rem}.mb-6{margin-bottom:1.5rem}.mb-4{margin-bottom:1rem}.mt-4{margin-top:1rem}.mt-2{margin-top:.5rem}.mt-1{margin-top:.25rem}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem}.text-lg{font-size:1.125rem}.font-semibold{font-weight:600}.font-bold{font-weight:700}.flex-1{flex:1 1 0%}.block{display:block}.text-muted{color:var(--color-ink-muted)}.text-success{color:var(--color-success)}.text-danger{color:var(--color-danger)}.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase}.tracking-wider{letter-spacing:.14em}.h-full{height:100%}.w-full{width:100%}.ml-auto{margin-left:auto}.card{position:relative;background:var(--color-surface);border-radius:var(--radius-xl);border:1px solid var(--color-border);padding:1.5rem;overflow:hidden;transition:border-color var(--transition-fast)}.card:before{content:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.55rem 1rem;border-radius:var(--radius-md);font-family:var(--font-sans);font-size:.95rem;font-weight:500;line-height:1.5;letter-spacing:-.005em;border:1px solid transparent;color:var(--color-ink);background:transparent;transition:opacity var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),color var(--transition-fast);position:relative;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:active{opacity:.8}.btn:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-primary{background:var(--color-accent);color:var(--color-cream-fg);box-shadow:#ffffff2e 0 .5px inset,#0000002e 0 0 0 .5px inset,var(--shadow-accent-soft)}.btn-dark{background:var(--color-ink);color:var(--color-cream-fg);box-shadow:var(--shadow-inset)}.btn-outline{background:transparent;border-color:var(--color-border-strong);color:var(--color-ink)}.btn-surface{background:var(--color-surface);border-color:var(--color-border);color:var(--color-ink)}.btn-success{background:var(--color-success);color:var(--color-cream-fg);box-shadow:var(--shadow-inset)}.btn-danger{background:var(--color-danger);color:var(--color-cream-fg);box-shadow:var(--shadow-inset)}.input,select.input,textarea.input{width:100%;min-height:2.75rem;padding:.6rem .85rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-elevated);color:var(--color-ink);font-family:var(--font-sans);font-size:.95rem;line-height:1.4;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.input::placeholder,textarea.input::placeholder{color:var(--color-ink-muted);opacity:.7}.input:disabled,select.input:disabled,textarea.input:disabled{opacity:.6;cursor:not-allowed}.input:focus,select.input:focus,textarea.input:focus{outline:none;border-color:var(--color-ink-soft);box-shadow:var(--shadow-focus)}select.input{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;padding-right:2.5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18' fill='none'%3E%3Cpath d='M4.5 6.75 9 11.25l4.5-4.5' stroke='%231c1c1c' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-size:1rem;background-position:calc(100% - .85rem) center}select.input::-ms-expand{display:none}select.input option{color:var(--color-ink);background:var(--color-surface-elevated)}.icon-btn{width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);color:var(--color-ink-muted);background:transparent;border:1px solid transparent;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast);cursor:pointer}.icon-btn:active{opacity:.8}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.85rem;padding:3rem 1.5rem;text-align:center;color:var(--color-ink-muted)}.empty-state-icon{width:3rem;height:3rem;display:grid;place-items:center;border-radius:var(--radius-full);background:var(--color-accent-tint);color:var(--color-accent)}.empty-state-title{font-family:var(--font-display);font-size:1.35rem;font-weight:600;color:var(--color-ink);letter-spacing:-.02em}.empty-state-text{font-size:.92rem;max-width:28rem;line-height:1.55;color:var(--color-ink-muted)}.badge-outline{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .7rem;border:1px solid var(--color-border);border-radius:var(--radius-full);font-size:.7rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-muted);background:var(--color-surface-elevated)}.form-group{display:flex;flex-direction:column;gap:.45rem}.page-heading-row{display:flex;align-items:flex-end;justify-content:space-between;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.page-heading,.page-title{font-family:var(--font-display);font-variation-settings:"wdth" 95;font-weight:600;line-height:1.04;letter-spacing:-.038em;color:var(--color-ink);margin:0;background:none;-webkit-text-fill-color:initial;background-clip:initial;-webkit-background-clip:initial}.page-heading{font-size:clamp(2.1rem,4.2vw,3.5rem)}.page-title{font-size:clamp(1.85rem,3.4vw,2.85rem)}.page-subtitle{max-width:44rem;margin-top:.6rem;font-size:1rem;line-height:1.55;color:var(--color-ink-muted)}.metric-number,.stat-value,.kpi-value,.account-balance{font-family:var(--font-numeric);font-variation-settings:"opsz" 96,"SOFT" 30,"wght" 480;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"ss01";letter-spacing:-.022em;color:var(--color-ink)}@media(hover:hover)and (pointer:fine){.btn:hover{opacity:.92}.btn-primary:hover{background:var(--color-accent-hover);opacity:1;box-shadow:#ffffff2e 0 .5px inset,#0000002e 0 0 0 .5px inset,var(--shadow-accent)}.btn-outline:hover{background:var(--color-ink-faint);border-color:var(--color-border-strong);opacity:1}.btn-surface:hover{background:var(--color-ink-faint);opacity:1}.input:hover,select.input:hover,textarea.input:hover{border-color:var(--color-ink-soft)}.icon-btn:hover{background:var(--color-ink-faint);color:var(--color-ink)}}.fab-icon{margin-right:.5rem;width:18px;height:18px}@media(max-width:768px){.container{padding:0 1rem}.page-heading-row{align-items:flex-start;gap:.75rem;margin-bottom:1.25rem}.card{padding:1.15rem;border-radius:var(--radius-xl)}.empty-state{padding:2rem 1.25rem}}@media(max-width:640px){.btn-fab{position:fixed;bottom:calc(1.25rem + env(safe-area-inset-bottom,0px));right:1.15rem;width:3.5rem!important;height:3.5rem!important;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;z-index:100;box-shadow:var(--shadow-accent);animation:scaleIn .2s var(--ease-out)}.btn-fab .fab-text{display:none}.btn-fab .fab-icon{margin:0;width:22px;height:22px}}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stagger-item{opacity:0;animation:fadeInUp .36s var(--ease-out) forwards}.stagger-item:nth-child(1){animation-delay:0ms}.stagger-item:nth-child(2){animation-delay:50ms}.stagger-item:nth-child(3){animation-delay:.1s}.stagger-item:nth-child(4){animation-delay:.15s}.stagger-item:nth-child(5){animation-delay:.2s}.stagger-item:nth-child(6){animation-delay:.25s}.stagger-item:nth-child(7){animation-delay:.3s}.stagger-item:nth-child(8){animation-delay:.35s}.toast-container{position:fixed;top:20px;right:20px;z-index:9999}.toast{display:flex;align-items:center;gap:12px;padding:16px;border-radius:var(--radius-lg);background:var(--surface-elevated);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:var(--shadow-md);border:1px solid var(--border-soft);border-left:4px solid;min-width:300px;max-width:400px;transform:translateY(0);opacity:1;animation:toastEnter .4s var(--ease-out)}@media(max-width:640px){.toast-container{top:max(.75rem,env(safe-area-inset-top,.75rem));right:.75rem;left:.75rem}.toast{width:100%;min-width:0;max-width:none;padding:.85rem;border-radius:var(--radius-lg)}.toast-message{font-size:.84rem}}.toast.success{border-left-color:var(--color-success)}.toast.error{border-left-color:var(--color-danger)}.toast-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast.success .toast-icon{color:var(--color-success)}.toast.error .toast-icon{color:var(--color-danger)}.toast-message{flex:1;font-size:.875rem;font-weight:500;color:var(--color-text);margin:0}.toast-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:background-color var(--transition-fast),color var(--transition-fast)}.toast-close:active{transform:scale(.9)}@keyframes toastEnter{0%{transform:translateY(-100%);opacity:0}60%{opacity:1}to{transform:translateY(0);opacity:1}}@media(hover:hover)and (pointer:fine){.toast-close:hover{background:rgba(var(--color-primary-rgb),.08);color:var(--color-text)}}.sidebar{position:fixed;top:0;left:0;bottom:0;width:var(--sidebar-width, 272px);display:flex;flex-direction:column;z-index:60;border-radius:0;background:var(--color-surface);border-top:none;border-right:1px solid var(--color-border);border-bottom:none;border-left:none;box-shadow:none;overflow:hidden}.sidebar:before{content:"";position:absolute;inset:0 0 auto;height:12rem;background:radial-gradient(circle at 10% 0%,var(--color-accent-tint),transparent 65%);pointer-events:none;opacity:.9}.sidebar-header{padding:1.5rem 1.15rem 1.1rem;position:relative;z-index:1}.sidebar-brand{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;padding:.2rem 0;transition:transform var(--transition-normal),opacity var(--transition-fast)}.brand-mark{width:3.4rem;height:3.4rem;border-radius:var(--radius-xl);display:grid;place-items:center;background:var(--color-surface-elevated);border:1px solid var(--color-border);box-shadow:none;padding:.5rem}.brand-logo{display:block;width:100%;height:100%;object-fit:contain}.brand-name{font-family:var(--font-heading);font-size:1.05rem;font-weight:500;color:var(--color-text);letter-spacing:-.03em;margin-top:.35rem}.nav-section{display:flex;flex-direction:column;gap:.35rem}.nav-section+.nav-section{margin-top:.6rem;padding-top:.6rem;border-top:1px solid var(--border-soft)}.nav-section-label{font-size:.62rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--color-text-muted);padding:.3rem 1rem;opacity:.7}.sidebar-nav{flex:1;padding:.55rem .95rem 1rem;display:flex;flex-direction:column;gap:.42rem;overflow-y:auto;position:relative;z-index:1}.nav-item{width:100%;display:flex;align-items:center;gap:.85rem;padding:.65rem .85rem .65rem 1.1rem;border:1px solid transparent;border-radius:var(--radius-md);background:transparent;color:var(--color-ink-body);font-family:var(--font-sans);font-size:.94rem;font-weight:500;letter-spacing:-.005em;transition:background-color var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast);position:relative}.nav-item span,.nav-item svg,.nav-item .material-symbols-rounded,.nav-item>div{position:relative;z-index:1}.nav-item.active{color:var(--color-ink);font-weight:600;background:var(--color-accent-tint);border-color:transparent;box-shadow:none}.nav-item.active .nav-icon{color:var(--color-accent);font-variation-settings:"FILL" 1,"wght" 500,"GRAD" 0,"opsz" 24}.nav-item:before{content:"";position:absolute;left:.25rem;top:.55rem;bottom:.55rem;width:3px;border-radius:9999px;background:var(--color-accent);opacity:0;transform:scaleY(.4);transition:opacity var(--transition-fast),transform var(--transition-fast)}.nav-item.active:before{opacity:1;transform:scaleY(1)}.nav-badge{margin-left:auto;min-width:1.35rem;height:1.35rem;display:inline-flex;align-items:center;justify-content:center;padding:0 .35rem;border-radius:999px;background:var(--color-primary);color:#fff;font-size:.68rem;font-weight:700;line-height:1}.sidebar-footer{padding:.9rem .95rem 1.15rem;border-top:1px solid var(--color-border);background:transparent;position:relative;z-index:1}.nav-icon{font-size:1.2rem;line-height:1;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.sidebar-footer-actions{display:flex;flex-direction:column;gap:.4rem}.sidebar-footer-link{padding-top:.78rem;padding-bottom:.78rem}.logout-btn{color:var(--color-text-muted)}.sidebar-overlay{position:fixed;inset:0;background:#1c1c1c52;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast)}.sidebar-overlay.visible{opacity:1;visibility:visible}@media(max-width:768px){.sidebar{top:0;left:0;bottom:0;border-radius:0;width:min(86vw,320px);transform:translate(-105%);transition:transform var(--transition-normal);will-change:transform}.sidebar.open{transform:translate(0)}}@media(hover:hover)and (pointer:fine){.sidebar-brand:hover{opacity:.85}.nav-item:hover{color:var(--color-ink);background:var(--color-ink-faint)}.nav-item.active:hover{background:var(--color-accent-tint)}.logout-btn:hover{color:var(--color-danger);background:var(--color-danger-tint)}}.header{display:none}@media(max-width:768px){.header{display:block;position:sticky;top:0;z-index:40;padding:max(.65rem,env(safe-area-inset-top,.65rem)) .85rem .35rem}.header-content{max-width:var(--page-max-width);margin:0 auto;padding:.7rem .85rem;display:flex;align-items:center;gap:.85rem;border-radius:var(--radius-xl);background:var(--color-surface-elevated);border:1px solid var(--color-border);box-shadow:none;position:relative;overflow:hidden}.header-content:before{content:none}.header-content-minimal>*{position:relative;z-index:1}.menu-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;min-width:2.5rem;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-ink);transition:opacity var(--transition-fast),background-color var(--transition-fast)}.menu-toggle-btn:active{opacity:.8}.menu-toggle-icon{font-size:1.3rem;font-variation-settings:"FILL" 0,"wght" 500,"GRAD" 0,"opsz" 24}.header-mobile-copy{display:flex;flex-direction:column;justify-content:center;min-width:0;flex:1}.header-mobile-title{font-family:var(--font-display);font-variation-settings:"wdth" 95;font-size:1.2rem;line-height:1;font-weight:600;color:var(--color-ink);letter-spacing:-.028em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}}.skip-to-content{position:absolute;top:-100%;left:1rem;z-index:999;padding:.65rem 1rem;background:var(--color-ink);color:var(--color-cream-fg);border-radius:var(--radius-md);font-weight:500;text-decoration:none;transition:top .2s ease}.skip-to-content:focus{top:1rem}.app-layout{--sidebar-width: 272px;display:flex;min-height:100dvh;width:100%;overflow-x:hidden;position:relative}.main-content{flex:1;margin-left:var(--sidebar-width);display:flex;flex-direction:column;min-width:0;position:relative}.main-content:before{content:"";position:fixed;pointer-events:none;z-index:0;top:-8rem;right:-6rem;width:28rem;height:28rem;border-radius:9999px;filter:blur(120px);background:var(--color-accent-tint);opacity:.7}.page-content{flex:1;padding:1.5rem 2rem;width:100%;position:relative;z-index:1;display:grid;justify-items:center;align-content:center;min-height:0;animation:pageIn .3s var(--ease-out)}@keyframes pageIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-shell{width:min(100%,var(--page-max-width));margin:0 auto}.page-content-top{align-content:start;padding-top:2rem}.page-shell-top{align-self:start}@media(max-width:768px){.main-content{margin-left:0}.page-content{padding:1rem .85rem calc(1.25rem + env(safe-area-inset-bottom,0px))}.page-content-top{padding-top:1.15rem}.main-content:before{width:16rem;height:16rem;right:-4rem;top:-4rem}}@media(max-width:375px){.page-content{padding:.85rem .65rem calc(1rem + env(safe-area-inset-bottom,0px))}}.backend-status-screen{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:clamp(1.5rem,3vw,2.5rem);background:var(--color-bg)}.backend-status-card{width:min(100%,38rem);display:grid;gap:1.5rem;justify-items:center;text-align:center;padding:clamp(1.75rem,3vw,2.75rem);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-soft)}.backend-status-logo-shell{width:5.75rem;height:5.75rem;display:grid;place-items:center;border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-surface) 86%,white 14%);border:1px solid color-mix(in srgb,var(--color-border) 82%,white 18%)}.backend-status-logo{width:3rem;height:3rem;object-fit:contain}.backend-status-copy{display:grid;gap:.75rem;max-width:30rem}.backend-status-kicker{color:var(--color-text-muted);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700}.backend-status-copy h1{margin:0;font-size:clamp(2rem,4vw,3rem);line-height:.95;color:var(--color-text)}.backend-status-copy p{margin:0;color:var(--color-text-muted);font-size:1rem;line-height:1.7}.backend-status-action{min-width:13rem}@media(max-width:767px){.backend-status-card{padding:1.5rem;border-radius:var(--radius-lg)}.backend-status-logo-shell{width:5rem;height:5rem}.backend-status-copy h1{font-size:1.9rem}.backend-status-copy p{font-size:.95rem}.backend-status-action{width:100%}}.login-container{min-height:100dvh;display:grid;grid-template-columns:1.05fr 1fr;background:var(--color-bg);position:relative;overflow:hidden}.login-container:before{content:"";grid-column:1;grid-row:1;background:radial-gradient(circle at 78% 22%,var(--color-accent-haze),transparent 52%),radial-gradient(circle at 18% 84%,rgba(236,72,153,.06),transparent 48%),var(--color-surface);border-right:1px solid var(--color-border)}.login-container:after{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:220px 220px;opacity:.04;mix-blend-mode:multiply;z-index:0}.login-aside{grid-column:1;grid-row:1;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;padding:3.5rem 4rem;z-index:1;position:relative}.login-aside-logo{display:inline-flex;align-items:center;gap:.75rem;font-family:var(--font-display);font-weight:600;font-size:1.25rem;color:var(--color-ink);letter-spacing:-.022em}.login-aside-logo img{width:38px;height:38px;object-fit:contain}.login-aside-mark{margin:auto 0;max-width:32rem}.login-aside-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:.75rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--color-ink-muted);margin-bottom:1.5rem}.login-aside-eyebrow:before{content:"";width:1.75rem;height:1px;background:var(--color-ink-soft)}.login-aside-headline{font-family:var(--font-display);font-variation-settings:"wdth" 92;font-size:clamp(2.6rem,4.8vw,4.25rem);font-weight:600;line-height:1.02;letter-spacing:-.045em;color:var(--color-ink)}.login-aside-headline em{font-style:italic;font-variation-settings:"wdth" 88;color:var(--color-accent);font-weight:480}.login-aside-sub{margin-top:1.5rem;max-width:28rem;font-size:1.05rem;line-height:1.55;color:var(--color-ink-body)}.login-aside-foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.78rem;color:var(--color-ink-muted);letter-spacing:.04em}.login-aside-foot-dot{width:6px;height:6px;border-radius:9999px;background:var(--color-accent);box-shadow:0 0 0 4px var(--color-accent-tint)}.login-form-panel{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;padding:3rem 2.5rem;background:var(--color-bg);z-index:1;position:relative}.login-card{width:100%;max-width:28rem;background:transparent;border:none;box-shadow:none;padding:0;display:flex;flex-direction:column;gap:2rem}.card-header{display:flex;flex-direction:column;gap:.6rem;text-align:left}.login-brand{display:none}.card-header-eyebrow{font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-ink-muted);font-weight:500}.card-header-title{font-family:var(--font-display);font-variation-settings:"wdth" 95;font-size:clamp(2rem,3.6vw,2.75rem);font-weight:600;line-height:1.04;letter-spacing:-.034em;color:var(--color-ink)}.card-header-sub{font-size:.96rem;line-height:1.55;color:var(--color-ink-muted);max-width:24rem}.error-alert{padding:.75rem .95rem;border-radius:var(--radius-md);border:1px solid var(--color-danger);background:var(--color-danger-tint);color:var(--color-danger);font-size:.9rem;font-weight:500}.login-form{display:flex;flex-direction:column;gap:1.1rem}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-group label{font-size:.78rem;font-weight:500;color:var(--color-ink-muted);letter-spacing:.06em;text-transform:uppercase}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:.85rem;color:var(--color-ink-muted);pointer-events:none}.input.with-icon{min-height:3rem;padding-left:2.65rem;padding-right:2.85rem;background:var(--color-surface-elevated)}.password-toggle{position:absolute;right:.55rem;background:none;border:none;width:2rem;height:2rem;color:var(--color-ink-muted);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast),background-color var(--transition-fast);border-radius:var(--radius-full)}.form-options{display:flex;align-items:center;justify-content:space-between;gap:1rem;font-size:.88rem;margin-top:.15rem}.login-remember{display:flex;align-items:center;gap:.55rem;cursor:pointer;-webkit-user-select:none;user-select:none}.login-checkbox{width:1rem;height:1rem;accent-color:var(--color-accent);cursor:pointer}.label-text{color:var(--color-ink-body);font-weight:500;font-size:.88rem}.btn.login-btn{display:flex;width:100%;min-height:3rem;margin-top:.5rem;justify-content:center;gap:.65rem;font-size:.98rem;font-weight:500}.loader{width:1rem;height:1rem;border-radius:999px;border:2px solid rgba(252,251,248,.45);border-top-color:var(--color-cream-fg);animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:960px){.login-container{grid-template-columns:1fr}.login-container:before{display:none}.login-aside{display:none}.login-form-panel{grid-column:1;padding:2rem 1.5rem;min-height:100dvh}.login-card{max-width:26rem}.login-brand{display:flex;flex-direction:column;align-items:flex-start;gap:.55rem;margin-bottom:.5rem}.login-logo-icon{width:56px;height:56px;object-fit:contain}.login-brand-name{font-family:var(--font-display);font-size:1.25rem;font-weight:600;color:var(--color-ink);letter-spacing:-.022em}}@media(max-width:640px){.login-form-panel{padding:max(1.5rem,env(safe-area-inset-top)) 1.15rem max(1.5rem,env(safe-area-inset-bottom))}.form-options{flex-direction:column;align-items:flex-start;gap:.6rem}}@media(hover:hover)and (pointer:fine){.password-toggle:hover{color:var(--color-ink);background:var(--color-ink-faint)}}.skeleton{background:linear-gradient(90deg,rgba(var(--color-primary-rgb),.06),rgba(var(--color-primary-rgb),.14),rgba(var(--color-primary-rgb),.06));background-size:200% 100%;animation:shimmer 1.8s infinite ease-in-out;border-radius:var(--radius-sm)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.page-skeleton{display:flex;flex-direction:column;gap:1.5rem;width:min(100%,var(--page-max-width));padding:2rem 0;animation:fadeIn .2s var(--ease-out)}.page-skeleton-header{display:flex;flex-direction:column;gap:.75rem}.page-skeleton-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}@media(max-width:768px){.page-skeleton-grid{grid-template-columns:1fr}.page-skeleton{padding:1rem 0}}
