:root{--side-margin:1vh;--nav-width:220px;--nav-content-gap:1vh;--border-radius:20px}html,body,#root{background:linear-gradient(-45deg,#fff,#8574b8,#fff);height:100%;margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}input[type=date],input[type=time],input[type=datetime-local]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;accent-color:#8574b8}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55;border-radius:6px;padding:3px;transition:opacity .15s,background-color .15s}input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55;border-radius:6px;padding:3px;transition:opacity .15s,background-color .15s}input[type=datetime-local]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.55;border-radius:6px;padding:3px;transition:opacity .15s,background-color .15s}input[type=date]::-webkit-calendar-picker-indicator:hover{opacity:1;background-color:#8574b822}input[type=time]::-webkit-calendar-picker-indicator:hover{opacity:1;background-color:#8574b822}input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1;background-color:#8574b822}.nav-bar{flex-direction:column;flex:0 0 var(--nav-width);border-radius:var(--border-radius);box-sizing:border-box;background:#fff;height:100%;padding:20px;display:inline-flex;box-shadow:1px 1px 6px #80808022}.nav-title{color:#000;text-align:left;flex-direction:column;margin:0 0 20px;font-weight:700;line-height:1.15;display:flex}.nav-title-line{display:block}.nav-link{color:#8574b8;align-items:center;gap:10px;display:flex}.nav-link-icon{flex:none}.nav-items{flex-direction:column;gap:20px;padding-left:0;list-style-type:none;display:inline-flex}li a{box-sizing:border-box;text-align:left;background:0 0;border-radius:10px;width:100%;padding:8px 12px;text-decoration:none;transition:background-color .15s;display:block}li a:hover{color:#5f4f96;background:#e0e0e0}.nav-user{border-top:1px solid #eee;flex-direction:column;gap:16px;margin-top:auto;padding-top:16px;display:flex}.nav-user-identity{align-items:center;gap:10px;min-width:0;display:flex}.nav-avatar{letter-spacing:.02em;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:.7rem;font-weight:700;display:flex}.nav-user-name{color:#555;text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.85rem;overflow:hidden}.nav-logout{color:#8574b8;cursor:pointer;background:0 0;border:1px solid #8574b8;border-radius:10px;align-self:flex-start;align-items:center;gap:8px;padding:6px 12px;font-size:.8rem;transition:background-color .15s,color .15s;display:inline-flex}.nav-logout-icon{flex:none}.nav-logout:hover{color:#fff;background:#8574b8}.content-wrapper{box-sizing:border-box;border-radius:var(--border-radius);background-color:#fff;flex:auto;min-width:0;min-height:0;padding:20px;overflow-y:auto;box-shadow:1px 1px 6px #80808022}.dashboard-greeting{color:#1a1a1a;flex:none;margin:0;padding:0 6px;font-size:2.35rem;font-weight:700}.app-container{box-sizing:border-box;height:100%;padding:var(--side-margin);gap:var(--nav-content-gap);flex-direction:row;display:flex}.main-column{box-sizing:border-box;flex-direction:column;flex:auto;gap:10px;min-width:0;height:100%;display:flex}.plus-button{color:#fff;cursor:pointer;background:#8574b8;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1.8rem;line-height:1;transition:background-color .15s,transform .1s;display:flex;position:absolute;top:20px;right:20px;box-shadow:1px 2px 6px #80808066}.plus-button:hover{background:#5f4f96;transform:scale(1.05)}.plus-button:active{transform:scale(.97)}.dtp-wrapper{flex-direction:column;width:100%;display:flex}.dtp-trigger{color:#333;cursor:pointer;box-sizing:border-box;text-align:left;background:#fff;border:1px solid #d0d0d0;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:8px 10px;font-family:inherit;font-size:.9rem;transition:border-color .15s;display:flex}.dtp-trigger:hover:not(:disabled),.dtp-trigger[aria-expanded=true]{border-color:#8574b8}.dtp-trigger:disabled{color:#999;cursor:not-allowed;background:#f5f5f5}.dtp-trigger-value{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dtp-trigger-placeholder{color:#999;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dtp-trigger-icon{color:#8574b8;opacity:.8;flex:none}.dtp-panel{z-index:1001;box-sizing:border-box;background:#fff;border:1px solid #e5e5e5;border-radius:14px;flex-direction:column;gap:14px;padding:14px;display:flex;box-shadow:0 6px 20px #0003}.dtp-calendar{flex-direction:column;gap:8px;display:flex}.dtp-calendar-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.dtp-nav-btn{cursor:pointer;color:#333;background:#fff;border:1px solid #d8d8d8;border-radius:7px;width:24px;height:24px;padding:0;font-size:.9rem;line-height:1}.dtp-nav-btn:hover{background:#f0f0f0}.dtp-month-label{font-size:.82rem;font-weight:700}.dtp-weekdays{text-align:center;color:#888;grid-template-columns:repeat(7,1fr);font-size:.68rem;display:grid}.dtp-day-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.dtp-day{aspect-ratio:1;color:#333;cursor:pointer;background:#fafafa;border:1px solid #0000;border-radius:7px;padding:0;font-family:inherit;font-size:.75rem;transition:background-color .15s,border-color .15s,color .15s}.dtp-day:hover{border-color:#8574b8}.dtp-day-outside{color:#bbb}.dtp-day-today{border-color:#8574b8}.dtp-day-selected{color:#fff;background:#8574b8;border-color:#8574b8;font-weight:700}.dtp-day-disabled,.dtp-day-disabled.dtp-day-outside{color:#ddd;cursor:not-allowed;background:#fafafa}.dtp-day-disabled:hover{border-color:#0000}.dtp-time{flex-direction:column;gap:8px;display:flex}.dtp-time-label{color:#555;font-size:.78rem;font-weight:700}.dtp-time-columns{align-items:stretch;gap:6px;display:flex}.dtp-time-col{scroll-behavior:smooth;flex-direction:column;flex:1 1 0;gap:3px;max-height:168px;padding-right:2px;display:flex;overflow-y:auto}.dtp-time-sep{color:#999;align-self:center;padding:0 2px;font-weight:700}.dtp-time-option{color:#444;cursor:pointer;text-align:center;background:#fafafa;border:1px solid #0000;border-radius:7px;flex:none;padding:6px 0;font-family:inherit;font-size:.8rem;transition:background-color .15s,border-color .15s,color .15s}.dtp-time-option:hover{border-color:#8574b8}.dtp-time-option-active{color:#fff;background:#8574b8;border-color:#8574b8;font-weight:700}.dtp-time-option-disabled,.dtp-time-option-disabled:hover{color:#ccc;cursor:not-allowed;background:#f5f5f5;border-color:#0000}.dtp-panel-actions{border-top:1px solid #eee;justify-content:space-between;align-items:center;padding-top:10px;display:flex}.dtp-now-btn{color:#8574b8;cursor:pointer;background:0 0;border:1px solid #8574b8;border-radius:8px;padding:6px 14px;font-size:.8rem;font-weight:700;transition:background-color .15s}.dtp-now-btn:hover{background:#8574b822}.dtp-done-btn{color:#fff;cursor:pointer;background:#8574b8;border:none;border-radius:8px;padding:6px 16px;font-size:.8rem;font-weight:700}.dtp-done-btn:hover{background:#5f4f96}@media (height<=760px) and (width>=560px){.dtp-panel:not(.dtp-panel-time-only){grid-template-columns:minmax(0,1fr) 130px;grid-template-areas:"calendar time""actions actions";gap:10px 16px;padding:12px;display:grid}.dtp-panel:not(.dtp-panel-time-only) .dtp-calendar{grid-area:calendar}.dtp-panel:not(.dtp-panel-time-only) .dtp-time{contain:size;grid-area:time;min-height:0}.dtp-panel:not(.dtp-panel-time-only) .dtp-time-columns{flex:auto;min-height:0}.dtp-panel:not(.dtp-panel-time-only) .dtp-time-col{max-height:none}.dtp-panel:not(.dtp-panel-time-only) .dtp-panel-actions{grid-area:actions}}@media (height<=600px){.dtp-time-col{max-height:110px}}.entry-overlay-backdrop{box-sizing:border-box;z-index:1000;background:#00000073;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.entry-overlay-card{border-radius:var(--border-radius);background:#fff;flex-direction:column;width:100%;max-width:640px;max-height:90vh;display:flex;overflow:hidden;box-shadow:0 8px 30px #0004}.entry-overlay-header{border-bottom:1px solid #eee;flex:none;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.entry-overlay-header h2{margin:0;font-size:1.2rem}.entry-overlay-close{cursor:pointer;color:#666;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:1.6rem;line-height:1;display:inline-flex}.entry-overlay-close:hover{background:#f0f0f0}.entry-form{--entry-form-pad-x:24px;padding:0 var(--entry-form-pad-x) 24px;flex-direction:column;gap:18px;display:flex;overflow-y:auto}.entry-form>:first-child{margin-top:20px}.entry-form-section{border:none;flex-direction:column;gap:10px;margin:0;padding:0;display:flex}.entry-form-section legend{margin-bottom:4px;padding:0;font-size:.95rem;font-weight:700}.checkbox-grid{flex-wrap:wrap;gap:8px;display:flex}.checkbox-chip{cursor:pointer;-webkit-user-select:none;user-select:none;border:1px solid #d8d8d8;border-radius:20px;align-items:center;gap:6px;padding:6px 10px;font-size:.85rem;display:inline-flex}.checkbox-chip input{accent-color:#8574b8}.checkbox-line{cursor:pointer;align-items:center;gap:8px;font-size:.9rem;display:flex}.checkbox-line input{accent-color:#8574b8}.field-row{flex-wrap:wrap;gap:12px;display:flex}.entry-field{color:#333;flex-direction:column;flex:200px;gap:6px;font-size:.85rem;display:flex}.entry-field input,.entry-field textarea{box-sizing:border-box;resize:none;border:1px solid #d0d0d0;border-radius:10px;padding:8px 10px;font-family:inherit;font-size:.95rem}.entry-field input:focus,.entry-field textarea:focus{border-color:#8574b8;outline:none}.pain-slider{accent-color:#8574b8;width:100%}.medication-list{flex-direction:column;gap:8px;display:flex}.medication-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.helped-toggle{gap:6px;display:flex}.helped-btn{cursor:pointer;color:#555;background:#fff;border:1px solid #d8d8d8;border-radius:8px;padding:4px 10px;font-size:.78rem}.helped-btn.active-yes{color:#fff;background:#8574b8;border-color:#8574b8}.helped-btn.active-no{color:#fff;background:#c0392b;border-color:#c0392b}.add-medication{gap:8px;margin-top:4px;display:flex}.add-medication input{box-sizing:border-box;border:1px solid #d0d0d0;border-radius:10px;flex:auto;padding:8px 10px}.add-medication button{cursor:pointer;background:#eee;border:none;border-radius:10px;padding:8px 14px;font-size:.85rem}.add-medication button:hover{background:#e0e0e0}.location-search{gap:8px;display:flex}.location-search input{box-sizing:border-box;border:1px solid #d0d0d0;border-radius:10px;flex:auto;padding:8px 10px}.location-search button{cursor:pointer;background:#eee;border:none;border-radius:10px;padding:8px 14px;font-size:.85rem}.location-search button:hover:not(:disabled){background:#e0e0e0}.location-search button:disabled{opacity:.6;cursor:not-allowed}.location-clear{color:#c0392b;flex:none;width:34px;line-height:1;padding:0!important;font-size:1.1rem!important}.location-results{border:1px solid #e5e5e5;border-radius:10px;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.location-results button{box-sizing:border-box;text-align:left;cursor:pointer;color:#333;background:#fff;border:none;width:100%;padding:8px 10px;font-size:.82rem}.location-results button:hover{color:#5f4f96;background:#f3f0fa}.location-selected{color:#444;margin:0;font-size:.82rem}.weather-preview{color:#444;background:#f7f7f7;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;font-size:.8rem;display:flex}.weather-icon{font-size:1.1rem;line-height:1}.weather-stat{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:2px 8px;font-weight:700}.weather-change-up{color:#c0392b}.weather-change-down{color:#5f4f96}.weather-unavailable{color:#888;font-style:italic}.entry-form-error{color:#c0392b;margin:0;font-size:.85rem}.entry-form-actions{border-top:1px solid #eee;justify-content:space-between;align-items:center;gap:10px;padding-top:8px;display:flex}.entry-form-actions-left{display:flex}.entry-form-actions-right{gap:10px;display:flex}.entry-form-delete{color:#c0392b;cursor:pointer;background:0 0;border:1px solid #c0392b;border-radius:10px;align-items:center;gap:6px;padding:10px 16px;font-size:.9rem;transition:background-color .15s,color .15s;display:flex}.entry-form-delete:hover:not(:disabled){color:#fff;background:#c0392b}.entry-form-delete:disabled{opacity:.55;cursor:not-allowed}.entry-form-cancel{cursor:pointer;background:0 0;border:1px solid #d0d0d0;border-radius:10px;padding:10px 16px;font-size:.9rem}.entry-form-cancel:hover{background:#f5f5f5}.entry-form-submit{color:#fff;cursor:pointer;background:#8574b8;border:none;border-radius:10px;padding:10px 18px;font-size:.9rem;font-weight:700}.entry-form-submit:hover{background:#5f4f96}.entry-form-submit:disabled{cursor:not-allowed;background:#cfc7e8}@media (width<=480px){.entry-overlay-card{max-height:95vh}.field-row{flex-direction:column}}.entry-day-scope{flex-direction:column;gap:18px;display:flex}.entry-day-selector{z-index:2;margin:0 calc(-1 * var(--entry-form-pad-x));padding:8px var(--entry-form-pad-x) 4px;background:#fff;border-bottom:1px solid #eee;flex-direction:column;gap:6px;display:flex;position:sticky;top:0;box-shadow:0 4px 6px -4px #00000014}.entry-day-selector .med-day-picker{margin-bottom:4px;padding-top:6px}.entry-day-outside-note{color:#c0392b;flex-wrap:wrap;align-items:center;gap:8px;font-size:.78rem;display:flex}.entry-day-outside-note button{color:#c0392b;cursor:pointer;background:#fff;border:1px solid #c0392b;border-radius:8px;padding:4px 10px;font-family:inherit;font-size:.75rem}.entry-day-outside-note button:hover{color:#fff;background:#c0392b}.med-day-picker{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.med-day-chip{color:#444;cursor:pointer;background:#fff;border:1px solid #d8d8d8;border-radius:10px;flex-direction:column;align-items:center;gap:1px;min-width:62px;padding:5px 10px;font-family:inherit;transition:border-color .15s,background-color .15s;display:inline-flex;position:relative}.med-day-chip:hover{border-color:#8574b8}.med-day-chip.active{color:#fff;background:#8574b8;border-color:#8574b8}.med-day-chip.outside{color:#c0392b;border-style:dashed;border-color:#c0392b}.med-day-chip.outside.active{color:#fff;background:#c0392b;border-style:solid}.med-day-chip-title{font-size:.78rem;font-weight:700}.med-day-chip-date{opacity:.85;font-size:.66rem}.med-day-chip-info{font-size:.7rem;font-weight:700}.med-day-chip-count{box-sizing:border-box;color:#fff;text-align:center;background:#6c5ce7;border-radius:8px;min-width:16px;height:16px;padding:0 4px;font-size:.62rem;font-weight:700;line-height:16px;position:absolute;top:-6px;right:-6px}.quick-note{box-sizing:border-box;border:1px solid #e5e5e5;border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:1px 1px 6px #80808022}.quick-note-heading h2{margin:0 0 2px;font-size:.92rem}.quick-note-row{flex-direction:column;align-items:stretch;gap:10px;display:flex}.quick-note-field{color:#333;flex-direction:column;gap:4px;font-size:.76rem;display:flex}.quick-note-field input[type=datetime-local]{box-sizing:border-box;border:1px solid #d0d0d0;border-radius:8px;width:100%;padding:6px 8px;font-family:inherit;font-size:.82rem}.quick-note-field input[type=datetime-local]:focus{border-color:#8574b8;outline:none}.quick-note-slider{accent-color:#8574b8;width:100%}.quick-note-submit{color:#fff;cursor:pointer;background:#8574b8;border:none;border-radius:8px;width:100%;padding:8px 16px;font-size:.82rem;font-weight:700}.quick-note-submit:hover{background:#5f4f96}.quick-note-submit:disabled{cursor:not-allowed;background:#cfc7e8}.quick-note-error{color:#c0392b;margin:0;font-size:.78rem}.quick-note-success{color:#5f4f96;margin:0;font-size:.78rem}.pain-graph{box-sizing:border-box;border:1px solid #e5e5e5;border-radius:14px;flex-direction:column;gap:8px;padding:14px;display:flex;box-shadow:1px 1px 6px #80808022}.pain-graph-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.pain-graph-header h2{margin:0;font-size:.92rem}.range-toggle{background:#f2f2f2;border-radius:16px;gap:4px;padding:2px;display:inline-flex}.range-btn{cursor:pointer;color:#555;background:0 0;border:none;border-radius:14px;padding:4px 10px;font-size:.72rem}.range-btn.active{color:#fff;background:#8574b8;font-weight:700}.pain-graph-average{color:#444;margin:0;font-size:.76rem}.pain-graph-empty{color:#777;margin:0;font-size:.78rem}.pain-graph-chart-wrap{aspect-ratio:3/2;width:100%}.pain-graph-svg{width:100%;height:100%;display:block}.pain-graph-gridline{stroke:#eee;stroke-width:.5px}.pain-graph-line{fill:none;stroke:#8574b8;stroke-width:1.4px;stroke-linejoin:round;stroke-linecap:round}.pain-graph-dot{fill:#5f4f96;stroke:#fff;stroke-width:.6px}.pain-graph-axis{color:#888;justify-content:space-between;font-size:.7rem;display:flex}.month-stats{box-sizing:border-box;border:1px solid #e5e5e5;border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:1px 1px 6px #80808022}.month-stats-header{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.month-stats-header h2{margin:0;font-size:.92rem}.month-stats-month{color:#888;font-size:.74rem}.month-stats-tiles{grid-template-columns:1fr 1fr;gap:8px;display:grid}.month-stats-tile{background:#f6f4fb;border-radius:10px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.month-stats-value{color:#5f4f96;font-size:1.6rem;font-weight:700;line-height:1.1}.month-stats-label{color:#444;font-size:.74rem}.month-stats-sublabel{color:#888}.month-stats-empty{color:#777;margin:0;font-size:.78rem}.month-stats-meds{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.month-stats-med{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) auto;align-items:center;gap:8px;font-size:.78rem;display:grid}.month-stats-med-name{color:#333;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;display:inline-flex;overflow:hidden}.month-stats-med-name svg{color:#8574b8;flex-shrink:0}.month-stats-med-bar{background:#f2f2f2;border-radius:3px;height:6px;overflow:hidden}.month-stats-med-bar-fill{background:#8574b8;border-radius:3px;height:100%;display:block}.month-stats-med-count{color:#444;text-align:right;min-width:2.2em;font-weight:700}.calendar-view{box-sizing:border-box;border:1px solid #e5e5e5;border-radius:14px;flex-direction:column;gap:10px;padding:14px;display:flex;box-shadow:1px 1px 6px #80808022}.calendar-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.calendar-header h2{margin:0;font-size:.92rem}.calendar-nav{align-items:center;gap:6px;display:flex}.calendar-nav-btn{cursor:pointer;color:#333;background:#fff;border:1px solid #d8d8d8;border-radius:7px;width:22px;height:22px;padding:0;font-size:.85rem;line-height:1}.calendar-nav-btn:hover{background:#f0f0f0}.calendar-month-label{text-align:center;min-width:92px;font-size:.78rem;font-weight:700}.calendar-today-btn{color:#8574b8;cursor:pointer;background:#fff;border:1px solid #8574b8;border-radius:16px;padding:3px 9px;font-size:.68rem}.calendar-today-btn:hover{color:#fff;background:#8574b8}.calendar-weekdays{text-align:center;color:#888;grid-template-columns:repeat(7,1fr);font-size:.65rem;display:grid}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:3px;display:grid}.calendar-day{aspect-ratio:1;cursor:pointer;z-index:1;background:#fafafa;border:1px solid #ececec;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:0;font-family:inherit;transition:box-shadow .15s,border-color .15s;display:flex;position:relative}.calendar-span{z-index:0;pointer-events:none;position:relative}.calendar-day-in-span{background:0 0;border-color:#0000}.calendar-day-med-badges{align-items:center;gap:1px;display:flex;position:absolute;top:2px;right:2px}.calendar-day-med-badge{color:#6c5ce7;background:#fffc;border-radius:50%;justify-content:center;align-items:center;width:12px;height:12px;display:flex;box-shadow:0 1px 2px #0002}.calendar-day-med-more{color:#6c5ce7;background:#fffc;border-radius:6px;padding:0 2px;font-size:.5rem;font-weight:700;line-height:12px;box-shadow:0 1px 2px #0002}.calendar-day:hover{border-color:#8574b8}.calendar-day-number{color:#333;font-size:.7rem}.calendar-day-outside .calendar-day-number{color:#bbb}.calendar-day-count{color:#555;font-size:.55rem;font-weight:700}.calendar-day-today{border-width:2px;border-color:#8574b8}.calendar-day-selected{box-shadow:inset 0 0 0 2px #5f4f96}.calendar-legend{color:#777;flex-wrap:wrap;align-items:center;gap:4px;font-size:.68rem;display:flex}.calendar-legend-label{color:#555;font-weight:700}.calendar-legend-swatch{border:1px solid #0000000f;border-radius:3px;width:11px;height:11px;display:inline-block}.calendar-day-detail{border-top:1px solid #eee;flex-direction:column;gap:6px;padding-top:10px;display:flex}.calendar-day-detail h3{text-transform:capitalize;margin:0;font-size:.82rem}.calendar-day-empty{color:#777;margin:0;font-size:.78rem}.calendar-day-error{color:#c0392b;margin:0;font-size:.78rem}.calendar-day-entries{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.calendar-day-entry{border:1px solid #e5e5e5;border-radius:9px;flex-flow:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;transition:border-color .15s,box-shadow .15s;display:flex}.calendar-day-entry:hover{border-color:#8574b8;box-shadow:0 2px 8px #80808033}.calendar-day-entry-main{cursor:pointer;flex-direction:row;flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.calendar-day-entry-chevron{color:#999;flex:none;width:12px;font-size:.7rem}.calendar-day-entry-summary{flex-direction:column;flex:auto;gap:4px;min-width:0;display:flex}.calendar-day-entry-time{color:#333;font-size:.76rem;font-weight:700}.calendar-day-entry-pain{color:#5f4f96;background:#8574b822;border-radius:16px;align-self:flex-start;padding:1px 8px;font-size:.7rem;font-weight:700}.calendar-day-entry-types{color:#666;font-size:.72rem}.calendar-day-entry-actions{flex:none;align-items:center;gap:4px;display:flex}.calendar-day-entry-action{color:#555;cursor:pointer;background:#fff;border:1px solid #d8d8d8;border-radius:7px;flex:none;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background-color .15s,border-color .15s,color .15s;display:flex}.calendar-day-entry-action:hover{color:#8574b8;border-color:#8574b8}.calendar-day-entry-action-delete:hover{color:#c0392b;border-color:#c0392b}.calendar-day-entry-details{color:#444;border-top:1px solid #eee;flex-direction:column;flex:100%;gap:5px;margin:4px 0 0 20px;padding-top:8px;font-size:.76rem;display:flex}.calendar-day-entry-details p{margin:0}.calendar-day-entry-details strong{color:#333}.calendar-day-entry-flags{flex-wrap:wrap;gap:6px;display:flex}.calendar-day-entry-flag{color:#c0392b;background:#fdecea;border-radius:12px;padding:1px 8px;font-size:.7rem;font-weight:700}.calendar-day-entry-weather{color:#555}.calendar-day-entry-weather-unavailable,.calendar-day-entry-empty-detail{color:#999;font-style:italic}.calendar-day-entry-action:disabled{opacity:.5;cursor:not-allowed}.home-page{box-sizing:border-box;height:100%;position:relative}.home-title{margin:0 60px 16px 0}.home-status{color:#666}.home-error{color:#c0392b}.dashboard{grid-template-columns:repeat(auto-fit,minmax(280px,400px));align-items:start;gap:14px;display:grid}.auth-page{box-sizing:border-box;width:100%;height:100%;padding:var(--side-margin);justify-content:center;align-items:center;display:flex}.auth-card{border-radius:var(--border-radius);box-sizing:border-box;background:#fff;flex-direction:column;gap:14px;width:100%;max-width:360px;padding:32px;display:flex;box-shadow:1px 1px 0 1px #80808044}.auth-title{color:#000;margin:0;font-weight:700}.auth-subtitle{color:#555;margin:0 0 6px;font-size:.9rem}.auth-field{color:#333;flex-direction:column;gap:6px;font-size:.85rem;display:flex}.auth-field input{box-sizing:border-box;border:1px solid #d0d0d0;border-radius:10px;padding:10px 12px;font-size:1rem}.auth-field input:focus{border-color:#8574b8;outline:none}.auth-error{color:#c0392b;margin:0;font-size:.85rem}.auth-submit{color:#fff;cursor:pointer;background:#8574b8;border:none;border-radius:10px;margin-top:6px;padding:10px 12px;font-size:1rem;font-weight:700;transition:background-color .15s}.auth-submit:hover{background:#5f4f96}.auth-submit:disabled{cursor:not-allowed;background:#cfc7e8}.auth-toggle{color:#8574b8;cursor:pointer;background:0 0;border:none;padding:4px;font-size:.85rem}.auth-toggle:hover{text-decoration:underline}
