:root{color-scheme:light;--bg: #f6faf7;--surface: #fffdf8;--surface-soft: #f0f7f4;--surface-strong: #e6f0ee;--text: #33424a;--muted: #758187;--faint: #98a3a6;--line: #e3e9e7;--shadow: 0 18px 40px rgba(72, 103, 105, .1);--accent: #7dc9bd;--accent-strong: #4f9f94;--success: #87cda6;--success-strong: #5caa83;--danger: #e28d93;--nav: #edf7f2;--event-text: #33424a;--radius: 8px;--ease: cubic-bezier(.2, .8, .2, 1);--fast: .14s;--medium: .22s;--font-ui: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: Georgia, "Times New Roman", serif;--calendar-day-height: 1440px}:root[data-theme=dark]{color-scheme:dark;--bg: #252d30;--surface: #303a3d;--surface-soft: #394548;--surface-strong: #455357;--text: #e8efec;--muted: #c0cbc8;--faint: #9faeab;--line: #526266;--shadow: 0 18px 44px rgba(20, 28, 30, .24);--accent: #9ed9d0;--accent-strong: #b7e7df;--success: #abd9bd;--success-strong: #c6ead1;--danger: #f0a8ad;--nav: #303c3f;--event-text: #28363a}*{box-sizing:border-box}html,body,#root{height:100%;min-height:100%;margin:0;touch-action:pan-x pan-y}body{overflow:hidden;background:var(--bg);color:var(--text);font-family:var(--font-ui)}@media(display-mode:fullscreen),(display-mode:standalone){html,body,#root{height:100dvh;min-height:100dvh;overflow:hidden}.app-shell{min-height:100dvh;padding-top:env(safe-area-inset-top)}.side-nav,.app-content{height:calc(100dvh - env(safe-area-inset-top))}}button,input,select,textarea{color:inherit;font:inherit}button{border:0;background:transparent;cursor:pointer}button,input,select,textarea,.custom-select,.custom-select-trigger,.custom-select-menu,.event-chip,.brief-event-row,.task-card,.drawer,.brief-panel,.calendar-board{transition:background-color var(--fast) var(--ease),border-color var(--fast) var(--ease),color var(--fast) var(--ease),box-shadow var(--fast) var(--ease),transform var(--fast) var(--ease)}button:hover:not(:disabled){transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.45}input,select,textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:10px 12px;outline:none}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:38px}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 78%)}h1,h2,h3,p{margin:0}.app-shell{display:grid;grid-template-columns:74px minmax(0,1fr);height:100dvh;background:linear-gradient(90deg,var(--nav) 0 74px,transparent 74px),var(--bg)}.side-nav{display:flex;flex-direction:column;align-items:stretch;gap:6px;height:100dvh;padding:12px 0 14px;background:var(--nav);border-right:1px solid var(--line)}.side-nav button{display:grid;place-items:center;gap:4px;min-height:68px;background:transparent;color:var(--muted);border-left:3px solid transparent;font-size:12px;line-height:1.1;position:relative;overflow:hidden}.side-nav button.is-active{background:var(--surface);color:var(--text);border-left-color:var(--accent)}.side-nav button:after{content:"";position:absolute;inset:auto 12px 9px;height:3px;border-radius:999px;background:var(--accent);opacity:0;transform:scaleX(.25);display:none;transition:transform var(--medium) var(--ease),opacity var(--medium) var(--ease)}.side-nav button.is-active:after{opacity:1;transform:scaleX(1)}.side-nav button svg{transition:transform var(--medium) var(--ease)}.side-nav button.is-active svg{transform:translateY(-2px) scale(1.08)}.side-nav-spacer{flex:1 1 auto}.side-account{position:relative;display:grid;place-items:center;padding:6px 0 2px}.side-nav .account-nav-chip{width:48px;height:48px;min-height:48px;padding:0;display:grid;place-items:center;border:1px solid var(--line);border-radius:18px;background:var(--surface-soft);color:var(--text);overflow:hidden}.side-nav .account-nav-chip:hover,.side-nav .account-nav-chip:focus-visible{background:color-mix(in srgb,var(--accent),var(--surface-soft) 82%);border-color:var(--accent)}.side-nav .account-nav-chip img{width:100%;height:100%;object-fit:cover}.account-popover{position:absolute;left:calc(100% + 12px);bottom:0;z-index:80;width:250px;display:grid;gap:6px;padding:10px;border:1px solid var(--line);border-radius:20px;background:var(--surface);box-shadow:var(--shadow)}.account-popover-head{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;padding:7px;border-radius:14px;background:var(--surface-soft)}.account-popover-head img,.account-popover-head>svg{width:38px;height:38px;border-radius:50%;object-fit:cover}.account-popover-head span{min-width:0;display:grid;gap:1px}.account-popover-head strong,.account-popover-head small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-popover-head small{color:var(--muted);font-size:12px;font-weight:800}.side-nav .account-popover button{min-height:42px;display:flex;place-items:initial;align-items:center;justify-content:flex-start;gap:9px;border-left:0;border-radius:14px;padding:0 11px;color:var(--text);font-size:14px;font-weight:900;text-align:left}.side-nav .account-popover button:hover,.side-nav .account-popover button:focus-visible{background:var(--surface-soft)}.label-filter-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:66;min-height:0;background:#4e606024;border:0;border-radius:0}.label-filter-panel{position:fixed;left:0;top:0;bottom:0;z-index:72;width:min(360px,calc(100vw - 88px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;border-right:1px solid var(--line);background:var(--surface);box-shadow:16px 0 42px #485d601f;opacity:0;pointer-events:none;transform:translate(calc(-100% - 18px));visibility:hidden;transition:opacity var(--medium) var(--ease),transform var(--medium) var(--ease),visibility var(--medium) var(--ease)}.label-filter-panel.is-open{opacity:1;pointer-events:auto;transform:translate(0);visibility:visible}.label-filter-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;padding:18px 16px 14px;border-bottom:1px solid var(--line)}.label-filter-head small{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.label-filter-head h2{margin-top:2px;font-family:var(--font-display);font-size:28px;font-weight:600;line-height:1.05}.label-filter-body{min-width:0;min-height:0;display:grid;align-content:start;gap:16px;overflow:auto;padding:14px}.label-filter-empty{min-height:160px;display:grid;place-items:center;gap:8px;border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);padding:18px;text-align:center}.label-filter-empty strong{color:var(--text);font-size:16px}.label-filter-empty small{font-size:12px;font-weight:800;line-height:1.35}.label-account-group{display:grid;gap:10px}.label-account-head{min-width:0;display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px}.label-account-avatar{width:40px;height:40px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:color-mix(in srgb,var(--accent),var(--surface-soft) 78%);color:var(--accent-strong)}.label-account-avatar img{width:100%;height:100%;object-fit:cover}.label-account-head>span:not(.label-account-avatar){min-width:0;display:grid;gap:2px}.label-account-head strong,.label-account-head small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.label-account-head small{color:var(--muted);font-size:12px;font-weight:800}.label-account-action{min-width:84px;height:34px;padding:0 12px;font-size:12px}.label-filter-list{display:grid;gap:7px}.label-filter-row{min-width:0;min-height:54px;display:grid;grid-template-columns:12px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid color-mix(in srgb,var(--line),transparent 18%);border-radius:16px;background:var(--surface-soft);padding:9px 10px}.label-filter-row.is-hidden{opacity:.66}.label-filter-color{width:12px;height:32px;border-radius:999px;background:color-mix(in srgb,var(--label, var(--accent)),var(--surface) 24%)}.label-filter-copy{min-width:0;display:grid;gap:2px}.label-filter-copy strong,.label-filter-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.label-filter-copy small{color:var(--muted);font-size:12px;font-weight:800}.label-filter-row input{position:relative;width:42px;height:24px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid color-mix(in srgb,var(--muted),transparent 54%);border-radius:999px;background:color-mix(in srgb,var(--muted),var(--surface) 84%);cursor:pointer;transition:background var(--fast) var(--ease),border-color var(--fast) var(--ease)}.label-filter-row input:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--surface);box-shadow:0 1px 4px #485d6029;transition:transform var(--fast) var(--ease)}.label-filter-row input:checked{border-color:var(--accent);background:color-mix(in srgb,var(--accent),var(--surface) 22%)}.label-filter-row input:checked:after{transform:translate(18px)}.label-filter-row input:focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 72%)}.label-filter-status{display:block;border-top:1px solid var(--line);color:var(--muted);padding:12px 16px;font-size:12px;font-weight:900}.side-nav svg,.top-bar svg,.drawer svg{stroke-width:1.9}.app-content{min-width:0;height:100dvh;display:grid;grid-template-rows:72px minmax(0,1fr)}.section-stage{min-width:0;min-height:0;display:grid;animation:page-stage-in .3s var(--ease) both}.section-stage>*{min-height:0}.section-stage :is(.calendar-toolbar,.calendar-board,.wide-panel,.side-panel,.settings-panel,.drawer,.brief-panel){animation:component-rise-in .36s var(--ease) both;animation-delay:45ms}.section-stage :is(.calendar-board,.side-panel,.drawer,.brief-panel){animation-delay:85ms}.section-stage .settings-panel:nth-child(2),.section-stage .feature-grid>:nth-child(2){animation-delay:95ms}.section-stage .settings-panel:nth-child(3),.section-stage .feature-grid>:nth-child(3){animation-delay:.12s}.section-stage .settings-panel:nth-child(4){animation-delay:145ms}.section-stage .settings-panel:nth-child(5){animation-delay:.17s}.section-stage :is(.profile-task-column,.meal-day,.recipe-category-group,.sleep-card){animation:component-rise-in .32s var(--ease) both;animation-delay:.11s}.section-stage :is(.profile-task-column,.meal-day,.recipe-category-group,.sleep-card):nth-child(2){animation-delay:135ms}.section-stage :is(.profile-task-column,.meal-day,.recipe-category-group,.sleep-card):nth-child(3){animation-delay:.16s}.section-stage :is(.profile-task-column,.meal-day,.recipe-category-group,.sleep-card):nth-child(4){animation-delay:185ms}.top-bar{min-width:0;width:100%;max-width:100%;box-sizing:border-box;display:flex;align-items:center;gap:16px;overflow:visible;padding:12px 20px;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface),var(--bg) 30%)}.date-block{position:relative;min-width:0;flex:1 1 auto;display:flex;align-items:center;gap:12px;overflow:visible}.date-block strong{min-width:0;font-family:var(--font-display);font-size:clamp(22px,2.2vw,34px);line-height:1;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-block>span{flex:0 0 auto;color:var(--muted);font-size:16px;white-space:nowrap}.weather-button,.news-button{flex:0 0 auto;min-height:36px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:color-mix(in srgb,var(--surface-soft),var(--accent) 8%);color:var(--text);padding:0 14px;font-size:14px;font-weight:800;white-space:nowrap;box-shadow:inset 0 0 0 1px var(--line)}.news-button{min-width:86px}.weather-button:hover,.weather-button:focus-visible,.news-button:hover,.news-button:focus-visible{background:color-mix(in srgb,var(--surface-soft),var(--accent) 16%);box-shadow:inset 0 0 0 1px var(--accent),0 8px 18px #485d601a}.weather-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;display:grid;place-items:center;background:color-mix(in srgb,var(--bg),transparent 18%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:24px}.weather-suite{--weather-sky: color-mix(in srgb, var(--surface-soft), var(--accent) 12%);--weather-sky-end: color-mix(in srgb, var(--surface), var(--surface-soft) 38%);--weather-accent: var(white);width:min(1080px,100%);max-height:min(88vh,860px);position:relative;isolation:isolate;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid color-mix(in srgb,var(--line),transparent 4%);border-radius:18px;background:linear-gradient(180deg,var(--weather-sky),var(--weather-sky-end) 58%),var(--surface);box-shadow:0 28px 70px #1423263d}.weather-suite-sun{--weather-sky: color-mix(in srgb, #62b6ea, var(--surface) 42%);--weather-sky-end: color-mix(in srgb, #a7d8f1, var(--surface) 54%);--weather-accent: #eabf55}.weather-suite-moon{--weather-sky: color-mix(in srgb, #151922, var(--surface) 42%);--weather-sky-end: color-mix(in srgb, #090b10, var(--surface) 38%);--weather-accent: #bdcfde}.weather-suite-partly-cloudy.is-day{--weather-sky: color-mix(in srgb, #5fa8dd, var(--surface) 44%);--weather-sky-end: color-mix(in srgb, #94c7e8, var(--surface) 54%);--weather-accent: #f0cf63}.weather-suite-partly-cloudy.is-night{--weather-sky: color-mix(in srgb, #101319, var(--surface) 34%);--weather-sky-end: color-mix(in srgb, #05070b, var(--surface) 42%);--weather-accent: #c3d5e2}.weather-suite-cloud{--weather-sky: color-mix(in srgb, #9fb0b6, var(--surface) 62%);--weather-accent: #aab8bd}.weather-suite-fog{--weather-sky: color-mix(in srgb, #aeb7b6, var(--surface) 68%);--weather-accent: #b8c1bf}.weather-suite-rain{--weather-sky: color-mix(in srgb, #5d8faa, var(--surface) 55%);--weather-sky-end: color-mix(in srgb, #386277, var(--surface) 54%);--weather-accent: #8cc8df}.weather-suite-storm{--weather-sky: color-mix(in srgb, #303747, var(--surface) 42%);--weather-sky-end: color-mix(in srgb, #171b25, var(--surface) 45%);--weather-accent: #c9d7ff}.weather-suite-snow{--weather-sky: color-mix(in srgb, #c5d9df, var(--surface) 52%);--weather-sky-end: color-mix(in srgb, #e4eef0, var(--surface) 54%);--weather-accent: #d9f4ff}.weather-effect-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;overflow:hidden;pointer-events:none}.weather-effect-layer:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.weather-celestial{position:absolute;top:52px;right:80px;width:78px;height:78px;border-radius:50%;opacity:0}.weather-suite-sun .weather-celestial{opacity:.82;background:#f6d771;box-shadow:0 0 0 18px color-mix(in srgb,#f6d771,transparent 82%),0 0 52px color-mix(in srgb,#f6d771,transparent 42%)}.weather-suite-moon .weather-celestial{opacity:.76;background:#e5edf1;box-shadow:inset -18px -4px color-mix(in srgb,#8aa1b1,transparent 18%),0 0 38px color-mix(in srgb,#e5edf1,transparent 54%)}.weather-suite-partly-cloudy.is-day .weather-celestial{opacity:.78;background:#f6d771;box-shadow:0 0 0 16px color-mix(in srgb,#f6d771,transparent 84%),0 0 46px color-mix(in srgb,#f6d771,transparent 44%)}.weather-suite-partly-cloudy.is-night .weather-celestial{opacity:.64;background:#e5edf1;box-shadow:inset -18px -4px color-mix(in srgb,#6d8495,transparent 16%),0 0 34px color-mix(in srgb,#e5edf1,transparent 58%)}.weather-cloud{position:absolute;width:260px;height:58px;border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 50%);opacity:0;filter:blur(1px);animation:weather-cloud-drift 18s ease-in-out infinite alternate}.weather-cloud:before,.weather-cloud:after{content:"";position:absolute;bottom:10px;border-radius:50%;background:inherit}.weather-cloud:before{left:34px;width:86px;height:86px}.weather-cloud:after{right:42px;width:112px;height:112px}.weather-cloud-a{top:96px;left:-42px}.weather-cloud-b{top:164px;right:-76px;transform:scale(.8);animation-delay:-8s}.weather-suite-partly-cloudy .weather-cloud,.weather-suite-cloud .weather-cloud,.weather-suite-fog .weather-cloud,.weather-suite-rain .weather-cloud,.weather-suite-storm .weather-cloud,.weather-suite-snow .weather-cloud{opacity:.42}.weather-suite-partly-cloudy.is-day .weather-cloud{background:color-mix(in srgb,white,transparent 48%);opacity:.34}.weather-suite-partly-cloudy.is-night .weather-cloud{background:color-mix(in srgb,#b3c3cc,transparent 64%);opacity:.36}.weather-suite-fog .weather-effect-layer:after{opacity:.5;background:repeating-linear-gradient(0deg,transparent 0 24px,color-mix(in srgb,var(--surface),transparent 78%) 24px 26px)}.weather-suite-rain .weather-effect-layer:after,.weather-suite-storm .weather-effect-layer:after{opacity:.42}.weather-suite-snow .weather-effect-layer:after{opacity:.5;background-image:radial-gradient(circle,color-mix(in srgb,white,transparent 18%) 1px,transparent 2px);background-size:34px 34px;animation:weather-snow 7s linear infinite}.weather-lightning{position:absolute;top:92px;right:180px;width:34px;height:88px;opacity:0;background:#f5eaa1;clip-path:polygon(48% 0,100% 0,66% 42%,100% 42%,26% 100%,46% 52%,12% 52%);filter:drop-shadow(0 0 18px color-mix(in srgb,#fff2a8,transparent 18%))}.weather-suite-storm .weather-lightning{animation:weather-lightning 5s steps(1,end) infinite}.weather-suite-head,.weather-suite-body{position:relative;z-index:1}.weather-suite-head,.weather-suite-head>span,.weather-suite-head>div{display:flex;align-items:center}.weather-suite-head{justify-content:space-between;gap:12px;min-height:62px;padding:0 18px}.weather-suite-head>span{min-width:0;gap:7px;color:var(--text);font-size:14px;font-weight:950;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=light] .weather-suite.is-night .weather-suite-head>span,:root[data-theme=light] .weather-suite.is-night .weather-now-copy>span,:root[data-theme=light] .weather-suite.is-night .weather-now-copy h2,:root[data-theme=light] .weather-suite.is-night .weather-now-copy>strong,:root[data-theme=light] .weather-suite.is-night .weather-condition-line{color:#f2f8f8;text-shadow:0 2px 14px rgba(0,0,0,.28)}:root[data-theme=light] .weather-suite.is-night .weather-high-low{color:#f2f8f8c7;text-shadow:0 2px 12px rgba(0,0,0,.24)}.weather-suite-head>div{gap:7px}.weather-suite .spin-icon{animation:auth-spin .8s linear infinite}.weather-suite-body{min-height:0;overflow:auto;padding:22px}.weather-suite-hero{min-height:230px;display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:end;gap:18px}.weather-now-copy>span,.weather-live-summary span,.weather-panel-head span,.weather-detail-card-copy>span{color:var(--muted);font-size:11px;font-weight:1000;letter-spacing:0;text-transform:uppercase}.weather-now-copy h2{margin:4px 0 0;color:var(--text);font-size:30px;line-height:1.05}.weather-now-copy>strong{display:block;margin-top:4px;color:var(--text);font-size:78px;font-weight:850;line-height:.92}.weather-condition-line,.weather-high-low{margin:0}.weather-condition-line{display:flex;align-items:center;gap:8px;color:var(--text);font-size:20px;font-weight:950}.weather-condition-line img,.weather-hourly-suite article img,.weather-daily-icon img{width:28px;height:28px}.weather-condition-line em{font-style:normal}.weather-high-low{margin-top:4px;color:var(--muted);font-size:16px;font-weight:900}.weather-live-summary{display:grid;gap:8px;justify-items:end;border:1px solid color-mix(in srgb,var(--line),transparent 12%);border-radius:var(--radius);background:color-mix(in srgb,var(--surface),transparent 22%);padding:14px}.weather-live-summary strong{color:var(--text);font-size:28px;line-height:1}.weather-live-summary small{color:var(--muted);font-size:12px;font-weight:850}.weather-hourly-suite{--weather-hourly-gutter: 10px;display:grid;grid-auto-flow:column;grid-auto-columns:92px;gap:8px;overflow-x:auto;overflow-y:hidden;margin-top:18px;border:1px solid color-mix(in srgb,var(--line),transparent 10%);border-radius:var(--radius);background:color-mix(in srgb,var(--surface),transparent 32%);padding:10px;scroll-padding-inline:var(--weather-hourly-gutter);scroll-snap-type:x proximity}.weather-hourly-suite article{min-width:0;display:grid;justify-items:center;gap:8px;border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft),transparent 14%);padding:10px 8px;scroll-margin-inline:var(--weather-hourly-gutter);scroll-snap-align:start}.weather-hourly-suite article span,.weather-hourly-suite article b,.weather-hourly-suite article small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.weather-hourly-suite article span,.weather-hourly-suite article b{color:var(--text);font-size:13px;font-weight:950}.weather-hourly-suite article strong{font-size:25px;line-height:1}.weather-hourly-suite article small{color:var(--muted);font-size:11px;font-weight:900}.weather-hourly-suite>p,.weather-empty-copy{margin:0;color:var(--muted);font-size:14px;font-weight:800}.weather-empty-copy{padding:14px}.weather-hourly-suite.is-empty{display:block}.weather-hourly-suite.is-empty>p{min-height:74px;display:grid;place-items:center;text-align:center}.weather-suite-grid{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(0,1.05fr);gap:12px;margin-top:12px}.weather-forecast-panel,.weather-detail-card{border:1px solid color-mix(in srgb,var(--line),transparent 10%);border-radius:var(--radius);background:color-mix(in srgb,var(--surface),transparent 28%)}.weather-forecast-panel{overflow:hidden}.weather-panel-head{min-height:42px;display:flex;align-items:center;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 14%);padding:0 14px}.weather-daily-list{display:grid}.weather-daily-list article{min-height:50px;display:grid;grid-template-columns:76px 38px 42px 46px minmax(92px,1fr) 46px;align-items:center;gap:8px;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 18%);padding:0 14px}.weather-daily-list article:last-child{border-bottom:0}.weather-daily-list strong,.weather-daily-list b{color:var(--text);font-size:15px;font-weight:950}.weather-daily-list small{color:var(--muted);font-size:12px;font-weight:900}.weather-daily-icon{font-size:21px}.weather-range-track{height:7px;position:relative;border-radius:999px;background:color-mix(in srgb,var(--surface-soft),var(--line) 28%);overflow:hidden}.weather-range-track i{position:absolute;top:0;bottom:0;left:var(--range-start);width:var(--range-size);border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--weather-accent),color-mix(in srgb,var(--danger),var(--weather-accent) 30%))}.weather-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.weather-detail-card{position:relative;min-height:156px;display:grid;grid-template-rows:minmax(74px,auto) minmax(44px,1fr);gap:10px;overflow:hidden;padding:14px}.weather-detail-card-copy,.weather-card-graphic{position:relative;z-index:1}.weather-detail-card-copy{min-width:0;display:grid;align-content:start;gap:6px}.weather-detail-card-copy strong{color:var(--text);font-size:31px;font-weight:850;line-height:1.05}.weather-detail-card-copy small{color:var(--muted);font-size:13px;font-weight:850;line-height:1.15}.weather-card-graphic{align-self:end;min-height:44px}.weather-uv-graphic,.weather-thermo-graphic,.weather-range-card-graphic{height:9px;min-height:9px;border-radius:999px;background:color-mix(in srgb,var(--surface-soft),var(--line) 24%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line),transparent 18%)}.weather-uv-graphic{background:linear-gradient(90deg,#5bd673,#f2d660 31%,#fb8b42 55%,#f04d68 76%,#ad6cf2)}.weather-uv-graphic i,.weather-pressure-graphic i{position:absolute;background:var(--text);box-shadow:0 0 0 2px color-mix(in srgb,var(--surface),transparent 4%)}.weather-uv-graphic i{top:50%;left:var(--weather-meter);width:8px;height:8px;border-radius:50%;transform:translate(-50%,-50%)}.weather-sun-graphic{height:64px;min-height:64px;overflow:visible}.weather-sun-graphic:before{content:"";position:absolute;left:-8%;right:-8%}.weather-sun-graphic:before{z-index:0;bottom:14px;height:1px;background:color-mix(in srgb,var(--text),transparent 72%)}.weather-sun-arc{position:absolute;z-index:1;left:-8%;right:-8%;bottom:1px;width:116%;height:66px;overflow:visible}.weather-sun-arc path{fill:none;stroke:color-mix(in srgb,var(--weather-accent),#ffd76a 18%);stroke-width:3px;stroke-linecap:round;vector-effect:non-scaling-stroke}.weather-sun-graphic i{position:absolute;z-index:2;top:var(--sun-y);left:var(--sun-progress);width:15px;height:15px;border-radius:50%;background:color-mix(in srgb,var(--weather-accent),white 18%);box-shadow:0 0 0 4px color-mix(in srgb,var(--weather-accent),transparent 68%),0 0 18px color-mix(in srgb,var(--weather-accent),transparent 20%);transform:translate(-50%,-50%)}.weather-thermo-graphic{height:12px;min-height:12px;margin-right:18px}.weather-thermo-graphic i,.weather-range-card-graphic i{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--weather-accent),color-mix(in srgb,var(--danger),var(--weather-accent) 24%))}.weather-thermo-graphic i{width:var(--weather-meter)}.weather-thermo-graphic:after{content:"";position:absolute;top:50%;right:-18px;width:24px;height:24px;border-radius:50%;background:color-mix(in srgb,var(--danger),var(--weather-accent) 44%);box-shadow:inset 0 0 0 4px color-mix(in srgb,var(--surface),transparent 8%),0 0 0 1px color-mix(in srgb,var(--line),transparent 20%);transform:translateY(-50%)}.weather-drop-graphic,.weather-humidity-graphic{justify-self:end;overflow:hidden}.weather-drop-graphic{width:56px;height:58px;min-height:58px;border:0;background:color-mix(in srgb,#8edee8,var(--surface-soft) 44%);filter:drop-shadow(0 0 .5px color-mix(in srgb,var(--line),transparent 18%));-webkit-mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 64 76' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M32 2C20 18 7 33 7 49c0 16 11 25 25 25s25-9 25-25C57 33 44 18 32 2Z'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg viewBox='0 0 64 76' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M32 2C20 18 7 33 7 49c0 16 11 25 25 25s25-9 25-25C57 33 44 18 32 2Z'/%3E%3C/svg%3E") center / contain no-repeat}.weather-drop-graphic i,.weather-humidity-graphic i{position:absolute;inset:auto 0 0;height:var(--weather-meter);background:color-mix(in srgb,#6fd5e8,var(--accent) 18%)}.weather-humidity-graphic{width:48px;height:48px;min-height:48px;border:1px solid color-mix(in srgb,var(--line),transparent 12%);background:color-mix(in srgb,var(--surface-soft),transparent 22%);border-radius:50%}.weather-humidity-graphic:before,.weather-humidity-graphic:after{content:"";position:absolute;left:8px;right:8px;height:2px;border-radius:999px;background:color-mix(in srgb,var(--text),transparent 70%)}.weather-humidity-graphic:before{top:17px}.weather-humidity-graphic:after{top:29px}.weather-visibility-graphic{height:46px;min-height:46px;border-radius:999px;border:1px solid color-mix(in srgb,var(--line),transparent 12%);background:linear-gradient(90deg,color-mix(in srgb,var(--accent),transparent 72%) var(--weather-meter),transparent var(--weather-meter)),color-mix(in srgb,var(--surface-soft),transparent 22%)}.weather-visibility-graphic:before,.weather-visibility-graphic i{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.weather-visibility-graphic:before{width:86px;height:28px;border:2px solid color-mix(in srgb,var(--text),transparent 58%);border-radius:50%}.weather-visibility-graphic i{width:12px;height:12px;border-radius:50%;background:var(--text);box-shadow:0 0 0 7px color-mix(in srgb,var(--text),transparent 88%)}.weather-wind-graphic,.weather-pressure-graphic{justify-self:center;width:76px;height:76px;min-height:76px;border-radius:50%;background:repeating-conic-gradient(color-mix(in srgb,var(--text),transparent 64%) 0 2deg,transparent 2deg 8deg),color-mix(in srgb,var(--surface-soft),transparent 34%)}.weather-wind-graphic:before,.weather-pressure-graphic:before{content:"";position:absolute;top:11px;right:11px;bottom:11px;left:11px;border-radius:50%;background:color-mix(in srgb,var(--surface),transparent 32%)}.weather-wind-graphic i{position:absolute;left:50%;top:7px;width:4px;height:31px;border-radius:999px;background:var(--text);transform:translate(-50%) rotate(var(--wind-turn));transform-origin:50% 100%}.weather-wind-graphic i:before{content:"";position:absolute;top:-5px;left:50%;width:13px;height:13px;border-radius:2px;border-top:4px solid var(--text);border-left:4px solid var(--text);transform:translate(-50%) rotate(45deg)}.weather-pressure-graphic{background:conic-gradient(from 210deg,color-mix(in srgb,var(--accent),transparent 30%) 0 var(--weather-meter),transparent var(--weather-meter) 100%),repeating-conic-gradient(from 210deg,color-mix(in srgb,var(--text),transparent 62%) 0 2deg,transparent 2deg 8deg),color-mix(in srgb,var(--surface-soft),transparent 34%)}.weather-pressure-graphic i{left:50%;top:50%;width:4px;height:31px;border-radius:999px;transform:translate(-50%,-100%) rotate(var(--pressure-turn));transform-origin:50% 100%}.weather-range-card-graphic i{left:var(--range-start);width:var(--range-size)}@keyframes weather-rain{to{background-position:0 140px}}@keyframes weather-snow{to{background-position:0 68px}}@keyframes weather-cloud-drift{to{transform:translate(42px)}}@keyframes weather-lightning{0%,83%,to{opacity:0}84%,86%{opacity:.95}88%{opacity:.28}}@media(max-width:900px){.weather-suite{max-height:92vh}.weather-suite-hero,.weather-suite-grid{grid-template-columns:minmax(0,1fr)}.weather-suite-hero{min-height:0}.weather-live-summary{justify-items:start}}.news-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:225;display:grid;place-items:center;background:color-mix(in srgb,var(--bg),transparent 16%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:24px}.news-suite{width:min(1120px,100%);height:min(88vh,820px);max-height:min(88vh,820px);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid color-mix(in srgb,var(--line),transparent 4%);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft),var(--accent) 8%),var(--surface) 260px),var(--surface);box-shadow:0 28px 70px #1423263d}.news-suite-head,.news-suite-head>div,.news-suite-head span{display:flex;align-items:center}.news-suite-head{justify-content:space-between;gap:14px;min-height:68px;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 12%);padding:0 18px}.news-suite-head>div:first-child{min-width:0;flex-direction:column;align-items:flex-start;gap:2px}.news-suite-head>div:last-child{gap:7px}.news-suite-head span{gap:8px;color:var(--text);font-family:var(--font-display);font-size:24px;font-weight:650;line-height:1}.news-suite-head small{color:var(--muted);font-size:12px;font-weight:850}.news-suite .spin-icon{animation:auth-spin .8s linear infinite}.news-suite-body{min-height:0;overflow:auto;padding:18px}.news-feed-content{animation:news-feed-in .22s ease-out both}.news-feed-content .news-card{animation:news-card-in .26s ease-out both}.news-feed-content .news-card:nth-child(2){animation-delay:45ms}.news-feed-content .news-card:nth-child(3),.news-feed-content .news-tile-grid .news-card:nth-child(1){animation-delay:80ms}.news-feed-content .news-tile-grid .news-card:nth-child(2){animation-delay:115ms}.news-feed-content .news-tile-grid .news-card:nth-child(n+3){animation-delay:145ms}.news-category-tabs{display:flex;gap:8px;overflow-x:auto;overflow-y:visible;padding:4px 0 12px}.news-category-tabs button{display:inline-flex;align-items:center;gap:7px;min-height:34px;border-radius:999px;background:color-mix(in srgb,var(--surface-soft),var(--surface) 34%);color:var(--muted);padding:0 13px 0 11px;font-size:13px;font-weight:950;white-space:nowrap;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line),transparent 12%)}.news-category-logo{width:16px;height:16px;flex:0 0 16px;display:block;border-radius:4px;object-fit:contain}.news-category-logo.is-symbol{display:grid;place-items:center;border-radius:0;font-size:14px;line-height:1}.news-category-tabs button:hover,.news-category-tabs button:focus-visible,.news-category-tabs button.is-active{background:color-mix(in srgb,var(--accent-soft),var(--surface) 42%);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 12%)}.news-lede-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.news-tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px}.news-card{min-width:0;align-self:start;display:grid;grid-template-columns:108px minmax(0,1fr);gap:12px;border:1px solid color-mix(in srgb,var(--line),transparent 10%);border-radius:var(--radius);background:color-mix(in srgb,var(--surface),var(--surface-soft) 22%);color:var(--text);padding:10px;text-decoration:none;transition:transform .14s ease,border-color .14s ease,background .14s ease}.news-card:hover,.news-card:focus-visible{transform:translateY(-1px);border-color:color-mix(in srgb,var(--accent),transparent 18%);background:color-mix(in srgb,var(--surface-soft),var(--accent) 7%)}.news-card-prominent{grid-template-columns:minmax(260px,.52fr) minmax(0,1fr);grid-template-rows:auto;min-height:0;padding:12px}.news-card-media{min-width:0;position:relative;display:grid;place-items:center;overflow:hidden;border-radius:calc(var(--radius) - 4px);background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft),var(--surface) 28%),color-mix(in srgb,var(--surface-soft),var(--line) 18%)),var(--surface-soft)}.news-card-media-main{position:relative;z-index:1;width:100%;height:100%;display:block;object-fit:contain}.news-card-media-bg{position:absolute;z-index:0;top:-18px;right:-18px;bottom:-18px;left:-18px;width:calc(100% + 36px);height:calc(100% + 36px);object-fit:cover;filter:blur(18px) saturate(1.12);opacity:.46;transform:scale(1.04)}.news-card-media.is-photo:after{content:"";position:absolute;z-index:0;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--surface),transparent 78%)}.news-card-prominent .news-card-media{height:clamp(160px,22vh,240px);min-height:0}.news-card:not(.news-card-prominent){grid-template-columns:112px minmax(0,1fr)}.news-card.has-no-media{grid-template-columns:minmax(0,1fr)}.news-card:not(.news-card-prominent) .news-card-media{height:118px}.news-card-copy{min-width:0;display:grid;align-content:start;gap:7px}.news-card-copy small,.news-card-copy em{min-width:0;align-items:center;gap:7px;color:var(--muted);font-size:12px;font-style:normal;font-weight:900}.news-card-copy small{display:grid;grid-template-columns:minmax(0,1fr) auto;text-transform:uppercase}.news-card-copy small>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-card-copy small i{flex:0 0 auto;font-style:normal;opacity:.78;text-transform:none}.news-card-copy strong{min-width:0;color:var(--text);font-family:var(--font-display);font-size:20px;font-weight:650;line-height:1.05;overflow-wrap:anywhere}.news-card-copy strong,.news-card-copy>span{overflow:hidden}.news-card:not(.news-card-prominent) .news-card-copy strong,.news-card:not(.news-card-prominent) .news-card-copy>span{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.news-card:not(.news-card-prominent) .news-card-copy strong{-webkit-line-clamp:2;line-clamp:2}.news-card:not(.news-card-prominent) .news-card-copy>span{-webkit-line-clamp:4;line-clamp:4}.news-card-prominent .news-card-copy strong{font-size:clamp(25px,2.2vw,34px)}.news-card-copy>span{color:var(--muted);font-size:13px;font-weight:750;line-height:1.35}.news-card-copy em{display:grid;grid-template-columns:18px minmax(0,auto) 13px;align-items:center;justify-content:start;margin-top:2px;overflow:hidden}.news-card-copy em img{min-width:0;width:18px;height:18px;border-radius:5px}.news-card-copy em span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.news-empty-card{min-height:320px;display:grid;place-items:center;align-content:center;gap:10px;border:1px dashed color-mix(in srgb,var(--line),transparent 8%);border-radius:var(--radius);background:color-mix(in srgb,var(--surface),var(--surface-soft) 24%);color:var(--muted);padding:24px;text-align:center}.news-empty-card strong{color:var(--text);font-size:20px}.news-empty-card span{max-width:420px;font-size:14px;font-weight:800}@keyframes news-feed-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes news-card-in{0%{opacity:0;transform:translateY(8px) scale(.992)}to{opacity:1;transform:translateY(0) scale(1)}}@media(max-width:960px){.news-lede-grid,.news-tile-grid{grid-template-columns:minmax(0,1fr)}.news-card-prominent{min-height:0}}.profile-strip{display:flex;align-items:center;gap:7px;min-width:0;flex:0 1 auto;overflow:hidden}.profile-strip button{width:32px;height:32px;min-width:32px;flex:0 0 32px;aspect-ratio:1;padding:0;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--profile),var(--surface) 58%);color:var(--event-text);font-weight:800;font-size:12px;border:2px solid transparent;overflow:visible;box-shadow:0 0 color-mix(in srgb,var(--profile),transparent 100%)}.profile-strip button img{width:100%;height:100%;object-fit:cover;border-radius:50%}.profile-strip button .profile-avatar{width:100%;height:100%;min-width:0;flex:0 0 auto;aspect-ratio:1;border-radius:50%;overflow:hidden;box-shadow:none}.profile-strip button.is-active{border-color:var(--surface);box-shadow:0 0 0 3px color-mix(in srgb,var(--profile),var(--accent) 20%),0 8px 16px #485d601f}.profile-strip button.is-current:not(.is-active){border-color:color-mix(in srgb,var(--profile),var(--text) 22%)}.profile-strip>span{color:var(--muted);font-size:14px;font-weight:800;white-space:nowrap}.top-actions{flex:0 0 auto;display:flex;align-items:center;gap:8px}.menu-button{flex:0 0 auto;width:36px;height:36px;display:inline-grid;place-items:center;border-radius:999px;background:transparent;color:var(--text)}.icon-button,.pill-button,.icon-text-button,.primary-icon-button{min-width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:999px;background:var(--surface-soft);color:var(--text)}.pill-button,.icon-text-button{padding:0 15px;font-size:13px;font-weight:700}.assistant-button{color:#7f5abb;background:#f0e9fb}:root[data-theme=dark] .assistant-button{color:#dfccff;background:#332947}.sync-button{color:var(--muted)}.sync-button.is-ready{color:#20776f;background:#dff6f2}:root[data-theme=dark] .sync-button.is-ready{color:#8fe3d6;background:#1e3938}.calendar-layout{min-width:0;min-height:0;display:grid;grid-template-columns:minmax(0,1fr);gap:14px;padding:14px 16px 0}.calendar-layout.with-brief{grid-template-columns:minmax(0,1fr) minmax(300px,380px)}.calendar-main{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr)}.calendar-toolbar,.section-title-row,.drawer-head,.brief-head{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:14px}.calendar-toolbar{margin-bottom:12px}.calendar-toolbar small,.drawer-head small,.brief-head small{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.calendar-toolbar h1,.drawer-head h2,.brief-head h2,.settings-panel h2,.wide-panel h2,.side-panel h2{font-family:var(--font-display);font-weight:600}.calendar-toolbar h1{font-size:30px;line-height:1.05}.segmented{display:inline-flex;align-items:center;padding:4px;border-radius:999px;background:var(--surface-soft);border:1px solid var(--line)}.segmented button{border-radius:999px;background:transparent;padding:8px 12px;color:var(--muted);font-size:13px;font-weight:800;text-transform:capitalize}.segmented button.is-active{background:color-mix(in srgb,var(--surface),var(--accent) 5%);color:var(--text);box-shadow:0 5px 16px #485d6014}.segmented.wide{display:grid;grid-template-columns:1fr 1fr;border-radius:var(--radius)}.segmented.wide button{border-radius:6px}.calendar-board{min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 10px 28px #4867690f}.week-board,.single-day-board{display:grid;grid-template-rows:58px auto minmax(0,1fr);min-width:0}.week-header{display:grid;grid-template-columns:clamp(42px,4vw,54px) repeat(7,minmax(0,1fr));border-bottom:1px solid var(--line);min-width:0;width:100%}.week-header>span{position:sticky;left:0;z-index:32;background:var(--surface);border-right:1px solid var(--line)}.day-head{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;background:transparent;color:var(--muted);border-left:1px solid var(--line)}.day-head strong{color:var(--text);font-size:clamp(16px,1.7vw,20px)}.day-head.is-today strong{width:34px;height:34px;min-width:34px;flex:0 0 34px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;background:#f5b1a4;color:#7b4942}.week-grid{--grid-content-width: 100%;min-height:0;overflow:auto;display:grid;grid-template-columns:clamp(42px,4vw,54px) repeat(7,minmax(0,1fr));min-width:0;width:100%;position:relative;isolation:isolate;touch-action:pan-y;overflow-anchor:none;-webkit-overflow-scrolling:touch}.all-day-strip{display:grid;grid-template-columns:clamp(42px,4vw,54px) minmax(0,1fr);min-width:0;width:100%;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--surface-soft),transparent 54%)}.all-day-strip.is-empty{min-height:0;border-bottom:0}.single-day-board .all-day-strip{min-width:520px}.all-day-label{position:sticky;left:0;z-index:32;display:flex;align-items:center;justify-content:center;min-height:38px;border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface-soft),var(--surface) 54%);color:var(--muted);font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.all-day-lanes{display:grid;grid-template-columns:repeat(var(--all-day-count),minmax(0,1fr));grid-auto-rows:30px;gap:4px;min-width:0;padding:6px}.single-day-board .all-day-lanes{grid-template-columns:minmax(0,1fr);min-width:466px}.all-day-event{position:relative;grid-row:calc(var(--lane) + 1);display:flex;align-items:center;gap:7px;min-width:0;min-height:30px;padding:4px 9px;border-radius:8px;background:color-mix(in srgb,var(--event, var(--accent)),var(--surface) 46%);color:var(--event-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface),transparent 24%),0 5px 14px #485d6012;font-size:12px;font-weight:900;text-align:left;overflow:hidden}.all-day-event.has-linked-calendar{padding-left:14px}.all-day-event:hover,.all-day-event:focus-visible{transform:translateY(-1px);box-shadow:0 12px 24px #485d601f,inset 0 0 0 2px color-mix(in srgb,var(--surface),transparent 18%)}.all-day-event strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.all-day-event.is-holiday,.month-event.is-holiday,.agenda-event-card.is-holiday{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--event, var(--accent)),transparent 35%);border:1px dashed color-mix(in srgb,var(--event, var(--accent)),var(--ink, #2b3a3d) 32%)}.day-grid{--grid-content-width: 520px;grid-template-columns:54px minmax(0,1fr);min-width:520px;touch-action:pan-y;overflow-anchor:none;-webkit-overflow-scrolling:touch}.current-time-line{position:absolute;left:0;right:0;width:auto;z-index:28;display:flex;align-items:center;pointer-events:none;transform:translateY(-50%)}.current-time-line:before{content:"";width:11px;height:11px;flex:0 0 11px;margin-left:-6px;border-radius:50%;background:#ee928c;box-shadow:0 0 0 3px color-mix(in srgb,#ee928c,transparent 78%)}.current-time-line:after{content:"";height:2px;flex:1;background:#ee928c;box-shadow:0 0 10px color-mix(in srgb,#ee928c,transparent 72%)}.time-rail{position:sticky;left:0;z-index:30;min-height:var(--calendar-day-height);border-right:1px solid var(--line);background:color-mix(in srgb,var(--surface-soft),transparent 42%);box-shadow:1px 0 0 var(--line)}.time-label{height:calc(var(--calendar-day-height) / 24);padding-top:7px;color:var(--muted);font-size:11px;text-align:center}.day-column{position:relative;min-height:var(--calendar-day-height);border-right:1px solid var(--line);background:linear-gradient(var(--line),var(--line)) 0 0 / 100% 1px no-repeat,var(--surface)}.hour-line{position:absolute;left:0;right:0;height:1px;background:var(--line)}.day-empty-hit{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;background:transparent}.timed-event{position:absolute;--event-lane-left: 0%;--event-lane-width: 100%;left:var(--event-lane-left);width:var(--event-lane-width);min-height:0;padding-inline:2px;box-sizing:border-box;z-index:1}.timed-event-group{left:2px;width:calc(100% - 4px);padding-inline:0}.timed-event.is-dragging{z-index:42}.timed-event:hover,.timed-event:focus-within{z-index:30}.timed-event.is-thin{overflow:visible;z-index:24}.timed-event.is-thin:hover,.timed-event.is-thin:focus-within{z-index:35}.timed-event.is-continuation .event-chip{border-top-left-radius:5px;border-top-right-radius:5px}.timed-event.continues-after .event-chip{border-bottom-right-radius:5px;border-bottom-left-radius:5px}.timed-event.is-continuation .event-chip:before,.timed-event.continues-after .event-chip:after{content:"";position:absolute;right:8px;left:8px;height:2px;border-radius:999px;background:#24313a47}.timed-event.is-continuation .event-chip:before{top:3px}.timed-event.continues-after .event-chip:after{bottom:3px}.timed-event.continues-after .event-resize-handle{display:none}.event-chip{width:100%;height:100%;display:grid;grid-template-columns:auto minmax(0,1fr) max-content;grid-template-rows:auto minmax(0,1fr) auto;align-content:start;align-items:start;column-gap:5px;row-gap:1px;padding:5px 6px;border-radius:var(--radius);background:color-mix(in srgb,var(--event, var(--accent)),var(--surface) 46%);color:var(--event-text);text-align:left;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface),transparent 28%);overflow:hidden;position:relative;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.event-chip.has-linked-calendar{padding-left:9px}.linked-calendar-accent{position:absolute;top:0;bottom:0;left:0;z-index:1;width:4px;border-radius:inherit;border-top-right-radius:0;border-bottom-right-radius:0;background:color-mix(in srgb,var(--linked-calendar),var(--surface) 30%);box-shadow:inset -1px 0 color-mix(in srgb,var(--surface),transparent 44%),1px 0 6px color-mix(in srgb,var(--linked-calendar),transparent 68%);pointer-events:none}.event-chip>:not(.linked-calendar-accent):not(.event-resize-handle),.all-day-event>:not(.linked-calendar-accent),.agenda-event-card>:not(.linked-calendar-accent){position:relative;z-index:2;height:fit-content}button.event-chip:hover,button.event-chip:focus{box-shadow:0 12px 26px #485d6021,inset 0 0 0 2px color-mix(in srgb,var(--surface),transparent 18%);transform:scale(1.015)}button.event-chip.is-dragging{cursor:grabbing;box-shadow:0 16px 38px #485d602e,inset 0 0 0 2px color-mix(in srgb,var(--surface),transparent 10%);opacity:.96;transform:scale(1.02)}.event-chip strong{grid-column:2;grid-row:1;min-width:0;width:100%;font-size:12px;line-height:1.15;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.event-chip:not(.has-footer-time) strong{display:block;overflow-wrap:normal;text-overflow:ellipsis;white-space:nowrap}.event-chip span,.event-chip small{min-width:0;font-size:10px;line-height:1.1}.event-chip-time{grid-column:3;grid-row:1;justify-self:end;width:max-content;max-width:none;display:block;overflow:visible;text-overflow:clip;white-space:nowrap;color:color-mix(in srgb,var(--event-text),transparent 12%);font-weight:950}.event-chip>small{display:none}.event-chip.has-footer-time{padding-bottom:22px}.event-chip.has-footer-time .event-chip-time{display:none}.event-chip.has-footer-time .event-chip-footer-time{position:absolute;right:8px;bottom:7px;left:8px;display:block;overflow:hidden;color:color-mix(in srgb,var(--event-text),transparent 12%);font-weight:950;text-overflow:ellipsis;white-space:nowrap}.event-chip.has-linked-calendar.has-footer-time .event-chip-footer-time{left:11px}.event-chip-top{grid-column:1;grid-row:1;display:flex;justify-content:flex-start;align-items:center;gap:4px;width:auto;min-width:20px}.event-sticker{font-size:14px}.event-resize-handle{position:absolute;right:0;bottom:0;left:0;z-index:8;height:20px;display:flex;align-items:flex-end;justify-content:center;padding-bottom:5px;cursor:ns-resize}.event-resize-handle:before{content:"";width:34px;height:3px;border-radius:999px;background:color-mix(in srgb,var(--event-text),transparent 72%);opacity:0;transition:opacity var(--fast) var(--ease),background-color var(--fast) var(--ease)}.event-chip:hover .event-resize-handle:before,.event-chip:focus-visible .event-resize-handle:before,.event-resize-handle:hover:before{opacity:1}.event-chip-compact{min-height:76px}.event-thin-chip{position:absolute;top:50%;right:2px;left:2px;min-height:22px;display:flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;background:color-mix(in srgb,var(--event, var(--accent)),var(--surface) 38%);color:var(--event-text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface),transparent 18%),0 6px 14px #485d601f;text-align:left;translate:0 -50%;transform:scale(1);touch-action:manipulation;-webkit-user-select:none;user-select:none}.event-thin-chip.has-linked-calendar{padding-left:10px}button.event-thin-chip:hover,button.event-thin-chip:focus-visible{transform:scale(1.015);box-shadow:0 12px 24px #485d6029,inset 0 0 0 2px color-mix(in srgb,var(--surface),transparent 14%)}.event-thin-chip>:not(.linked-calendar-accent){position:relative;z-index:2}.event-thin-marker{flex:0 0 auto;min-width:20px;color:var(--text);font-size:12px;font-weight:1000;line-height:1}.event-thin-copy{flex:1 1 auto;min-width:0;display:flex;align-items:baseline;gap:5px;overflow:hidden}.event-thin-copy strong,.event-thin-copy small{min-width:0;overflow:hidden;line-height:1;text-overflow:ellipsis;white-space:nowrap}.event-thin-copy strong{flex:1 1 auto;color:var(--event-text);font-size:11px;font-weight:1000}.event-thin-copy small{flex:0 0 auto;max-width:min(92px,58%);color:color-mix(in srgb,var(--event-text),transparent 18%);font-size:9px;font-weight:900}.event-group-chip{width:100%;height:100%;min-height:0;display:grid;align-content:center;justify-items:center;gap:3px;border-radius:var(--radius);background:color-mix(in srgb,var(--event, var(--accent)),var(--surface) 42%);color:var(--event-text);padding:4px 6px;overflow:hidden;text-align:center;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface),transparent 20%),0 6px 14px #485d6014}.timed-event-group.is-thin .event-group-chip{position:absolute;top:50%;right:2px;left:2px;width:auto;min-height:22px;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;translate:0 -50%;transform:scale(1);touch-action:manipulation}.timed-event-group.is-thin button.event-group-chip:hover,.timed-event-group.is-thin button.event-group-chip:focus-visible{transform:scale(1.015)}.timed-event-group.is-thin .event-group-chip strong{width:20px;height:20px;font-size:12px}.timed-event-group.is-thin .event-group-chip span{font-size:10px}.event-group-chip strong{display:grid;place-items:center;width:34px;height:34px;border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 16%);color:var(--text);font-size:17px;font-weight:1000;line-height:1}.event-group-chip span{min-width:0;max-width:100%;overflow:hidden;color:var(--muted);font-size:11px;font-weight:900;line-height:1.1;text-overflow:ellipsis;white-space:nowrap}.timed-event-group.is-day-group .event-group-chip,.day-grid .event-group-chip{display:flex;align-items:center;justify-content:center;gap:8px;padding:4px 10px}.timed-event-group.is-day-group .event-group-chip strong,.day-grid .event-group-chip strong{flex:0 0 34px}.timed-event-group.is-day-group .event-group-chip span,.day-grid .event-group-chip span{flex:0 1 auto}button.event-group-chip:hover,button.event-group-chip:focus-visible{transform:scale(1.015);box-shadow:0 12px 26px #485d6021,inset 0 0 0 2px color-mix(in srgb,var(--surface),transparent 14%)}.event-group-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:88;min-height:0;border-radius:0;background:#4e606029}.event-group-modal{position:fixed;top:50%;left:50%;z-index:90;width:min(360px,calc(100vw - 28px));max-height:min(520px,calc(100dvh - 32px));display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:0 24px 56px #485d602e;padding:14px;transform:translate(-50%,-50%)}.event-group-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.event-group-head small{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.event-group-head h2{margin-top:2px;font-family:var(--font-display);font-size:26px;font-weight:600;line-height:1.05}.event-group-list{min-height:0;display:grid;gap:8px;overflow:auto}.event-group-row{position:relative;min-width:0;min-height:58px;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;border-radius:var(--radius);background:color-mix(in srgb,var(--event, var(--accent)),var(--surface) 46%);color:var(--event-text);padding:8px 10px;overflow:hidden;text-align:left;cursor:grab;touch-action:none}.event-group-row.has-linked-calendar{padding-left:14px}.event-group-row:active{cursor:grabbing}.event-group-sticker{width:32px;height:32px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 24%);font-size:18px}.event-group-copy{min-width:0;display:grid;gap:2px}.event-group-copy strong,.event-group-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-group-copy strong{font-size:14px;font-weight:900}.event-group-copy small{color:var(--muted);font-size:12px;font-weight:800}.single-day-heading{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;border-bottom:1px solid var(--line)}.single-day-heading strong{font-family:var(--font-display);font-size:22px}.single-day-heading button,.section-title-row button,.inline-form button,.settings-actions button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;border-radius:999px;background:var(--surface-soft);padding:0 13px;font-weight:800}.settings-wide-button{width:100%;margin-top:12px}.month-board{display:grid;grid-template-rows:44px minmax(0,1fr)}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays span{display:grid;place-items:center;color:var(--muted);font-size:12px;font-weight:800;border-bottom:1px solid var(--line)}.month-cell{min-height:112px;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:5px;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--surface);color:inherit;cursor:pointer;text-align:left}.month-cell:focus-visible{outline:3px solid var(--accent);outline-offset:-3px}.month-cell.is-muted{color:var(--faint);background:color-mix(in srgb,var(--surface-soft),transparent 52%)}.month-cell.is-today>strong{color:#b86d65}.month-event{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:4px 6px;background:color-mix(in srgb,var(--event, var(--accent)),var(--surface) 46%);color:var(--event-text);font-size:11px;font-weight:700;cursor:pointer}.month-event:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.month-event.has-linked-calendar{border-left:4px solid var(--linked-calendar);padding-left:5px}.agenda-board{overflow:auto;padding:18px}.agenda-day+.agenda-day{margin-top:20px}.agenda-day h3{margin-bottom:8px;font-family:var(--font-display);font-weight:600}.agenda-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.agenda-event-card{position:relative;min-height:94px;display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:12px;border-radius:var(--radius);background:color-mix(in srgb,var(--event, var(--accent)),var(--surface) 46%);color:var(--event-text);padding:12px;text-align:left;overflow:hidden}.agenda-event-card.has-linked-calendar{padding-left:16px}.agenda-event-card:hover,.agenda-event-card:focus{box-shadow:0 12px 26px #485d6021,inset 0 0 0 2px color-mix(in srgb,var(--surface),transparent 18%)}.agenda-event-sticker{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--surface),transparent 28%);font-size:27px}.agenda-event-body{display:grid;gap:2px;min-width:0}.agenda-event-body strong,.agenda-event-body span,.agenda-event-body small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state{min-height:180px;width:100%;border:1px dashed var(--line);border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);font-weight:800}.brief-panel{min-width:0;overflow:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:14px;box-shadow:0 10px 28px #20394612}.brief-panel h2{font-size:28px}.brief-panel h3{margin:18px 0 9px;font-family:var(--font-display);font-size:20px;font-weight:600}.brief-now{display:grid;gap:5px;margin-top:16px;border-radius:var(--radius);background:#eaf7f4;padding:14px;color:#203239}:root[data-theme=dark] .brief-now{color:var(--text);background:#22373d}.brief-now span{color:var(--muted);font-size:13px;font-weight:800}.brief-now strong{font-family:var(--font-display);font-size:24px}.brief-now small{color:var(--muted)}.brief-list{display:grid;gap:8px}.brief-event-row{display:grid;grid-template-columns:8px 26px minmax(0,1fr);align-items:center;gap:9px;border-radius:var(--radius);background:var(--surface-soft);padding:10px;text-align:left}.brief-dot{width:8px;height:36px;border-radius:999px}.brief-sticker{font-size:20px}.brief-event-row strong,.brief-event-row small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.brief-event-row small,.muted-copy{color:var(--muted);font-size:12px}.brief-event-day{color:var(--text);font-weight:800}.drawer{position:fixed;top:0;right:0;z-index:30;width:min(430px,calc(100vw - 74px));max-width:100vw;height:100vh;overflow:auto;overflow-x:hidden;display:grid;align-content:start;gap:15px;padding:18px;background:var(--surface);border-left:1px solid var(--line);box-shadow:var(--shadow)}.event-drawer-inline{position:sticky;top:14px;right:auto;z-index:6;width:100%;max-width:none;height:auto;max-height:calc(100dvh - 118px);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 34px #040d1224}.drawer-head h2{display:flex;align-items:center;gap:8px;min-width:0;font-size:29px;overflow-wrap:anywhere;word-break:break-word}.field{display:grid;gap:6px}.location-field{position:relative}.address-suggestion-panel{position:absolute;z-index:70;top:calc(100% + 8px);left:0;right:0;display:grid;gap:6px;padding:8px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow)}.address-suggestion-panel p{margin:0;padding:10px 12px;color:var(--muted);font-size:13px;font-weight:800}.address-suggestion-option{width:100%;min-width:0;display:grid;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;border-radius:14px;padding:9px 10px;background:transparent;color:var(--text);text-align:left}.address-suggestion-option svg{color:var(--accent-strong)}.address-suggestion-option span{min-width:0;display:grid;gap:2px}.address-suggestion-option strong,.address-suggestion-option small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.address-suggestion-option strong{font-size:14px}.address-suggestion-option small{color:var(--muted);font-size:12px;font-weight:800}.address-suggestion-option:hover,.address-suggestion-option:focus-visible,.address-suggestion-option.is-active{background:var(--surface-soft)}.field span,.toggle-row span{color:var(--muted);font-size:12px;font-weight:800}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.event-time-panel{display:grid;gap:10px;border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft),var(--surface) 38%);padding:10px}.event-time-panel .field-grid{gap:9px}.event-time-panel .field input,.event-time-panel .custom-select-trigger{background:var(--surface)}.event-all-day-toggle{min-width:0;display:inline-flex;align-items:center;gap:10px;border-radius:var(--radius);padding:2px 4px;color:var(--text);font-weight:900;cursor:pointer}.event-all-day-toggle input{width:22px;height:22px;accent-color:var(--accent)}.event-repeat-row{background:var(--surface);padding:8px}.event-repeat-row .custom-select-menu{min-width:min(320px,calc(100vw - 44px))}.profile-row{display:flex;flex-wrap:wrap;gap:8px}.profile-chip{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:6px 10px 6px 6px;background:color-mix(in srgb,var(--chip),var(--surface) 50%);color:var(--event-text);font-weight:800;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--event-text),transparent 88%)}.profile-chip>span:not(.profile-avatar),.avatar,.profile-avatar{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;color:var(--event-text);font-size:12px;font-weight:900;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface),transparent 32%)}.profile-avatar{overflow:hidden;background:var(--profile);flex:0 0 auto}.profile-avatar img{width:100%;height:100%;display:block;object-fit:cover}.profile-avatar>span{display:grid;place-items:center;width:100%;height:100%;color:inherit;font:inherit}.profile-chip.is-active{box-shadow:inset 0 0 0 2px var(--text)}:root[data-theme=dark] .profile-chip{background:color-mix(in srgb,var(--chip),var(--surface) 46%);color:var(--event-text)}:root[data-theme=dark] .profile-chip.is-active{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--surface),transparent 12%),0 0 0 2px var(--accent)}.toggle-row{display:grid;grid-template-columns:minmax(108px,auto) minmax(0,1fr);align-items:center;gap:10px;border-radius:var(--radius);background:var(--surface-soft);padding:10px}.toggle-row span{display:inline-flex;align-items:center;gap:7px}.event-source-panel{display:grid;gap:10px;border-radius:var(--radius);background:var(--surface-soft);padding:10px}.event-source-panel .segmented{width:100%}.join-meeting-link{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;background:color-mix(in srgb,var(--success),var(--surface) 72%);color:var(--success-strong);font-weight:1000;text-decoration:none}.join-meeting-link img{width:24px;height:24px;object-fit:contain;border-radius:6px;background:#fff;padding:2px}.join-meeting-link:hover,.join-meeting-link:focus-visible{transform:translateY(-1px);box-shadow:0 12px 24px color-mix(in srgb,var(--success),transparent 74%)}.custom-select,.search-shell{position:relative;display:flex;align-items:center;min-width:0}.search-shell{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:inset 0 0 0 1px #ffffff08}.custom-select{isolation:isolate}.custom-select.is-open{z-index:120}.custom-select-trigger{width:100%;min-height:52px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:9px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:7px 12px;text-align:left;box-shadow:inset 0 0 0 1px #ffffff08}.custom-select-trigger span{grid-column:1 / -1;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:0;text-transform:uppercase;line-height:1}.custom-select-trigger strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px;line-height:1.1}.custom-select-trigger:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 78%)}.custom-select-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:200;max-height:260px;overflow:auto;display:grid;gap:4px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:6px;box-shadow:0 24px 54px #00000057,0 0 0 1px color-mix(in srgb,var(--accent),transparent 64%)}.custom-select-menu button{min-height:42px;display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:8px;border-radius:6px;color:var(--text);padding:0 10px;text-align:left;font-weight:800}.custom-select-menu button:hover,.custom-select-menu button:focus-visible,.custom-select-menu button.is-selected{background:var(--surface-soft);color:var(--text)}.notify-select{width:100%;min-width:0}.notify-select .custom-select-trigger{min-height:64px;border-color:color-mix(in srgb,var(--accent),var(--line) 50%);background:color-mix(in srgb,var(--surface-soft),var(--surface) 34%)}.notify-select .custom-select-trigger strong{font-size:18px}.event-detail-drawer{gap:16px;contain:inline-size}.event-detail-sticker{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--surface-soft);font-family:var(--font-sans);font-size:22px}.event-detail-summary{min-width:0;max-width:100%;display:grid;gap:10px;border-radius:var(--radius);padding:16px;background:linear-gradient(90deg,color-mix(in srgb,var(--event),var(--surface) 28%),transparent 74%) 0 0 / 6px 100% no-repeat,color-mix(in srgb,var(--surface-soft),var(--event) 12%)}.event-detail-summary strong{min-width:0;color:var(--text);font-size:22px;line-height:1.08;overflow-wrap:anywhere;word-break:break-word}.event-detail-summary span{display:inline-flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0;max-width:100%;color:var(--muted);font-weight:800;overflow-wrap:anywhere;word-break:break-word}.event-detail-summary small{width:fit-content;border-radius:999px;background:color-mix(in srgb,var(--event),var(--surface) 52%);color:var(--event-text);padding:4px 9px;font-weight:900}.event-location-map{min-width:0;max-width:100%;position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);min-height:158px}.event-location-map iframe{display:block;width:100%;height:158px;border:0;filter:saturate(.95) contrast(.98)}.event-location-map a{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 8%);color:var(--text);padding:7px 10px;font-size:12px;font-weight:900;text-decoration:none;box-shadow:0 10px 24px color-mix(in srgb,var(--ink),transparent 88%)}.event-location-map a:hover,.event-location-map a:focus-visible{transform:translateY(-1px);background:var(--surface)}.event-detail-notes{min-width:0;max-width:100%;display:grid;gap:8px;border-radius:var(--radius);background:var(--surface-soft);padding:14px}.event-detail-notes h3{font-family:var(--font-display);font-size:18px}.event-detail-notes p,.safe-notes-html{min-width:0;max-width:100%;color:var(--text);line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.safe-notes-html{display:grid;gap:8px}.safe-notes-html *,.event-detail-notes p *{max-width:100%;overflow-wrap:anywhere;word-break:break-word}.safe-notes-html ul,.safe-notes-html ol{margin:0;padding-left:20px}.safe-notes-html a{color:var(--accent-strong);font-weight:900}.event-detail-attendees,.event-delete-options,.notify-attendees-toggle{min-width:0;max-width:100%;display:grid;gap:10px;border-radius:var(--radius);background:var(--surface-soft);padding:14px}.event-detail-attendees h3,.event-delete-options h3{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:18px}.event-detail-attendees h3 span{display:inline-grid;min-width:28px;height:24px;place-items:center;border-radius:999px;background:var(--surface);color:var(--muted);font-family:var(--font-body);font-size:12px;font-weight:1000}.attendee-summary{min-width:0;display:flex;flex-wrap:wrap;gap:6px}.attendee-summary span{border-radius:999px;background:color-mix(in srgb,var(--surface),var(--text) 4%);color:var(--muted);padding:4px 8px;font-size:11px;font-weight:900}.attendee-list{min-width:0;display:grid;gap:8px;max-height:min(58vh,620px);overflow:auto;overscroll-behavior:contain;padding-right:2px}.attendee-chip{min-width:0;display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:10px;border-radius:14px;background:var(--surface);padding:9px}.attendee-chip span:last-child{min-width:0;display:grid;gap:2px}.attendee-chip strong,.attendee-chip small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendee-chip small{color:var(--muted);font-weight:800}.attendee-avatar{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--surface-soft);color:var(--text);font-size:13px;font-weight:1000;box-shadow:inset 0 0 0 2px var(--line)}.attendee-avatar.status-accepted{background:color-mix(in srgb,var(--success),white 72%);color:#12342b}.attendee-avatar.status-declined{background:color-mix(in srgb,var(--danger),white 78%);color:#47171f}.attendee-avatar.status-tentative{background:color-mix(in srgb,#f0ad36,white 72%);color:#402b08}.attendee-more-button{min-height:42px;border:0;border-radius:999px;background:var(--surface);color:var(--text);font-weight:1000}.attendee-more-button:hover,.attendee-more-button:focus-visible{transform:translateY(-1px);background:color-mix(in srgb,var(--accent),var(--surface) 78%)}.delete-scope-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.delete-scope-options button{min-height:44px;border-radius:999px;background:var(--surface);color:var(--muted);font-weight:1000}.delete-scope-options button.is-active{background:color-mix(in srgb,var(--danger),transparent 86%);color:var(--danger);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--danger),transparent 45%)}.notify-attendees-toggle{grid-template-columns:auto minmax(0,1fr);align-items:center;cursor:pointer}.notify-attendees-toggle input{width:22px;height:22px;accent-color:var(--accent)}.notify-attendees-toggle span{min-width:0;display:inline-flex;align-items:center;gap:8px;color:var(--text);font-weight:900;overflow-wrap:anywhere}.edit-notify-attendees{background:color-mix(in srgb,var(--accent),var(--surface-soft) 86%)}.event-delete-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.event-delete-actions .danger-button,.event-delete-actions .secondary-button{width:100%}.meal-slot-select{min-width:150px}.search-shell{gap:8px;padding:0 12px}.search-shell input{border:0;background:transparent;box-shadow:none}.compact-search{width:min(560px,100%)}.recipes-panel .section-title-row{position:sticky;top:0;z-index:18;display:grid;grid-template-columns:auto minmax(240px,1fr) auto;align-items:center;gap:16px;margin-bottom:18px;padding-bottom:12px;background:linear-gradient(180deg,var(--surface) 0%,var(--surface) 78%,color-mix(in srgb,var(--surface),transparent 100%) 100%)}.recipes-panel .compact-search{width:100%;max-width:none}@media(max-width:760px){.recipes-panel .section-title-row{grid-template-columns:minmax(0,1fr) auto;gap:12px}.recipes-panel .compact-search{grid-column:1 / -1;grid-row:2}}.sticker-picker{display:grid;grid-template-columns:repeat(8,1fr);gap:7px}.sticker-picker button{aspect-ratio:1;border-radius:var(--radius);background:var(--surface-soft);font-size:20px}.sticker-picker button.is-active{background:#ffefd1;box-shadow:inset 0 0 0 2px #f0ad36}.drawer-actions{display:flex;justify-content:space-between;gap:10px}.primary-button,.danger-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border-radius:999px;padding:0 17px;font-weight:900}.primary-button,.primary-icon-button,.settings-actions .primary-button{background:color-mix(in srgb,var(--accent),var(--surface) 18%);color:#244b49}:root[data-theme=dark] .primary-button,:root[data-theme=dark] .primary-icon-button,:root[data-theme=dark] .settings-actions .primary-button{background:#9ed9d0;color:#20393a}.danger-button{background:color-mix(in srgb,var(--danger),transparent 86%);color:var(--danger)}.secondary-button{background:var(--surface-soft);color:var(--text)}.floating-add{position:fixed;right:30px;bottom:30px;z-index:12;width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:#a6d8ef;color:#28536a;box-shadow:0 14px 30px #5282912e}.floating-add.is-behind-panel{z-index:2;pointer-events:none;opacity:.28}.feature-grid,.settings-grid{min-height:0;overflow:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);align-items:start;gap:14px;padding:14px 16px 90px}.recipes-view{grid-template-columns:minmax(0,1fr)}.settings-grid{display:block;column-width:360px;column-gap:16px}.wide-panel,.side-panel,.settings-panel{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:16px;box-shadow:0 10px 28px #2039460f}.settings-panel{display:inline-block;width:100%;margin:0 0 16px;padding:18px;grid-column:auto;align-self:start;height:fit-content;overflow:visible;break-inside:avoid}.settings-panel-heading{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:14px}.settings-panel-heading h2{margin:0}.status-pill{min-height:28px;display:inline-flex;align-items:center;border-radius:999px;background:var(--surface-soft);color:var(--muted);padding:0 10px;font-size:11px;font-weight:1000;white-space:nowrap}.status-synced{background:color-mix(in srgb,var(--success),var(--surface) 78%);color:var(--success-strong)}.status-syncing,.status-checking{background:color-mix(in srgb,var(--accent),var(--surface) 78%);color:var(--accent-strong)}.scrapbook-shell{min-height:0;height:100%;display:grid;grid-template-rows:auto minmax(0,1fr);padding:14px 16px 18px;overflow:hidden}.scrapbook-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-bottom:12px}.scrapbook-status,.scrapbook-help-copy{color:var(--muted);font-size:12px;font-weight:800}.scrapbook-date-controls,.scrapbook-export-actions,.scrapbook-zoom-strip,.scrapbook-layer-actions,.scrapbook-align-row{display:flex;align-items:center;gap:8px}.scrapbook-date-controls{grid-column:1;justify-self:start}.scrapbook-export-actions{grid-column:3;justify-self:end}.scrapbook-date-controls button,.scrapbook-export-actions button,.scrapbook-zoom-strip button,.scrapbook-layer-actions button,.scrapbook-align-row button,.scrapbook-share-grid button,.scrapbook-template-grid button,.scrapbook-tool-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface),var(--surface-soft) 32%);color:var(--text);padding:0 12px;font-size:13px;font-weight:900}.scrapbook-date-controls button:hover,.scrapbook-export-actions button:hover,.scrapbook-zoom-strip button:hover,.scrapbook-layer-actions button:hover,.scrapbook-align-row button:hover,.scrapbook-share-grid button:hover,.scrapbook-template-grid button:hover,.scrapbook-tool-button:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent),var(--surface) 82%);box-shadow:0 8px 18px #485d6017}.scrapbook-date-controls button:disabled,.scrapbook-export-actions button:disabled,.scrapbook-tool-button:disabled{cursor:not-allowed;opacity:.45;box-shadow:none}.scrapbook-edit-toggle{border-color:color-mix(in srgb,var(--accent),var(--line) 45%)!important;background:color-mix(in srgb,var(--accent),var(--surface) 76%)!important;color:var(--accent-strong)!important}.scrapbook-workspace{min-height:0;display:grid;grid-template-columns:86px minmax(0,1fr) minmax(290px,340px);gap:14px}.scrapbook-shell.is-readonly .scrapbook-workspace{grid-template-columns:minmax(0,1fr)}.scrapbook-tool-rail,.scrapbook-inspector,.scrapbook-canvas-zone{min-width:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 10px 28px #2039460f}.scrapbook-tool-rail{display:grid;align-content:start;justify-items:center;gap:8px;padding-top:10px;overflow-y:auto}.scrapbook-tool-button{width:76px;max-width:calc(100% - 8px);justify-self:center;box-sizing:border-box;min-height:58px;flex-direction:column;gap:4px;padding:8px 6px;font-size:11px}.scrapbook-tool-button svg,.scrapbook-toolbar svg,.scrapbook-inspector svg{stroke-width:2}.scrapbook-canvas-zone{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;padding:12px;overflow:hidden;background:linear-gradient(90deg,color-mix(in srgb,var(--line),transparent 70%) 1px,transparent 1px) 0 0 / 30px 30px,linear-gradient(color-mix(in srgb,var(--line),transparent 70%) 1px,transparent 1px) 0 0 / 30px 30px,color-mix(in srgb,var(--surface-soft),var(--surface) 48%)}.scrapbook-shell.is-readonly .scrapbook-canvas-zone{position:relative;grid-template-rows:minmax(0,1fr);border:0;background:transparent;box-shadow:none;padding:0}.scrapbook-zoom-strip{justify-content:center}.scrapbook-zoom-strip button{min-width:44px;height:44px;padding:0 10px}.scrapbook-canvas-viewport{min-height:0;position:relative;display:grid;place-items:center;overflow:hidden;touch-action:none;overscroll-behavior:contain;cursor:grab}.scrapbook-canvas-viewport.is-panning{cursor:grabbing}.scrapbook-shell.is-readonly .scrapbook-canvas-viewport{cursor:default}.scrapbook-canvas-scale{transform-origin:center;transition:transform var(--fast) var(--ease);will-change:transform}.scrapbook-canvas-page{position:relative;width:min(58vw,calc((100dvh - 220px) * var(--scrapbook-width) / var(--scrapbook-height)));max-width:100%;aspect-ratio:var(--scrapbook-width) / var(--scrapbook-height);overflow:hidden;border:1px solid color-mix(in srgb,var(--line),var(--text) 8%);border-radius:18px;box-shadow:0 24px 50px #20394629,0 0 0 10px color-mix(in srgb,var(--surface),transparent 45%);isolation:isolate}.scrapbook-shell.is-readonly .scrapbook-canvas-page{width:min(70vw,calc((100dvh - 160px) * var(--scrapbook-width) / var(--scrapbook-height)))}.scrapbook-shell.is-readonly .scrapbook-format-landscape{width:min(78vw,calc((100dvh - 160px) * var(--scrapbook-width) / var(--scrapbook-height)))}.scrapbook-view-edit-button{position:absolute;right:max(18px,calc(50% - (min(70vw,680px)/2) + 16px));top:18px;z-index:20;min-height:44px;border:1px solid color-mix(in srgb,var(--accent),var(--line) 42%);border-radius:var(--radius);background:color-mix(in srgb,var(--accent),var(--surface) 74%);color:var(--accent-strong);box-shadow:0 12px 28px #2039461f;padding:0 18px;font-weight:1000}.scrapbook-format-landscape{width:min(62vw,calc((100dvh - 220px) * var(--scrapbook-width) / var(--scrapbook-height)))}.scrapbook-layer{container-type:size;position:absolute;display:grid;place-items:center;-webkit-user-select:none;user-select:none;touch-action:none;transform-origin:center;outline:2px solid transparent;outline-offset:5px}.scrapbook-shell.is-editing .scrapbook-layer{cursor:move}.scrapbook-layer.is-selected{outline-color:var(--accent)}.scrapbook-layer img,.scrapbook-shape-content,.scrapbook-text-content,.scrapbook-sticker-content{width:100%;height:100%;display:block}.scrapbook-layer img{pointer-events:none;box-shadow:0 12px 28px #1c2d342e}.scrapbook-image-loading{width:100%;height:100%;display:grid;place-items:center;border:2px dashed color-mix(in srgb,var(--muted),transparent 55%);border-radius:24px;color:var(--muted);font-size:12px;font-weight:900}.scrapbook-text-content{color:var(--text-color);white-space:pre-wrap;display:flex;align-items:center;justify-content:center;line-height:1.08;padding:4%;overflow:hidden}.scrapbook-text-value{display:block;max-width:100%}.text-effect-gradient .scrapbook-text-value{background:linear-gradient(135deg,var(--gradient-from),var(--gradient-to));-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}.text-effect-outline .scrapbook-text-value{-webkit-text-stroke:max(1px,.055em) var(--effect-color);paint-order:stroke fill}.text-effect-shadow .scrapbook-text-value{text-shadow:.08em .1em .18em color-mix(in srgb,var(--effect-color),transparent 25%)}.text-effect-neon .scrapbook-text-value{color:var(--text-color);text-shadow:0 0 .08em var(--effect-color),0 0 .18em var(--effect-color),0 0 .34em color-mix(in srgb,var(--effect-color),transparent 20%)}.text-effect-3d .scrapbook-text-value{text-shadow:.04em .04em 0 var(--effect-color),.08em .08em 0 color-mix(in srgb,var(--effect-color),#000 18%),.13em .13em .18em rgba(0,0,0,.2)}.text-effect-curve{padding:0}.scrapbook-curved-text{width:100%;height:100%;display:block;overflow:visible}.scrapbook-sticker-content{display:grid;place-items:center;line-height:1;filter:drop-shadow(0 8px 10px rgba(30,42,48,.16))}.scrapbook-shape-content{background:var(--shape-fill);border:var(--shape-stroke-width) solid var(--shape-stroke);border-radius:var(--shape-radius);box-shadow:0 12px 26px #2039461a}.scrapbook-shape-circle{border-radius:50%}.scrapbook-shape-star{clip-path:polygon(50% 0%,61% 34%,98% 35%,68% 56%,79% 91%,50% 70%,21% 91%,32% 56%,2% 35%,39% 34%)}.scrapbook-layer-handle{position:absolute;z-index:4;width:38px;height:38px;border:2px solid var(--accent);border-radius:50%;background:var(--surface);box-shadow:0 8px 18px #2039462e;touch-action:none}.scrapbook-layer-handle.resize{right:-22px;bottom:-22px}.scrapbook-layer-handle.rotate{top:-52px;left:50%;display:grid;place-items:center;color:var(--accent-strong);transform:translate(-50%)}.scrapbook-guide{position:absolute;z-index:1000;background:color-mix(in srgb,var(--accent),#1d72f3 22%);pointer-events:none}.scrapbook-guide.vertical{top:0;bottom:0;width:3px}.scrapbook-guide.horizontal{left:0;right:0;height:3px}.scrapbook-status{min-height:18px;text-align:center}.scrapbook-inspector{display:grid;grid-template-rows:auto minmax(0,1fr);padding:12px;overflow:auto}.scrapbook-mobile-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin-bottom:12px}.scrapbook-mobile-tabs button{min-width:0;min-height:36px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:var(--surface-soft);color:var(--muted);padding:0 5px;font-size:10px;font-weight:1000;white-space:nowrap;text-transform:capitalize}.scrapbook-mobile-tabs button.is-active{background:var(--text);color:var(--surface)}.scrapbook-inspector-collapse{display:none}.scrapbook-panel-stack{display:grid;gap:12px;align-content:start}.scrapbook-inspector-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.scrapbook-inspector-head span{min-width:0;display:grid;gap:2px}.scrapbook-inspector-head small,.scrapbook-layer-list small,.scrapbook-template-grid small{color:var(--muted);font-size:11px;font-weight:800}.scrapbook-inspector-head>div{display:flex;gap:6px}.scrapbook-inspector-head button{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.scrapbook-layer-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.scrapbook-layer-actions button,.scrapbook-align-row button{padding:0}.scrapbook-range-field{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:900}.scrapbook-range-field input{padding:0;accent-color:var(--accent)}.scrapbook-select-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:8px}.scrapbook-align-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.scrapbook-align-row button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent),var(--surface) 78%)}.scrapbook-effect-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.scrapbook-effect-grid button,.scrapbook-gradient-grid button,.scrapbook-readonly-card button{min-height:40px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);color:var(--text);font-size:12px;font-weight:900}.scrapbook-effect-grid button.is-active,.scrapbook-gradient-grid button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent),var(--surface) 76%)}.scrapbook-gradient-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.scrapbook-gradient-grid button{background:linear-gradient(135deg,var(--gradient-from),var(--gradient-to))}.scrapbook-readonly-card{display:grid;gap:9px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);padding:14px}.scrapbook-readonly-card small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}.scrapbook-swatch-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.scrapbook-swatch-grid.compact{grid-template-columns:repeat(8,minmax(0,1fr))}.scrapbook-swatch-grid button{min-height:38px;border:2px solid var(--line);border-radius:var(--radius);background:var(--swatch);box-shadow:inset 0 0 0 2px color-mix(in srgb,white,transparent 70%)}.scrapbook-swatch-grid button.is-active{border-color:var(--text);box-shadow:inset 0 0 0 2px color-mix(in srgb,white,transparent 55%),0 0 0 3px color-mix(in srgb,var(--accent),transparent 64%)}.scrapbook-template-grid,.scrapbook-share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.scrapbook-template-grid button,.scrapbook-share-grid button{min-height:54px}.scrapbook-sticker-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;max-height:178px;overflow:auto}.scrapbook-sticker-grid button{min-height:40px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);font-size:20px}.scrapbook-sticker-grid button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent),var(--surface) 76%)}.scrapbook-layer-list{display:grid;gap:7px}.scrapbook-layer-list button{min-height:52px;display:grid;gap:2px;justify-items:start;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);padding:8px 10px;text-align:left}.scrapbook-layer-list button.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent),var(--surface) 78%)}.scrapbook-help-copy{line-height:1.45}.status-error,.status-needs-verification{background:color-mix(in srgb,var(--danger),var(--surface) 82%);color:var(--danger)}.inline-form{display:flex;align-items:center;gap:8px}.inline-form input{min-width:140px}.inline-form .custom-select{min-width:150px}.profile-select{flex:0 0 176px}.cloud-empty-state,.cloud-account-stack,.cloud-auth-form{display:grid;gap:12px}.cloud-empty-state{min-height:148px;place-items:center;border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);padding:18px;text-align:center}.google-link-list{display:grid;gap:10px;margin-top:6px}.google-link-scroll{max-height:min(58dvh,680px);min-height:0;display:grid;gap:10px;overflow:auto;overscroll-behavior:contain;padding-right:3px;scrollbar-gutter:stable}.compact-row{align-items:center;margin:0;flex-wrap:wrap}.compact-row>div{flex:1 1 190px;min-width:0}.compact-row h3{margin:0;font-size:15px;font-weight:1000}.compact-row small{display:block;margin-top:3px;color:var(--muted);font-size:11px;font-weight:800;line-height:1.3}.google-add-button{justify-self:end}.google-link-actions{display:inline-flex;align-items:center;flex:0 0 auto;flex-wrap:nowrap;justify-self:end;gap:8px;margin-left:auto;max-width:100%}.section-title-row .google-link-actions .icon-button{width:38px;padding:0}.google-link-card{display:grid;grid-template-columns:12px minmax(0,1fr) 40px 40px;grid-template-areas:"dot main refresh remove" "dot profile profile profile" ". sync sync sync";align-items:start;gap:8px 12px;border:1px solid color-mix(in srgb,var(--border) 72%,transparent);border-radius:18px;background:var(--surface-soft);padding:12px 13px 13px}.google-link-card>div{min-width:0}.google-link-dot{grid-area:dot;width:11px;height:100%;min-height:72px;border-radius:999px;background:var(--link, var(--accent))}.google-link-main{grid-area:main;min-width:0;align-self:center;display:grid;gap:2px;padding-block:1px}.google-link-main strong,.google-link-main small,.google-link-sync{min-width:0;overflow:hidden;overflow-wrap:anywhere;word-break:normal;-webkit-box-orient:vertical;display:-webkit-box}.google-link-main strong{color:var(--text);font-size:15px;font-weight:1000;line-height:1.16;-webkit-line-clamp:3}.google-link-main small{color:var(--text);font-size:13px;font-weight:850;line-height:1.22;opacity:.9;-webkit-line-clamp:2}.google-link-card .custom-select{grid-area:profile;width:100%;min-width:0}.google-link-card .custom-select-trigger{min-height:44px}.google-link-card .google-link-refresh-button{grid-area:refresh}.google-link-remove-button{grid-area:remove}.google-link-sync{grid-column:2 / -1;grid-area:sync;color:var(--muted);font-weight:800;line-height:1.25;-webkit-line-clamp:2}.google-link-refresh-button .spin-icon,.settings-actions .spin-icon{animation:auth-spin .8s linear infinite}.cloud-empty-state strong{color:var(--text);font-size:16px}.cloud-empty-state small{max-width:34ch;line-height:1.4}.cloud-account-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;border-radius:var(--radius);background:var(--surface-soft);padding:10px}.cloud-account-card>span{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--accent),var(--surface) 76%);color:var(--accent-strong)}.cloud-account-card strong,.cloud-account-card small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cloud-account-card small{color:var(--muted);font-size:12px;font-weight:800}.settings-error{margin:0;border-radius:var(--radius-sm);background:color-mix(in srgb,var(--danger),var(--surface) 86%);color:var(--danger);padding:10px 12px;font-size:13px;font-weight:900;line-height:1.35}.profile-link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.profile-link-grid button{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:8px 10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);color:var(--text);padding:9px;text-align:left}.profile-link-grid button.is-linked{border-color:color-mix(in srgb,var(--profile),var(--line) 20%);background:color-mix(in srgb,var(--profile),var(--surface) 82%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--profile),transparent 42%)}.profile-link-grid .profile-image-preview{grid-row:span 2;width:38px;height:38px;font-size:16px}.profile-link-grid strong,.profile-link-grid small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-link-grid small{color:var(--muted);font-size:11px;font-weight:900}.cloud-share-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border-radius:var(--radius);background:var(--surface-soft);padding:11px 12px}.cloud-share-card strong,.cloud-share-card small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cloud-share-card small{color:var(--muted);font-size:12px;font-weight:850}.cloud-share-actions{display:flex;align-items:center;gap:8px}.calendar-share-qr-sheet{width:min(380px,100%);text-align:center}.calendar-share-qr-head{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:start;gap:8px;text-align:left}.calendar-share-qr-head small,.calendar-share-copied{color:var(--muted);font-size:12px;font-weight:850}.calendar-share-qr-head h2{margin-top:2px}.calendar-share-qr-sheet>img{width:min(260px,72vw);aspect-ratio:1;justify-self:center;border:1px solid var(--line);border-radius:12px;background:#fff;padding:10px}.calendar-share-link-row{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:center;gap:8px}.calendar-share-link-row code{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:var(--surface-soft);color:var(--text);padding:10px;font-size:12px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.lists-view,.meals-view{grid-template-columns:minmax(0,1fr)}.lists-workspace{min-height:min(740px,calc(100vh - 110px))}.list-tab-actions,.market-actions{display:flex;align-items:center;gap:8px}.list-primary-switch{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:min(100%,368px);min-width:0}.list-primary-switch button{width:100%;min-width:0}.task-menu-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px;border-radius:999px;background:var(--surface-soft);color:var(--text);padding:0 13px;font-weight:900}.market-needed-badge{min-height:34px;display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--accent),transparent 55%);border-radius:999px;background:color-mix(in srgb,var(--accent),var(--surface) 76%);color:var(--text);padding:0 12px;font-size:13px;font-weight:1000;white-space:nowrap}.market-needed-badge.is-clear{border-color:color-mix(in srgb,var(--line),transparent 12%);background:color-mix(in srgb,var(--surface-soft),var(--surface) 34%);color:var(--muted)}.market-action-button{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:999px;background:var(--surface-soft);color:var(--muted)}.market-action-button:not(:disabled):hover,.market-action-button:not(:disabled):focus-visible{color:var(--text);background:color-mix(in srgb,var(--surface-soft),var(--accent) 12%);transform:scale(1.04)}.market-action-button:disabled{opacity:.42;cursor:default}.meal-prep-week-actions{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:var(--surface-soft);padding:4px}.meal-prep-week-actions button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;color:var(--text);padding:0 12px;font-weight:900}.meal-prep-week-actions button:hover,.meal-prep-week-actions button:focus-visible{background:var(--surface)}.task-menu-summary{display:inline-grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;max-width:520px;margin-top:14px;border-radius:var(--radius);background:var(--surface-soft);padding:10px 12px}.task-menu-summary strong,.task-menu-summary small{display:block}.task-menu-summary small{color:var(--muted);font-size:12px;font-weight:800}.profile-task-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:12px;margin-top:16px;overflow-x:auto;padding-bottom:8px;position:relative;z-index:1}.task-profile-column{min-height:610px;border-radius:var(--radius);background:color-mix(in srgb,var(--profile),var(--surface) 28%);color:#1e2730;padding:14px}.task-profile-column>header,.sleep-card header{display:flex;align-items:center;gap:9px;margin-bottom:14px}.task-profile-column>header strong{font-family:var(--font-display);font-size:24px}.task-profile-column>header small{margin-left:auto;color:#40505a;font-weight:800}.task-stack,.mini-card-stack,.shopping-list,.stack-form{display:grid;gap:10px}.task-period-section{display:grid;gap:8px}.task-period-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px;border-radius:999px;background:#ffffff75;color:#26343b;padding:7px 10px 7px 12px}.task-period-heading strong{font-family:var(--font-ui);font-size:13px;font-weight:1000;letter-spacing:.04em;text-transform:uppercase}.task-period-heading small{color:#40505a;font-weight:900}.task-period-stack{display:grid;gap:8px}.wide-panel>h2,.side-panel>h2{margin-bottom:14px}.task-card{position:relative;min-height:94px;display:grid;grid-template-columns:56px minmax(0,1fr) 38px;align-items:center;gap:10px;border-radius:var(--radius);background:#ffffffc7;padding:12px;text-align:left;color:#1e2730}.task-sticker{width:50px;height:50px;display:grid;place-items:center;border-radius:50%;background:#ffffffb8;font-size:25px}.task-copy{min-width:0;display:grid;gap:5px}.task-card strong{min-width:0;font-size:17px;line-height:1.12;overflow-wrap:break-word;word-break:normal}.task-card small{justify-self:start;border-radius:999px;background:#e3f0ee;color:#172126;padding:3px 8px;font-weight:900;box-shadow:inset 0 0 0 1px #17212614}.repeat-day-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.schedule-mode-segmented button{min-height:42px}.repeat-day-grid button{min-height:40px;border-radius:999px;background:var(--surface-soft);color:var(--muted);font-weight:900}.repeat-day-grid button.is-active{background:var(--accent);color:#fff}.task-card.is-complete{background:#398f8a;color:#fff}.task-card.is-complete small{color:#fff;background:#0b343538}.round-check{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#17212624;color:#fff}.task-card:not(.is-complete) .round-check{background:#fff;box-shadow:inset 0 0 0 1px #17212629}.task-empty{margin:0;border:1px dashed rgba(23,33,38,.2);border-radius:var(--radius);background:#ffffff6b;color:#40505a;padding:11px 12px;font-weight:900;font-size:13px}:root[data-theme=dark] .task-profile-column{background:linear-gradient(180deg,color-mix(in srgb,var(--profile),transparent 88%),transparent 44%),color-mix(in srgb,var(--profile),var(--surface) 82%);color:var(--text)}:root[data-theme=dark] .task-profile-column>header strong{color:var(--text);text-shadow:0 1px 0 rgba(0,0,0,.18)}:root[data-theme=dark] .task-profile-column>header small{color:color-mix(in srgb,var(--text),transparent 12%)}:root[data-theme=dark] .task-period-heading{background:color-mix(in srgb,var(--surface),white 10%);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line),transparent 20%)}:root[data-theme=dark] .task-period-heading small{color:color-mix(in srgb,var(--text),transparent 8%)}:root[data-theme=dark] .task-card{background:color-mix(in srgb,var(--surface),white 7%);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line),transparent 28%)}:root[data-theme=dark] .task-card small{background:color-mix(in srgb,var(--accent),var(--surface) 78%);color:var(--text);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 58%)}:root[data-theme=dark] .task-sticker{background:color-mix(in srgb,var(--surface-soft),white 8%)}:root[data-theme=dark] .task-card.is-complete{background:color-mix(in srgb,var(--success),#0f2730 52%);color:#fff}:root[data-theme=dark] .task-card.is-complete small{background:#07232761;color:#fff}:root[data-theme=dark] .task-empty{border-color:color-mix(in srgb,var(--line),white 10%);background:color-mix(in srgb,var(--surface),white 6%);color:color-mix(in srgb,var(--text),transparent 12%)}.check-row{display:flex;align-items:center;gap:9px;border-radius:var(--radius);background:var(--surface-soft);min-height:52px;padding:11px 12px;font-weight:800}.check-row input{accent-color:var(--accent)}.check-row input{width:16px;height:16px}.market-panel{align-self:start}.market-editor{gap:9px}.market-panel-tab{min-height:clamp(420px,calc(100vh - 260px),640px);display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;margin-top:20px;padding:0;border:0;background:transparent;box-shadow:none}.market-add-toolbar{width:min(860px,100%);grid-template-columns:minmax(220px,1fr) minmax(92px,118px) auto;align-items:stretch;gap:8px;margin-top:0;border:1px solid color-mix(in srgb,var(--line),transparent 8%);border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface),white 5%),color-mix(in srgb,var(--surface-soft),var(--surface) 44%));padding:8px;box-shadow:0 14px 30px #2039460f,inset 0 1px color-mix(in srgb,var(--surface),white 44%)}.market-add-field{min-width:0;min-height:52px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:2px;border:1px solid color-mix(in srgb,var(--line),transparent 18%);border-radius:10px;background:color-mix(in srgb,var(--surface),transparent 3%);padding:7px 10px 8px}.market-add-field span{color:var(--faint);font-size:10px;font-weight:1000;line-height:1;text-transform:uppercase}.market-add-field input{min-height:22px;border:0;border-radius:0;background:transparent;padding:0;color:var(--text);font-size:16px;font-weight:850;box-shadow:none}.market-add-field:focus-within{border-color:color-mix(in srgb,var(--accent),transparent 18%);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 72%)}.market-add-form.market-add-toolbar .primary-button{min-width:104px;min-height:52px;align-self:stretch;gap:7px;border-radius:10px;font-size:15px}.market-list-shell{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid color-mix(in srgb,var(--line),transparent 4%);border-radius:14px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft),transparent 18%),transparent 34%),color-mix(in srgb,var(--surface-soft),var(--surface) 48%);overflow:hidden}.market-list-head{min-height:46px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 10%);padding:0 14px}.market-list-head span{color:var(--muted);font-size:11px;font-weight:1000;text-transform:uppercase}.market-list-head small{border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 8%);color:var(--muted);padding:4px 9px;font-size:11px;font-weight:950}.market-list-shell .market-editor{align-content:start;min-height:0;padding:10px;overflow:auto}.market-item{min-height:56px;display:grid;grid-template-columns:36px minmax(0,1fr) minmax(70px,96px) 36px;align-items:center;gap:8px;border:1px solid color-mix(in srgb,var(--line),transparent 14%);border-radius:10px;background:color-mix(in srgb,var(--surface),transparent 2%);padding:8px 9px;box-shadow:0 8px 18px #2039460a}.market-item:hover,.market-item:focus-within{border-color:color-mix(in srgb,var(--accent),transparent 42%);box-shadow:0 12px 24px #20394614,inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 82%)}.market-check,.market-delete,.profile-mini-row button{display:grid;place-items:center;border-radius:50%}.market-check{width:30px;height:30px;grid-column:1;background:var(--surface);color:var(--accent);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent),transparent 42%)}.market-item.is-done{opacity:.72}.market-item.is-done .market-name-input{text-decoration:line-through}.market-name-input,.market-quantity-input{min-height:36px;border-color:transparent;background:transparent;box-shadow:none;font-weight:800}.market-name-input{grid-column:2;padding-inline:4px}.market-quantity-input{grid-column:3;width:100%;max-width:100%;border:1px solid color-mix(in srgb,var(--line),transparent 22%);border-radius:999px;background:color-mix(in srgb,var(--surface-soft),var(--surface) 34%);padding-inline:8px;text-align:center;font-size:13px}.market-delete{width:34px;height:34px;grid-column:4;color:var(--muted);background:color-mix(in srgb,var(--surface),transparent 10%)}.market-delete:hover,.market-delete:focus-visible{color:var(--danger)}.market-add-form{grid-template-columns:minmax(0,1fr) 80px 88px;align-items:center;gap:8px;margin-top:12px}.market-add-form.market-add-toolbar{grid-template-columns:minmax(220px,1fr) minmax(92px,118px) auto;margin-top:0}.market-empty-state{min-height:280px;display:grid;place-items:center;align-content:center;gap:7px;border:1px dashed color-mix(in srgb,var(--line),transparent 2%);border-radius:12px;background:color-mix(in srgb,var(--surface),transparent 32%);color:var(--muted);text-align:center;padding:28px 16px}.market-empty-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:color-mix(in srgb,var(--accent),var(--surface) 72%);color:var(--accent-strong);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 52%)}.market-empty-state strong{color:var(--text);font-size:17px;font-weight:1000}.market-empty-state small{font-size:13px;font-weight:850}.meal-prep-panel{display:grid;gap:12px;max-width:980px;margin:16px auto 0}.meal-prep-overview{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:var(--radius);background:var(--surface-soft);padding:14px}.meal-prep-overview small{color:var(--muted);font-size:12px;font-weight:900}.meal-prep-overview h2{margin-top:2px;font-family:var(--font-display);font-size:28px;line-height:1.05}.meal-prep-overview p{margin-top:5px;color:var(--muted);font-size:13px;font-weight:800;line-height:1.4}.meal-prep-overview-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.meal-prep-workspace{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:12px}.meal-prep-section{min-width:0;display:grid;align-content:start;gap:12px;border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft),transparent 18%);padding:12px}.meal-prep-checklist,.meal-prep-recipe-results{display:grid;gap:8px}.meal-prep-recipe-option{min-width:0;border-radius:var(--radius);background:var(--surface-soft);color:var(--text);padding:10px}.meal-prep-food-row{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr) 34px;align-items:center;gap:10px;border-radius:var(--radius);background:var(--surface);padding:9px}.meal-prep-food-row.is-prepped{opacity:.72}.meal-prep-food-check,.meal-prep-food-delete{width:34px;height:34px;display:grid;place-items:center;border-radius:50%}.meal-prep-food-check{background:var(--surface-soft);color:var(--accent-strong);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent),transparent 42%)}.meal-prep-food-row.is-prepped .meal-prep-food-check{background:color-mix(in srgb,var(--success),var(--surface) 76%);box-shadow:none}.meal-prep-food-delete{background:color-mix(in srgb,var(--surface-soft),transparent 12%);color:var(--muted)}.meal-prep-food-delete:hover,.meal-prep-food-delete:focus-visible{color:var(--danger)}.meal-prep-food-main{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:10px;border-radius:var(--radius);color:var(--text);padding:0;text-align:left}button.meal-prep-food-main:hover,button.meal-prep-food-main:focus-visible{color:var(--accent-strong)}.meal-prep-food-main>img,.meal-prep-recipe-option img{width:42px;aspect-ratio:1;display:block;border-radius:9px;object-fit:cover}.meal-prep-food-main>span:first-child:not(:last-child),.meal-prep-recipe-option>span{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--surface),var(--accent) 7%);font-size:22px}.meal-prep-food-main>span:last-child{min-width:0;display:grid;gap:3px}.meal-prep-food-main strong,.meal-prep-recipe-option strong{min-width:0;overflow:hidden;line-height:1.15;overflow-wrap:normal;word-break:normal}.meal-prep-food-main strong{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.meal-prep-food-main small,.meal-prep-recipe-option small{min-width:0;overflow:hidden;color:var(--muted);font-size:12px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.meal-prep-food-row.is-prepped .meal-prep-food-main strong{text-decoration:line-through}.meal-prep-custom-form{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}.meal-prep-custom-form input{min-height:42px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--text);padding:0 12px;font:inherit;font-weight:800}.meal-prep-custom-form button{justify-content:center;min-width:82px}.meal-prep-search{margin-top:2px}.meal-prep-recipe-results{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));align-items:stretch}.meal-prep-recipe-option{display:grid;grid-template-columns:42px minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:"media title" "media meta";align-items:center;gap:8px;min-height:64px;text-align:left}.meal-prep-recipe-option img,.meal-prep-recipe-option>span{grid-area:media}.meal-prep-recipe-option strong{grid-area:title;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical}.meal-prep-recipe-option small{grid-area:meta;justify-self:start}.meal-prep-recipe-option:hover,.meal-prep-recipe-option:focus-visible{background:color-mix(in srgb,var(--surface-soft),var(--accent) 8%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 42%)}.meal-prep-step-head{min-width:0;display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px}.meal-prep-step-head>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--accent),var(--surface) 74%);color:var(--accent-strong);font-size:14px;font-weight:1000}.meal-prep-step-head div{min-width:0;display:grid;gap:2px}.meal-prep-step-head strong{font-size:17px}.meal-prep-step-head small{min-width:0;color:var(--muted);font-size:12px;font-weight:850}@media(max-width:820px){.meal-prep-overview{grid-template-columns:minmax(0,1fr)}.meal-prep-overview-actions{justify-content:stretch}.meal-prep-overview-actions>*{flex:1 1 0}.meal-prep-workspace,.meal-prep-recipe-results,.meal-prep-custom-form{grid-template-columns:minmax(0,1fr)}}.market-add-form .primary-button{min-height:44px;border-radius:var(--radius)}.meal-week,.recipe-grid,.sleep-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin-top:16px;position:relative;z-index:1}.recipe-grid{align-items:start;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}@media(max-width:1180px){.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.recipe-grid{grid-template-columns:minmax(0,1fr)}}.meal-date-controls{display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:var(--surface-soft);padding:4px}.meal-date-controls button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:999px;color:var(--text);padding:0 12px;font-weight:900}.meal-date-controls button:hover,.meal-date-controls button:focus-visible{background:var(--surface)}.meals-view .wide-panel{width:100%;max-width:none}.meals-view.has-meal-drawer .wide-panel{max-width:980px}.meal-day,.recipe-card,.sleep-card,.mini-card{border-radius:var(--radius);background:var(--surface-soft);padding:13px}.meal-day{display:grid;align-content:start}.meal-day.is-today{background:linear-gradient(135deg,color-mix(in srgb,var(--accent),transparent 88%),transparent 62%),var(--surface-soft);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent),transparent 48%)}.meal-day h3,.recipe-card h3{margin-bottom:10px;font-family:var(--font-display);font-weight:600}.meal-slot{width:100%;min-height:76px;display:grid;gap:8px;align-content:start;border-radius:7px;background:transparent;color:var(--text);padding:10px 8px;border-top:1px solid var(--line);text-align:left}.meal-slot:hover,.meal-slot:focus-visible{background:color-mix(in srgb,var(--surface),var(--accent) 7%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 40%)}.meal-slot strong{min-width:0;color:var(--muted);font-size:18px;line-height:1.15;overflow-wrap:anywhere}.meal-slot.has-meal strong{color:var(--text)}.meal-slot.is-current-slot{background:color-mix(in srgb,var(--accent),var(--surface) 84%);box-shadow:inset 4px 0 0 var(--accent),inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 42%)}.meal-slot.is-current-slot>small{color:var(--accent-strong);font-weight:1000}.meal-slot-list{display:grid;gap:7px}.meal-slot-item{display:grid;gap:3px;border-radius:7px;background:color-mix(in srgb,var(--surface),transparent 4%);padding:8px}.meal-slot-title{min-width:0;display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:6px}.meal-slot-title strong{overflow-wrap:anywhere}.meal-profile-summary{color:var(--muted);font-size:11px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meal-slot small,.recipe-card small,.mini-card small,.sleep-row small{color:var(--muted);text-transform:capitalize}.meal-assignment-panel,.assigned-meals{display:grid;gap:10px;border-radius:var(--radius);background:var(--surface-soft);padding:12px}.mini-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.mini-section-head strong{font-weight:900}.mini-section-head small{color:var(--muted);font-size:12px;font-weight:800}.profile-toggle-row{display:flex;flex-wrap:wrap;gap:8px}.profile-toggle-row button{min-height:40px;display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:var(--surface);color:var(--muted);padding:6px 11px 6px 6px;font-weight:900}.profile-toggle-row button>.profile-avatar,.profile-mini-row button>.profile-avatar,.profile-mini-row button{width:27px;height:27px;display:grid;place-items:center;background:color-mix(in srgb,var(--profile),var(--surface) 56%);color:var(--event-text);font-size:12px;font-weight:900;border-radius:50%;line-height:1}.profile-toggle-row button.is-active{color:var(--text);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--profile),var(--accent) 18%)}.assigned-meal-card{display:grid;grid-template-columns:46px minmax(0,1fr) 34px;align-items:center;gap:10px;border-radius:var(--radius);background:var(--surface);padding:10px}.assigned-meal-sticker{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--surface-soft);font-size:24px}.assigned-meal-card strong{display:block;min-width:0;margin-bottom:7px;overflow-wrap:anywhere}.profile-mini-row{display:flex;flex-wrap:wrap;gap:5px}.profile-mini-row button{flex:0 0 27px;aspect-ratio:1;padding:0;opacity:.42;overflow:hidden}.profile-mini-row button>.profile-avatar{width:100%;height:100%;border-radius:inherit}.profile-mini-row button.is-active{opacity:1;box-shadow:0 0 0 2px var(--surface),0 0 0 4px color-mix(in srgb,var(--profile),var(--accent) 18%)}.recipe-category-stack{display:grid;gap:14px}.recipe-category-group{display:grid;gap:0}.recipe-category-head{min-height:64px;width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid var(--line);border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft),var(--accent) 4%);color:var(--text);padding:12px 16px;text-align:left;transition:background .18s ease,border-color .18s ease,transform .18s ease}.recipe-category-head:hover,.recipe-category-head:focus-visible{border-color:color-mix(in srgb,var(--accent),transparent 30%);background:color-mix(in srgb,var(--surface-soft),var(--accent) 9%);transform:translateY(-1px)}.recipe-category-head>span{display:grid;gap:2px;min-width:0}.recipe-category-head strong{overflow:hidden;font-size:20px;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.recipe-category-head small{color:var(--muted);font-size:12px;font-weight:900}.recipe-category-head svg{flex:0 0 auto;color:var(--muted);transition:transform .18s ease}.recipe-category-head svg.is-open{transform:rotate(90deg)}.recipe-category-body{display:grid;grid-template-rows:0fr;margin-top:0;opacity:0;overflow:hidden;pointer-events:none;transform:translateY(-7px);transition:grid-template-rows .28s cubic-bezier(.2,.88,.25,1),margin-top .28s cubic-bezier(.2,.88,.25,1),opacity .2s ease,transform .28s cubic-bezier(.2,.88,.25,1)}.recipe-category-body.is-open{grid-template-rows:1fr;margin-top:12px;opacity:1;pointer-events:auto;transform:translateY(0)}.recipe-category-body-inner{min-height:0;overflow:hidden}.recipe-new-sticky-button{position:static;width:fit-content;min-height:48px;display:flex;align-items:center;justify-self:end;gap:8px;margin:0;border:1px solid color-mix(in srgb,var(--accent),var(--line) 26%);border-radius:999px;background:color-mix(in srgb,var(--accent),var(--surface) 18%);color:#244b49;padding:0 20px;font-weight:1000;box-shadow:0 16px 34px #09171e2e}:root[data-theme=dark] .recipe-new-sticky-button{background:#9ed9d0;border-color:#9ed9d0;color:#20393a}.recipe-new-sticky-button:hover,.recipe-new-sticky-button:focus-visible{background:color-mix(in srgb,var(--accent),var(--surface) 8%);transform:translateY(-2px)}:root[data-theme=dark] .recipe-new-sticky-button:hover,:root[data-theme=dark] .recipe-new-sticky-button:focus-visible{background:#b7e7df;border-color:#b7e7df}.recipe-card{content-visibility:auto;contain-intrinsic-size:148px;position:relative;width:100%;display:grid;grid-template-columns:56px minmax(0,1fr);align-content:center;gap:12px;min-height:132px;color:var(--text);text-align:left;align-self:start}.recipe-card[role=button]{cursor:pointer}.recipe-card.is-overlay-source{background:color-mix(in srgb,var(--surface-soft),var(--accent) 7%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 32%),0 12px 24px #09171e1a}.recipe-card.is-highlighted-import{background:color-mix(in srgb,var(--accent),var(--surface-soft) 78%);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent),transparent 18%),0 0 0 5px color-mix(in srgb,var(--accent),transparent 78%),0 18px 34px #09171e24;animation:recipe-import-card-highlight 1.5s ease-in-out 2}.recipe-card.has-image{grid-template-columns:56px minmax(0,1fr)}.recipe-card.is-expanded{content-visibility:visible;contain-intrinsic-size:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft),var(--accent) 7%),var(--surface-soft) 62%),var(--surface-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 34%),0 18px 34px #09171e1f}.recipe-card:hover,.recipe-card:focus-visible{background:color-mix(in srgb,var(--surface-soft),var(--accent) 7%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 36%),0 14px 26px #09171e1c}.recipe-card:focus-visible{outline:0}@keyframes recipe-import-card-highlight{0%,to{transform:translateY(0)}45%{transform:translateY(-3px)}}.recipe-emoji{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--surface),var(--accent) 8%);font-size:30px}.recipe-card-copy{min-width:0;align-self:center;display:grid;gap:6px}.recipe-card-image{grid-column:1 / -1;width:100%;min-height:150px;max-height:230px;aspect-ratio:16 / 9;border-radius:14px;object-fit:cover;align-self:end;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line),transparent 24%)}.recipe-card-copy h3{display:-webkit-box;max-width:100%;margin-bottom:0;overflow:hidden;font-size:23px;line-height:1.06;overflow-wrap:normal;text-overflow:ellipsis;word-break:normal;-webkit-box-orient:vertical;-webkit-line-clamp:3}.recipe-card-copy small{min-width:0;overflow:hidden;font-size:12px;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.recipe-ingredient-preview{grid-column:1 / -1;display:none;flex-wrap:wrap;gap:6px;margin:2px 0 0;padding:0;list-style:none}.recipe-ingredient-preview li{max-width:100%;overflow:hidden;display:inline-flex;align-items:center;min-height:30px;border-radius:999px;background:color-mix(in srgb,var(--surface-soft),var(--surface) 42%);color:var(--muted);padding:7px 13px;font-size:13px;font-weight:900;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.recipe-overlay-ingredient-section{display:grid;gap:10px}.recipe-overlay-ingredient-section.has-many{border:1px solid color-mix(in srgb,var(--line),transparent 22%);border-radius:14px;background:color-mix(in srgb,var(--surface-soft),var(--surface) 54%);padding:10px}.recipe-overlay-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap}.recipe-overlay-section-head>span{min-width:0;display:grid;gap:2px}.recipe-overlay-section-head strong{color:var(--text);font-size:15px;font-weight:1000}.recipe-overlay-section-head small{color:var(--muted);font-size:12px;font-weight:900}.recipe-overlay-ingredients-toggle{min-height:30px;border-radius:999px;background:color-mix(in srgb,var(--accent),var(--surface) 82%);color:var(--accent-strong);padding:0 11px;font-size:12px;font-weight:1000;white-space:nowrap}.recipe-overlay-ingredients-toggle:hover,.recipe-overlay-ingredients-toggle:focus-visible{background:color-mix(in srgb,var(--accent),var(--surface) 68%)}.recipe-overlay-ingredients{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.recipe-overlay-ingredient-section.is-expanded .recipe-overlay-ingredients{max-height:min(28dvh,220px);overflow:auto;padding-right:4px;overscroll-behavior:contain}.recipe-overlay-ingredients li{max-width:100%;min-height:34px;display:inline-flex;align-items:center;border:1px solid color-mix(in srgb,var(--line),transparent 18%);border-radius:999px;background:color-mix(in srgb,var(--accent),var(--surface) 82%);color:var(--accent-strong);padding:7px 13px;font-size:13px;font-weight:950;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-overlay-ingredients li.recipe-overlay-ingredient-overflow{border-style:dashed;background:color-mix(in srgb,var(--surface-soft),var(--surface) 34%);color:var(--muted)}.recipe-step-preview{grid-column:1 / -1;display:none;margin:4px 0 0;padding-left:28px;color:var(--muted);line-height:1.45}.recipe-step-preview li{padding-left:4px}.recipe-more-steps{grid-column:1 / -1;display:none;margin-top:5px;color:var(--accent-strong);font-weight:1000;line-height:1.2}.recipe-expanded-panel{grid-column:1 / -1;display:grid;gap:12px;border-top:1px solid color-mix(in srgb,var(--line),transparent 16%);margin-top:2px;padding-top:14px}.recipe-expanded-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.recipe-expanded-head>span{min-width:0;display:grid;gap:2px}.recipe-expanded-head strong{font-size:15px;font-weight:1000}.recipe-expanded-head small{color:var(--muted);font-size:12px;font-weight:900}.recipe-expanded-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.recipe-expanded-edit{min-height:38px;display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:color-mix(in srgb,var(--accent),var(--surface) 74%);color:var(--accent-strong);padding:0 13px;font-weight:1000;white-space:nowrap}.recipe-expanded-delete{min-height:38px;display:inline-flex;align-items:center;gap:7px;border-radius:999px;background:color-mix(in srgb,var(--danger),var(--surface) 82%);color:var(--danger);padding:0 13px;font-weight:1000;white-space:nowrap}.recipe-expanded-edit:hover,.recipe-expanded-edit:focus-visible{background:color-mix(in srgb,var(--accent),var(--surface) 62%);box-shadow:0 8px 18px #09171e1a}.recipe-expanded-delete:hover,.recipe-expanded-delete:focus-visible{background:color-mix(in srgb,var(--danger),var(--surface) 74%);box-shadow:0 8px 18px color-mix(in srgb,var(--danger),transparent 84%)}.recipe-expanded-steps{display:grid;gap:9px;margin:0;padding:0;list-style:none}.recipe-expanded-step{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:start;gap:10px;border:1px solid color-mix(in srgb,var(--line),transparent 12%);border-radius:12px;background:color-mix(in srgb,var(--surface),var(--surface-soft) 35%);padding:10px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.recipe-expanded-step.is-clickable{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation}.recipe-expanded-step.is-clickable:hover,.recipe-expanded-step.is-clickable:focus-visible,.recipe-expanded-step.is-preview-open{border-color:color-mix(in srgb,var(--accent),var(--line) 44%);background:color-mix(in srgb,var(--accent),var(--surface) 86%);box-shadow:0 10px 24px #09171e14;outline:0}.recipe-expanded-step.is-clickable:active{transform:translateY(1px)}.recipe-expanded-step-number{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;width:30px;height:30px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--accent),var(--surface) 72%);color:var(--accent-strong);font-size:13px;font-weight:1000;line-height:1}.recipe-expanded-step-number.is-clickable{box-shadow:0 0 0 2px color-mix(in srgb,var(--accent),transparent 78%)}.recipe-expanded-step.is-clickable:hover .recipe-expanded-step-number,.recipe-expanded-step.is-clickable:focus-visible .recipe-expanded-step-number,.recipe-expanded-step.is-preview-open .recipe-expanded-step-number,.recipe-expanded-step.is-preview-loading .recipe-expanded-step-number{background:color-mix(in srgb,var(--accent),var(--surface) 56%);outline:0}.recipe-step-loading-icon{animation:auth-spin .8s linear infinite}.recipe-expanded-step p{color:var(--text);font-size:14px;font-weight:850;line-height:1.45;overflow-wrap:anywhere}.recipe-step-loop-preview{grid-column:1 / -1;border:1px solid color-mix(in srgb,var(--line),transparent 10%);border-radius:12px;background:#10181c;overflow:hidden;animation:recipe-step-preview-in .22s ease both;transform-origin:top center}.recipe-step-loop-preview video{width:100%;display:block;aspect-ratio:16 / 9;object-fit:cover}.recipe-step-loop-preview span{min-height:120px;display:grid;grid-auto-flow:column;gap:8px;place-items:center;justify-content:center;color:color-mix(in srgb,#ffffff,transparent 22%);font-size:13px;font-weight:900}@keyframes recipe-step-preview-in{0%{opacity:0;transform:translateY(-6px) scaleY(.96)}to{opacity:1;transform:translateY(0) scaleY(1)}}.recipe-step-overlay-backdrop,.recipe-form-overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 42%,rgba(255,255,255,.22),transparent 34%),#0f1b1f7a;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:recipe-backdrop-in .2s var(--ease) both}.recipe-step-overlay-backdrop{z-index:86}.recipe-form-overlay-backdrop{z-index:92}.recipe-step-overlay{position:fixed;top:50%;left:50%;width:min(560px,calc(100vw - 32px));max-height:min(78dvh,720px);display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden;border:1px solid color-mix(in srgb,var(--line),var(--accent) 28%);border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface),var(--accent) 6%),var(--surface) 54%),var(--surface);box-shadow:0 28px 70px #09171e47;transform:translate(-50%,-50%);transform-origin:center;animation:recipe-overlay-in .34s cubic-bezier(.2,.9,.22,1) both}.recipe-form-overlay{position:fixed;top:50%;left:50%;width:min(760px,calc(100vw - 32px));max-height:min(88dvh,860px);min-height:min(560px,calc(100dvh - 44px));display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid color-mix(in srgb,var(--line),var(--accent) 28%);border-radius:22px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface),var(--accent) 5%),var(--surface) 54%),var(--surface);box-shadow:0 28px 70px #09171e4d;transform:translate(-50%,-50%);animation:recipe-overlay-in .28s cubic-bezier(.2,.9,.22,1) both}.recipe-step-overlay-head{display:grid;grid-template-columns:58px minmax(0,1fr) 42px;align-items:center;gap:13px;padding:18px 18px 14px;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 18%)}.recipe-form-overlay-head{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid color-mix(in srgb,var(--line),transparent 18%);background:color-mix(in srgb,var(--surface),var(--surface-soft) 24%);padding:16px 18px}.recipe-form-overlay-head>div{min-width:0}.recipe-form-overlay-head small{color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase}.recipe-form-overlay-head h2{display:flex;align-items:center;gap:8px;min-width:0;margin-top:2px;font-size:30px;overflow-wrap:anywhere;word-break:break-word}.recipe-step-overlay-head>div{min-width:0}.recipe-step-overlay-head small{display:block;color:var(--muted);font-size:13px;font-weight:950;margin-bottom:2px}.recipe-step-overlay-head h3{overflow-wrap:anywhere;line-height:1.05}.recipe-overlay-close{justify-self:end}.recipe-step-overlay-content{min-height:0;display:grid;align-content:start;gap:14px;overflow:auto;overscroll-behavior:contain;padding:16px 18px 18px}.recipe-form-overlay-body{min-height:0;display:grid;align-content:start;gap:15px;overflow:auto;overscroll-behavior:contain;padding:16px 18px 20px}.recipe-form-overlay-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;border-top:1px solid color-mix(in srgb,var(--line),transparent 18%);background:color-mix(in srgb,var(--surface),var(--surface-soft) 22%);padding:12px 18px max(12px,env(safe-area-inset-bottom))}.recipe-editor-delete-button{margin-right:auto}.recipe-source-badge{width:fit-content;max-width:100%;min-height:24px;display:inline-flex;align-items:center;gap:7px;border:1px solid color-mix(in srgb,var(--line),transparent 15%);border-radius:999px;background:color-mix(in srgb,var(--surface),var(--surface-soft) 45%);color:var(--muted);padding:3px 9px;font-size:12px;font-weight:1000;line-height:1;text-decoration:none;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}.recipe-source-badge:hover{border-color:color-mix(in srgb,var(--accent),var(--line) 35%);background:color-mix(in srgb,var(--accent-soft),var(--surface) 58%);color:var(--text);transform:translateY(-1px)}.recipe-source-badge:focus-visible{outline:3px solid color-mix(in srgb,var(--accent),transparent 58%);outline-offset:2px}.recipe-source-badge span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recipe-source-badge img,.recipe-source-badge svg{width:14px;height:14px;display:block;flex:0 0 auto;object-fit:contain}.recipe-source-badge svg{color:currentColor}.recipe-create-mode{margin-bottom:2px}.recipe-import-panel{display:grid;gap:14px;border:1px solid color-mix(in srgb,var(--line),transparent 12%);border-radius:18px;background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft),var(--surface) 42%),var(--surface) 78%),var(--surface);padding:14px}.recipe-import-panel.has-qr{grid-template-columns:minmax(0,1fr) minmax(184px,218px);align-items:start;gap:12px 18px}.recipe-import-panel.has-qr .recipe-import-card-head,.recipe-import-panel.has-qr .recipe-import-url-row{grid-column:1 / -1}.recipe-import-panel.has-qr .recipe-import-card-head{min-height:0}.recipe-import-card-head{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px}.recipe-import-card-icon{width:46px;height:46px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent),transparent 48%);border-radius:16px;background:color-mix(in srgb,var(--accent-soft),var(--surface) 38%);color:color-mix(in srgb,var(--accent),var(--text) 38%)}.recipe-import-card-head strong,.recipe-import-qr-copy strong{display:block;color:var(--text);font-size:15px;font-weight:1000;line-height:1.15}.recipe-import-card-head small,.recipe-import-qr-copy small{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:850;line-height:1.25}.recipe-import-url-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(122px,auto);align-items:end;gap:10px}.recipe-import-url-field{min-width:0}.recipe-import-url-label{display:flex;align-items:center;justify-content:space-between;gap:8px}.recipe-import-url-label em{max-width:42%;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--accent-soft),var(--surface) 44%);color:var(--text);padding:3px 8px;font-size:11px;font-style:normal;font-weight:950;line-height:1;text-overflow:ellipsis;white-space:nowrap}.recipe-import-qr-button{min-height:46px;align-self:end;border:1px solid color-mix(in srgb,var(--line),transparent 12%);padding-inline:13px}.recipe-import-start-button{min-width:122px;min-height:46px;align-self:end;padding:0 16px}.recipe-import-status{display:flex;align-items:center;gap:12px;border:1px solid color-mix(in srgb,var(--line),transparent 12%);border-radius:12px;background:color-mix(in srgb,var(--surface-soft),var(--surface) 35%);color:var(--muted);padding:11px 13px;font-size:14px;font-weight:850;line-height:1.35}.recipe-import-status.is-busy{min-height:66px;border-width:2px;border-color:color-mix(in srgb,var(--accent),var(--line) 18%);border-radius:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--accent-soft),var(--surface) 22%),color-mix(in srgb,var(--surface),var(--accent) 12%)),var(--surface);color:var(--text);box-shadow:0 14px 30px #09171e1f,inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 68%);font-size:15px}.recipe-import-status.is-processing,.recipe-import-status.is-pending{border-color:color-mix(in srgb,var(--accent),var(--line) 30%);background:color-mix(in srgb,var(--accent-soft),var(--surface) 48%);color:var(--text)}.recipe-import-status.is-completed{border-color:color-mix(in srgb,#5cb85c,var(--line) 30%);background:color-mix(in srgb,#5cb85c,var(--surface) 84%);color:#246b2a}.recipe-import-status.is-error,.recipe-import-status.is-expired{border-color:color-mix(in srgb,#d9534f,var(--line) 30%);background:color-mix(in srgb,#d9534f,var(--surface) 88%);color:#9f2724}.recipe-import-loading-icon{flex:0 0 auto;animation:auth-spin .8s linear infinite}.recipe-import-status.is-busy .recipe-import-loading-icon{width:30px;height:30px;padding:4px;border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 8%);color:var(--text);stroke-width:2.8;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 76%)}.recipe-import-start-button .recipe-import-loading-icon,.recipe-import-qr-button .recipe-import-loading-icon{width:20px;height:20px;stroke-width:2.8}.recipe-import-progress{display:grid;gap:8px;border:1px solid color-mix(in srgb,var(--accent),var(--line) 42%);border-radius:16px;background:color-mix(in srgb,var(--surface),var(--surface-soft) 30%);padding:10px 11px}.recipe-import-progress-head{display:flex;align-items:center;gap:9px}.recipe-import-progress-head .recipe-import-loading-icon{width:24px;height:24px;padding:3px;border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 8%);color:var(--text);stroke-width:2.8;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent),transparent 78%)}.recipe-import-progress-head strong{color:var(--text);font-size:14px;font-weight:1000;line-height:1.2}.recipe-import-progress ol{display:grid;gap:6px;margin:0;padding:0;list-style:none}.recipe-import-progress li{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:center;gap:8px;color:var(--muted);font-size:11px;font-weight:850;line-height:1.3}.recipe-import-progress li span{width:22px;height:22px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--surface-soft),var(--surface) 30%);color:var(--muted);font-size:12px;font-weight:1000}.recipe-import-progress li.is-active{color:var(--text)}.recipe-import-progress li.is-active span{background:color-mix(in srgb,var(--accent),var(--surface) 36%);color:#1f3436}.recipe-import-qr-card{width:min(218px,100%);display:grid;justify-self:center;justify-items:center;gap:8px;border:0;background:transparent;padding:2px 0 0;box-shadow:none;text-align:center}.recipe-import-qr-card img{order:2;width:min(176px,100%);height:auto;display:block;border:7px solid #ffffff;border-radius:15px;background:#fff;box-shadow:0 16px 32px #09171e2e}.recipe-import-qr-copy{order:1}.recipe-import-qr-copy strong{font-size:13px}.recipe-import-qr-copy small{font-size:11px}.recipe-import-review-overlay .recipe-source-badge{margin-top:8px}.recipe-import-notes{display:grid;gap:8px;border:1px solid color-mix(in srgb,var(--line),transparent 10%);border-radius:14px;background:color-mix(in srgb,var(--surface-soft),var(--surface) 45%);padding:12px 14px}.recipe-import-notes strong{font-size:14px;font-weight:1000}.recipe-import-notes ul{display:grid;gap:6px;margin:0;padding-left:18px;color:var(--muted);font-size:13px;font-weight:800;line-height:1.35}.recipe-overlay-ingredients{margin-top:0}@keyframes recipe-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes recipe-overlay-in{0%{opacity:.68;transform:translate(calc(-50% + var(--recipe-origin-x, 0px)),calc(-50% + var(--recipe-origin-y, 24px))) scale(var(--recipe-origin-scale, .78))}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.recipe-create-panel{align-self:start}.recipe-create-panel .stack-form{border-radius:var(--radius);background:var(--surface-soft);padding:12px}.recipe-emoji-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(38px,1fr));gap:6px;max-height:108px;overflow:auto;border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft),var(--surface) 28%);padding:6px}.recipe-emoji-picker button{min-height:36px;border-radius:12px;background:var(--surface);font-size:19px;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.recipe-emoji-picker button:hover,.recipe-emoji-picker button:focus-visible{background:color-mix(in srgb,var(--surface),var(--accent) 11%);transform:translateY(-1px)}.recipe-emoji-picker button.is-active{background:color-mix(in srgb,var(--accent),var(--surface) 74%);box-shadow:inset 0 0 0 2px var(--accent),0 8px 18px #09171e1f}.recipe-editor-emoji-picker{max-height:108px}.recipe-image-preview{display:grid;gap:10px;border-radius:var(--radius);background:color-mix(in srgb,var(--surface-soft),var(--surface) 28%);padding:10px}.recipe-image-preview img{width:100%;max-height:160px;border-radius:12px;object-fit:cover}.recipe-image-preview.large img{max-height:220px}.recipe-image-preview button{justify-self:start;min-height:34px;border-radius:999px;background:color-mix(in srgb,var(--danger),transparent 84%);color:color-mix(in srgb,var(--danger),var(--text) 18%);padding:0 12px;font-weight:900}.recipe-image-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.recipe-image-action-button{min-height:40px;width:100%;display:grid;place-items:center;border-radius:12px;background:var(--surface-soft);color:var(--text);font-size:13px;font-weight:900;cursor:pointer}.recipe-image-action-button:hover,.recipe-image-action-button:focus-visible{background:color-mix(in srgb,var(--surface-soft),var(--accent) 10%)}.visually-hidden-file-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;border:0;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.recipe-pick-list{display:grid;gap:8px}.custom-meal-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.recipe-pick-list button{min-height:62px;display:grid;grid-template-columns:42px minmax(0,1fr);gap:2px 10px;align-items:center;border-radius:var(--radius);background:var(--surface-soft);color:var(--text);padding:10px;text-align:left}.recipe-pick-list button:hover,.recipe-pick-list button:focus-visible{background:color-mix(in srgb,var(--surface-soft),var(--accent) 10%)}.recipe-pick-list button>span{grid-row:span 2;width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--surface);font-size:22px}.recipe-step-editor{display:grid;gap:10px}.step-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.step-editor-head>span{color:var(--muted);font-size:12px;font-weight:800}.step-editor-head button{min-height:36px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:var(--surface-soft);color:var(--text);padding:0 12px;font-weight:900}.recipe-step-list,.recipe-ingredient-list{display:grid;gap:8px}.recipe-ingredient-row{display:grid;grid-template-columns:78px 122px minmax(0,1fr) 34px;align-items:center;gap:6px;background:var(--surface-soft)}.recipe-ingredient-row input{min-height:40px;background:var(--surface)}.recipe-ingredient-row .custom-select{min-width:0}.recipe-ingredient-row .custom-select-trigger{min-height:40px;padding:8px 10px}.recipe-ingredient-row button{height:34px;display:grid;place-items:center;background:var(--surface);color:var(--muted)}.recipe-ingredient-row button:hover,.recipe-ingredient-row button:focus-visible{color:var(--danger)}.empty-note.compact{min-height:44px;margin:0;padding:12px}.recipe-step-row{display:grid;grid-template-columns:30px minmax(0,1fr) 34px 34px 34px;align-items:center;gap:6px;border-radius:var(--radius);background:var(--surface-soft);padding:8px}.step-number{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--muted);font-weight:900}.recipe-step-row input{min-height:40px;background:var(--surface)}.recipe-step-row button{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--muted)}.mini-card{display:grid;grid-template-columns:34px minmax(0,1fr);gap:4px 9px}.mini-card small{grid-column:2}.sleep-row,.settings-status-row,.profile-settings-row{display:grid;grid-template-columns:minmax(96px,auto) minmax(124px,1fr) auto;align-items:center;gap:9px;border-top:1px solid var(--line);padding:10px 0}.sleep-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:5px 10px}.sleep-row span,.sleep-row small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sleep-row strong{grid-column:1 / -1;min-width:0;overflow:visible;white-space:normal;font-size:clamp(17px,1.7vw,21px);line-height:1.15}.sleep-view{grid-template-columns:minmax(0,1fr)}.sleep-card{width:100%;min-height:178px;display:grid;align-content:start;gap:8px;border:0;color:var(--text);text-align:left}.sleep-card:hover,.sleep-card:focus-visible{transform:translateY(-2px);box-shadow:0 14px 28px color-mix(in srgb,var(--ink),transparent 92%)}.sleep-card.is-empty{color:var(--muted)}.sleep-empty{color:var(--muted);font-weight:900}.sleep-session-pill{justify-self:start;border-radius:999px;background:color-mix(in srgb,var(--accent),transparent 86%);color:var(--accent-strong);padding:5px 9px;font-size:12px;font-weight:900}.sleep-quick-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sleep-action-button{min-height:54px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:var(--radius);background:var(--surface-soft);color:var(--text);padding:0 12px;font-weight:900}.sleep-action-button:disabled{opacity:.55}.sleep-dialog{width:min(680px,100%);max-height:calc(100vh - 40px);overflow:auto}.sleep-dialog-profile{display:flex;align-items:center;gap:11px;border-radius:var(--radius);background:var(--surface-soft);padding:12px}.sleep-dialog-profile .avatar{width:42px;height:42px}.sleep-dialog-profile strong,.sleep-dialog-profile small{display:block}.sleep-dialog-profile small{color:var(--muted);font-weight:800}.sleep-manual-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.sleep-manual-form .primary-button{grid-column:span 2}.sleep-entry-list{display:grid;gap:10px;border-top:1px solid var(--line);padding-top:12px}.sleep-entry-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border-radius:var(--radius);background:var(--surface-soft);padding:12px}.sleep-entry-card strong,.sleep-entry-card span,.sleep-entry-card small{display:block;min-width:0}.sleep-entry-card span{margin-top:4px;font-weight:900}.sleep-entry-card small{margin-top:3px;color:var(--muted);font-weight:800}.sleep-entry-actions{display:flex;gap:7px}.sleep-entry-actions button{width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:var(--surface);color:var(--muted)}.sleep-entry-actions button:hover,.sleep-entry-actions button:focus-visible{color:var(--accent-strong)}.sleep-empty-entry{border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);padding:14px;font-weight:800}.sleep-chart{display:grid;gap:12px;margin-top:18px;border-radius:var(--radius);background:linear-gradient(180deg,color-mix(in srgb,var(--surface-soft),#ffffff 24%),var(--surface-soft)),var(--surface-soft);padding:14px;overflow:hidden;font-family:var(--font-ui)}.sleep-chart-head{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px}.sleep-chart-head>div:first-child strong{display:block;font-family:var(--font-ui);font-size:clamp(26px,3.2vw,36px);line-height:1;letter-spacing:0;color:var(--text);font-weight:1000}.sleep-chart-head>div:first-child small{display:block;margin-top:5px;color:var(--muted);font-weight:900;font-size:12px}.sleep-chart-profile-row{display:flex;align-items:center;gap:8px}.sleep-chart-profile-row button{width:42px;height:42px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:color-mix(in srgb,var(--profile),white 36%);color:#172126;padding:0;font-size:17px;font-weight:1000;transition:transform var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}.sleep-chart-profile-row button:hover,.sleep-chart-profile-row button:focus-visible,.sleep-chart-profile-row button.is-active{transform:translateY(-1px);box-shadow:0 0 0 4px color-mix(in srgb,var(--profile),transparent 28%),inset 0 0 0 2px color-mix(in srgb,var(--profile),#172126 18%)}.sleep-chart-profile-row .profile-avatar{width:100%;height:100%;box-shadow:none}.sleep-chart-profile-row img{width:100%;height:100%;object-fit:cover}.sleep-chart-moon{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:#26576a;color:#fff;box-shadow:0 14px 28px color-mix(in srgb,#26576a,transparent 72%)}.sleep-bars-plot{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;align-items:stretch;min-height:210px}.sleep-y-axis{display:grid;grid-template-rows:repeat(5,1fr);align-items:center;color:var(--muted);font-size:13px;font-weight:900}.sleep-plot-area{position:relative;min-height:210px;border-bottom:2px solid color-mix(in srgb,var(--text),transparent 72%)}.sleep-grid-line,.sleep-average-line{position:absolute;left:0;right:0;pointer-events:none}.sleep-grid-line{height:1px;background:color-mix(in srgb,var(--text),transparent 78%);opacity:1}.sleep-average-line{z-index:2;height:2px;border-radius:999px;background:color-mix(in srgb,var(--accent),transparent 12%);opacity:.85}.sleep-bar-columns{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(7,minmax(34px,1fr));align-items:end;gap:clamp(8px,2.2vw,30px);padding:0 10px}.sleep-bar-column{position:relative;height:100%;display:grid;align-items:end;justify-items:center}.sleep-bar-column.is-empty:after{content:"";width:9px;height:9px;margin-bottom:6px;border-radius:50%;background:color-mix(in srgb,#7897a6,transparent 48%)}.sleep-bar{width:min(34px,72%);min-height:12px;display:block;border-radius:999px 999px 0 0;background:linear-gradient(180deg,#2dd5df,color-mix(in srgb,var(--profile),#007fa1 42%));box-shadow:0 8px 18px color-mix(in srgb,var(--profile),transparent 62%)}.sleep-bar.tired{background:linear-gradient(180deg,#f0c66d,#c5914c)}.sleep-x-axis{display:grid;grid-template-columns:repeat(7,minmax(34px,1fr));gap:clamp(8px,2.2vw,30px);margin-left:50px;padding:0 10px;color:var(--muted);font-size:12px;font-weight:900}.sleep-x-axis span{display:grid;justify-items:center;gap:1px}.sleep-x-axis strong,.sleep-x-axis small{font:inherit}.sleep-chart-empty{margin:0;border-radius:var(--radius);background:color-mix(in srgb,var(--surface),transparent 18%);color:var(--muted);padding:12px;font-weight:900}.sleep-prompt{position:relative;width:min(540px,calc(100vw - 40px));overflow:hidden;gap:16px;padding:24px;background:radial-gradient(circle at 16% 12%,color-mix(in srgb,#ffe08a,transparent 34%),transparent 34%),radial-gradient(circle at 86% 16%,color-mix(in srgb,var(--accent),transparent 72%),transparent 30%),var(--surface)}.sleep-prompt.is-good{border-color:color-mix(in srgb,#e3b64b,var(--line) 42%)}.sleep-prompt.is-check{border-color:color-mix(in srgb,var(--accent),var(--line) 42%)}.sleep-prompt-hero{position:relative;z-index:1;display:flex;align-items:center;gap:14px}.sleep-prompt-icon{width:66px;height:66px;display:grid;place-items:center;flex:0 0 66px;border-radius:24px;background:color-mix(in srgb,#fff1bb,var(--surface) 12%);box-shadow:0 12px 28px color-mix(in srgb,#f0bd55,transparent 72%),inset 0 0 0 1px #ffffffa6;font-size:34px;animation:prompt-pop .36s var(--ease)}.sleep-prompt-hero small{display:block;color:var(--accent-strong);font-size:12px;font-weight:1000;letter-spacing:.06em;text-transform:uppercase}.sleep-prompt h2{margin:2px 0 0;font-size:clamp(30px,4vw,42px);line-height:1}.sleep-prompt p{position:relative;z-index:1;max-width:42ch;margin:0;color:var(--text);font-size:18px;line-height:1.4}.sleep-prompt-meter{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,1fr);gap:6px;padding:8px;border-radius:999px;background:color-mix(in srgb,var(--surface-soft),transparent 20%)}.sleep-prompt-meter span{height:10px;border-radius:999px;background:color-mix(in srgb,var(--accent),#fff 18%)}.sleep-prompt-meter span:nth-child(1),.sleep-prompt-meter span:nth-child(2){background:color-mix(in srgb,#e3b64b,#fff 16%)}.sleep-prompt-actions{position:relative;z-index:1;justify-content:flex-start}.sleep-prompt-actions .pill-button,.sleep-prompt-actions .primary-button{min-height:48px;padding-inline:18px}.sleep-prompt-burst span{position:absolute;border-radius:999px;background:color-mix(in srgb,var(--accent),transparent 82%);animation:prompt-float 5s ease-in-out infinite}.sleep-prompt-burst span:nth-child(1){right:24px;top:22px;width:54px;height:54px}.sleep-prompt-burst span:nth-child(2){right:92px;bottom:22px;width:28px;height:28px;animation-delay:-1.4s}.sleep-prompt-burst span:nth-child(3){left:24px;bottom:28px;width:18px;height:18px;animation-delay:-2.3s}.profile-editor-list{display:grid;gap:9px;margin-bottom:12px}.profile-summary-card{display:grid;grid-template-columns:50px minmax(0,1fr) auto 40px;align-items:center;gap:10px;border-radius:var(--radius);background:var(--surface-soft);padding:10px}.profile-summary-card strong,.profile-summary-card small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-summary-card strong{font-size:16px}.profile-summary-card small{color:var(--muted);font-size:12px;font-weight:800}.profile-image-preview{width:46px;height:46px;display:grid;place-items:center;overflow:hidden;border-radius:50%;background:color-mix(in srgb,var(--profile),var(--surface) 56%);color:var(--event-text);font-size:20px;font-weight:900}.profile-image-preview img{width:100%;height:100%;object-fit:cover}.profile-editor-fields{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:9px}.profile-drawer-preview{width:96px;height:96px;display:grid;place-items:center;justify-self:start;overflow:hidden;border-radius:50%;background:color-mix(in srgb,var(--profile),var(--surface) 56%);color:var(--event-text);font-size:40px;font-weight:900;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--surface),transparent 32%)}.profile-drawer-preview img{width:100%;height:100%;object-fit:cover}.profile-image-field,.avatar-preset-row,.profile-color-field,.profile-google-photo-button,.profile-generate-button{grid-column:1 / -1}.profile-color-field{display:grid;gap:8px}.profile-color-field>span{color:var(--muted);font-size:13px;font-weight:900}.profile-color-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.profile-color-row>button{width:38px;height:38px;border-radius:50%;background:var(--profile);box-shadow:inset 0 0 0 2px #ffffff94,0 0 0 1px var(--line)}.profile-color-row>button.is-active{box-shadow:inset 0 0 0 2px #ffffffc7,0 0 0 3px var(--surface),0 0 0 5px var(--profile)}.profile-custom-color{min-height:38px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);padding:4px 10px;font-size:12px;font-weight:900}.profile-custom-color input{width:28px;height:28px;min-height:28px;border:0;border-radius:50%;background:transparent;padding:0}.profile-google-photo-button{min-height:40px;border-radius:999px;background:var(--surface);color:var(--text);font-weight:900}.avatar-preset-row{display:flex;flex-wrap:wrap;gap:6px}.avatar-preset-row button{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--surface)}.profile-generate-button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:999px;background:var(--surface);color:var(--text);padding:0 12px;font-weight:900}.theme-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.theme-choice-card{min-height:72px;display:grid;place-items:center;gap:6px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);padding:10px;text-align:center}.theme-choice-card strong{font-size:13px;font-weight:1000}.theme-choice-card.is-active{border-color:color-mix(in srgb,var(--accent),var(--line) 24%);background:color-mix(in srgb,var(--accent),var(--surface) 84%);color:var(--accent-strong);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 44%)}.notification-settings-list{display:grid;gap:10px;margin-top:14px}.notification-setting-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:8px;border-radius:var(--radius);background:var(--surface-soft);padding:10px}.notification-setting-card>div{display:inline-flex;align-items:center;gap:8px;grid-column:1 / -1;font-weight:900;min-width:0;line-height:1.15}.notification-setting-card>div strong{min-width:0;overflow-wrap:normal}.notification-setting-card .custom-select-trigger{min-height:52px;background:var(--surface)}.notification-setting-card .custom-select-trigger strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.in-app-notification{position:fixed;right:22px;bottom:22px;z-index:70;width:min(380px,calc(100vw - 44px));display:grid;gap:8px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);padding:14px;animation:sheet-in var(--medium) var(--ease)}.in-app-notification small{color:var(--muted);font-weight:900;text-transform:uppercase}.in-app-notification strong{font-family:var(--font-display);font-size:24px}.in-app-notification>span{color:var(--muted);font-weight:800}.in-app-notification div{display:flex;flex-wrap:wrap;gap:8px}.alarm-join-link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;background:color-mix(in srgb,var(--success),var(--surface) 70%);color:var(--success-strong);font-weight:1000;text-decoration:none;padding:0 14px;transition:transform var(--fast) var(--ease),box-shadow var(--fast) var(--ease)}.alarm-join-link img{width:22px;height:22px;object-fit:contain;border-radius:6px;background:#fff;padding:2px}.alarm-join-link:hover,.alarm-join-link:focus-visible{transform:translateY(-1px);box-shadow:0 10px 22px color-mix(in srgb,var(--success),transparent 76%)}.in-app-notification button{min-height:38px;border-radius:999px;background:var(--surface-soft);color:var(--text);padding:0 12px;font-weight:900}.confirm-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:20px;background:#0e181d7a}.recipe-delete-confirm{z-index:140}.confirm-sheet{width:min(420px,100%);display:grid;gap:12px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:18px;box-shadow:var(--shadow)}.confirm-sheet h2{font-family:var(--font-display);font-weight:600}.confirm-sheet p{color:var(--muted)}.google-link-sheet{width:min(430px,calc(100vw - 32px));grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;text-align:left;padding:18px}.google-link-sheet-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:16px;background:color-mix(in srgb,var(--accent),var(--surface) 74%);color:var(--accent-strong)}.google-link-sheet small{color:var(--accent-strong);font-size:11px;font-weight:1000;text-transform:uppercase}.google-link-sheet h2{margin-top:2px;font-size:24px}.google-link-sheet p,.google-link-sheet .checkbox-line,.google-link-sheet .confirm-actions{grid-column:1 / -1}.google-link-sheet p{margin:0;font-size:15px;line-height:1.45}.checkbox-line{min-height:34px;display:inline-flex;align-items:center;justify-content:flex-start;gap:9px;color:var(--muted);font-weight:800}.checkbox-line input{width:18px;height:18px}.google-link-sheet .confirm-actions{display:flex;gap:10px;margin-top:2px}.google-link-sheet .confirm-actions button{min-width:0;flex:1;min-height:46px;white-space:nowrap}.event-update-sheet{width:min(460px,calc(100vw - 32px));gap:14px}.event-update-sheet small{color:var(--accent-strong);font-size:11px;font-weight:1000;text-transform:uppercase}.event-update-sheet h2{margin-top:2px;font-size:25px}.event-update-sheet p{margin:0;line-height:1.45}.event-update-scope-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:5px;border-radius:20px;background:var(--surface-soft)}.event-update-scope-options button{min-height:42px;border-radius:16px;color:var(--muted);font-weight:1000}.event-update-scope-options button.is-active{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent),transparent 40%)}.event-update-notify{padding:11px 12px;border-radius:18px;background:var(--surface-soft)}.event-update-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.event-update-actions button{min-width:0}.destructive-confirm-sheet{width:min(520px,100%)}.destructive-confirm-sheet .field{margin-top:4px}.confirm-actions{grid-template-columns:1fr 1fr}.danger-button:disabled{opacity:.52;cursor:not-allowed}.confirm-sheet.sleep-dialog{width:min(680px,calc(100vw - 40px))}.sleep-row small{justify-self:end;font-weight:800}.sleep-date{font-weight:800}.profile-settings-list,.phase-list,.settings-actions{display:grid;gap:9px;margin-top:12px}.profile-settings-row{grid-template-columns:auto minmax(0,1fr) auto;border:0;padding:0}.settings-panel h2{margin-bottom:14px}.settings-panel .field+.field,.settings-panel .field+label.field,.settings-panel label.field+.field,.settings-panel label.field+label.field{margin-top:14px}.profile-settings-list+.inline-form{margin-top:14px}.settings-status-row{grid-template-columns:auto minmax(0,1fr) auto;border:0;padding:0}.display-status-row{margin-top:14px}.notification-master-stack{display:grid;gap:10px}.install-panel .settings-panel-heading{margin-bottom:12px}.install-step-list{display:grid;gap:10px}.install-step{display:grid;grid-template-columns:28px 22px minmax(0,1fr);align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft);padding:10px}.install-step>span{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--surface);color:var(--muted);font-size:12px;font-weight:1000}.install-step>svg{color:var(--accent-strong)}.install-step>div{min-width:0;display:grid;gap:2px}.install-step strong,.install-step small{min-width:0;overflow-wrap:anywhere}.install-step small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}.install-step-list+.muted-copy{display:block;margin-top:12px}.settings-status-row>div{display:grid;gap:3px;min-width:0}.settings-status-row>div strong,.settings-status-row>div small{min-width:0;overflow-wrap:anywhere}.settings-status-row>div small{color:var(--muted);font-size:12px;font-weight:800;line-height:1.35}.settings-status-row button{min-height:42px;border-radius:999px;background:var(--accent);color:#fff;padding:0 16px;font-weight:900}.settings-status-row button:disabled{opacity:.55;cursor:not-allowed}.phase-list{grid-template-columns:minmax(0,1fr) auto}.phase-list span{color:var(--muted)}.phase-list strong{text-align:right}.assistant-messages{min-height:0;max-height:calc(100vh - 260px);overflow:auto;display:grid;align-content:start;gap:10px}.assistant-message{border-radius:var(--radius);padding:11px 12px;line-height:1.4;white-space:pre-wrap}.assistant-message p+p{margin-top:6px}.assistant-message.assistant{background:var(--surface-soft)}.assistant-message.user{justify-self:end;background:#e8dff7;color:#2c2040}:root[data-theme=dark] .assistant-message.user{background:#332947;color:var(--text)}.assistant-prompts{display:flex;flex-wrap:wrap;gap:8px}.assistant-prompts button{border-radius:999px;background:var(--surface-soft);padding:8px 10px;color:var(--muted);font-size:12px;font-weight:800}.assistant-input{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px}.brief-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:grid;place-items:center;padding:28px;background:#0e181d7a}.menu-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:start;background:#0e181d7a}.menu-sheet{width:min(360px,calc(100vw - 36px));min-height:100vh;background:var(--surface);border-right:1px solid var(--line);box-shadow:var(--shadow);padding:18px;transform-origin:left center;animation:sheet-in var(--medium) var(--ease)}.menu-list{display:grid;gap:8px;margin-top:18px}.menu-list button{min-height:54px;display:flex;align-items:center;gap:12px;border-radius:var(--radius);background:var(--surface-soft);color:var(--muted);padding:0 14px;font-weight:900;text-align:left}.menu-list button.is-active{background:#dff6f2;color:#1e2730;box-shadow:inset 4px 0 0 var(--accent)}@keyframes sheet-in{0%{opacity:0;transform:translate(-16px)}to{opacity:1;transform:translate(0)}}@keyframes page-stage-in{0%{opacity:0;transform:translateY(10px) scale(.992)}to{opacity:1;transform:none}}@keyframes component-rise-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes prompt-pop{0%{opacity:0;transform:scale(.82) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes prompt-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.brief-panel-overlay{width:min(760px,100%);max-height:min(760px,92vh)}.toast{position:fixed;left:50%;bottom:28px;z-index:60;display:flex;align-items:center;gap:9px;width:max-content;max-width:min(460px,calc(100vw - 32px));transform:translate(-50%);border:1px solid color-mix(in srgb,var(--border) 55%,transparent);border-radius:20px;background:var(--text);color:var(--surface);padding:10px 11px 10px 15px;box-shadow:var(--shadow);font-weight:800}.toast-message{min-width:0;overflow-wrap:anywhere}.toast-action,.toast-dismiss{display:grid;place-items:center;flex:0 0 auto;border:0;color:var(--surface)}.toast-action{min-height:34px;border-radius:999px;background:color-mix(in srgb,var(--surface) 20%,transparent);padding:0 12px;font-weight:900}.toast-dismiss{width:34px;height:34px;border-radius:999px;background:color-mix(in srgb,var(--surface) 13%,transparent)}.undo-toast{position:fixed;left:50%;bottom:24px;z-index:75;display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:10px;width:min(560px,calc(100vw - 32px));transform:translate(-50%);border:1px solid var(--line);border-radius:999px;background:var(--surface);box-shadow:var(--shadow);padding:9px;animation:sheet-in var(--medium) var(--ease)}.undo-toast-icon,.undo-toast-dismiss{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:50%;background:var(--surface-soft);color:var(--accent-strong)}.undo-toast-copy{min-width:0;display:grid;gap:1px}.undo-toast-copy strong,.undo-toast-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.undo-toast-copy strong{font-weight:1000}.undo-toast-copy small{color:var(--muted);font-size:12px;font-weight:800}.undo-toast>button:not(.undo-toast-dismiss){min-height:38px;border-radius:999px;background:var(--accent);color:#fff;padding:0 16px;font-weight:1000}.empty-feature{display:grid;place-items:center;min-height:180px;color:var(--muted)}.home-page,.auth-gate,.calendar-index{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at top,color-mix(in srgb,var(--accent),transparent 86%),transparent 34rem),var(--bg);padding:24px}.home-page{height:100vh;overflow-x:hidden;overflow-y:auto;align-items:start;scroll-behavior:smooth;background:linear-gradient(180deg,color-mix(in srgb,#dff4ff,var(--bg) 14%) 0,color-mix(in srgb,#eef9ff,var(--bg) 36%) 36%,var(--bg) 72%),var(--bg)}:root[data-theme=dark] .home-page{background:linear-gradient(180deg,color-mix(in srgb,#12323d,var(--bg) 12%) 0,color-mix(in srgb,#0f242c,var(--bg) 34%) 42%,var(--bg) 78%),var(--bg)}.home-hero{width:min(1180px,100%);display:grid;gap:24px;animation:home-rise .52s var(--ease) both}.home-nav{display:flex;align-items:center;justify-content:space-between;gap:16px}.home-brand,.home-nav-actions,.home-actions{display:flex;align-items:center}.home-brand{gap:10px;color:var(--text);font-weight:1000;text-decoration:none}.home-brand img{width:42px;height:42px;object-fit:contain;border-radius:12px;box-shadow:0 10px 26px color-mix(in srgb,var(--accent),transparent 72%)}.home-nav-right{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end}.home-about-link{min-height:36px;display:inline-flex;align-items:center;border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 12%);color:var(--text);padding:0 14px;font-size:14px;font-weight:900;text-decoration:none;box-shadow:0 10px 22px color-mix(in srgb,#203946,transparent 92%)}.home-about-link:hover,.home-about-link:focus-visible{color:var(--accent)}.home-theme-switch{display:inline-flex;gap:4px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 18%);padding:4px;box-shadow:0 10px 24px color-mix(in srgb,var(--accent),transparent 88%)}.home-theme-switch button{min-height:34px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;color:var(--muted);padding:0 10px;font-size:12px;font-weight:1000}.home-theme-switch button.is-active{background:var(--surface);color:var(--accent);box-shadow:0 6px 16px color-mix(in srgb,var(--accent),transparent 86%)}.home-hero-grid{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);align-items:center;gap:24px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--surface),#fff 7%),color-mix(in srgb,var(--surface-soft),transparent 12%)),var(--surface);box-shadow:var(--shadow);padding:clamp(24px,5vw,56px)}.home-hero-grid:before{content:none}.home-hero-grid>*{position:relative;z-index:1}.home-copy{display:grid;gap:18px}.home-copy small{color:var(--accent);font-size:12px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.home-copy h1{font-family:var(--font-display);font-size:clamp(42px,7vw,76px);line-height:.95;letter-spacing:0}.home-copy h1 span{color:#1d72f3}:root[data-theme=dark] .home-copy h1 span{color:#78dce8}.home-copy p{max-width:54ch;color:var(--muted);font-size:clamp(17px,2vw,20px);line-height:1.55}.home-badges{display:flex;flex-wrap:wrap;gap:8px}.home-badges span{min-height:32px;display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface-soft),transparent 18%);color:var(--text);padding:0 12px;font-size:12px;font-weight:1000;box-shadow:0 8px 20px color-mix(in srgb,var(--accent),transparent 92%)}.home-actions{flex-wrap:wrap;gap:14px}.home-google-button{width:min(340px,100%)}.home-preview{position:relative;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:18px;background:linear-gradient(var(--line),var(--line)) 0 86px / 100% 1px no-repeat,repeating-linear-gradient(90deg,transparent 0 24.8%,color-mix(in srgb,var(--line),transparent 28%) 24.8% 25%,transparent 25% 25.2%),color-mix(in srgb,var(--surface-soft),transparent 25%);padding:18px;box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff,transparent 80%);animation:home-float 6s ease-in-out infinite}.home-preview.home-preview-screenshot{display:grid;place-items:center;padding:14px;background:color-mix(in srgb,var(--surface-soft),transparent 20%);animation:none}.home-preview.home-preview-screenshot.is-tiltable{transform:perspective(1400px) rotateX(var(--preview-tilt-x, 0deg)) rotateY(var(--preview-tilt-y, 0deg));transform-style:preserve-3d;transition:transform .18s var(--ease),box-shadow .18s var(--ease);will-change:transform}:root[data-theme=light] .home-preview.home-preview-screenshot{background:color-mix(in srgb,#ffffff,var(--surface-soft) 16%)}.home-preview.home-preview-screenshot:before,.home-preview.home-preview-screenshot:after{content:none}.home-preview.home-preview-screenshot img{width:100%;display:block;border-radius:14px;box-shadow:0 18px 40px color-mix(in srgb,#203946,transparent 90%)}:root[data-theme=light] .home-preview{background:linear-gradient(var(--line),var(--line)) 0 86px / 100% 1px no-repeat,repeating-linear-gradient(90deg,transparent 0 24.8%,color-mix(in srgb,var(--line),transparent 28%) 24.8% 25%,transparent 25% 25.2%),#ffffffd9}.home-preview:after{content:"";position:absolute;left:0;right:0;top:52%;height:2px;border-radius:999px;background:#e63737;box-shadow:0 0 18px color-mix(in srgb,#e63737,transparent 52%);transform-origin:left center;animation:home-time-line 4.2s var(--ease) infinite}.home-preview:before{content:"";position:absolute;left:12px;top:calc(52% - 5px);z-index:2;width:12px;height:12px;border-radius:999px;background:#e63737;box-shadow:0 0 0 4px color-mix(in srgb,#e63737,transparent 76%);animation:home-time-dot 4.2s var(--ease) infinite}.home-preview-status{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-bottom:10px}.home-preview-status span{min-height:30px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 10%);color:var(--text);padding:0 10px;font-size:12px;font-weight:1000}.home-preview-status svg{color:var(--accent)}.home-preview-header{min-height:58px;display:flex;align-items:start;justify-content:space-between;gap:12px}.home-preview-header small{display:block;color:var(--muted);font-size:12px;font-weight:1000;text-transform:uppercase}.home-preview-header strong{font-family:var(--font-display);font-size:30px;line-height:1.05}.home-preview-profiles{display:flex;gap:6px}.home-preview-profiles span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--profile),white 26%);color:#172126;font-size:12px;font-weight:1000}.home-preview-grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(84px,auto);gap:10px;padding-top:14px}.home-preview-grid>strong{color:var(--muted);font-size:13px;text-align:center}.home-preview-event{display:grid;gap:2px;align-content:start;min-height:116px;border-radius:var(--radius);color:#24313a;padding:12px;box-shadow:inset 0 0 0 1px #ffffff78;animation:home-card-pop .64s var(--ease) both;transition:transform var(--medium) var(--ease),box-shadow var(--medium) var(--ease)}.home-preview-event:hover{transform:translateY(-4px);box-shadow:0 18px 32px #132c371c,inset 0 0 0 1px #ffffffd8}.home-preview-event span{font-size:18px}.home-preview-event b{font-size:15px;line-height:1.15}.home-preview-event small{font-weight:800}.event-a{background:#f9dca8}.event-b{background:#9fe0d7;animation-delay:.12s}.event-c{background:#f4c8cc;animation-delay:.24s}.event-d{background:#cfe9d0;animation-delay:.32s}.home-preview-footer{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.home-preview-footer span{min-height:38px;display:grid;place-items:center;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 10%);color:var(--muted);font-size:12px;font-weight:1000;text-align:center}.home-connected,.home-feature-row,.home-story-stack{display:grid;gap:14px}.home-connected{border:1px solid var(--line);border-radius:24px;background:color-mix(in srgb,var(--surface),transparent 6%);box-shadow:0 16px 34px color-mix(in srgb,#203946,transparent 90%);padding:clamp(22px,4vw,34px)}.home-connected h2{font-family:var(--font-display);font-size:clamp(28px,4vw,38px);line-height:1.05;text-align:center}.home-feature-row{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}.home-feature-row article{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:0 10px 28px #20394612}.home-feature-row article{display:grid;gap:8px;padding:18px;transition:transform var(--medium) var(--ease),box-shadow var(--medium) var(--ease),border-color var(--medium) var(--ease)}.home-feature-row article:hover{border-color:color-mix(in srgb,var(--accent),var(--line) 42%);box-shadow:0 16px 36px #2039461c;transform:translateY(-3px)}.home-feature-row svg{color:var(--accent)}.home-feature-row strong{font-size:16px}.home-feature-row span{color:var(--muted);line-height:1.5}.home-story-stack{gap:18px}.home-story-section{display:grid;grid-template-columns:minmax(0,.92fr) minmax(300px,.72fr);align-items:center;gap:clamp(18px,4vw,44px);border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface),#fff 5%),color-mix(in srgb,var(--surface-soft),transparent 10%)),var(--surface);box-shadow:0 16px 34px color-mix(in srgb,#203946,transparent 88%);padding:clamp(24px,5vw,48px);overflow:hidden;animation:home-rise .52s var(--ease) both}.home-story-section.is-flipped{grid-template-columns:minmax(300px,.72fr) minmax(0,.92fr)}.home-story-section.is-flipped .home-story-copy{order:2}.home-story-copy{display:grid;gap:12px}.home-story-copy small{color:var(--accent);font-size:12px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase}.home-story-copy h2{max-width:15ch;font-family:var(--font-display);font-size:clamp(32px,4vw,48px);line-height:1}.home-story-copy p{max-width:58ch;color:var(--muted);font-size:17px;line-height:1.55}.home-story-graphic{min-height:240px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent),transparent 86%),transparent 58%),color-mix(in srgb,var(--surface-soft),transparent 12%);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff,transparent 82%)}.graphic-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:22px}.graphic-board-card{position:relative;display:grid;place-items:center;align-content:center;gap:10px;min-height:110px;border-radius:18px;border:1px solid color-mix(in srgb,var(--line),transparent 20%);background:linear-gradient(180deg,color-mix(in srgb,var(--surface),#fff 7%),color-mix(in srgb,var(--surface-soft),transparent 10%)),var(--surface);color:var(--text);padding:16px 14px;font-weight:1000;text-align:center;box-shadow:0 10px 22px color-mix(in srgb,#203946,transparent 92%),inset 0 0 0 1px color-mix(in srgb,#fff,transparent 70%);opacity:0;transform:translateY(18px) scale(.97);filter:blur(8px);transition:opacity .52s var(--ease),transform .68s var(--ease),filter .68s var(--ease),box-shadow .18s var(--ease);transition-delay:var(--reveal-delay, 0ms)}.graphic-board-card.is-visible{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}.graphic-board-card:hover{transform:translateY(-4px) scale(1.01);box-shadow:0 16px 30px color-mix(in srgb,#203946,transparent 90%),inset 0 0 0 1px color-mix(in srgb,#fff,transparent 58%)}.graphic-board-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--accent),white 75%);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent),transparent 55%);font-size:18px}.graphic-board-card strong{max-width:10ch;font-size:18px;line-height:1.08}@media(prefers-reduced-motion:reduce){.graphic-board-card{opacity:1;transform:none;filter:none;transition:none}}.graphic-sync{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:24px}.graphic-sync span{min-height:104px;display:grid;grid-template-rows:auto auto;place-items:center;gap:9px;border-radius:20px;background:var(--surface);padding:18px 12px;font-weight:1000;text-align:center;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--line),transparent 35%),0 14px 28px color-mix(in srgb,#203946,transparent 90%)}.graphic-sync span img{width:50px;height:50px;object-fit:contain}.graphic-sync span strong{max-width:100%;overflow:hidden;color:var(--text);font-size:14px;line-height:1.05;overflow-wrap:anywhere}.graphic-sync i{width:74px;height:4px;border-radius:999px;background:linear-gradient(90deg,var(--accent),#1d72f3);position:relative}.graphic-sync i:after{content:"";position:absolute;right:-2px;top:50%;width:12px;height:12px;border-top:4px solid #1d72f3;border-right:4px solid #1d72f3;transform:translateY(-50%) rotate(45deg)}.graphic-tablet{display:grid;place-items:center;padding:24px}.graphic-tablet>div{width:min(360px,100%);aspect-ratio:4 / 3;border:12px solid color-mix(in srgb,var(--text),transparent 78%);border-radius:24px;background:var(--surface);padding:8px;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--text),transparent 88%),0 18px 36px color-mix(in srgb,#203946,transparent 88%)}.graphic-tablet img{width:100%;height:100%;display:block;border-radius:14px;object-fit:cover;object-position:center}.graphic-profiles{display:flex;align-items:center;justify-content:center;gap:14px}.graphic-profiles span{width:84px;height:84px;display:grid;place-items:center;border-radius:999px;background:#7adbd4;color:#172126;font-size:24px;font-weight:1000;overflow:hidden;box-shadow:0 12px 24px color-mix(in srgb,#203946,transparent 86%)}.graphic-profiles img{width:100%;height:100%;display:block}.graphic-profiles .profile-add-icon{position:relative;overflow:visible;background:color-mix(in srgb,var(--surface),var(--accent) 6%);color:var(--accent);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--accent),transparent 44%),0 14px 28px color-mix(in srgb,#203946,transparent 86%);transition:transform .18s ease,box-shadow .18s ease}.graphic-profiles .profile-add-icon:before,.graphic-profiles .profile-add-icon:after{content:"";position:absolute;left:50%;top:50%;width:32px;height:6px;border-radius:999px;background:currentColor;box-shadow:0 4px 10px color-mix(in srgb,var(--accent),transparent 68%);transform:translate(-50%,-50%)}.graphic-profiles .profile-add-icon:after{transform:translate(-50%,-50%) rotate(90deg)}.home-footer{display:grid;grid-template-columns:minmax(260px,1.35fr) minmax(240px,.95fr) auto;align-items:stretch;gap:14px;border-top:1px solid var(--line);padding:26px 2px 8px;color:var(--muted)}.home-footer-brand,.home-footer-status,.home-footer-links{min-width:0}.home-footer-brand{display:grid;gap:10px}.home-footer-logo{width:fit-content;display:inline-flex;align-items:center;gap:9px;color:var(--text);font-size:20px;font-weight:1000;text-decoration:none}.home-footer-logo img{width:34px;height:34px;border-radius:12px;box-shadow:0 10px 20px color-mix(in srgb,var(--accent),transparent 78%)}.home-footer-brand p,.home-footer-status p{max-width:520px;margin:0;color:var(--muted);font-size:14px;line-height:1.45;font-weight:760}.home-footer-status{display:grid;align-content:start;gap:9px;border:1px solid color-mix(in srgb,#e58a9a,transparent 70%);border-radius:18px;background:color-mix(in srgb,#f5a0ad,var(--surface) 88%);padding:12px 14px}.home-footer-status span{width:fit-content;border-radius:999px;background:color-mix(in srgb,#f5a0ad,var(--surface) 66%);color:#ad4d5d;padding:4px 9px;font-size:11px;font-weight:1000;text-transform:uppercase}.home-footer-links{display:flex;align-items:flex-start;justify-content:flex-end;gap:8px;flex-wrap:wrap}.home-footer-links a{min-height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--surface-soft);color:var(--text);padding:0 12px;font-size:13px;font-weight:900;text-decoration:none}.home-footer-links a:hover,.home-footer-links a:focus-visible{background:color-mix(in srgb,var(--accent),var(--surface) 78%);color:var(--accent-strong)}.home-footer-fine{grid-column:1 / -1;color:color-mix(in srgb,var(--muted),transparent 10%);font-size:12px;font-weight:850}@keyframes home-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes home-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes home-card-pop{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes home-time-line{0%,24%{transform:scaleX(0);opacity:0}36%,82%{transform:scaleX(1);opacity:1}to{transform:scaleX(1);opacity:0}}@keyframes home-time-dot{0%,24%{opacity:0;transform:scale(.5)}36%,82%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}@media(prefers-reduced-motion:reduce){.home-hero,.home-preview,.home-preview:before,.home-preview:after,.home-preview-event,.home-story-section{animation:none}}.auth-card,.calendar-index-panel{width:min(960px,100%);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow)}.auth-card{max-width:420px;display:grid;justify-items:center;gap:18px;padding:34px 32px;text-align:center;border-radius:24px}.auth-logo-lockup{display:grid;place-items:center;width:100%}.auth-logo-frame{width:96px;height:96px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--accent),transparent 62%);border-radius:28px;background:radial-gradient(circle at 50% 28%,rgba(120,220,255,.28),transparent 58%),linear-gradient(145deg,#10242d,#19323b);box-shadow:0 18px 42px color-mix(in srgb,#000,transparent 78%)}.auth-skycal-logo{width:78px;height:78px;display:block;object-fit:contain;border-radius:22px}.calendar-index-head small{color:var(--muted);font-size:12px;font-weight:1000;letter-spacing:.05em;text-transform:uppercase}.auth-card h1,.calendar-index h1{font-family:var(--font-display);font-size:clamp(34px,6vw,48px);line-height:1}.auth-card p{color:var(--muted);font-size:16px;line-height:1.45;max-width:34ch}.auth-card-loading{min-height:360px}.auth-spinner{width:34px;height:34px;border-radius:999px;border:3px solid color-mix(in srgb,var(--accent),transparent 72%);border-top-color:var(--accent);animation:auth-spin .8s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-google-button{width:100%;min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid #dadce0;border-radius:4px;background:#fff;color:#3c4043;font-family:Arial,sans-serif;font-size:15px;font-weight:700;box-shadow:0 1px 2px #3c40431f;transition:background .16s ease,box-shadow .16s ease,border-color .16s ease}.auth-google-button:hover{background:#f8fafd;border-color:#d2e3fc;box-shadow:0 1px 3px #3c404338}.auth-privacy-link{color:var(--muted);font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:4px}.auth-privacy-link:hover,.auth-privacy-link:focus-visible{color:var(--accent)}.google-logo{width:18px;height:18px;flex:0 0 auto}.privacy-page,.about-page,.recipe-import-submit-page{min-height:100vh;display:grid;place-items:center;overflow:auto;background:linear-gradient(180deg,color-mix(in srgb,var(--accent),transparent 88%),var(--bg) 52%),var(--bg);padding:24px}.privacy-card,.about-card,.recipe-import-submit-card{width:min(860px,100%);display:grid;gap:20px;border:1px solid var(--line);border-radius:24px;background:var(--surface);box-shadow:var(--shadow);padding:clamp(24px,5vw,48px)}.recipe-import-submit-card{width:min(460px,100%);justify-items:stretch;gap:16px}.recipe-import-submit-card>img{width:68px;height:68px;justify-self:center;border-radius:16px}.recipe-import-submit-card small,.recipe-import-submit-card h1{text-align:center}.recipe-import-submit-card small{color:var(--muted);font-size:12px;font-weight:1000;text-transform:uppercase}.recipe-import-submit-card h1{font-family:var(--font-display);font-size:clamp(34px,8vw,48px);line-height:1}.recipe-import-submit-card form{display:grid;gap:10px}.recipe-import-submit-status{display:flex;align-items:center;gap:9px;border-radius:12px;background:color-mix(in srgb,var(--surface-soft),var(--surface) 38%);color:var(--muted);padding:11px 13px;font-size:14px;font-weight:850;line-height:1.35}.recipe-import-submit-status.is-sending{background:color-mix(in srgb,var(--accent-soft),var(--surface) 48%);color:var(--text)}.recipe-import-submit-status.is-error{background:color-mix(in srgb,#d9534f,var(--surface) 88%);color:#9f2724}.recipe-import-submit-status.is-sent{background:color-mix(in srgb,#5cb85c,var(--surface) 84%);color:#246b2a}.privacy-logo-link{width:82px;height:82px;display:grid;place-items:center;justify-self:center;border:1px solid color-mix(in srgb,var(--accent),transparent 62%);border-radius:24px;background:var(--surface-soft)}.privacy-logo-link img{width:62px;height:62px;object-fit:contain;border-radius:16px}.privacy-head{display:grid;gap:10px;text-align:center}.privacy-head small{color:var(--muted);font-size:12px;font-weight:1000;letter-spacing:.05em;text-transform:uppercase}.privacy-head h1{font-family:var(--font-display);font-size:clamp(36px,7vw,58px);line-height:1}.privacy-head p,.privacy-section p{color:var(--muted);font-size:16px;line-height:1.6}.privacy-section{display:grid;gap:8px}.privacy-section h2{font-family:var(--font-display);font-size:24px;line-height:1.1}.privacy-actions{display:flex;justify-content:center}.privacy-back-link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:var(--surface-soft);color:var(--text);padding:0 18px;font-weight:900;text-decoration:none}.privacy-back-link:hover,.privacy-back-link:focus-visible{background:color-mix(in srgb,var(--surface-soft),var(--accent) 14%);box-shadow:inset 0 0 0 1px var(--accent)}.calendar-index-panel{display:grid;gap:18px;padding:24px}.calendar-index-head{display:flex;align-items:start;justify-content:space-between;gap:14px}.calendar-index-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.85fr) minmax(260px,.85fr);gap:14px}.calendar-picker-card{display:grid;gap:12px;align-content:start;border-radius:var(--radius);background:var(--surface-soft);padding:16px}.calendar-picker-card h2{font-family:var(--font-display);font-size:26px}.calendar-list{display:grid;gap:9px}.calendar-list button{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border-radius:var(--radius);background:var(--surface);color:var(--text);padding:13px;text-align:left}.calendar-list span,.calendar-list strong,.calendar-list small{min-width:0}.calendar-list strong,.calendar-list small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-list small{color:var(--muted);font-size:12px;font-weight:850}.calendar-join-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}.calendar-qr-scan-button{min-height:42px}.calendar-qr-scanner-sheet{width:min(420px,100%)}.calendar-qr-scanner-head{display:grid;grid-template-columns:minmax(0,1fr) 40px;align-items:start;gap:8px}.calendar-qr-scanner-head small{color:var(--muted);font-size:12px;font-weight:850}.calendar-qr-scanner-head h2{margin-top:2px}.calendar-qr-video{width:100%;aspect-ratio:1;border:1px solid var(--line);border-radius:var(--radius);background:#10181c;object-fit:cover}@media(max-width:1080px){.home-hero-grid,.home-story-section,.home-story-section.is-flipped{grid-template-columns:1fr}.home-story-section.is-flipped .home-story-copy{order:0}.home-feature-row{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.calendar-layout.with-brief{grid-template-columns:minmax(0,1fr)}.brief-panel,.brief-toggle{display:none}.brief-panel-overlay{display:block}.feature-grid,.settings-grid{grid-template-columns:1fr}.settings-grid{display:block;columns:1;column-width:auto}.settings-panel{grid-column:1 / -1}.settings-panel+.settings-panel{margin-top:16px}.notification-setting-card{grid-template-columns:1fr 1fr}.notification-setting-card>div{grid-column:1 / -1}.profile-task-columns{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.date-block{min-width:240px}.calendar-index-grid{grid-template-columns:1fr}.scrapbook-workspace{grid-template-columns:82px minmax(0,1fr) minmax(220px,240px);gap:10px}.scrapbook-shell{padding:10px}.scrapbook-canvas-page{width:min(48vw,calc((100dvh - 210px) * var(--scrapbook-width) / var(--scrapbook-height)))}.scrapbook-format-landscape{width:min(52vw,calc((100dvh - 210px) * var(--scrapbook-width) / var(--scrapbook-height)))}.scrapbook-tool-button{min-height:54px}}@media(max-width:760px){:root{--calendar-day-height: clamp(720px, calc(100dvh - 260px) , 1080px)}input,select,textarea{font-size:max(16px,1rem)}body{overflow:auto;overscroll-behavior-y:contain}.home-page{padding:18px}.home-nav{align-items:flex-start;flex-direction:column}.home-nav-right{width:100%;justify-content:space-between}.home-theme-switch{max-width:100%}.home-theme-switch button{padding:0 9px}.home-hero-grid{grid-template-columns:1fr;padding:22px}.home-preview{order:0;padding:14px;border-radius:16px;background:linear-gradient(var(--line),var(--line)) 0 76px / 100% 1px no-repeat,repeating-linear-gradient(90deg,transparent 0 49.6%,color-mix(in srgb,var(--line),transparent 28%) 49.6% 50%,transparent 50% 50.4%),color-mix(in srgb,var(--surface-soft),transparent 18%)}:root[data-theme=light] .home-preview{background:linear-gradient(var(--line),var(--line)) 0 76px / 100% 1px no-repeat,repeating-linear-gradient(90deg,transparent 0 49.6%,color-mix(in srgb,var(--line),transparent 28%) 49.6% 50%,transparent 50% 50.4%),#ffffffe6}.home-preview-status{justify-content:flex-start;gap:6px;margin-bottom:8px}.home-preview-status span{min-height:26px;padding:0 8px;font-size:10px}.home-preview-header{min-height:0;align-items:center;margin-bottom:10px}.home-preview-header small{font-size:10px}.home-preview-header strong{font-size:24px}.home-preview-profiles{gap:4px}.home-preview-profiles span{width:26px;height:26px;font-size:10px}.home-feature-row,.home-story-section,.home-story-section.is-flipped{grid-template-columns:1fr}.home-copy h1{font-size:clamp(38px,12vw,56px)}.home-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto;gap:8px;padding-top:2px}.home-preview-grid>strong{display:none}.home-preview-event{min-height:86px;padding:10px}.home-preview-event span{font-size:16px}.home-preview-event b{font-size:13px}.home-preview-event small{font-size:11px}.home-preview-footer{grid-template-columns:1fr}.home-footer{grid-template-columns:1fr;gap:12px;padding-top:22px}.home-footer-links{justify-content:flex-start}.home-footer-brand p,.home-footer-status p{max-width:none}.graphic-sync{grid-template-columns:1fr}.graphic-sync i{width:4px;height:54px;justify-self:center;background:linear-gradient(180deg,var(--accent),#1d72f3)}.graphic-sync i:after{right:auto;top:auto;bottom:-2px;left:50%;transform:translate(-50%) rotate(135deg)}.graphic-profiles{flex-wrap:wrap}.app-shell{height:100dvh;min-height:0;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) calc(72px + env(safe-area-inset-bottom));background:var(--bg);overflow:hidden}.side-nav{position:fixed;left:0;right:0;bottom:0;z-index:20;height:calc(72px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(8,1fr);gap:0;padding:0 0 env(safe-area-inset-bottom);border-top:1px solid var(--line);border-right:0}.side-nav-spacer,.side-account{display:none}.side-nav button{min-height:72px;border-left:0;border-top:3px solid transparent;align-content:center;padding:7px 0 9px;font-size:10px}.side-nav button svg{width:20px;height:20px}.side-nav button.is-active{border-top-color:var(--accent)}.label-filter-backdrop{bottom:calc(72px + env(safe-area-inset-bottom))}.label-filter-panel{left:0;bottom:calc(72px + env(safe-area-inset-bottom));width:min(360px,92vw);box-shadow:16px 0 36px #15232a33}.label-filter-head{padding:16px 14px 12px}.label-filter-head h2{font-size:25px}.app-content{height:100dvh;min-height:0;grid-template-rows:auto minmax(0,1fr);padding-bottom:calc(72px + env(safe-area-inset-bottom));overflow:hidden}.top-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:0;padding:10px 14px 8px}.date-block{min-width:0;width:auto;flex:1 1 240px;display:flex;align-items:center;justify-content:start;gap:8px}.date-block strong{font-size:clamp(20px,6vw,24px);overflow:hidden;text-overflow:ellipsis}.date-block span{font-size:14px}.weather-button,.news-button{min-height:34px;padding:0 10px}.weather-modal-backdrop,.news-modal-backdrop{align-items:stretch;padding:10px}.weather-suite,.news-suite{height:calc(100dvh - 20px);max-height:calc(100dvh - 20px);border-radius:14px}.weather-suite-head,.news-suite-head{min-height:56px;padding:0 12px}.weather-suite-body,.news-suite-body{padding:14px}.news-suite-head span{font-size:20px}.news-card{grid-template-columns:86px minmax(0,1fr)}.news-card-prominent{grid-template-columns:minmax(0,1fr)}.news-card-prominent .news-card-media{min-height:170px}.weather-now-copy h2{font-size:24px}.weather-now-copy>strong{font-size:58px}.weather-condition-line{font-size:17px}.weather-hourly-suite{grid-auto-columns:82px}.weather-daily-list article{grid-template-columns:62px 30px 38px 38px minmax(58px,1fr) 38px;gap:6px;padding:0 10px}.weather-detail-grid{grid-template-columns:minmax(0,1fr)}.profile-strip{width:auto;flex:0 1 auto;overflow-x:auto;padding-bottom:2px}.top-actions{justify-content:flex-start;flex:0 1 auto;overflow-x:auto;width:auto;max-width:100%;padding-bottom:0}.icon-button,.pill-button,.icon-text-button,.primary-icon-button{min-width:38px;height:38px}.pill-button,.icon-text-button{padding:0 13px}.undo-toast{right:12px;bottom:84px;left:12px;width:auto;transform:none;border-radius:var(--radius)}.calendar-layout{height:100%;min-height:0;display:grid;grid-template-rows:minmax(0,1fr);padding:8px 8px 0;max-width:100vw;overflow:hidden}.calendar-main{display:grid;grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;width:100%;max-width:100%;overflow:hidden}.calendar-toolbar{width:100%;max-width:100%;align-items:stretch;flex-direction:column;gap:8px;margin-bottom:8px}.calendar-toolbar h1{font-size:clamp(24px,8vw,28px);line-height:1.05}.calendar-toolbar .segmented{width:100%;min-width:0;align-self:stretch;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;border-radius:999px}.calendar-toolbar .segmented button{width:auto;min-width:0;padding:7px 6px}.week-header,.week-grid{--grid-content-width: 100%;grid-template-columns:44px repeat(7,minmax(0,1fr));min-width:100%}.day-grid{--grid-content-width: 100%;grid-template-columns:44px minmax(calc(100vw - 68px),1fr);min-width:100%}.calendar-board{height:100%;min-height:0;width:100%;max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;max-height:none;overscroll-behavior:contain}.week-board,.single-day-board{height:100%;min-height:0;min-width:100%}.week-grid{min-height:0;overflow:auto}.day-grid.single-day-board,.single-day-board{min-width:100%}.all-day-strip{grid-template-columns:44px minmax(0,1fr);min-width:100%}.single-day-board .all-day-strip{min-width:100%}.all-day-lanes{grid-template-columns:repeat(var(--all-day-count),minmax(0,1fr));min-width:0}.single-day-board .all-day-lanes{min-width:calc(100vw - 68px)}.day-head{flex-direction:column;gap:2px;overflow:hidden;padding:4px 1px;font-size:10px;line-height:1}.day-head small{max-width:100%;overflow:hidden;font-size:10px;line-height:1;text-overflow:ellipsis;white-space:nowrap}.day-head strong{font-size:15px;line-height:1}.day-head.is-today strong{width:26px;height:26px;min-width:26px;flex-basis:26px}.time-label{padding-top:5px;font-size:10px}.timed-event{padding-inline:2px;min-height:0}.event-chip{padding:5px 6px}.event-chip.has-linked-calendar{padding-left:9px}.event-chip strong{font-size:11px;line-height:1.1}.event-chip span,.event-chip small{font-size:9px}.event-sticker{font-size:12px}.event-resize-handle{height:11px;padding-bottom:3px}.event-resize-handle:before{width:24px;height:2px;opacity:.38}.calendar-layout,.feature-grid,.settings-grid{padding-bottom:88px}.calendar-layout{padding:8px 8px 0}.feature-grid,.settings-grid{padding-top:8px}.profile-task-columns{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.list-tab-actions,.section-title-row{margin-bottom:8px;flex-wrap:wrap}.notification-setting-card,.sleep-view{grid-template-columns:1fr}.google-link-card{grid-template-columns:10px minmax(0,1fr) 38px 38px;gap:8px 10px}.google-link-card .custom-select,.google-link-sync{grid-column:auto}.google-link-card .custom-select{grid-area:profile}.google-link-sync{grid-area:sync}.profile-editor-fields,.sleep-manual-form,.custom-meal-form,.event-time-panel .field-grid,.recipe-ingredient-row{grid-template-columns:1fr}.recipe-card.has-image{grid-template-columns:58px minmax(0,1fr)}.recipe-card.has-image .recipe-card-image{grid-column:1 / -1;grid-row:auto;min-height:148px;max-height:186px}.recipe-card.has-image .recipe-ingredient-preview,.recipe-card.has-image .recipe-step-preview,.recipe-card.has-image .recipe-expanded-panel{grid-column:1 / -1}.recipe-step-overlay-backdrop{z-index:120;padding:12px}.recipe-form-overlay-backdrop{z-index:124;padding:10px}.recipe-step-overlay{width:calc(100vw - 20px);max-height:min(74dvh,calc(100dvh - 116px));border-radius:18px}.recipe-form-overlay{width:calc(100vw - 20px);min-height:0;max-height:min(82dvh,calc(100dvh - 108px));border-radius:18px}.recipe-step-overlay-head{grid-template-columns:50px minmax(0,1fr) 40px;gap:10px;padding:14px 12px 12px}.recipe-form-overlay-head{min-height:74px;padding:12px}.recipe-form-overlay-head h2{font-size:25px}.recipe-step-overlay-head .recipe-emoji{width:50px;height:50px;font-size:28px}.recipe-step-overlay-content,.recipe-form-overlay-body{gap:12px;padding:12px}.recipe-form-overlay-footer{padding:10px 12px max(10px,env(safe-area-inset-bottom))}.recipe-import-url-row{grid-template-columns:minmax(0,1fr) auto minmax(112px,auto)}.recipe-import-start-button{grid-column:auto;width:auto;justify-content:center}.recipe-import-qr-card{width:min(218px,100%)}.recipe-import-qr-card img{width:min(176px,100%);height:auto}.recipe-new-sticky-button{min-height:46px;padding:0 17px}.recipe-step-overlay .recipe-expanded-head{align-items:start}.recipe-step-overlay .recipe-expanded-step{grid-template-columns:30px minmax(0,1fr);gap:9px;border-radius:10px;padding:9px}.recipe-step-overlay .recipe-expanded-step-number{width:28px;height:28px}.recipe-ingredient-row{align-items:stretch}.recipe-ingredient-row button{justify-self:end}.sleep-manual-form .primary-button{grid-column:auto}.market-add-form{grid-template-columns:minmax(0,1fr) 80px}.market-add-form.market-add-toolbar{grid-template-columns:minmax(0,1fr) minmax(72px,92px)}.market-add-form .primary-button{grid-column:1 / -1}.market-item{grid-template-columns:34px minmax(0,1fr) minmax(58px,72px) 34px;gap:6px;padding:7px}.market-list-shell .market-editor{padding:8px}.task-profile-column{background:color-mix(in srgb,var(--profile),white 42%)}.task-profile-column header strong{color:#1e2730;text-shadow:none}.drawer{width:100vw}.event-drawer-inline{position:relative;top:0;width:100%;max-height:none}.floating-add{right:18px;bottom:104px}.scrapbook-shell{height:100%;min-height:0;padding:6px 6px calc(80px + env(safe-area-inset-bottom));overflow:hidden}.scrapbook-shell.is-readonly{padding:8px 8px calc(84px + env(safe-area-inset-bottom))}.scrapbook-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;justify-items:stretch;gap:6px;margin-bottom:6px}.scrapbook-date-controls,.scrapbook-export-actions{flex:0 1 auto;max-width:100%;overflow-x:auto}.scrapbook-date-controls{grid-column:1;justify-self:start}.scrapbook-export-actions{grid-column:2;justify-self:end}.scrapbook-date-controls button,.scrapbook-export-actions button{min-height:38px;padding:0 9px;font-size:12px}.scrapbook-export-actions button:not(.scrapbook-edit-toggle){width:38px;min-width:38px;padding:0;gap:0;font-size:0}.scrapbook-export-actions button:not(.scrapbook-edit-toggle) svg{width:17px;height:17px}.scrapbook-workspace{min-height:0;display:grid;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr)}.scrapbook-canvas-zone{position:relative;height:100%;min-height:0;grid-template-rows:minmax(0,1fr);padding:6px;gap:0}.scrapbook-canvas-page,.scrapbook-format-landscape{width:clamp(210px,calc((100dvh - 320px) * var(--scrapbook-width) / var(--scrapbook-height)),calc(100vw - 44px));border-radius:14px;box-shadow:0 18px 34px #2039462e,0 0 0 7px color-mix(in srgb,var(--surface),transparent 48%)}.scrapbook-format-landscape{width:min(calc(100vw - 28px),calc((100dvh - 300px) * var(--scrapbook-width) / var(--scrapbook-height)))}.scrapbook-zoom-strip{position:absolute;top:8px;left:50%;z-index:7;gap:4px;padding:3px;border:1px solid var(--line);border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 8%);box-shadow:0 10px 24px #2039461f;transform:translate(-50%)}.scrapbook-zoom-strip button{min-width:34px;height:34px;min-height:34px;padding:0 8px}.scrapbook-status{position:absolute;right:10px;bottom:8px;left:10px;z-index:7;min-height:24px;display:grid;place-items:center;border-radius:999px;background:color-mix(in srgb,var(--surface),transparent 12%);pointer-events:none}.scrapbook-shell.is-readonly .scrapbook-canvas-page{width:min(82vw,calc((100dvh - 185px) * var(--scrapbook-width) / var(--scrapbook-height)))}.scrapbook-shell.is-readonly .scrapbook-format-landscape{width:min(92vw,calc((100dvh - 185px) * var(--scrapbook-width) / var(--scrapbook-height)))}.scrapbook-view-edit-button{top:12px;right:12px}.scrapbook-layer-handle{width:44px;height:44px}.scrapbook-layer-handle.resize{right:-24px;bottom:-24px}.scrapbook-layer-handle.rotate{top:-58px}.scrapbook-tool-rail{position:fixed;left:0;right:0;bottom:0;z-index:18;height:56px;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(56px,1fr);gap:6px;overflow-x:auto;overflow-y:hidden;border-right:0;border-left:0;border-radius:0;padding:5px 6px}.scrapbook-tool-button{width:100%;min-width:56px;min-height:44px;gap:2px;padding:4px 6px;font-size:10px}.scrapbook-inspector{position:fixed;right:6px;bottom:calc(64px + env(safe-area-inset-bottom));left:6px;z-index:19;max-height:min(24dvh,190px);border-radius:14px;padding:8px;overflow:auto;box-shadow:0 -18px 44px #2039462e}.scrapbook-inspector.is-mobile-collapsed{max-height:48px;overflow:hidden}.scrapbook-inspector.is-mobile-collapsed .scrapbook-panel-stack{display:none}.scrapbook-mobile-tabs{position:sticky;top:0;z-index:2;grid-template-columns:repeat(4,minmax(0,1fr)) 34px;gap:5px;margin-bottom:8px;background:var(--surface);padding-bottom:0}.scrapbook-inspector.is-mobile-collapsed .scrapbook-mobile-tabs{margin-bottom:0}.scrapbook-mobile-tabs button{min-height:32px;padding:0 6px;font-size:10px}.scrapbook-mobile-tabs .scrapbook-inspector-collapse{display:grid;place-items:center;padding:0;color:var(--text)}.scrapbook-inspector.is-mobile-collapsed .scrapbook-inspector-collapse{opacity:.45}.scrapbook-panel-stack{gap:10px;max-height:calc(min(24dvh,190px) - 52px);overflow:auto}.scrapbook-sticker-grid{grid-template-columns:repeat(7,minmax(40px,1fr));max-height:128px}.scrapbook-swatch-grid,.scrapbook-swatch-grid.compact{grid-template-columns:repeat(7,minmax(0,1fr))}.scrapbook-select-grid{grid-template-columns:1fr}}@media(max-width:560px){.recipe-import-panel.has-qr{grid-template-columns:1fr}.recipe-import-panel.has-qr .recipe-import-card-head{grid-template-columns:38px minmax(0,1fr);gap:9px}.recipe-import-panel.has-qr .recipe-import-card-icon{width:38px;height:38px;border-radius:13px}.recipe-import-panel.has-qr .recipe-import-card-head strong{font-size:14px}.recipe-import-panel.has-qr .recipe-import-card-head small{font-size:11px}.recipe-import-panel.has-qr .recipe-import-progress{padding:9px 10px}.recipe-import-url-row{grid-template-columns:minmax(0,1fr) auto}.recipe-import-start-button{grid-column:1 / -1;width:100%}.recipe-import-qr-card{justify-items:center;text-align:center}.recipe-import-qr-card img{width:min(170px,100%);height:auto}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}button:hover:not(:disabled),button:active:not(:disabled){transform:none}}
