:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #f5f1e9;--surface-0: #fffefb;--surface-1: #ffffff;--surface-2: #f4efe4;--surface-3: #ece4d3;--border: #e7ded0;--border-bright: #d9cdb6;--accent: #4f6df0;--accent-dim: #3c58dc;--accent-glow: rgba(79, 109, 240, .18);--success: #1f9d74;--success-glow: rgba(31, 157, 116, .16);--warning: #ee9a35;--warning-glow: rgba(238, 154, 53, .18);--danger: #e1524b;--danger-glow: rgba(225, 82, 75, .16);--purple: #8b5cf6;--purple-glow: rgba(139, 92, 246, .16);--text-1: #221f19;--text-2: #756e5d;--text-3: #a89f8a;--radius: 16px;--shadow: 0 1px 2px rgba(40, 30, 10, .05), 0 8px 20px rgba(40, 30, 10, .06);--shadow-lg: 0 4px 14px rgba(40, 30, 10, .08), 0 24px 60px rgba(40, 30, 10, .14);color:var(--text-1)}*{box-sizing:border-box}html,#root{height:100%;overflow:hidden}body{margin:0;min-width:320px;height:100%;min-height:100dvh;overflow:hidden;background:radial-gradient(ellipse 70% 50% at 12% -8%,rgba(79,109,240,.09) 0%,transparent 55%),radial-gradient(ellipse 60% 45% at 92% 105%,rgba(139,92,246,.07) 0%,transparent 55%),var(--bg);background-attachment:fixed}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--border-bright)}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.loading{min-height:100vh;display:grid;place-items:center;font-size:22px;font-weight:700;color:var(--text-2);letter-spacing:.05em}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.login-panel{width:min(430px,100%);display:grid;gap:18px;padding:28px;background:var(--surface-1);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-lg)}.login-panel p{color:var(--text-2);line-height:1.55}.login-button{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:9px;color:#fff;background:var(--accent);border-radius:12px;padding:0 16px;font-weight:800;text-decoration:none}.login-button.disabled{opacity:.45;pointer-events:none}.shell{width:min(2200px,100%);margin:0 auto;padding:16px 20px 24px;height:100dvh;min-height:0;overflow:hidden;display:flex;flex-direction:column}.topbar{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:14px;padding:12px 20px;background:var(--surface-1);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow)}.topbar-clock{flex-shrink:0}.eyebrow{margin:0 0 2px;color:var(--text-2);font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase}h1,h2,p{margin:0}h1{font-size:clamp(30px,3.4vw,46px);line-height:.98;letter-spacing:-.03em;font-weight:800;background:linear-gradient(130deg,var(--text-1) 25%,var(--accent) 130%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}h2{font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--text-1)}.quick-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1;justify-content:center}.nav-pill{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-1);border-radius:999px;min-height:40px;padding:0 14px 0 12px;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s ease;white-space:nowrap}.nav-pill:hover{transform:translateY(-1px);box-shadow:var(--shadow);border-color:var(--border-bright)}.nav-pill em{font-style:normal;min-width:19px;height:19px;padding:0 5px;border-radius:999px;display:inline-grid;place-items:center;font-size:11px;font-weight:800;color:#fff;background:var(--pill-color, var(--accent))}.nav-pill svg{color:var(--pill-color, var(--accent))}.pill-todo{--pill-color: #4f6df0}.pill-groceries{--pill-color: #1f9d74}.pill-reminders{--pill-color: #ee9a35}.pill-notes{--pill-color: #8b5cf6}.pill-todo:hover{background:#4f6df01a;border-color:#4f6df04d}.pill-groceries:hover{background:#1f9d741a;border-color:#1f9d744d}.pill-reminders:hover{background:#ee9a351a;border-color:#ee9a354d}.pill-notes:hover{background:#8b5cf61a;border-color:#8b5cf64d}.status-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;flex-shrink:0}.status-strip span,.icon-button,.button-row button,.button-row a{border:1px solid var(--border-bright);background:var(--surface-2);color:var(--text-2);border-radius:10px;min-height:38px;padding:0 13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;font-size:13px;font-weight:600;transition:all .15s ease;white-space:nowrap}.status-strip span{min-width:38px;padding:0}.status-strip .ok{border-color:#1f9d744d;background:#1f9d7414;color:var(--success)}.status-strip .warn{border-color:#ee9a354d;background:#ee9a3514;color:var(--warning)}.status-strip .muted{color:var(--text-3);border-color:var(--border);background:var(--surface-0)}.auth-chip{min-height:38px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border-bright);background:var(--surface-2);color:var(--text-2);border-radius:999px;padding:0 10px 0 5px;font-size:12px;font-weight:800}.auth-chip img,.auth-chip span{width:28px;height:28px;border-radius:999px;display:grid;place-items:center;background:var(--accent);color:#fff}.auth-chip img{object-fit:cover}.icon-button,button{cursor:pointer}.icon-button{min-width:38px;padding:0;border-radius:10px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-2);transition:all .15s ease}.icon-button:hover{background:var(--surface-2);color:var(--text-1);border-color:var(--border-bright)}.error{margin-bottom:14px;padding:11px 16px;border:1px solid rgba(225,82,75,.28);background:#e1524b14;color:var(--danger);border-radius:var(--radius);font-weight:600;font-size:13px}.calendar-stage{flex:1;display:flex;min-height:0;overflow:hidden}.calendar-panel{background:var(--surface-1);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow);padding:18px 20px;width:100%;display:flex;flex-direction:column;min-height:0;overflow:hidden}.section-heading{display:flex;align-items:center;gap:9px;margin-bottom:18px;color:var(--accent)}.section-heading p{color:var(--text-2);font-weight:600;font-size:12px;margin-top:2px}.calendar-toolbar{flex-shrink:0;display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:14px}.calendar-toolbar .section-heading{margin-bottom:0}.calendar-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.calendar-actions button,.event-detail footer button{border:1px solid var(--border-bright);background:var(--surface-2);border-radius:10px;min-height:36px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text-2);font-size:13px;font-weight:600;transition:all .15s ease}.calendar-actions button:hover{background:var(--surface-3);color:var(--text-1)}.segmented{display:flex;gap:2px;padding:3px;border:1px solid var(--border);background:var(--surface-2);border-radius:10px}.segmented button{border:0;background:transparent;color:var(--text-2);font-size:12px;font-weight:600;min-height:30px;padding:0 10px;border-radius:7px;transition:all .15s ease;gap:5px}.segmented button.active{background:var(--accent);color:#fff;box-shadow:0 2px 10px var(--accent-glow)}.segmented button:not(.active):hover{background:var(--surface-3);color:var(--text-1)}.week-grid{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));gap:8px;flex:1;min-height:0;overflow:auto}.month-grid{grid-template-columns:repeat(7,minmax(78px,1fr))}.day-grid{grid-template-columns:minmax(0,1fr)}.month-scroll{position:relative;display:grid;gap:18px;flex:1;min-height:0;max-height:none;overflow:auto;scroll-padding-top:58px;padding-right:4px;overscroll-behavior:contain}.month-sticky-indicator{position:sticky;top:0;z-index:4;width:fit-content;border:1px solid rgba(79,109,240,.22);background:color-mix(in srgb,var(--surface-1) 92%,var(--accent));color:var(--accent-dim);box-shadow:var(--shadow);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:850;letter-spacing:.02em}.month-section{display:grid;gap:9px}.month-section h3{margin:0;color:var(--text-1);font-size:18px;font-weight:850;letter-spacing:0}.day{min-height:340px;border:1px solid var(--border);background:var(--surface-0);border-radius:14px;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.month-grid .day{min-height:130px}.day-grid .day{min-height:520px}.outside-month{opacity:.35}.day.today{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-glow)}.day-head{min-height:54px;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;background:var(--surface-2);border-bottom:1px solid var(--border)}.day-head span{color:var(--text-3);font-weight:700;text-transform:uppercase;font-size:10px;letter-spacing:.1em}.day-head strong{font-size:24px;font-weight:800;color:var(--text-1);letter-spacing:-.02em}.day.today .day-head{background:var(--accent-glow)}.day.today .day-head strong{color:var(--accent-dim)}.events{padding:7px;display:grid;gap:5px}.event{border-left:4px solid var(--accent);border-top:0;border-right:0;border-bottom:0;background:var(--surface-2);border-radius:0 10px 10px 0;padding:8px 10px;display:grid;gap:2px;text-align:left;width:100%;transition:all .15s ease;cursor:pointer}.event:hover{background:var(--surface-3);transform:translate(2px);box-shadow:var(--shadow)}.event strong{font-size:13px;font-weight:700;color:var(--text-1);line-height:1.3}.event span,.event small{color:var(--text-2);font-size:11px}.event span{display:inline-flex;align-items:center;width:fit-content}.all-day-badge{background:var(--accent-glow);color:var(--accent-dim)!important;border:1px solid rgba(79,109,240,.22);border-radius:999px;padding:1px 7px;font-weight:700;font-size:10px}.empty{color:var(--text-3);font-weight:600;font-size:11px;padding:8px 2px;text-align:center}.agenda-list{display:grid;gap:5px;flex:1;min-height:0;overflow:auto;padding-right:4px}.agenda-item{display:grid;grid-template-columns:115px 1fr 190px;gap:12px;align-items:center;min-height:52px;border:1px solid var(--border);background:var(--surface-0);border-radius:12px;padding:9px 14px;text-align:left;transition:all .15s ease;cursor:pointer}.agenda-item:hover{background:var(--surface-2);border-color:var(--border-bright);transform:translate(2px)}.agenda-item span,.agenda-item small{color:var(--text-2);font-weight:600;font-size:12px}.agenda-item strong{color:var(--text-1);font-size:14px}.add-event-toggle{flex-shrink:0;margin-top:14px;align-self:flex-start;border:1px dashed var(--border-bright);background:var(--surface-2);color:var(--text-2);border-radius:999px;min-height:42px;padding:0 18px;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;transition:all .15s ease}.add-event-toggle:hover{border-style:solid;border-color:var(--accent);color:var(--accent-dim);background:var(--accent-glow)}.event-form,.quick-form,.todo-form{flex-shrink:0;display:grid;grid-template-columns:minmax(140px,1fr) 110px 175px 175px 82px auto 46px 46px;gap:7px;margin-top:14px}.quick-form{display:flex;gap:7px;align-items:center;margin:0 0 16px}.quick-form>*{width:auto;flex-shrink:0}.quick-form>input:first-child{flex:1;min-width:80px;flex-shrink:1;width:auto}.quick-form input[type=datetime-local]{flex:0 0 174px;width:174px}.todo-form{grid-template-columns:1fr;margin:0 0 16px;padding:14px;border:1px solid rgba(79,109,240,.18);background:#4f6df00b;border-radius:16px}.todo-form textarea{min-height:96px;font-size:16px;font-weight:650;background:var(--surface-1)}.todo-form>button[type=submit]{width:100%;min-height:46px;display:inline-flex;gap:8px}.todo-person-row,.todo-due-block{display:grid;gap:8px}.todo-person-row>span,.todo-due-block>span,.todo-options label span{color:var(--text-2);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.due-chip-row{display:flex;flex-wrap:wrap;gap:7px}.due-chip-row button{width:auto;min-height:36px;padding:0 13px;border:1px solid var(--border);background:var(--surface-1);color:var(--text-2);border-radius:999px;font-size:13px;font-weight:800;box-shadow:none}.due-chip-row button.selected{background:var(--accent);border-color:var(--accent);color:#fff}.todo-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.todo-options label{display:grid;gap:5px}.reminder-form{display:grid;gap:10px;margin:0 0 18px;padding:12px;border:1px solid rgba(238,154,53,.18);background:#ee9a350b;border-radius:16px}.reminder-title-input{min-height:48px;font-size:15px;font-weight:700}.reminder-form-row{display:grid;grid-template-columns:minmax(210px,260px) minmax(0,1fr) minmax(88px,auto);align-items:center;gap:9px}.reminder-form button{border:0;border-radius:10px;min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--warning);color:#fff;box-shadow:0 2px 10px var(--warning-glow);font-weight:800}input,select,textarea{width:100%;border:1px solid var(--border-bright);border-radius:10px;background:var(--surface-0);color:var(--text-1);min-height:40px;padding:0 11px;font-size:13px;transition:all .15s ease;outline:none}input::placeholder{color:var(--text-3)}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);background:var(--surface-1)}select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23756e5d' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:30px}select option{background:#fff;color:var(--text-1)}textarea{min-height:80px;resize:vertical;padding:10px 11px;line-height:1.55}.swatches{display:flex;align-items:center;gap:6px}.swatch{width:24px;height:24px;border-radius:999px;border:2px solid var(--surface-1);box-shadow:0 0 0 1px var(--border);transition:all .15s ease;cursor:pointer}.swatch:hover{transform:scale(1.2)}.swatch.selected{box-shadow:0 0 0 2px var(--surface-1),0 0 0 4px var(--accent);transform:scale(1.1)}.submit,.quick-form button,.todo-form button,.note-form button{border:0;border-radius:10px;min-height:40px;min-width:40px;display:inline-grid;place-items:center;background:var(--accent);color:#fff;box-shadow:0 2px 10px var(--accent-glow);transition:all .15s ease;cursor:pointer}.submit:hover,.quick-form button:hover,.todo-form button:hover,.note-form button:hover{background:var(--accent-dim);transform:translateY(-1px);box-shadow:0 6px 20px var(--accent-glow)}.event-form .cancel{border:1px solid var(--border-bright);border-radius:10px;min-height:40px;min-width:40px;display:inline-grid;place-items:center;background:var(--surface-2);color:var(--text-2);transition:all .15s ease;cursor:pointer}.reminder-form button:hover{background:#d88522;transform:translateY(-1px);box-shadow:0 6px 20px var(--warning-glow)}.event-form .cancel:hover{background:var(--surface-3);color:var(--text-1)}.inline-check,.check-row{display:inline-flex;align-items:center;gap:8px;min-height:40px;font-weight:700;font-size:13px;color:var(--text-2)}.inline-check input,.check-row input{width:16px;min-height:16px;accent-color:var(--accent)}.check-row{justify-content:flex-start}.list{display:grid;gap:6px}.task-list{display:grid;gap:8px}.task-card{width:100%;border:1px solid var(--border);border-left:5px solid var(--task-color, var(--accent));background:var(--surface-0);border-radius:14px;min-height:72px;padding:10px 12px;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:11px;text-align:left;transition:all .15s ease}.task-card:hover{background:var(--surface-2);border-color:var(--border-bright);border-left-color:var(--task-color, var(--accent))}.task-check{width:30px;height:30px;border-radius:999px;display:inline-grid;place-items:center;background:color-mix(in srgb,var(--task-color, var(--accent)) 18%,var(--surface-1));color:var(--task-color, var(--accent))}.task-main,.task-meta{display:grid;gap:3px;min-width:0}.task-main strong{color:var(--text-1);font-size:15px;font-weight:750;line-height:1.3}.task-main small,.task-meta small{color:var(--text-2);font-size:12px;font-weight:650}.task-meta{justify-items:end}.task-meta em{font-style:normal;color:var(--accent);font-size:13px;font-weight:850}.task-card.overdue .task-meta em{color:var(--danger)}.task-card.today .task-meta em{color:var(--warning)}.task-card.done{opacity:.48}.task-card.done .task-main strong{text-decoration:line-through}.row{width:100%;border:1px solid var(--border);background:var(--surface-0);border-radius:12px;min-height:68px;padding:14px 16px;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:12px;text-align:left;color:var(--text-2);transition:all .15s ease;cursor:pointer}.row:hover{background:var(--surface-2);border-color:var(--border-bright);color:var(--text-1)}.row span{min-width:0;display:grid;gap:4px}.row strong{color:var(--text-1);font-size:15px;font-weight:750;line-height:1.3;overflow-wrap:anywhere}.row small{color:var(--text-2);font-size:13px;line-height:1.35;overflow-wrap:anywhere}.row.done,.shop.checked{opacity:.45}.row.done strong,.shop.checked strong{text-decoration:line-through}.list-overlay.accent-todo .row svg,.list-overlay.accent-reminders .row svg{border-radius:999px;padding:3px;margin-top:2px;color:#fff}.list-overlay.accent-todo .row svg{background:#4f6df0}.list-overlay.accent-reminders .row svg{background:#ee9a35}.shopping-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;color:var(--text-2);font-size:13px;font-weight:700}.shopping-actions button{min-height:36px;border:1px solid var(--border-bright);background:var(--surface-2);color:var(--text-1);border-radius:10px;padding:0 12px;display:inline-flex;align-items:center;gap:7px;cursor:pointer}.shopping-actions button:disabled{opacity:.45;cursor:not-allowed}.shopping-list{display:grid;gap:14px}.shopping-category{display:grid;gap:8px}.shopping-category h3{margin:0;color:var(--text-2);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.shopping-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(196px,1fr));gap:10px}.shop{display:grid;grid-template-columns:36px 1fr 36px;gap:7px;align-items:center;min-height:52px;border:1px solid var(--border);background:var(--surface-0);border-radius:12px;padding:7px;transition:all .15s ease}.shop:hover{background:var(--surface-2);border-color:var(--border-bright)}.shop strong{color:var(--text-1);font-size:13px;font-weight:600}.shop small{color:var(--text-2);font-size:11px}.shop button{border:0;border-radius:8px;min-height:30px;display:inline-grid;place-items:center;transition:all .15s ease;cursor:pointer}.shop button:first-child{background:var(--success);color:#fff;box-shadow:0 2px 8px var(--success-glow)}.shop button:first-child:hover{background:#188160;transform:scale(1.05)}.shop button:last-child{background:#e1524b14;color:var(--danger);border:1px solid rgba(225,82,75,.2)}.shop button:last-child:hover{background:#e1524b29}.note-form{display:grid;gap:8px;margin-bottom:16px}.note-form div{display:grid;grid-template-columns:1fr 42px;gap:7px}.notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:7px}.note{background:#8b5cf612;border:1px solid rgba(139,92,246,.18);border-radius:12px;padding:12px;min-height:88px;display:flex;flex-direction:column;justify-content:space-between;gap:10px;transition:all .15s ease}.note:hover{background:#8b5cf61f;border-color:#8b5cf647}.note p{color:var(--text-1);font-size:13px;line-height:1.5}.note small{color:var(--text-2);font-size:11px}.sync-panel{display:grid;gap:12px;color:var(--text-2);font-size:13px;line-height:1.55}.button-row{display:flex;flex-wrap:wrap;gap:7px}.button-row button,.button-row a{cursor:pointer;transition:all .15s ease;font-size:13px}.button-row button:hover,.button-row a:hover{background:var(--surface-3);color:var(--text-1);border-color:var(--border-bright)}.detail-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#221f1959;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;justify-content:flex-end;overflow:hidden}.event-detail{width:min(500px,100%);height:100dvh;min-height:0;overflow:auto;background:var(--surface-1);border-left:1px solid var(--border-bright);padding:22px 22px calc(22px + env(safe-area-inset-bottom));box-shadow:var(--shadow-lg);display:grid;align-content:start;gap:12px;overscroll-behavior:contain}.event-detail>header{position:sticky;top:-22px;z-index:3;background:color-mix(in srgb,var(--surface-1) 94%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:0 0 12px}.event-detail>footer{position:sticky;bottom:calc(-22px - env(safe-area-inset-bottom));z-index:3;margin:4px -22px calc(-22px - env(safe-area-inset-bottom));padding:12px 22px calc(12px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface-1) 94%,transparent);border-top:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.event-detail header,.event-detail footer,.summary-box div{display:flex;align-items:center;justify-content:space-between;gap:12px}.event-detail label{display:grid;gap:6px}.event-detail label span{color:var(--text-2);display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.detail-two{display:grid;grid-template-columns:1fr 1fr;gap:8px}.summary-box{border:1px solid var(--accent-glow);background:#4f6df00d;border-radius:12px;padding:14px;display:grid;gap:8px}.summary-box strong{color:var(--text-1);font-size:13px;font-weight:700}.summary-box small{color:var(--text-2);font-size:12px}.summary-box p{color:var(--text-2);font-size:13px;line-height:1.6}.list-backdrop{justify-content:center;align-items:center;padding:24px}.list-overlay{width:min(760px,100%);max-height:min(860px,92vh);overflow:auto;background:var(--surface-1);border-radius:24px;border:1px solid var(--border);padding:22px 24px 26px;box-shadow:var(--shadow-lg);display:grid;align-content:start;gap:6px}.list-overlay header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.list-overlay header .section-heading{margin-bottom:0}.list-overlay.accent-todo .section-heading{color:#4f6df0}.list-overlay.accent-groceries .section-heading{color:#1f9d74}.list-overlay.accent-reminders .section-heading{color:#ee9a35}.list-overlay.accent-notes .section-heading{color:#8b5cf6}.list-overlay-body{display:grid;gap:4px}.location-picker{display:grid;gap:8px}.location-search{display:grid;grid-template-columns:1fr 86px;gap:7px}.location-search button,.location-results button{border:1px solid var(--border-bright);background:var(--surface-2);color:var(--text-1);border-radius:10px;transition:all .15s ease;cursor:pointer}.location-search button{min-height:40px;font-weight:700;font-size:13px}.location-search button:hover,.location-results button:hover{background:var(--surface-3);border-color:var(--accent)}.location-results{display:grid;gap:3px;max-height:190px;overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--surface-0);padding:4px}.location-results button{display:grid;gap:2px;padding:8px 10px;text-align:left;border:0;border-radius:8px;background:transparent}.location-results strong{color:var(--text-1);font-size:13px}.location-results small{color:var(--text-2);font-size:11px}.field-error{color:var(--danger);font-size:12px;font-weight:600}.map-preview{border:1px solid var(--border);border-radius:12px;overflow:hidden;display:grid}.map-preview iframe{width:100%;height:200px;border:0}.map-preview a{padding:9px 13px;color:var(--accent);font-weight:700;font-size:13px;text-decoration:none;background:var(--surface-2);border-top:1px solid var(--border);transition:color .15s}.map-preview a:hover{color:var(--accent-dim)}.event-detail footer button{flex:1;font-weight:700;font-size:13px}.event-detail footer button:first-child{background:var(--accent);color:#fff;border-color:transparent;box-shadow:0 2px 14px var(--accent-glow);transition:all .15s ease}.event-detail footer button:first-child:hover{background:var(--accent-dim);transform:translateY(-1px);box-shadow:0 6px 20px var(--accent-glow)}.event-detail footer button:disabled{opacity:.35;cursor:not-allowed}.config-drawer{gap:16px}.config-section{border:1px solid var(--border);background:var(--surface-0);border-radius:12px;padding:14px;display:grid;gap:12px}.config-section strong{color:var(--text-1);font-size:14px}.config-section small,.muted-copy{color:var(--text-2);font-size:12px;line-height:1.45}.calendar-add-row{display:grid;grid-template-columns:1fr auto;gap:8px}.calendar-add-row button,.calendar-chip button,.calendar-discovery button{border:1px solid var(--border-bright);background:var(--surface-2);color:var(--text-2);border-radius:10px;min-height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:13px;font-weight:700;transition:all .15s ease}.calendar-add-row button:hover,.calendar-chip button:hover,.calendar-discovery button:hover:not(:disabled){background:var(--surface-3);color:var(--text-1);border-color:var(--border-bright)}.calendar-chip-list,.calendar-discovery{display:grid;gap:8px}.calendar-chip{border:1px solid var(--border);background:var(--surface-1);border-radius:10px;padding:10px;display:grid;grid-template-columns:1fr minmax(120px,auto) auto;align-items:center;gap:10px}.calendar-chip span,.calendar-discovery button{min-width:0}.calendar-chip strong,.calendar-chip small,.calendar-discovery span,.calendar-discovery small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-chip button{min-width:36px;width:36px;padding:0;color:var(--danger);background:#e1524b14;border-color:#e1524b33}.calendar-discovery button{display:grid;justify-items:start;text-align:left;min-height:54px;padding:8px 11px}.calendar-discovery button:disabled{opacity:.45;cursor:not-allowed}.connection-grid{display:grid;gap:8px}.connection-grid a,.connection-grid button{border:1px solid var(--border);background:var(--surface-0);color:var(--text-2);border-radius:10px;min-height:58px;padding:10px 12px;display:grid;grid-template-columns:22px 1fr;align-items:center;gap:10px;text-align:left;text-decoration:none;transition:all .15s ease}.connection-grid a:hover,.connection-grid button:hover{background:var(--surface-2);border-color:var(--border-bright);color:var(--text-1);transform:translate(2px)}.connection-grid strong,.connection-grid small{display:block}.profile-picker{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.profile-picker button{border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);border-radius:999px;min-height:34px;padding:0 10px 0 5px;display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700}.profile-picker button span,.profile-admin span{width:24px;height:24px;border-radius:999px;display:inline-grid;place-items:center;color:#fff;font-size:11px;font-weight:800}.profile-picker button.selected{border-color:var(--profile-color, var(--accent));background:color-mix(in srgb,var(--profile-color, var(--accent)) 12%,var(--surface-1));color:var(--text-1)}.profile-admin-list{display:flex;flex-wrap:wrap;gap:8px}.profile-admin{border:1px solid var(--border);background:var(--surface-1);border-radius:12px;padding:9px 10px;display:flex;align-items:center;gap:9px}.profile-admin button,.mini-delete{border:1px solid var(--border-bright);background:var(--surface-2);color:var(--text-2);border-radius:9px;min-height:32px;padding:0 9px}.profile-add-row{grid-template-columns:1fr 54px 80px auto}.mini-delete{position:absolute;right:5px;bottom:5px;min-height:24px;padding:0 5px}.event-detail footer button.danger{background:#e1524b14;color:var(--danger);border-color:#e1524b38;box-shadow:none}@media(max-width:1180px){.week-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.month-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.day{min-height:200px}}@media(max-width:760px){.shell{padding:12px 12px 20px}.topbar{align-items:flex-start;flex-direction:column;padding:14px 16px}.quick-nav{justify-content:flex-start;width:100%}.status-strip{justify-content:flex-start}.calendar-toolbar,.detail-two,.agenda-item{grid-template-columns:1fr}.calendar-toolbar{display:grid}.week-grid,.event-form,.quick-form,.reminder-form-row,.todo-form,.todo-options{grid-template-columns:1fr}.task-card{grid-template-columns:32px minmax(0,1fr)}.task-meta{justify-items:start;grid-column:2}.submit,.quick-form button,.reminder-form button,.todo-form button{width:100%}}
