@import"https://fonts.googleapis.com/css2?family=Bitter:wght@400;600;700&family=Cormorant+Garamond:wght@500;600;700&family=DM+Serif+Text:ital@0;1&family=Fraunces:opsz,wght@9..144,500;9..144,700&family=Inter:wght@400;500;600;700&family=Lato:wght@400;700&family=Libre+Baskerville:wght@400;700&family=Lora:wght@400;600;700&family=Merriweather:wght@400;700&family=Montserrat:wght@400;500;600;700&family=Nunito:wght@400;600;700&family=Open+Sans:wght@400;600;700&family=Oswald:wght@400;500;600;700&family=PT+Serif:wght@400;700&family=Playfair+Display:wght@500;600;700&family=Rubik:wght@400;500;700&family=Source+Sans+3:wght@400;600;700&family=Source+Serif+4:opsz,wght@8..60,400;8..60,600;8..60,700&family=Space+Grotesk:wght@400;500;700&family=Work+Sans:wght@400;500;600;700&display=swap";:root{font-family:var(--font-family-base);line-height:1.5;font-weight:400;color:var(--color-text);background:var(--app-background);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;position:relative;background:var(--app-background);color:var(--color-text);overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-family-heading)}body,button,input,select,textarea{font-family:var(--font-family-base)}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background-image:var(--app-background-overlay),url(/vite.svg);background-repeat:no-repeat;background-size:cover,min(72vmin,760px);background-position:center,right 2rem top 5rem;opacity:var(--app-background-overlay-opacity);pointer-events:none;z-index:0}#root{position:relative;z-index:1}@media(max-width:900px){body:before{background-size:cover,min(95vmin,560px);background-position:center,center top 5rem}}:root{--font-family-base: Inter, "Segoe UI", Arial, sans-serif;--font-family-heading: "Playfair Display", Georgia, serif;--color-text: #0f172a;--color-muted: #334155;--color-surface: #ffffff;--color-surface-alt: #f8fafc;--color-border: #dbe2ef;--color-border-strong: #cbd5e1;--color-primary: #2563eb;--color-primary-contrast: #ffffff;--color-secondary: #475569;--color-danger: #b91c1c;--color-success: #166534;--color-success-strong: #16a34a;--color-success-soft: #f0fdf4;--color-warning-text: #9a3412;--color-warning-strong: #f59e0b;--color-warning-soft: #fff7ed;--color-warning-border: #fdba74;--color-focus: #2563eb;--hero-radial: rgba(37, 99, 235, .18);--overlay-color: rgba(15, 23, 42, .45);--app-background: linear-gradient(180deg, #f4f9ff 0%, #f8fafc 40%, #f0f6ff 100%);--app-background-overlay: radial-gradient(circle at 14% 18%, rgba(37, 99, 235, .12), transparent 38%);--app-background-overlay-opacity: .4;--auth-gradient-start: #eff6ff;--auth-gradient-mid: #f8fafc;--auth-gradient-end: #fff7ed}:root[data-theme=aurora-bloom]{--font-family-base: "Avenir Next", "Segoe UI", Arial, sans-serif;--color-text: #0f172a;--color-muted: #304456;--color-surface: #ffffff;--color-surface-alt: #f3f9ff;--color-border: #d8e7f7;--color-border-strong: #bad0e8;--color-primary: #2563eb;--color-primary-contrast: #ffffff;--color-secondary: #44607d;--color-danger: #be123c;--color-success: #1d6b43;--color-success-strong: #1f8f53;--color-success-soft: #eefaf3;--color-warning-text: #9a3e1b;--color-warning-strong: #de7f2e;--color-warning-soft: #fff5eb;--color-warning-border: #f6c084;--color-focus: #1d4ed8;--hero-radial: rgba(37, 99, 235, .18);--overlay-color: rgba(18, 36, 56, .45);--app-background: linear-gradient(180deg, #eaf5ff 0%, #f3f9ff 44%, #eaf2ff 100%);--app-background-overlay: radial-gradient(circle at 16% 18%, rgba(37, 99, 235, .14), transparent 42%);--app-background-overlay-opacity: .42;--auth-gradient-start: #e7f1ff;--auth-gradient-mid: #f5faff;--auth-gradient-end: #fff2e8}:root[data-theme=canyon-sun]{--font-family-base: "Trebuchet MS", "Gill Sans", Arial, sans-serif;--color-text: #2b1f1a;--color-muted: #5d4337;--color-surface: #fffdf9;--color-surface-alt: #fff7ec;--color-border: #efd8bc;--color-border-strong: #e1c39f;--color-primary: #c66a20;--color-primary-contrast: #fffdf8;--color-secondary: #7d5c47;--color-danger: #b03a2e;--color-success: #4e7a2f;--color-success-strong: #5b8f37;--color-success-soft: #f4f9ea;--color-warning-text: #8a3a0f;--color-warning-strong: #d77c2c;--color-warning-soft: #fff3e2;--color-warning-border: #ecbf8f;--color-focus: #a85a1b;--hero-radial: rgba(198, 106, 32, .2);--overlay-color: rgba(48, 28, 16, .5);--app-background: linear-gradient(180deg, #fff1dc 0%, #fff7ec 46%, #ffe8d1 100%);--app-background-overlay: radial-gradient(circle at 14% 16%, rgba(198, 106, 32, .2), transparent 44%);--app-background-overlay-opacity: .45;--auth-gradient-start: #fff2dd;--auth-gradient-mid: #fff9f0;--auth-gradient-end: #ffe4cd}:root[data-theme=tidal-ink]{--font-family-base: "Segoe UI", "Avenir Next", Arial, sans-serif;--color-text: #10232f;--color-muted: #2e4e61;--color-surface: #fefefe;--color-surface-alt: #eef8fb;--color-border: #cde4eb;--color-border-strong: #b3d3dd;--color-primary: #0f7ea0;--color-primary-contrast: #ffffff;--color-secondary: #375a6d;--color-danger: #b8404b;--color-success: #1d7a67;--color-success-strong: #20917c;--color-success-soft: #edf9f6;--color-warning-text: #8c4a10;--color-warning-strong: #d08a34;--color-warning-soft: #fff6e9;--color-warning-border: #eec99c;--color-focus: #0d6b89;--hero-radial: rgba(15, 126, 160, .2);--overlay-color: rgba(10, 35, 48, .48);--app-background: linear-gradient(180deg, #dff2f8 0%, #eef8fb 44%, #e3eefb 100%);--app-background-overlay: radial-gradient(circle at 16% 16%, rgba(15, 126, 160, .2), transparent 44%);--app-background-overlay-opacity: .42;--auth-gradient-start: #e4f5fb;--auth-gradient-mid: #f4fbfd;--auth-gradient-end: #e9f3ff}:root[data-theme=citrus-grove]{--font-family-base: "Gill Sans", "Trebuchet MS", Arial, sans-serif;--color-text: #1d2b1b;--color-muted: #415a34;--color-surface: #fffef9;--color-surface-alt: #f6faef;--color-border: #d9e8c6;--color-border-strong: #c1d9a3;--color-primary: #3c8d37;--color-primary-contrast: #ffffff;--color-secondary: #5d7250;--color-danger: #b6461d;--color-success: #2f8142;--color-success-strong: #35974e;--color-success-soft: #eef9ef;--color-warning-text: #88510f;--color-warning-strong: #c58a1d;--color-warning-soft: #fff8e6;--color-warning-border: #ead090;--color-focus: #2f7b2d;--hero-radial: rgba(60, 141, 55, .2);--overlay-color: rgba(26, 43, 17, .45);--app-background: linear-gradient(180deg, #eaf8db 0%, #f6faef 44%, #fff4d4 100%);--app-background-overlay: radial-gradient(circle at 16% 18%, rgba(60, 141, 55, .2), transparent 44%);--app-background-overlay-opacity: .42;--auth-gradient-start: #eef9dc;--auth-gradient-mid: #f9fff0;--auth-gradient-end: #fff4cc}:root[data-theme=rose-atlas]{--font-family-base: "Avenir Next", "Gill Sans", Arial, sans-serif;--color-text: #2a1f2f;--color-muted: #5b4565;--color-surface: #fffafd;--color-surface-alt: #fff3f9;--color-border: #e9d2e5;--color-border-strong: #d8bcd2;--color-primary: #b2447a;--color-primary-contrast: #ffffff;--color-secondary: #6e4d77;--color-danger: #bc2f53;--color-success: #3b8a73;--color-success-strong: #46a488;--color-success-soft: #edf9f5;--color-warning-text: #8a3f23;--color-warning-strong: #cf7a52;--color-warning-soft: #fff2ea;--color-warning-border: #e9b79d;--color-focus: #953a68;--hero-radial: rgba(178, 68, 122, .2);--overlay-color: rgba(39, 22, 41, .45);--app-background: linear-gradient(180deg, #ffe7f2 0%, #fff3f9 46%, #e9f7f5 100%);--app-background-overlay: radial-gradient(circle at 15% 16%, rgba(178, 68, 122, .2), transparent 44%);--app-background-overlay-opacity: .43;--auth-gradient-start: #ffe8f2;--auth-gradient-mid: #fff6fb;--auth-gradient-end: #e6f8f7}.theme-preview.aurora-bloom{background:linear-gradient(90deg,#2563eb,#22d3ee,#f97316)}.theme-preview.canyon-sun{background:linear-gradient(90deg,#c66a20,#e49a2d,#7d5c47)}.theme-preview.tidal-ink{background:linear-gradient(90deg,#0f7ea0,#27b1c8,#375a6d)}.theme-preview.citrus-grove{background:linear-gradient(90deg,#3c8d37,#8fbf2f,#d18a18)}.theme-preview.rose-atlas{background:linear-gradient(90deg,#b2447a,#db6798,#6e4d77)}:root,:root[data-font-pair=playfair-inter]{--font-family-heading: "Playfair Display", Georgia, serif;--font-family-base: Inter, "Segoe UI", Arial, sans-serif}:root[data-font-pair=lora-source-sans]{--font-family-heading: Lora, Georgia, serif;--font-family-base: "Source Sans 3", "Segoe UI", Arial, sans-serif}:root[data-font-pair=merriweather-open-sans]{--font-family-heading: Merriweather, Georgia, serif;--font-family-base: "Open Sans", "Segoe UI", Arial, sans-serif}:root[data-font-pair=bitter-lato]{--font-family-heading: Bitter, Georgia, serif;--font-family-base: Lato, "Segoe UI", Arial, sans-serif}:root[data-font-pair=cormorant-montserrat]{--font-family-heading: "Cormorant Garamond", Georgia, serif;--font-family-base: Montserrat, "Segoe UI", Arial, sans-serif}:root[data-font-pair=fraunces-nunito]{--font-family-heading: Fraunces, Georgia, serif;--font-family-base: Nunito, "Segoe UI", Arial, sans-serif}:root[data-font-pair=dmserif-worksans]{--font-family-heading: "DM Serif Text", Georgia, serif;--font-family-base: "Work Sans", "Segoe UI", Arial, sans-serif}:root[data-font-pair=libre-rubik]{--font-family-heading: "Libre Baskerville", Georgia, serif;--font-family-base: Rubik, "Segoe UI", Arial, sans-serif}:root[data-font-pair=spacegrotesk-sourceserif]{--font-family-heading: "Space Grotesk", "Segoe UI", Arial, sans-serif;--font-family-base: "Source Serif 4", Georgia, serif}:root[data-font-pair=oswald-ptserif]{--font-family-heading: Oswald, "Segoe UI", Arial, sans-serif;--font-family-base: "PT Serif", Georgia, serif}#root{max-width:1200px;margin:0 auto;padding:2rem 1rem}.app-shell{display:flex;flex-direction:column;gap:1rem}.app-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.tabs{display:inline-flex;gap:.5rem;flex-wrap:wrap}.app-session-menu{position:relative}.session-avatar-button{width:2.25rem;height:2.25rem;border-radius:999px;border:1px solid var(--color-border-strong);background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface));color:var(--color-text);font-weight:700;text-transform:uppercase;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:border-color .14s ease,transform .12s ease}.session-avatar-button:hover{border-color:var(--color-primary)}.session-avatar-button:active{transform:translateY(1px)}.session-dropdown{position:absolute;right:0;top:calc(100% + .5rem);min-width:190px;border:1px solid var(--color-border-strong);border-radius:10px;background:var(--color-surface);box-shadow:0 12px 24px color-mix(in srgb,black 20%,transparent);padding:.4rem;z-index:20;display:flex;flex-direction:column;gap:.25rem}.session-dropdown-identity{margin:0;padding:.4rem .45rem;font-size:.78rem;color:var(--color-muted);border-bottom:1px solid var(--color-border)}.session-dropdown-item{width:100%;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--color-text);text-align:left;padding:.45rem .55rem;cursor:pointer}.session-dropdown-item:hover{background:var(--color-surface-alt);border-color:var(--color-border)}.session-dropdown-item.danger{color:var(--color-danger-text)}.auth-layout{min-height:calc(100vh - 4rem);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,440px);gap:1.25rem;align-items:stretch}.auth-panel{border-radius:18px;padding:1.5rem;border:1px solid var(--color-border)}.auth-panel-hero{background:radial-gradient(circle at top right,var(--hero-radial),transparent 34%),linear-gradient(135deg,var(--auth-gradient-start),var(--auth-gradient-mid) 60%,var(--auth-gradient-end))}.auth-panel-form{background:var(--color-surface)}.auth-eyebrow{margin:0;text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;color:var(--color-focus);font-weight:700}.auth-form{display:flex;flex-direction:column;gap:1rem}.auth-benefits{margin:1rem 0 0;padding-left:1.2rem}.auth-switcher{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.tab-link{text-decoration:none;border:1px solid var(--color-border-strong);border-radius:999px;color:var(--color-text);background:var(--color-surface-alt);padding:.5rem .9rem;font-size:.92rem}.tab-link.active{background:var(--color-primary);color:var(--color-primary-contrast);border-color:var(--color-primary)}.page{display:flex;flex-direction:column;gap:1rem}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:1rem}.collapsible-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap}.collapsible-card-header h2{margin:0}.collapsible-card-controls{display:inline-flex;align-items:center;gap:.45rem}.collapsible-caret{width:2rem;height:2rem;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-surface-alt);color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .14s ease,border-color .14s ease}.collapsible-caret svg{width:1rem;height:1rem;fill:currentColor;transition:transform .16s ease}.collapsible-caret.open svg{transform:rotate(180deg)}.collapsible-caret:hover{border-color:var(--color-primary);color:var(--color-primary)}.collapsible-card-body{margin-top:.75rem}.create-card form,.field-row{display:flex;flex-direction:column;gap:.5rem}.checkin-form{display:flex;flex-direction:column;gap:.9rem}.timer-header-toggle{width:2rem;height:2rem;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-surface-alt);color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .14s ease,border-color .14s ease,background-color .14s ease}.timer-header-toggle svg{width:1rem;height:1rem;fill:currentColor}.timer-header-toggle:hover{border-color:var(--color-primary);color:var(--color-primary)}.timer-header-toggle.active{border-color:var(--color-primary);background:color-mix(in srgb,var(--color-primary) 14%,var(--color-surface));color:var(--color-primary)}.timer-panel{margin:1rem 0;padding:1rem;border:1px solid var(--color-border-strong);border-radius:12px;background:radial-gradient(circle at top right,color-mix(in srgb,var(--color-primary) 14%,transparent),transparent 32%),linear-gradient(180deg,var(--color-surface),var(--color-surface-alt))}.timer-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap}.timer-panel-header h3{margin:0 0 .25rem}.timer-panel-header p,.timer-unit-note{margin:0;color:var(--color-muted)}.timer-clock{margin:1rem 0;font-size:clamp(2rem,6vw,3.2rem);line-height:1;letter-spacing:.12em;font-variant-numeric:tabular-nums;font-weight:700;color:var(--color-text)}.timer-actions{display:flex;gap:.75rem;flex-wrap:wrap}.term-entry-row{display:flex;gap:.5rem}.term-entry-row input{flex:1}.color-picker{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.6rem}.color-picker.compact{margin-top:0}.color-dot{width:1.5rem;height:1.5rem;border-radius:999px;border:2px solid var(--color-surface);box-shadow:0 0 0 1px var(--color-border-strong);cursor:pointer}.color-dot.active{box-shadow:0 0 0 2px var(--color-text)}.custom-color-control{display:inline-flex;align-items:center;gap:.35rem;font-size:.8rem;color:var(--color-muted);margin-left:.2rem}.custom-color-control input[type=color]{width:1.7rem;height:1.7rem;padding:0;border:1px solid var(--color-border-strong);border-radius:999px;background:transparent;cursor:pointer}.custom-color-control.compact{margin-left:0}.field-row input,.field-row select,.field-row textarea,.metric-row input{border:1px solid var(--color-border-strong);border-radius:8px;padding:.6rem;font-size:.95rem;background:var(--color-surface);color:var(--color-text)}.field-row textarea{resize:vertical;min-height:96px;font-family:inherit}.metric-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;margin:.5rem 0}.button,.link-button{display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:var(--color-primary);color:var(--color-primary-contrast);padding:.55rem .9rem;font-size:.95rem;text-decoration:none;cursor:pointer}.button.secondary{background:var(--color-secondary)}.button.danger{background:var(--color-danger)}.actions{display:flex;gap:.5rem;margin-top:.75rem}.entry-actions-menu{position:relative}.entry-actions-trigger{width:2.1rem;height:2.1rem;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-surface-alt);color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:border-color .14s ease,color .14s ease,background-color .14s ease}.entry-actions-trigger:hover{border-color:var(--color-primary);color:var(--color-primary)}.entry-actions-dropdown{position:absolute;right:0;top:calc(100% + .45rem);min-width:150px;border:1px solid var(--color-border-strong);border-radius:10px;background:var(--color-surface);box-shadow:0 12px 24px color-mix(in srgb,black 20%,transparent);padding:.4rem;z-index:10;display:flex;flex-direction:column;gap:.25rem}.entry-actions-dropdown-item{width:100%;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--color-text);text-align:left;padding:.45rem .55rem;cursor:pointer}.entry-actions-dropdown-item:hover{background:var(--color-surface-alt);border-color:var(--color-border)}.entry-actions-dropdown-item.danger{color:var(--color-danger-text)}.term-list{display:flex;flex-wrap:wrap;gap:.5rem}.term-list.compact{gap:.35rem}.pill-button,.pill-badge{border:1px solid var(--color-border-strong);border-radius:999px;padding:.3rem .65rem;font-size:.85rem}.pill-button{background:var(--color-surface-alt);color:var(--color-text);cursor:pointer}.pill-button.selected{background:var(--color-text);color:var(--color-primary-contrast);border-color:var(--color-text)}.pill-button:disabled{opacity:.5;cursor:not-allowed}.pill-badge{background:color-mix(in srgb,var(--color-primary) 14%,var(--color-surface));border-color:color-mix(in srgb,var(--color-primary) 30%,var(--color-border))}.quick-select-container{margin-top:1.25rem;border:1px solid var(--color-border);border-radius:10px;padding:.85rem 1rem}.quick-select-header{display:flex;align-items:center;gap:.75rem;padding-bottom:.65rem}.quick-select-header h3{margin:0}.manage-terms-toggle{font-size:.8rem;padding:.2rem .6rem}.term-editor-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;background:var(--overlay-color);display:flex;justify-content:center;align-items:flex-start;overflow-y:auto;padding:1.5rem 1rem}.term-editor-modal-card{width:min(560px,100%)}.term-editor-modal-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:1rem}.term-editor-modal-header h2{margin:0}.term-editor-selector{margin-bottom:1rem}.term-color-editor-list{display:flex;flex-direction:column;gap:0;margin-top:.6rem}.term-color-editor-row{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;padding:1rem 0}.term-color-editor-row+.term-color-editor-row{border-top:1px solid var(--color-border)}.term-editor-term-name{width:100%}.term-rename-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;width:100%}.term-rename-input{min-width:11rem;border:1px solid var(--color-border-strong);border-radius:8px;padding:.45rem .6rem;font-size:.9rem;color:var(--color-text);background:var(--color-surface)}.error{color:var(--color-danger)}.success{color:var(--color-success)}.calendar-controls{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.55rem}.calendar-header-cell{font-weight:600;color:var(--color-muted);font-size:.88rem;text-align:center}.calendar-day-cell{border:1px solid var(--color-border);border-radius:10px;padding:.55rem;min-height:135px;display:flex;flex-direction:column;gap:.45rem;background:var(--color-surface-alt)}.calendar-day-cell[role=button]{cursor:pointer}.calendar-day-cell.selected{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 35%,transparent)}.calendar-day-cell:focus-visible{outline:2px solid var(--color-focus);outline-offset:1px}.calendar-day-cell.empty{border-style:dashed;background:color-mix(in srgb,var(--color-surface-alt) 70%,var(--color-border) 30%)}.calendar-day-number{font-weight:700;font-size:.95rem;color:var(--color-text)}.calendar-day-header{display:flex;align-items:center;justify-content:space-between;gap:.35rem}.note-indicator{width:1.1rem;height:1.1rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;background:var(--color-warning-soft);color:var(--color-warning-text);border:1px solid var(--color-warning-border)}.calendar-date-row{border:1px solid var(--color-border);border-radius:8px;padding:.4rem;font-size:.78rem;min-height:44px;display:flex;align-items:center}.calendar-date-row p{margin:0}.goal-row{background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface));border-color:color-mix(in srgb,var(--color-primary) 30%,var(--color-border))}.feelings-row{background:var(--color-warning-soft);border-color:var(--color-warning-border);align-items:flex-start}.calendar-detail-card h2{margin-top:0}.calendar-detail-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:var(--overlay-color);display:flex;justify-content:flex-end;align-items:stretch;overflow-y:auto;padding:0;animation:fadeInOverlay .16s ease-out}.calendar-detail-modal-card{width:min(560px,100%);min-height:100vh;border-radius:0;border-top:0;border-right:0;border-bottom:0;overflow-y:auto;animation:slideInFromRight .22s cubic-bezier(.16,1,.3,1)}.calendar-detail-modal-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.calendar-detail-modal-header h2{margin:0}.calendar-detail-close{white-space:nowrap}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}@keyframes slideInFromRight{0%{transform:translate(100%)}to{transform:translate(0)}}.calendar-detail-body{display:flex;flex-direction:column;gap:.75rem}.calendar-detail-date{margin:0}.calendar-detail-row{border:1px solid var(--color-border);border-radius:8px;padding:.65rem;background:var(--color-surface-alt)}.calendar-detail-row h3{margin:0 0 .35rem;font-size:.95rem}.calendar-row-title{display:flex;align-items:center;justify-content:space-between;gap:.55rem}.calendar-row-title h3{margin:0}.calendar-detail-row p{margin:.2rem 0 0}.calendar-inline-form{display:flex;flex-direction:column;gap:.45rem;margin-top:.55rem}.calendar-inline-form textarea,.calendar-inline-form input,.calendar-inline-form select{border:1px solid var(--color-border-strong);border-radius:8px;padding:.45rem .55rem;background:var(--color-surface);color:var(--color-text);font:inherit}.calendar-inline-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;align-items:center}.calendar-crud-list{display:flex;flex-direction:column;gap:.55rem;margin-top:.55rem}.calendar-crud-item{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface);padding:.55rem;display:flex;flex-direction:column;gap:.5rem}.calendar-crud-item-row{display:flex;justify-content:space-between;gap:.6rem;align-items:flex-start}.calendar-item-actions{display:inline-flex;gap:.45rem;flex-wrap:wrap}.calendar-disclosure-panel{border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface-alt);padding:.55rem;margin-top:.45rem}.calendar-caret-button{width:2rem;height:2rem;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-surface-alt);color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .14s ease,border-color .14s ease}.calendar-caret-button svg{width:1rem;height:1rem;fill:currentColor;transition:transform .16s ease}.calendar-caret-button.open svg{transform:rotate(180deg)}.calendar-caret-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.calendar-caret-button:disabled{opacity:.6;cursor:not-allowed}.calendar-icon-button{width:2rem;height:2rem;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-surface-alt);color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.calendar-icon-button svg{width:1rem;height:1rem;fill:currentColor}.calendar-icon-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.calendar-icon-button:disabled{opacity:.6;cursor:not-allowed}.calendar-edit-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--overlay-color);z-index:60;display:flex;align-items:center;justify-content:center;padding:1rem}.calendar-edit-modal{width:min(620px,100%);display:flex;flex-direction:column;gap:.75rem}.calendar-edit-modal h3{margin:0}.calendar-item-actions .button,.calendar-inline-fields .button{white-space:nowrap}.calendar-detail-list{margin:.35rem 0 0;padding-left:1rem}.day-summary-chips{display:flex;flex-wrap:wrap;gap:.45rem}.summary-chip{border-radius:999px;border:1px solid color-mix(in srgb,var(--color-primary) 30%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 12%,var(--color-surface));color:var(--color-text);font-size:.8rem;padding:.25rem .6rem}.timeline-list{margin:.4rem 0 0;padding-left:1rem;display:flex;flex-direction:column;gap:.55rem}.timeline-item{border-left:2px solid var(--color-border-strong);padding-left:.6rem}.timeline-item-header{display:flex;justify-content:space-between;gap:.5rem;align-items:baseline}.timeline-item-header span{color:var(--color-muted);font-size:.78rem}.timeline-item p{margin:.15rem 0 0}@media(max-width:900px){.calendar-inline-fields{grid-template-columns:1fr}.calendar-crud-item-row{flex-direction:column}.calendar-edit-modal{width:100%}}.goals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.goal-card h2,.metric-item h3{margin:.2rem 0}.goal-card-actions{display:flex;gap:.6rem;flex-wrap:wrap}.goal-card-actions .button,.goal-card-actions .link-button{min-height:2.25rem}.goal-delete-card{margin-top:1rem}.goal-delete-help{margin-top:0;margin-bottom:1rem}.goal-delete-list{display:flex;flex-direction:column;gap:0}.goal-delete-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 0}.goal-delete-row+.goal-delete-row{border-top:1px solid var(--color-border)}.goal-delete-row p{margin:.25rem 0 0;color:var(--color-text-muted)}.goal-delete-confirmation{display:flex;flex-direction:column;align-items:flex-end;gap:.6rem}.goal-delete-confirmation p{margin:0;text-align:right}.goal-delete-confirmation-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end}.chart-container{width:100%;height:320px}.chart-tabs{display:inline-flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.chart-tab-button{border:1px solid var(--color-border-strong);border-radius:999px;color:var(--color-text);background:var(--color-surface-alt);padding:.45rem .85rem;font-size:.9rem;cursor:pointer}.chart-tab-button.active{background:var(--color-primary);color:var(--color-primary-contrast);border-color:var(--color-primary)}.metric-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.75rem}.metric-item{border:1px solid var(--color-border);border-radius:8px;padding:.75rem}.metric-editor-card{border:1px solid var(--color-border);border-radius:8px;padding:.75rem;margin:.6rem 0}.goal-editor-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;background:var(--overlay-color);display:flex;justify-content:center;align-items:flex-start;overflow-y:auto;padding:1.5rem 1rem}.goal-editor-modal-card{width:min(980px,100%)}.goal-editor-modal-header{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.5rem}.goal-editor-modal-header h2{margin:0}.entry-list{display:flex;flex-direction:column;gap:.75rem}.entry-item{border:1px solid var(--color-border);border-radius:8px;padding:.75rem;display:flex;flex-direction:column;align-items:stretch;gap:.75rem}.entry-item-main{display:flex;justify-content:space-between;align-items:center;gap:.75rem}.entry-item-main p{margin:0}.entry-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.entry-item-column .field-row,.entry-item-column textarea,.entry-item-column input{width:100%}.entry-edit-layout{width:100%;display:flex;flex-direction:column;gap:.6rem;animation:entryEditReveal .18s ease-out}@keyframes entryEditReveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.entry-edit-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.entry-edit-fields input,.entry-edit-fields select{border:1px solid var(--color-border-strong);border-radius:8px;padding:.55rem;font-size:.9rem}.entry-item-column{flex-direction:column;align-items:flex-start}.entry-note{margin:0;color:var(--color-muted);white-space:pre-wrap}.entry-item-recently-saved{border-color:var(--color-success-strong);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success-strong) 25%,transparent);animation:recentlySavedPulse 1.6s ease-out}@keyframes recentlySavedPulse{0%{background-color:var(--color-success-soft);box-shadow:0 0 color-mix(in srgb,var(--color-success-strong) 40%,transparent)}35%{background-color:var(--color-success-soft);box-shadow:0 0 0 6px color-mix(in srgb,var(--color-success-strong) 16%,transparent)}to{background-color:var(--color-surface);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-success-strong) 25%,transparent)}}.options-card{max-width:700px}.options-help{margin-top:0;color:var(--color-muted)}.options-form{display:flex;flex-direction:column;gap:.9rem}.theme-grid,.font-pair-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.theme-option,.font-pair-option{border:1px solid var(--color-border-strong);border-radius:10px;background:var(--color-surface-alt);color:var(--color-text);text-align:left;padding:.75rem;cursor:pointer;display:flex;flex-direction:column;gap:.45rem}.theme-option.selected,.font-pair-option.selected{border-color:var(--color-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--color-primary) 25%,transparent)}.theme-option-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.theme-option p,.font-pair-option p{margin:0;font-size:.82rem;color:var(--color-muted)}.theme-chip{font-size:.72rem;color:var(--color-primary);min-height:1rem}.theme-preview{height:.55rem;border-radius:999px}.font-pair-preview{margin-top:.15rem;padding:.6rem;border:1px solid var(--color-border);border-radius:8px;background:var(--color-surface)}.font-pair-preview-heading{margin:0;font-size:1rem;color:var(--color-text)}.font-pair-preview-body{margin:.35rem 0 0;font-size:.86rem;line-height:1.4}.chart-color-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.chart-color-item{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;color:var(--color-muted)}.chart-color-item input[type=color]{width:100%;min-height:2.25rem;border:1px solid var(--color-border-strong);border-radius:8px;background:var(--color-surface);cursor:pointer}@media(max-width:760px){.theme-grid,.font-pair-grid,.chart-color-grid{grid-template-columns:1fr}}.db-check{border-color:var(--color-warning-strong);background:var(--color-warning-soft)}.db-check h2{margin-top:0}.db-check ol{margin:.5rem 0 0;padding-left:1.2rem}.db-actions{margin-top:.75rem}.db-detail{color:var(--color-warning-text);font-size:.9rem;word-break:break-word}@media(max-width:820px){.auth-layout{grid-template-columns:1fr}.app-header{align-items:flex-start}}@media(max-width:900px){.metric-row{grid-template-columns:1fr}.timer-actions{flex-direction:column}.timer-actions .button{width:100%}.term-entry-row{flex-direction:column}.entry-edit-fields,.theme-grid{grid-template-columns:1fr}.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-header-cell{display:none}.calendar-controls{flex-wrap:wrap}.calendar-detail-modal-backdrop{justify-content:center;align-items:flex-end}.calendar-detail-modal-card{width:100%;min-height:100dvh;max-height:100dvh;border-radius:0;border:none;animation:none}.calendar-detail-modal-header{align-items:flex-start;flex-direction:column}.goal-editor-modal-backdrop{padding:.75rem}.goal-editor-modal-header{flex-direction:column;align-items:flex-start}}
