.sidebar{background:var(--color-surface);border-right:1px solid var(--color-border);z-index:100;flex-direction:column;width:216px;min-height:100vh;padding:0;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.sidebar-header{border-bottom:1px solid var(--color-border);align-items:center;gap:.625rem;padding:14px 16px;display:flex}.sidebar-logo{border-radius:6px;width:28px;height:28px}.sidebar-title{color:#fff;letter-spacing:-.01em;margin:0;font-size:1.125rem;font-weight:700}.sidebar-nav{margin:0;padding:8px 0;list-style:none}.sidebar-link{color:var(--color-text-muted);cursor:pointer;border-left:3px solid #0000;align-items:center;gap:.625rem;padding:8px 16px 8px 13px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.sidebar-link:hover:not(.disabled){color:var(--color-text);background:#ffffff0a}.sidebar-link.active{color:var(--color-primary);border-left-color:var(--color-primary);background:#6384ff0f;font-weight:600}.sidebar-link.disabled{opacity:.35;cursor:default}.material-icon{text-align:center;width:1.25rem;font-family:Material Symbols Outlined;font-size:1.125rem;line-height:1}.sidebar-label{flex:1}.phase-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);background:#ffffff0f;border-radius:20px;padding:2px 6px;font-size:9px;font-weight:600}.sidebar-divider{background:var(--color-border);height:1px;margin:4px 16px}.sidebar-section-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-dim);margin:0;padding:6px 16px 2px;font-size:11px;font-weight:600}.topbar{-webkit-backdrop-filter:blur(20px)saturate(1.4);z-index:50;background:linear-gradient(#14181cf2 0%,#14181ce0 100%);border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex;position:sticky;top:0}.topbar-right{align-items:center;gap:1rem;display:flex}.topbar-user{align-items:center;gap:.75rem;display:flex}.topbar-username{color:var(--color-text-muted);font-size:.875rem}.topbar-logout{color:var(--color-text-muted);border:1px solid var(--color-border);cursor:pointer;background:0 0;border-radius:6px;padding:.25rem .625rem;font-size:.8125rem;transition:background .15s,color .15s}.topbar-logout:hover{background:var(--color-hover);color:var(--color-text)}.topbar-left{align-items:center;gap:.5rem;display:flex}.topbar-menu{color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px;display:none}.topbar-menu:hover{color:var(--color-text);background:#ffffff0f}.topbar-menu .material-icon{font-size:1.25rem}.topbar-household{color:var(--color-text-muted);letter-spacing:-.01em;font-size:.875rem;font-weight:600}@media (width<=640px){.topbar{height:50px;padding:0 12px}.topbar-menu{display:flex}.topbar-household{font-size:.8125rem}.topbar-username{display:none}.topbar-logout{padding:.1875rem .5rem;font-size:.75rem}.topbar-quickadd{width:calc(100vw - 24px);right:-12px}}.topbar-settings{color:var(--color-text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;transition:color .15s,background .15s;display:flex}.topbar-settings:hover{color:var(--color-text);background:var(--color-hover)}.topbar-settings .material-icon{font-size:1.125rem}.topbar-quickadd-wrap{position:relative}.topbar-quickadd-backdrop{z-index:99;position:fixed;inset:0}.topbar-quickadd{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);width:420px;box-shadow:var(--shadow-lg,0 8px 24px #0000004d);z-index:100;flex-direction:column;gap:.5rem;padding:.75rem;display:flex;position:absolute;top:calc(100% + .5rem);right:0}.quickadd-mode-toggle{gap:.25rem;display:flex}.quickadd-mode-btn{border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;background:0 0;flex:1;justify-content:center;align-items:center;gap:.25rem;padding:.375rem .5rem;font-size:.6875rem;font-weight:600;display:flex}.quickadd-mode-btn:hover{color:var(--color-text);background:var(--color-hover)}.quickadd-mode-btn.active{color:var(--color-primary);background:#6384ff1a;border-color:#6384ff4d}.quickadd-mode-btn .material-icon{font-size:.875rem}.quickadd-checklist{flex-direction:column;gap:.25rem;max-height:200px;display:flex;overflow-y:auto}.quickadd-checklist-item{background:var(--color-surface-raised);border-radius:var(--radius-sm);align-items:center;gap:.375rem;padding:.25rem .375rem;display:flex}.quickadd-checklist-text{flex:1;min-width:0;font-size:.8125rem}.quickadd-checklist-add{align-items:center;gap:.375rem;display:flex}.chat-fab{z-index:150;background:var(--color-primary);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:3.25rem;height:3.25rem;transition:transform .15s,box-shadow .15s;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 4px 16px #6384ff66}.chat-fab:hover{transform:scale(1.08);box-shadow:0 6px 24px #6384ff80}.chat-fab.hidden{display:none}.chat-fab .material-icon{font-size:1.5rem}.chat-panel{z-index:200;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;width:420px;height:600px;max-height:calc(100vh - 3rem);animation:.2s ease-out chatSlideUp;display:flex;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 12px 48px #0006}@keyframes chatSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.chat-header{border-bottom:1px solid var(--color-border);flex-shrink:0;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.chat-header-left{align-items:center;gap:.5rem;display:flex}.chat-header-left .material-icon{color:var(--color-primary);font-size:1.25rem}.chat-header-title{font-size:.875rem;font-weight:700}.chat-header-actions{gap:.125rem;display:flex}.chat-messages{flex-direction:column;flex:1;gap:.75rem;padding:1rem;display:flex;overflow-y:auto}.chat-welcome{text-align:center;flex-direction:column;align-items:center;gap:.5rem;padding:1.5rem 0;display:flex}.chat-welcome p{color:var(--color-text-muted);margin:0;font-size:.8125rem}.chat-suggestions{flex-direction:column;gap:.375rem;width:100%;margin-top:.5rem;display:flex}.chat-suggestion{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:.75rem;font-family:var(--font-sans);cursor:pointer;text-align:left;padding:.5rem .75rem;transition:background .1s,border-color .1s}.chat-suggestion:hover{background:var(--color-hover);border-color:var(--color-primary)}.chat-message{align-items:flex-start;gap:.5rem;display:flex}.chat-message.user{justify-content:flex-end}.chat-avatar{color:var(--color-primary);flex-shrink:0;margin-top:.125rem;font-size:1.125rem}.chat-bubble{border-radius:var(--radius-md);word-break:break-word;max-width:85%;padding:.5rem .75rem;font-size:.8125rem;line-height:1.6}.chat-message.user .chat-bubble{background:var(--color-primary);color:#fff;border-bottom-right-radius:4px}.chat-message.assistant .chat-bubble{background:var(--color-surface-raised);color:var(--color-text);border-bottom-left-radius:4px}.chat-bubble code{font-family:var(--font-mono);background:#ffffff1a;border-radius:3px;padding:.0625rem .25rem;font-size:.75rem}.chat-bubble strong{font-weight:600}.chat-deeplink{color:var(--color-primary);cursor:pointer;background:#6384ff1a;border-radius:3px;align-items:center;gap:.25rem;padding:.0625rem .375rem;font-weight:500;text-decoration:none;transition:background .1s;display:inline-flex}.chat-deeplink:hover{background:#6384ff33}.chat-deeplink-icon{font-family:Material Symbols Outlined;font-size:.75rem;line-height:1}.chat-bubble li{margin-bottom:.125rem;margin-left:1rem}.chat-typing{gap:.25rem;padding:.75rem;display:flex}.chat-dot{background:var(--color-text-dim);border-radius:50%;width:6px;height:6px;animation:1.4s infinite chatBounce}.chat-dot:nth-child(2){animation-delay:.2s}.chat-dot:nth-child(3){animation-delay:.4s}@keyframes chatBounce{0%,80%,to{transform:translateY(0)}40%{transform:translateY(-6px)}}.chat-input-bar{border-top:1px solid var(--color-border);flex-shrink:0;gap:.375rem;padding:.75rem;display:flex}.chat-input{font-family:var(--font-sans);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);outline:none;flex:1;padding:.5rem .75rem;font-size:.8125rem}.chat-input:focus{border-color:var(--color-primary)}.chat-input::placeholder{color:var(--color-text-dim)}.chat-send{background:var(--color-primary);border-radius:var(--radius-md);color:#fff;cursor:pointer;border:none;justify-content:center;align-items:center;padding:.5rem;transition:background .15s;display:flex}.chat-send:hover:not(:disabled){background:var(--color-primary-hover)}.chat-send:disabled{opacity:.4;cursor:default}.chat-send .material-icon{font-size:1.125rem}@media (width<=500px){.chat-panel{border-radius:var(--radius-md);width:calc(100vw - 1rem);height:calc(100vh - 1rem);bottom:.5rem;right:.5rem}}.app-layout{min-height:100vh;display:flex}.app-main{flex-direction:column;flex:1;min-height:100vh;margin-left:216px;display:flex}.app-content{flex:1;width:100%;max-width:1400px;padding:1.5rem}.sidebar-backdrop{display:none}@media (width<=900px){.sidebar{width:190px}.app-main{margin-left:190px}.app-content{padding:1rem}}@media (width<=640px){.sidebar{width:260px;box-shadow:none;z-index:200;transition:transform .22s cubic-bezier(.16,1,.3,1);transform:translate(-100%)}.sidebar.open{transform:translate(0);box-shadow:4px 0 32px #0009}.sidebar-backdrop{z-index:199;background:#00000080;display:block;position:fixed;inset:0}.app-main{margin-left:0}.app-content{padding:.75rem}}.dashboard-section{margin-bottom:1.5rem}.section-title{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:.75rem;font-weight:700;display:flex}.section-title .material-icon{font-size:1rem}.placeholder-text{color:var(--color-text-dim);margin:0;font-size:.875rem}.dash-columns{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.dash-col-left,.dash-col-right{flex-direction:column;display:flex}.myday-alerts{flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;display:flex}.myday-alert{border-radius:var(--radius-md);color:var(--color-text);cursor:pointer;font-size:.75rem;font-weight:600;font-family:var(--font-sans);background:#f871710f;border:1px solid #f8717133;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.myday-alert:hover{background:#f871711f}.myday-alert .material-icon{font-size:1rem}.dash-today-list{flex-direction:column;gap:.5rem;display:flex}.dash-today-item{align-items:center;gap:.625rem;padding:.625rem .875rem;display:flex}.dash-today-color{border-radius:2px;flex-shrink:0;width:4px;height:28px}.dash-today-img{object-fit:cover;border-radius:4px;flex-shrink:0;width:32px;height:32px}.dash-today-info{flex-direction:column;min-width:0;display:flex}.dash-today-type{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-dim);font-size:.5625rem;font-weight:700}.dash-today-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:500;overflow:hidden}.myday-tasks{flex-direction:column;gap:.75rem;margin-top:.5rem;display:flex}.myday-task-group{flex-direction:column;gap:.25rem;display:flex}.myday-task-group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);padding:.125rem 0;font-size:.5625rem;font-weight:700}.myday-task-group-label.overdue{color:var(--color-danger)}.myday-task-group-label.today{color:var(--color-primary)}.myday-task{background:var(--color-surface-raised);border-radius:var(--radius-sm);border-left:3px solid var(--color-border);align-items:center;gap:.5rem;padding:.375rem .5rem;display:flex}.myday-task.overdue{border-left-color:var(--color-danger);background:#f871710a}.myday-task-info{flex:1;min-width:0}.myday-task-title{font-size:.8125rem;font-weight:500;display:block}.myday-task-project{color:var(--color-text-dim);font-size:.625rem;display:block}.myday-more{color:var(--color-text-dim);padding:.25rem .5rem;font-size:.6875rem}.myday-upcoming{flex-direction:column;gap:.375rem;display:flex}.myday-upcoming-day{flex-direction:column;gap:.25rem;display:flex}.myday-upcoming-date{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);padding:.25rem 0 .125rem;font-size:.5625rem;font-weight:700}.myday-upcoming-item{background:var(--color-surface-raised);border-radius:var(--radius-sm);align-items:center;gap:.5rem;padding:.375rem .5rem;font-size:.8125rem;display:flex}.myday-upcoming-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.myday-upcoming-time{color:var(--color-text-dim);flex-shrink:0;font-size:.625rem}.myday-glance{grid-template-columns:repeat(2,1fr);gap:.5rem;display:grid}.myday-glance-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-family:var(--font-sans);text-align:left;align-items:center;gap:.625rem;padding:.75rem;transition:transform .15s,box-shadow .15s;display:flex}.myday-glance-item:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.myday-glance-item.warn{border-color:#f871714d}.myday-glance-item .material-icon{opacity:.6;color:var(--color-primary);font-size:1.5rem}.myday-glance-item.warn .material-icon{color:var(--color-danger)}.myday-glance-value{font-size:1rem;font-weight:700;display:block}.myday-glance-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);font-size:.5625rem;font-weight:600;display:block}@media (width<=900px){.dash-columns{grid-template-columns:1fr}}@media (width<=640px){.myday-alerts{flex-direction:column}.myday-glance{grid-template-columns:1fr}.dash-today-item{padding:.5rem .625rem}}.category-tabs{gap:.25rem;margin-bottom:1rem;padding-bottom:.25rem;display:flex;overflow-x:auto}.detail-modal .category-tabs{flex-wrap:wrap;overflow-x:visible}.category-tab{color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:.375rem;padding:7px 14px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.category-tab:hover{color:var(--color-text);background:#ffffff0a}.category-tab.active{color:var(--color-primary);background:#6384ff1a;border-color:#6384ff40;font-weight:600}.tab-count{background:var(--color-border);color:var(--color-text-muted);border-radius:10px;padding:.0625rem .375rem;font-size:.6875rem}.category-tab.active .tab-count{color:var(--color-primary);background:#6384ff33}.collections-toolbar{margin-bottom:1.25rem}.search-input{width:100%;max-width:400px;font-size:13px;font-family:var(--font-sans);border-radius:var(--radius-sm);color:var(--color-text);background:#ffffff0d;border:1px solid #ffffff1a;outline:none;padding:8px 11px;transition:border-color .15s,box-shadow .15s,background .15s}.search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-glow);background:#ffffff14}.search-input::placeholder{color:var(--color-text-dim)}select.search-input option{background:var(--color-surface-raised)}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;display:grid}.collection-card{transition:transform .2s var(--ease-spring), box-shadow .25s ease;cursor:pointer;padding:0;overflow:hidden}.collection-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-6px)scale(1.02)}.collection-cover{aspect-ratio:2/3;object-fit:cover;width:100%;display:block}.collection-cover-placeholder{aspect-ratio:2/3;background:var(--color-surface-raised);width:100%;color:var(--color-text-dim);justify-content:center;align-items:center;display:flex}.collection-cover-placeholder .material-icon{font-size:3rem}.collection-info{padding:.75rem}.collection-title{text-overflow:ellipsis;white-space:nowrap;margin:0 0 .125rem;font-size:.875rem;font-weight:600;overflow:hidden}.collection-creator{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0 0 .375rem;font-size:.75rem;overflow:hidden}.collection-meta{color:var(--color-text-dim);align-items:center;gap:.5rem;font-size:.75rem;display:flex}.collection-rating{color:var(--color-warning);letter-spacing:.05em}.empty-state{text-align:center;color:var(--color-text-dim);padding:3rem;font-size:13px}.detail-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;margin-top:.5rem;padding-top:.75rem;display:flex}.detail-popout{color:var(--color-primary);border-radius:var(--radius-sm);align-items:center;gap:.375rem;padding:.25rem .5rem;font-size:.75rem;font-weight:500;text-decoration:none;transition:background .15s;display:inline-flex}.detail-popout:hover{background:var(--color-active);color:var(--color-primary-hover)}.detail-popout .material-icon{font-size:.875rem}.add-collection-modal{max-width:640px}.add-collection-content{padding:1.5rem}.add-collection-modes{gap:.5rem;margin-bottom:.75rem;display:flex}.add-collection-modes .add-meal-type-btn{flex:1;justify-content:center;align-items:center;gap:.375rem;display:flex}.add-collection-modes .material-icon{font-size:1rem}.add-collection-type-filter{flex-wrap:wrap;gap:.25rem;margin-bottom:.75rem;display:flex}.add-collection-results{border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:360px;overflow-y:auto}.add-collection-result{border:none;border-bottom:1px solid var(--color-border);cursor:pointer;text-align:left;width:100%;color:var(--color-text);font-family:var(--font-sans);background:0 0;align-items:center;gap:.75rem;padding:.625rem .75rem;transition:background .1s;display:flex}.add-collection-result:last-child{border-bottom:none}.add-collection-result:hover{background:var(--color-hover)}.add-collection-result-img{object-fit:cover;border-radius:4px;flex-shrink:0;width:48px;height:64px}.add-collection-result-img-placeholder{background:var(--color-surface-raised);width:48px;height:64px;color:var(--color-text-dim);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.add-collection-result-img-placeholder .material-icon{font-size:1.5rem}.add-collection-result-info{flex:1;min-width:0}.add-collection-result-title{text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:600;display:block;overflow:hidden}.add-collection-result-meta{color:var(--color-text-muted);gap:.5rem;margin-top:.125rem;font-size:.75rem;display:flex}.add-collection-result-type{text-transform:capitalize;color:var(--color-primary);font-weight:600}.add-collection-preview{border-top:1px solid var(--color-border);margin-top:.75rem;padding-top:.75rem}.add-collection-preview-card{gap:1rem;margin-bottom:1rem;display:flex}.add-collection-preview-img{object-fit:cover;border-radius:var(--radius-sm);flex-shrink:0;width:100px;height:140px}.add-collection-preview-img-placeholder{background:var(--color-surface-raised);border-radius:var(--radius-sm);width:100px;height:140px;color:var(--color-text-dim);justify-content:center;align-items:center;display:flex}.add-collection-preview-info{flex:1;min-width:0}.add-collection-preview-info h3{margin:0 0 .25rem;font-size:1rem;font-weight:700}.add-collection-preview-creator{color:var(--color-text-muted);margin:0 0 .5rem;font-size:.8125rem}.add-collection-preview-meta{color:var(--color-text-muted);gap:.5rem;margin-bottom:.5rem;font-size:.75rem;display:flex}.add-collection-preview-desc{color:var(--color-text-dim);-webkit-line-clamp:3;-webkit-box-orient:vertical;max-height:4rem;margin:0;font-size:.75rem;line-height:1.5;display:-webkit-box;overflow:hidden}.detail-overlay{z-index:200;-webkit-backdrop-filter:blur(12px)saturate(1.2);background:#000000b3;justify-content:center;align-items:center;padding:2rem;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.detail-modal{border-radius:var(--radius-lg);width:100%;max-width:720px;max-height:85vh;animation:modalIn .2s var(--ease-spring);background:linear-gradient(#1e2530 0%,#1a2028 100%);border:1px solid #ffffff14;position:relative;overflow-y:auto;box-shadow:0 24px 80px #0009,0 0 0 1px #ffffff0a,inset 0 1px #ffffff0f}@keyframes modalIn{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.detail-close{z-index:10;cursor:pointer;width:2rem;height:2rem;color:var(--color-text-muted);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;transition:all .15s;display:flex;position:absolute;top:.75rem;right:.75rem}.detail-close:hover{color:var(--color-text);background:#ffffff1a}.detail-close .material-icon{font-size:1.125rem}.detail-layout{gap:1.5rem;padding:1.5rem;display:flex}.detail-cover-wrap{flex-shrink:0;width:240px}.detail-cover{border-radius:var(--radius-md);width:100%;display:block}.detail-cover-placeholder{background:var(--color-surface-raised);border-radius:var(--radius-md);width:100%;height:320px;color:var(--color-text-dim);justify-content:center;align-items:center;display:flex}.detail-cover-placeholder .material-icon{font-size:3rem}.detail-info{flex:1;min-width:0}.detail-title{margin:0 0 .25rem;padding-right:2rem;font-size:1.25rem;font-weight:700;line-height:1.3}.detail-creator{color:var(--color-text-muted);margin:0 0 .75rem;font-size:.875rem}.detail-status{text-transform:uppercase;letter-spacing:.06em;border:1px solid;border-radius:4px;margin-bottom:.75rem;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;display:inline-block}.detail-rating{color:var(--color-warning);letter-spacing:.08em;margin-bottom:1rem;font-size:1rem}.detail-fields{margin-bottom:1rem}.detail-field-list{grid-template-columns:1fr 1fr;gap:0;margin:0;display:grid}.detail-field{border-bottom:1px solid var(--color-border);flex-direction:column;padding:.5rem 0;display:flex}.detail-field dt{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);margin-bottom:.125rem;font-size:.6875rem;font-weight:600}.detail-field dd{color:var(--color-text);word-break:break-word;margin:0;font-size:.8125rem}.detail-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);margin:0 0 .375rem;font-size:.6875rem;font-weight:600}.detail-description,.detail-notes{margin-bottom:1rem}.detail-description p,.detail-notes p{color:var(--color-text-muted);max-height:8rem;margin:0;font-size:.8125rem;line-height:1.6;overflow-y:auto}.detail-timestamps{color:var(--color-text-dim);border-top:1px solid var(--color-border);gap:1rem;margin-top:.5rem;padding-top:.75rem;font-size:.6875rem;display:flex}@media (width<=640px){.category-tabs{gap:.125rem;margin-bottom:.75rem}.category-tab{padding:6px 10px;font-size:12px}.category-tab .material-icon{font-size:1rem}.search-input{max-width:100%;font-size:14px}.collection-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:.5rem}.detail-overlay{align-items:flex-end;padding:0}.detail-modal{border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-width:100%;max-height:94vh;animation:modalSlideUp .22s var(--ease-spring);padding-top:0}.detail-modal:before{content:"";background:#fff3;border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:10px auto 4px;display:block}@keyframes modalSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.detail-close{background:#ffffff1a;border:1px solid #ffffff26;width:2.5rem;height:2.5rem;top:.5rem;right:.5rem}.detail-layout{flex-direction:column}.detail-cover-wrap{width:100%;max-width:200px;margin:0 auto}.detail-field-list{grid-template-columns:1fr}.detail-title{font-size:1.125rem}.add-item-row{flex-direction:column}.add-item-row .search-input{max-width:100%}}.recipe-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem;display:grid}.recipe-card{cursor:pointer;padding:0;transition:transform .15s,box-shadow .15s;overflow:hidden}.recipe-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.recipe-cover{object-fit:cover;width:100%;height:180px;display:block}.recipe-cover-placeholder{background:var(--color-surface-raised);width:100%;height:180px;color:var(--color-text-dim);justify-content:center;align-items:center;display:flex}.recipe-cover-placeholder .material-icon{font-size:2.5rem}.recipe-info{padding:.75rem}.recipe-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .25rem;font-size:.875rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.recipe-description{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .5rem;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.recipe-meta{color:var(--color-text-dim);align-items:center;gap:.75rem;font-size:.75rem;display:flex}.recipe-time{align-items:center;gap:.25rem;display:flex}.recipe-time .material-icon{font-size:.875rem}.recipe-plan-btn{color:var(--color-text-dim);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:.25rem;transition:opacity .15s,color .15s,background .15s;display:flex}.recipe-card:hover .recipe-plan-btn{opacity:1}.recipe-plan-btn:hover{color:var(--color-primary);background:var(--color-active)}.recipe-plan-btn .material-icon{font-size:1rem}.recipe-card-title-row{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.recipe-plan-action{flex-shrink:0;padding:.375rem .625rem;font-size:.75rem}.recipe-modal{max-width:960px}.recipe-card-top{grid-template-columns:340px 1fr;gap:0;display:grid}.recipe-card-left{border-right:1px solid var(--color-border)}.recipe-detail-cover{object-fit:cover;border-radius:var(--radius-lg) 0 0 0;width:100%;height:320px;display:block}.recipe-detail-cover-placeholder{background:var(--color-surface-raised);border-radius:var(--radius-lg) 0 0 0;width:100%;height:320px;color:var(--color-text-dim);justify-content:center;align-items:center;display:flex}.recipe-detail-cover-placeholder .material-icon{font-size:3rem}.recipe-detail-meta{border-top:1px solid var(--color-border);flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem;display:flex}.recipe-meta-pill{background:var(--color-surface-raised);border-radius:var(--radius-sm);flex-direction:column;flex:1;align-items:center;min-width:60px;padding:.375rem .25rem;display:flex}.recipe-meta-pill .recipe-meta-label{text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-dim);margin-bottom:.125rem;font-size:.5625rem;font-weight:700}.recipe-meta-pill span:last-child{color:var(--color-text);font-size:.8125rem;font-weight:600}.recipe-card-right{max-height:460px;padding:1.25rem 1.5rem;overflow-y:auto}.recipe-card-title{margin:0 0 .375rem;padding-right:2rem;font-size:1.375rem;font-weight:700;line-height:1.25}.recipe-detail-desc{color:var(--color-text-muted);margin:0 0 1rem;font-size:.8125rem;line-height:1.55}.recipe-ingredients-section{margin-top:.25rem}.recipe-section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--color-primary);border-bottom:2px solid var(--color-primary);margin:0 0 .625rem;padding-bottom:.375rem;font-size:.6875rem;font-weight:700;display:inline-block}.recipe-ingredients{margin:0;padding:0;list-style:none}.recipe-ingredient{color:var(--color-text);border-bottom:1px solid var(--color-border);padding:.375rem 0;font-size:.8125rem;line-height:1.4}.recipe-ingredient:last-child{border-bottom:none}.recipe-card-bottom{border-top:1px solid var(--color-border);padding:1.5rem}.recipe-section{margin-bottom:1.5rem}.recipe-section:last-child{margin-bottom:0}.recipe-instructions{counter-reset:step-counter;margin:0;padding-left:1.5rem}.recipe-step{color:var(--color-text);margin-bottom:1.25rem;padding-left:.25rem;font-size:.875rem;line-height:1.7}.recipe-step:last-child{margin-bottom:0}.recipe-step p{margin:0}.recipe-step-title{color:var(--color-primary);margin-bottom:.25rem;font-size:.875rem;display:block}.recipe-note{color:var(--color-text-muted);margin-bottom:.5rem;font-size:.8125rem;line-height:1.55}.recipe-note p{margin:.25rem 0 0}.recipe-source{border-top:1px solid var(--color-border);align-items:center;gap:.375rem;padding-top:1rem;font-size:.8125rem;display:flex}.recipe-source .material-icon{color:var(--color-text-dim);font-size:1rem}@media (width<=700px){.recipe-modal{max-width:100%;margin:0}.recipe-card-top{grid-template-columns:1fr}.recipe-card-left{border-right:none;border-bottom:1px solid var(--color-border)}.recipe-detail-cover{border-radius:0;height:200px}.recipe-detail-cover-placeholder{border-radius:0;height:140px}.recipe-card-right{max-height:none;padding:1rem}.recipe-card-bottom{padding:1rem}.recipe-card-title{font-size:1.125rem}}.mealplan-nav{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.mealplan-week-label{text-align:center;min-width:220px;margin:0;font-size:1rem;font-weight:700}.mealplan-week{grid-template-columns:repeat(7,1fr);gap:.5rem;display:grid}.mealplan-day{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);min-height:160px;overflow:hidden}.mealplan-day.today{border-color:var(--color-primary)}.mealplan-day-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.5rem .625rem;display:flex}.mealplan-day.today .mealplan-day-header{background:#6384ff14}.mealplan-day-name{color:var(--color-text);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.mealplan-day.today .mealplan-day-name{color:var(--color-primary)}.mealplan-day-date{color:var(--color-text-dim);font-size:.6875rem}.mealplan-day-meals{padding:.5rem}.mealplan-empty{color:var(--color-text-dim);text-align:center;margin:1rem 0;font-size:.6875rem}.mealplan-entry{margin-bottom:.5rem}.mealplan-entry-type{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-dim);background:var(--color-surface-raised);border-radius:3px;margin-bottom:.25rem;padding:.0625rem .375rem;font-size:.5625rem;font-weight:600;display:inline-block}.mealplan-recipe{align-items:center;gap:.375rem;margin-top:.25rem;display:flex}.mealplan-recipe-img{object-fit:cover;border-radius:4px;flex-shrink:0;width:28px;height:28px}.mealplan-recipe-name{color:var(--color-text);text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.75rem;line-height:1.3;display:-webkit-box;overflow:hidden}.mealplan-title{color:var(--color-text);font-size:.75rem}.mealday-meals{flex-direction:column;gap:.5rem;margin:1rem 0;display:flex}.mealday-meal{background:var(--color-surface-raised);border-radius:var(--radius-md);align-items:center;gap:.625rem;padding:.625rem .75rem;display:flex}.mealday-color{border-radius:2px;flex-shrink:0;width:4px;height:36px}.mealday-img{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:44px;height:44px}.mealday-info{flex:1;min-width:0}.mealday-type{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-dim);font-size:.5625rem;font-weight:700;display:block}.mealday-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:.875rem;font-weight:500;display:block;overflow:hidden}.mealday-time{color:var(--color-text-dim);align-items:center;gap:.25rem;margin-top:.125rem;font-size:.6875rem;display:flex}.shopping-list{max-width:600px}.shopping-add{gap:.375rem;margin-bottom:1rem;display:flex}.shopping-recipes{flex-wrap:wrap;align-items:center;gap:.375rem;margin-bottom:1rem;font-size:.75rem;display:flex}.shopping-recipes-label{color:var(--color-text-dim);font-weight:600}.shopping-recipe-chip{color:var(--color-primary);background:#6384ff1a;border-radius:4px;padding:.125rem .5rem;font-size:.6875rem;font-weight:500}.shopping-consolidate{align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.shopping-consolidate-hint{color:var(--color-text-dim);font-size:.6875rem}.shopping-consolidate-results{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:1rem;padding:1rem}.consolidate-item{border-bottom:1px solid var(--color-border);align-items:flex-start;gap:.5rem;padding:.5rem 0;display:flex}.consolidate-item:last-of-type{border-bottom:none}.consolidate-info{flex-direction:column;display:flex}.consolidate-new{color:var(--color-text);font-size:.875rem;font-weight:600}.consolidate-reason{color:var(--color-text-dim);margin-top:.125rem;font-size:.6875rem}.consolidate-suggestions{border-top:1px solid var(--color-border);margin-top:.5rem;padding-top:.5rem}.consolidate-suggestion{color:var(--color-text-muted);margin:0 0 .25rem;font-size:.75rem}.shopping-items{flex-direction:column;display:flex}.shopping-item{border-bottom:1px solid var(--color-border);align-items:center;gap:.625rem;padding:.5rem .25rem;display:flex}.shopping-item:last-child{border-bottom:none}.shopping-checkbox{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0}.shopping-item-text{flex:1;font-size:.875rem}.shopping-item.checked .shopping-item-text{color:var(--color-text-dim);text-decoration:line-through}.shopping-item .memo-action-btn{opacity:0;transition:opacity .15s}.shopping-item:hover .memo-action-btn{opacity:1}.shopping-checked{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:.75rem}.shopping-checked-header{color:var(--color-text-dim);align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:.6875rem;font-weight:600;display:flex}.shopping-checked-header .material-icon{color:var(--color-success);font-size:.875rem}@media (width<=900px){.mealplan-week{grid-template-columns:1fr}.mealplan-day{min-height:auto}}.cal-nav{align-items:center;gap:.5rem;margin-bottom:1rem;display:flex}.cal-month-label{text-align:center;min-width:200px;margin:0;font-size:1.125rem;font-weight:700}.cal-today-btn{margin-left:auto}.cal-grid{border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(7,1fr);display:grid;overflow:hidden}.cal-header{text-align:center;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-dim);background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:.5rem;font-size:.6875rem;font-weight:700}.cal-cell{background:var(--color-surface);border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);cursor:pointer;min-height:110px;padding:.375rem;transition:background .1s}.cal-cell:nth-child(7n+14){border-right:none}.cal-cell:hover{background:var(--color-hover)}.cal-cell.outside{background:var(--color-bg);opacity:.5}.cal-cell.today{background:#6384ff0d}.cal-day-num{color:var(--color-text-muted);margin-bottom:.25rem;font-size:.75rem;font-weight:500}.cal-today-badge{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:1.375rem;height:1.375rem;font-size:.6875rem;font-weight:700;display:inline-flex}.cal-events{flex-direction:column;gap:.1875rem;display:flex}.cal-event{background:var(--color-surface-raised);border-left:3px solid;border-radius:0 3px 3px 0;align-items:center;gap:.25rem;padding:.1875rem .25rem;display:flex;overflow:hidden}.cal-event-img{object-fit:cover;border-radius:3px;flex-shrink:0;width:18px;height:18px}.cal-event-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:.625rem;font-weight:500;overflow:hidden}.cal-event-more{color:var(--color-text-dim);padding:.0625rem .25rem;font-size:.5625rem}.day-panel{width:100%;max-width:480px}.day-panel-header{border-bottom:1px solid var(--color-border);padding:1.25rem 1.5rem 1rem}.day-panel-date{margin:0;padding-right:2rem;font-size:1.125rem;font-weight:700}.day-panel-body{padding:1rem 1.5rem 1.5rem}.day-panel-empty{color:var(--color-text-dim);text-align:center;margin:0;padding:1rem 0;font-size:.8125rem}.day-panel-events{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.day-panel-event{background:var(--color-surface-raised);border-radius:var(--radius-md);align-items:center;gap:.625rem;padding:.5rem .625rem;display:flex}.day-panel-event-color{border-radius:2px;flex-shrink:0;width:4px;height:28px}.day-panel-event-img{border-radius:var(--radius-sm);object-fit:cover;flex-shrink:0;width:36px;height:36px}.day-panel-event-info{flex:1;min-width:0}.day-panel-event-type{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-dim);font-size:.5625rem;font-weight:700;display:block}.day-panel-event-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:500;display:block;overflow:hidden}.day-panel-event-remove{color:var(--color-text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;display:flex}.day-panel-event-remove:hover{color:var(--color-danger);background:#f871711a}.day-panel-event-remove .material-icon{font-size:.875rem}.day-panel-add-buttons{gap:.5rem;display:flex}.day-panel-add{flex:1;justify-content:center}.day-panel-event-location{color:var(--color-text-dim);align-items:center;gap:.125rem;font-size:.6875rem;display:flex}.add-meal-form{border-top:1px solid var(--color-border);margin-top:.5rem;padding-top:1rem}.add-meal-title{margin:0 0 .75rem;font-size:.8125rem;font-weight:600}.add-meal-types{gap:.25rem;margin-bottom:.75rem;display:flex}.add-meal-type-btn{text-transform:capitalize;background:var(--color-surface-raised);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;border:1px solid #0000;flex:1;padding:.375rem;font-size:.6875rem;font-weight:600;transition:all .15s}.add-meal-type-btn:hover{color:var(--color-text)}.add-meal-type-btn.active{background:var(--color-active);border-color:var(--color-primary);color:var(--color-primary)}.add-meal-search-wrap{margin-bottom:.75rem;position:relative}.add-meal-search{width:100%;max-width:100%}.add-meal-selected{background:var(--color-active);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-text);align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem;font-size:.8125rem;display:flex}.add-meal-selected-img{object-fit:cover;border-radius:4px;width:28px;height:28px}.add-meal-clear{color:var(--color-text-dim);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:.125rem;display:flex}.add-meal-clear .material-icon{font-size:.875rem}.add-meal-results{z-index:10;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);max-height:240px;margin-top:.25rem;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.add-meal-result{border:none;border-bottom:1px solid var(--color-border);cursor:pointer;text-align:left;width:100%;color:var(--color-text);background:0 0;align-items:center;gap:.5rem;padding:.5rem .625rem;transition:background .1s;display:flex}.add-meal-result:last-child{border-bottom:none}.add-meal-result:hover{background:var(--color-hover)}.add-meal-result-img{object-fit:cover;border-radius:4px;flex-shrink:0;width:32px;height:32px}.add-meal-result-info{flex-direction:column;min-width:0;display:flex}.add-meal-result-name{text-overflow:ellipsis;white-space:nowrap;font-size:.8125rem;font-weight:500;overflow:hidden}.add-meal-result-time{color:var(--color-text-dim);font-size:.6875rem}.add-meal-actions{justify-content:flex-end;gap:.5rem;display:flex}.add-event-field{width:100%;max-width:100%;margin-bottom:.625rem}.add-event-allday{color:var(--color-text);cursor:pointer;align-items:center;gap:.5rem;margin-bottom:.625rem;font-size:.8125rem;display:flex}.add-event-allday input{width:auto;min-height:auto}.add-event-times{gap:.75rem;margin-bottom:.625rem;display:flex}.add-event-time-field{flex-direction:column;flex:1;gap:.25rem;display:flex}.add-event-time-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);font-size:.6875rem;font-weight:600}.add-event-time-field .search-input{width:100%;max-width:100%}.add-event-desc{resize:vertical;min-height:3rem;font-family:var(--font-sans);line-height:1.5}.sync-wrap{position:relative}.sync-btn{white-space:nowrap;font-size:.8125rem}.sync-backdrop{z-index:19;position:fixed;inset:0}.sync-menu{z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);min-width:240px;margin-top:.375rem;position:absolute;top:100%;right:0;overflow:hidden}.sync-menu-qr{min-width:260px}.sync-qr-single{flex-direction:column;align-items:center;padding:1.25rem 1.5rem;display:flex;position:relative}.sync-qr-back{color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;display:flex;position:absolute;top:.625rem;left:.625rem}.sync-qr-back:hover{color:var(--color-text);background:var(--color-hover)}.sync-qr-back .material-icon{font-size:1.125rem}.sync-qr-code{border-radius:var(--radius-md);background:#fff;padding:.75rem;display:flex}.sync-qr-label{color:var(--color-text);align-items:center;gap:.375rem;margin-top:.875rem;font-size:.8125rem;font-weight:600;display:flex}.sync-qr-label .material-icon{font-size:1.125rem}.sync-qr-hint{color:var(--color-text-dim);text-align:center;max-width:200px;margin:.5rem 0 0;font-size:.6875rem;line-height:1.5}.sync-menu-item{width:100%;font-size:.8125rem;font-family:var(--font-sans);color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:.5rem;padding:.625rem .875rem;text-decoration:none;transition:background .1s;display:flex}.sync-menu-item:hover{background:var(--color-hover);color:var(--color-text)}.sync-menu-item .material-icon{color:var(--color-text-muted);font-size:1.125rem}.sync-menu-divider{background:var(--color-border);height:1px}.sync-menu-manual{padding:.625rem .875rem}.sync-manual-label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-dim);margin-bottom:.25rem;font-size:.625rem;font-weight:700;display:block}.sync-manual-url{color:var(--color-text-muted);word-break:break-all;font-size:.6875rem;font-family:var(--font-mono)}.cal-mobile{display:none}.cal-mini-grid{border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:repeat(7,1fr);gap:0;display:grid;overflow:hidden}.cal-mini-header{text-align:center;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-dim);background:var(--color-surface);border-bottom:1px solid var(--color-border);padding:6px 0;font-size:10px;font-weight:700}.cal-mini-cell{background:var(--color-surface);cursor:pointer;border-bottom:1px solid #ffffff08;flex-direction:column;align-items:center;min-height:44px;padding:8px 2px 6px;display:flex}.cal-mini-cell.outside{opacity:.3}.cal-mini-cell.today .cal-mini-num{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.cal-mini-cell.selected{background:#6384ff14}.cal-mini-num{color:var(--color-text-muted);font-size:12px;font-weight:500;line-height:1}.cal-mini-dots{gap:2px;margin-top:4px;display:flex}.cal-mini-dot{border-radius:50%;width:5px;height:5px}.cal-mobile-agenda{margin-top:1rem}.cal-mobile-agenda-title{color:var(--color-text-muted);margin:0 0 .5rem;font-size:13px;font-weight:700}.cal-mobile-event{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);align-items:center;gap:.625rem;margin-bottom:.375rem;padding:.625rem .75rem;display:flex}.cal-mobile-event-color{border-radius:2px;flex-shrink:0;width:4px;height:28px}.cal-mobile-event-img{object-fit:cover;border-radius:4px;flex-shrink:0;width:36px;height:36px}.cal-mobile-event-info{flex:1;min-width:0}.cal-mobile-event-type{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-dim);font-size:9px;font-weight:700;display:block}.cal-mobile-event-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;display:block;overflow:hidden}.cal-mobile-event.tappable{cursor:pointer}.cal-mobile-event.tappable:active{background:#ffffff0f}@media (width<=640px){.cal-desktop{display:none}.cal-mobile{display:block}.cal-nav{gap:.25rem}.cal-month-label{min-width:0;font-size:1rem}.cal-today-btn,.page-header .sync-btn{padding:5px 10px;font-size:12px}}@media (width<=800px){.cal-cell{min-height:70px}.cal-event-img{display:none}.cal-event-title{font-size:.5625rem}}@media (width<=500px){.cal-grid{border-radius:var(--radius-md)}.cal-cell{min-height:50px;padding:.25rem}.cal-event{border-left-width:2px;padding:.125rem .1875rem}}.vin-scanner-modal{width:100%;max-width:560px}.vin-scanner-body{flex-direction:column;gap:.75rem;padding:1.5rem;display:flex}.vin-scanner-viewport{aspect-ratio:16/9;border-radius:var(--radius-md);background:#000;position:relative;overflow:hidden}.vin-scanner-viewport video{object-fit:cover;width:100%;height:100%}.vin-scanner-reticle{pointer-events:none;border:2px solid #6384ffd9;border-radius:4px;width:75%;height:18%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 9999px #00000073}.vin-scanner-status{color:var(--color-text-muted);text-align:center;padding:.25rem;font-size:.8125rem}.vin-scanner-detected{border-radius:var(--radius-sm);background:#4ade8014;border:1px solid #4ade804d;justify-content:center;align-items:center;gap:.5rem;padding:.5rem .75rem;display:flex}.vin-scanner-detected code{font-family:var(--font-mono);letter-spacing:.05em;font-size:.9rem;font-weight:700}.vin-scanner-actions{flex-wrap:wrap;justify-content:flex-end;gap:.375rem;display:flex}.vin-scanner-tips{color:var(--color-text-dim);background:var(--color-surface-raised);border-radius:var(--radius-sm);padding:.5rem;font-size:.6875rem;line-height:1.5}.vin-scanner-tips strong{color:var(--color-text-muted)}.inventory-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.inventory-card{cursor:pointer;transition:transform .15s,box-shadow .15s}.inventory-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.inventory-card-header{justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.375rem;display:flex}.inventory-card-title{margin:0;font-size:.9375rem;font-weight:600;line-height:1.3}.inventory-qty{color:var(--color-primary);background:var(--color-active);border-radius:4px;flex-shrink:0;padding:.0625rem .375rem;font-size:.6875rem;font-weight:700}.inventory-card-desc{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .5rem;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.inventory-card-meta{flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.inventory-location-badge{color:var(--color-text-muted);background:var(--color-surface-raised);border-radius:4px;align-items:center;gap:.1875rem;padding:.125rem .5rem;font-size:.6875rem;display:inline-flex}.inventory-location-badge .material-icon{font-size:.75rem}.inventory-labels{flex-wrap:wrap;gap:.25rem;display:flex}.inventory-label{color:var(--color-primary);background:#6384ff1a;border-radius:3px;padding:.0625rem .375rem;font-size:.625rem;font-weight:600}.inventory-card-footer{border-top:1px solid var(--color-border);align-items:center;gap:.75rem;margin-top:.5rem;padding-top:.5rem;font-size:.75rem;display:flex}.inventory-price{color:var(--color-success);font-weight:600}.inventory-warranty{color:var(--color-text-muted);align-items:center;gap:.25rem;display:flex}.inventory-warranty .material-icon{color:var(--color-success);font-size:.8125rem}.inv-filter-row{align-items:center;gap:.75rem;margin-bottom:.75rem;display:flex}.inventory-badge-insured{color:var(--color-success);font-size:.625rem}.inventory-badge-archived{font-size:.625rem}.inventory-card.archived{opacity:.6}.inv-action-row{flex-wrap:wrap;gap:.375rem;margin-bottom:1rem;display:flex}.inv-detail-hero{object-fit:cover;border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:100%;max-height:280px;display:block}.inv-attachments-section{margin-bottom:1rem}.inv-attachments-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.inv-attachments-header .detail-section-title{border:none;margin:0;padding:0}.inv-upload-btn{cursor:pointer;padding:.25rem .625rem;font-size:.6875rem}.inv-upload-btn .material-icon{font-size:.875rem}.inv-photo-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:.5rem;display:grid}.inv-photo{object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--color-border);cursor:pointer;width:100%;height:100px}.inv-doc-list{flex-direction:column;gap:.375rem;display:flex}.inv-doc-item{background:var(--color-surface-raised);border-radius:var(--radius-sm);color:var(--color-text);align-items:center;gap:.5rem;padding:.5rem .625rem;text-decoration:none;transition:background .1s;display:flex}.inv-doc-item:hover{background:var(--color-hover);color:var(--color-text)}.inv-doc-item .material-icon{color:var(--color-primary);font-size:1.125rem}.inv-doc-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:.8125rem;overflow:hidden}.inv-doc-type{text-transform:uppercase;color:var(--color-text-dim);background:var(--color-border);border-radius:3px;padding:.0625rem .375rem;font-size:.625rem;font-weight:600}.add-item-form{flex-direction:column;gap:.625rem;display:flex}.add-item-row{gap:.625rem;display:flex}.add-item-row .search-input{flex:1;width:auto;max-width:none}.add-item-form select{appearance:auto}.inv-photo-wrapper{border-radius:var(--radius-sm);position:relative;overflow:hidden}.inv-photo-wrapper .inv-photo{aspect-ratio:1;object-fit:cover;width:100%;display:block}.inv-photo-primary{box-shadow:0 0 0 2px var(--color-primary)}.inv-photo-actions{border-radius:var(--radius-sm);opacity:0;background:#00000080;gap:2px;padding:2px;transition:opacity .15s;display:flex;position:absolute;top:4px;right:4px}.inv-photo-wrapper:hover .inv-photo-actions{opacity:1}.inv-photo-actions .memo-action-btn{color:#fff}.inv-doc-type-buttons{flex-wrap:wrap;gap:.375rem;margin:.5rem 0;display:flex}.inv-doc-type-btn{cursor:pointer;align-items:center;gap:.25rem;padding:4px 10px;font-size:.75rem;display:inline-flex}.inv-doc-type-btn input{cursor:pointer}.inv-doc-name{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.inv-doc-type-badge{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);background:#6384ff1a;border-radius:3px;align-self:flex-start;padding:1px 5px;font-size:.5625rem;font-weight:700}.inv-doc-valid-until{color:var(--color-text-dim);font-size:.625rem;font-style:italic}.manage-item-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.manage-item-sub{color:var(--color-text-dim);font-size:.6875rem}.inventory-category-badge{color:#a78bfa;background:#7c3aed1f;border:1px solid #7c3aed33;border-radius:20px;align-items:center;gap:.25rem;padding:1px 6px;font-size:.6875rem;font-weight:600;display:inline-flex}.inventory-category-badge .material-icon{font-size:.8125rem}.inv-tag-chips{flex-wrap:wrap;gap:.25rem;min-height:1.5rem;display:flex}.inv-tag-chip{color:var(--color-text);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:20px;align-items:center;gap:.25rem;padding:2px 8px;font-size:.75rem;display:inline-flex}.inv-tag-chip.removable{cursor:pointer;transition:all .15s}.inv-tag-chip.removable:hover{background:#f871711f;border-color:#f871714d}.inv-tag-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.inv-tag-suggestions{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);z-index:10;max-height:200px;margin-top:2px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 16px #00000040}.inv-tag-suggestion{cursor:pointer;align-items:center;gap:.5rem;padding:.375rem .625rem;font-size:.8125rem;display:flex}.inv-tag-suggestion:hover{color:var(--color-primary);background:#6384ff1a}.btn.btn-sm{align-items:center;gap:.25rem;padding:3px 8px;font-size:.6875rem;display:inline-flex}.btn.btn-sm .material-icon{font-size:.875rem}.notes-page{max-width:1100px}.notes-body{align-items:flex-start;gap:1.25rem;display:flex}.notes-main{flex:1;min-width:0;max-width:700px}.memo-compose{margin-bottom:1.25rem}.memo-compose-input{width:100%;font-family:var(--font-sans);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);resize:vertical;outline:none;padding:.625rem .75rem;font-size:.875rem;line-height:1.6;transition:border-color .15s}.memo-compose-input:focus{border-color:var(--color-primary)}.memo-compose-input::placeholder{color:var(--color-text-dim)}.memo-compose-actions{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-top:.5rem;display:flex}.memo-compose-options{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.memo-compose-select{font-size:.75rem;font-family:var(--font-sans);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);appearance:auto;padding:.25rem .375rem}.memo-compose-date{align-items:center;gap:.25rem;display:flex}.memo-date-btn{font-size:.6875rem;font-family:var(--font-sans);background:var(--color-surface-raised);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;border:1px solid #0000;align-items:center;gap:.25rem;padding:.25rem .5rem;display:flex}.memo-date-btn.active{border-color:var(--color-primary);color:var(--color-primary)}.memo-date-btn .material-icon{font-size:.875rem}.memo-date-input{font-size:.75rem;font-family:var(--font-sans);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);padding:.1875rem .375rem}.memo-compose-buttons{flex-shrink:0;gap:.375rem;display:flex}.memo-filters{flex-wrap:wrap;gap:.25rem;margin-bottom:1rem;display:flex}.memo-date-group{margin-bottom:1.5rem}.memo-date-header{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);border-bottom:1px solid var(--color-border);align-items:center;gap:.5rem;margin-bottom:.625rem;padding-bottom:.375rem;font-size:.75rem;font-weight:700;display:flex}.memo-date-header .material-icon{font-size:.875rem}.memo-feed{flex-direction:column;display:flex}.memo-date-group .memo-card{margin-bottom:.625rem}.memo-card{transition:box-shadow .15s}.memo-card.pinned{background:linear-gradient(135deg, var(--color-surface) 0%, #6384ff08 100%);border-color:#6384ff4d}.memo-card-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.memo-card-header-left{align-items:center;gap:.5rem;display:flex}.memo-card-time{color:var(--color-text-dim);font-size:.6875rem}.memo-vis-badge{display:flex}.memo-vis-badge .material-icon{color:var(--color-text-dim);font-size:.75rem}.memo-card-actions{opacity:0;align-items:center;gap:.125rem;transition:opacity .15s;display:flex}.memo-card:hover .memo-card-actions{opacity:1}.memo-pin-icon{color:var(--color-primary);margin-right:.25rem;font-size:.75rem}.memo-action-btn{color:var(--color-text-dim);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:4px;transition:all .15s;display:flex}.memo-action-btn:hover{color:var(--color-text);background:#ffffff0f}.memo-action-btn .material-icon{font-size:.875rem}.memo-reaction-picker{background:var(--color-surface-raised);border-radius:var(--radius-md);gap:.25rem;width:fit-content;margin-bottom:.5rem;padding:.375rem;display:flex}.memo-reaction-btn{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;font-size:1.125rem;transition:background .1s}.memo-reaction-btn:hover{background:var(--color-hover)}.memo-reactions{gap:.25rem;margin-top:.5rem;display:flex}.memo-reaction-chip{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:12px;padding:.0625rem .375rem;font-size:.875rem}.memo-card-content{color:var(--color-text);word-break:break-word;font-size:.875rem;line-height:1.7}.memo-card-content h1,.memo-card-content h2,.memo-card-content h3{margin:.75rem 0 .25rem;line-height:1.3}.memo-card-content h1{font-size:1.125rem}.memo-card-content h2{font-size:1rem}.memo-card-content h3{font-size:.9375rem}.memo-card-content p{margin:0 0 .25rem}.memo-card-content code{background:var(--color-surface-raised);font-family:var(--font-mono);border-radius:3px;padding:.0625rem .3125rem;font-size:.8125rem}.memo-card-content li{margin-bottom:.125rem}.memo-tag-inline{color:var(--color-primary);font-weight:500}.memo-task{cursor:pointer;align-items:center;gap:.5rem;padding:.1875rem 0;display:flex}.memo-checkbox{cursor:pointer;width:1rem;height:1rem;accent-color:var(--color-primary);flex-shrink:0}.memo-task-done{color:var(--color-text-dim);text-decoration:line-through}.memo-card-tags{border-top:1px solid var(--color-border);gap:.375rem;margin-top:.625rem;padding-top:.5rem;display:flex}.memo-tag{color:var(--color-primary);background:#6384ff1a;border-radius:3px;padding:.0625rem .375rem;font-size:.6875rem;font-weight:600}.memo-edit{margin-top:.25rem}.memo-edit .memo-compose-input{margin-bottom:.5rem}.notes-help{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-shrink:0;width:280px;max-height:calc(100vh - 8rem);position:sticky;top:4.5rem;overflow-y:auto}.notes-help-header{border-bottom:1px solid var(--color-border);background:var(--color-surface);z-index:1;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex;position:sticky;top:0}.notes-help-title{color:var(--color-text);align-items:center;gap:.375rem;margin:0;font-size:.8125rem;font-weight:700;display:flex}.notes-help-title .material-icon{color:var(--color-primary);font-size:1rem}.notes-help-body{padding:.75rem 1rem}.notes-help-section{margin-bottom:1rem}.notes-help-section:last-child{margin-bottom:0}.notes-help-section h4{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);margin:0 0 .375rem;font-size:.75rem;font-weight:700}.notes-help-section p{color:var(--color-text-muted);margin:0 0 .25rem;font-size:.75rem;line-height:1.6}.notes-help-section ul{margin:.25rem 0;padding:0;list-style:none}.notes-help-section li{color:var(--color-text-muted);padding:.125rem 0;font-size:.75rem;line-height:1.5}.notes-help-section code{font-family:var(--font-mono);color:var(--color-text);background:var(--color-surface-raised);border-radius:3px;margin-bottom:.1875rem;padding:.1875rem .5rem;font-size:.6875rem;display:block}.notes-help-section p code{margin:0;display:inline}.notes-help-examples{margin:.25rem 0}@media (width<=900px){.notes-body{flex-direction:column}.notes-help{width:100%;max-height:none;position:static}}.memo-comments{border-top:1px solid var(--color-border);margin-top:.75rem;padding-top:.75rem}.memo-comments-header{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:.6875rem;font-weight:700;display:flex}.memo-comment{border-bottom:1px solid var(--color-border);padding:.375rem 0}.memo-comment:last-of-type{border-bottom:none}.memo-comment-time{color:var(--color-text-dim);font-size:.625rem}.memo-comment-text{color:var(--color-text);margin:.125rem 0 0;font-size:.8125rem;line-height:1.5}.memo-comment-compose{gap:.375rem;margin-top:.5rem;display:flex}.vehicle-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;display:grid}.vehicle-card{cursor:pointer;transition:transform .15s,box-shadow .15s}.vehicle-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.vehicle-card-header{align-items:center;gap:.75rem;display:flex}.vehicle-icon{color:var(--color-primary);opacity:.7;font-size:2rem}.vehicle-card-title{margin:0;font-size:1rem;font-weight:700}.vehicle-card-plate{font-size:.75rem;font-family:var(--font-mono);color:var(--color-text-muted);background:var(--color-surface-raised);border-radius:3px;padding:.0625rem .375rem}.vehicle-card-tags{gap:.375rem;margin-top:.5rem;display:flex}.vehicle-badge{text-transform:uppercase;letter-spacing:.06em;border-radius:3px;padding:.125rem .375rem;font-size:.5625rem;font-weight:700}.vehicle-badge.ev{color:var(--color-success);background:#22c55e26}.vehicle-badge.diesel{color:var(--color-warning);background:#f59e0b26}.vehicle-detail-modal{max-width:680px}.vehicle-detail-header{align-items:center;gap:.75rem;padding:1.25rem 1.5rem .75rem;display:flex}.vehicle-detail-body{padding:1rem 1.5rem 1.5rem}.vehicle-records{flex-direction:column;gap:.375rem;display:flex}.vehicle-record{background:var(--color-surface-raised);border-radius:var(--radius-sm);border-left:3px solid var(--color-border);justify-content:space-between;align-items:center;padding:.625rem .75rem;display:flex}.vehicle-record.urgent{border-left-color:var(--color-danger);background:#f871710d}.vehicle-record-left{align-items:center;gap:.625rem;min-width:0;display:flex}.vehicle-record-icon{color:var(--color-text-dim);flex-shrink:0;font-size:1rem}.vehicle-record-desc{color:var(--color-text);font-size:.8125rem;font-weight:500;display:block}.vehicle-record-meta{color:var(--color-text-dim);font-size:.6875rem;display:block}.vehicle-record-cost{color:var(--color-success);flex-shrink:0;font-size:.8125rem;font-weight:600}.vehicle-urgency{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;flex-shrink:0;padding:.125rem .375rem;font-size:.5625rem;font-weight:700}.vehicle-urgency.urgent,.vehicle-urgency.past-due{color:var(--color-danger);background:#f8717126}.vehicle-urgency.not-urgent{color:var(--color-success);background:#22c55e26}.vehicle-doc-upload{align-items:center;gap:.5rem;margin-bottom:.25rem;display:flex}.vehicle-doc-label{background:var(--color-surface-raised);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);cursor:pointer;flex:1;align-items:center;gap:.5rem;padding:.5rem .75rem;font-size:.75rem;transition:border-color .15s,color .15s;display:flex}.vehicle-doc-label:hover{border-color:var(--color-primary);color:var(--color-primary)}.vehicle-doc-label .material-icon{font-size:1rem}.vin-decode-msg{border-radius:var(--radius-sm);margin:-.125rem 0 .125rem;padding:.375rem .625rem;font-size:.75rem;line-height:1.4}.vin-decode-info{color:var(--color-primary);background:#6384ff14;border:1px solid #6384ff33}.vin-decode-success{color:var(--color-success);background:#4ade8014;border:1px solid #4ade8040}.vin-decode-error{color:var(--color-danger);background:#f8717114;border:1px solid #f8717140}.documents-page{max-width:900px}.doc-upload-status{border-radius:var(--radius-md);align-items:center;gap:.5rem;margin-bottom:1rem;padding:.625rem 1rem;font-size:.8125rem;font-weight:500;display:flex}.doc-upload-status.uploading,.doc-upload-status.processing{color:var(--color-primary);background:#6384ff1a;border:1px solid #6384ff4d}.doc-upload-status.done{color:var(--color-success);background:#4ade801a;border:1px solid #4ade804d}.doc-upload-status.error{color:var(--color-danger);background:#f871711a;border:1px solid #f871714d}.doc-status-icon{font-size:1.125rem}.doc-status-icon.spin{animation:1s linear infinite docSpin}@keyframes docSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.doc-filters{margin-bottom:1rem}.doc-filter-row{flex-wrap:wrap;gap:.75rem;display:flex}.doc-filter-group{align-items:center;gap:.375rem;display:flex}.doc-filter-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);font-size:.6875rem;font-weight:600}.doc-filter-select{font-size:.75rem;font-family:var(--font-sans);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);appearance:auto;padding:.25rem .5rem}.doc-bulk-bar{background:var(--color-active);border:1px solid var(--color-primary);border-radius:var(--radius-md);color:var(--color-primary);align-items:center;gap:.75rem;margin-bottom:.75rem;padding:.5rem .75rem;font-size:.8125rem;font-weight:500;display:flex}.doc-bulk-check{width:auto;min-height:auto;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0}.doc-list{flex-direction:column;gap:.5rem;display:flex}.doc-card{cursor:pointer;gap:.875rem;transition:transform .15s,box-shadow .15s;display:flex}.doc-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.doc-card.selected{border-color:var(--color-primary);background:var(--color-active)}.doc-card-icon{background:var(--color-surface-raised);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.doc-card-icon .material-icon{color:var(--color-primary);font-size:1.5rem}.doc-card-info{flex:1;min-width:0}.doc-card-title{text-overflow:ellipsis;white-space:nowrap;margin:0 0 .25rem;font-size:.9375rem;font-weight:600;overflow:hidden}.doc-card-meta{color:var(--color-text-dim);gap:.75rem;margin-bottom:.25rem;font-size:.6875rem;display:flex}.doc-card-corr{color:var(--color-text-muted);font-weight:600}.doc-card-type{color:var(--color-primary);background:#6384ff1a;border-radius:2px;padding:0 .25rem;font-weight:600}.doc-card-tags{flex-wrap:wrap;gap:.25rem;margin-bottom:.25rem;display:flex}.doc-tag{color:var(--color-primary);background:#6384ff1a;border-radius:3px;padding:.0625rem .375rem;font-size:.5625rem;font-weight:600}.doc-card-snippet{color:var(--color-text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.75rem;line-height:1.4;display:-webkit-box;overflow:hidden}.doc-detail-modal{max-width:800px}.doc-detail-content{padding:1.5rem}.doc-detail-meta{color:var(--color-text-dim);border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;padding-bottom:.75rem;font-size:.6875rem;display:flex}.doc-detail-assignments{gap:1rem;margin-bottom:.75rem;display:flex}.doc-assign-field{flex-direction:column;flex:1;gap:.25rem;display:flex}.doc-assign-field label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);font-size:.625rem;font-weight:700}.doc-suggestions{background:var(--color-surface-raised);border-radius:var(--radius-md);margin-bottom:.75rem;padding:.625rem}.doc-suggestions .detail-section-title{margin-bottom:.5rem}.doc-suggestion-chips{flex-wrap:wrap;gap:.375rem;display:flex}.doc-suggestion-chip{font-size:.6875rem;font-family:var(--font-sans);color:var(--color-primary);border-radius:var(--radius-sm);cursor:pointer;background:#6384ff1a;border:1px solid #6384ff33;align-items:center;gap:.25rem;padding:.25rem .5rem;font-weight:500;display:inline-flex}.doc-suggestion-chip:hover{border-color:var(--color-primary);background:#6384ff33}.doc-suggestion-chip .material-icon{font-size:.75rem}.doc-detail-actions{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.doc-notes-section{border-top:1px solid var(--color-border);margin-bottom:1rem;padding-top:.75rem}.doc-notes-list{flex-direction:column;gap:.375rem;margin-bottom:.5rem;display:flex}.doc-note{border-bottom:1px solid var(--color-border);padding:.375rem 0}.doc-note:last-child{border-bottom:none}.doc-note-time{color:var(--color-text-dim);font-size:.625rem}.doc-note-text{margin:.125rem 0 0;font-size:.8125rem;line-height:1.5}.doc-note-compose{gap:.375rem;display:flex}.doc-tags-section{margin-bottom:.75rem}.doc-tags-current{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.doc-tag-removable{cursor:pointer;transition:background .1s}.doc-tag-removable:hover{color:var(--color-danger);background:#f8717133}.doc-tag-x{margin-left:.25rem;font-weight:700}.doc-tag-add{font-size:.6875rem;font-family:var(--font-sans);background:var(--color-surface-raised);border:1px dashed var(--color-border);color:var(--color-text-muted);appearance:auto;cursor:pointer;border-radius:3px;padding:.125rem .375rem}.manage-list{max-height:300px;margin-bottom:1rem;overflow-y:auto}.manage-item{border-bottom:1px solid var(--color-border);align-items:center;gap:.5rem;padding:.5rem .25rem;display:flex}.manage-item:last-child{border-bottom:none}.manage-color{border-radius:3px;flex-shrink:0;width:14px;height:14px}.manage-item-name{flex:1;font-size:.8125rem;font-weight:500}.manage-item-path{font-size:.6875rem;font-family:var(--font-mono);color:var(--color-text-dim);text-overflow:ellipsis;white-space:nowrap;max-width:150px;overflow:hidden}.manage-item-count{color:var(--color-text-dim);flex-shrink:0;font-size:.6875rem}.manage-create{border-top:1px solid var(--color-border);padding-top:.75rem}.manage-create-row{align-items:center;gap:.375rem;display:flex}.manage-color-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;width:32px;height:32px;padding:0}.manage-hint{color:var(--color-text-dim);font-size:.625rem;font-family:var(--font-mono);margin:.375rem 0 0}.doc-detail-text{margin-top:1rem}.doc-content-pre{font-family:var(--font-sans);color:var(--color-text);background:var(--color-surface-raised);border-radius:var(--radius-md);white-space:pre-wrap;word-break:break-word;max-height:400px;padding:1rem;font-size:.8125rem;line-height:1.7;overflow-y:auto}.maintenance-page{max-width:800px}.maint-stats{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem;display:grid}.maint-stat{text-align:center;cursor:pointer;transition:transform .15s}.maint-stat:hover{transform:translateY(-2px)}.maint-stat.overdue{border-color:var(--color-danger);background:#f871710d}.maint-stat.overdue .stat-value{color:var(--color-danger)}.maint-list{flex-direction:column;gap:.5rem;display:flex}.maint-card{border-left:4px solid var(--color-border);justify-content:space-between;align-items:center;gap:1rem;display:flex}.maint-card.overdue{border-left-color:var(--color-danger);background:#f8717108}.maint-card.due-soon{border-left-color:var(--color-warning)}.maint-card-left{flex:1;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.maint-status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:.375rem}.maint-status-dot.ok{background:var(--color-success)}.maint-status-dot.due-soon{background:var(--color-warning)}.maint-status-dot.overdue{background:var(--color-danger)}.maint-card-info{flex:1;min-width:0}.maint-card-title{margin:0 0 .25rem;font-size:.9375rem;font-weight:600}.maint-card-item{color:var(--color-text-muted);align-items:center;gap:.25rem;margin-bottom:.25rem;font-size:.75rem;display:flex}.maint-card-meta{color:var(--color-text-dim);gap:.75rem;font-size:.6875rem;display:flex}.maint-card-notes{color:var(--color-text-dim);margin:.25rem 0 0;font-size:.75rem;font-style:italic}.maint-card-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.maint-item-picker{border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:180px;margin-top:.25rem;overflow-y:auto}.maint-item-option{border:none;border-bottom:1px solid var(--color-border);width:100%;font-family:var(--font-sans);color:var(--color-text);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;align-items:center;padding:.5rem .625rem;font-size:.8125rem;display:flex}.maint-item-option:last-child{border-bottom:none}.maint-item-option:hover{background:var(--color-hover)}.maint-item-loc{color:var(--color-text-dim);font-size:.6875rem}.contacts-page{max-width:800px}.contacts-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:.75rem;display:grid}.contact-card{position:relative}.contact-card-header{align-items:center;gap:.625rem;margin-bottom:.625rem;display:flex}.contact-icon{color:var(--color-primary);opacity:.7;font-size:1.5rem}.contact-name{margin:0;font-size:1rem;font-weight:700}.contact-rel{color:var(--color-text-muted);font-size:.6875rem}.contact-priority{color:var(--color-warning);margin-left:auto;font-size:.75rem;font-weight:600}.contact-details{flex-direction:column;gap:.25rem;margin-bottom:.5rem;display:flex}.contact-detail{color:var(--color-primary);align-items:center;gap:.375rem;font-size:.8125rem;text-decoration:none;display:flex}.contact-detail:hover{text-decoration:underline}.contact-detail .material-icon{color:var(--color-text-dim);font-size:.875rem}.contact-notes{color:var(--color-text-dim);margin:0;font-size:.75rem;font-style:italic}.contact-delete{opacity:0;transition:opacity .15s;position:absolute;top:.75rem;right:.75rem}.contact-card:hover .contact-delete{opacity:1}.pets-page{max-width:800px}.pet-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;display:grid}.pet-card{cursor:pointer;align-items:center;gap:.875rem;transition:transform .15s,box-shadow .15s;display:flex}.pet-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.pet-card-avatar{background:var(--color-surface-raised);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.pet-card-photo{object-fit:cover;width:100%;height:100%}.pet-card-icon{color:var(--color-primary);opacity:.7;font-size:1.75rem}.pet-card-info{flex:1;min-width:0}.pet-card-name{margin:0;font-size:1rem;font-weight:700}.pet-card-detail{color:var(--color-text-muted);font-size:.75rem;display:block}.pet-card-weight{color:var(--color-text-dim);font-size:.6875rem}.pet-detail-modal{max-width:680px}.pet-detail-header{align-items:center;gap:1rem;padding:1.25rem 1.5rem .5rem;display:flex}.pet-detail-avatar{background:var(--color-surface-raised);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;display:flex;overflow:hidden}.pet-detail-photo{object-fit:cover;width:100%;height:100%}.pet-detail-subtitle{color:var(--color-text-muted);margin:.125rem 0;font-size:.8125rem}.pet-detail-dob,.pet-detail-chip{color:var(--color-text-dim);font-size:.6875rem;display:block}.pet-detail-body{padding:.75rem 1.5rem 1.5rem}.pet-stat{color:var(--color-text);margin:0 0 .5rem;font-size:.875rem}.pet-notes-text{color:var(--color-text-muted);margin:0 0 .75rem;font-size:.8125rem}.pet-record{border-bottom:1px solid var(--color-border);align-items:center;gap:.625rem;padding:.5rem;display:flex}.pet-record:last-of-type{border-bottom:none}.pet-record.expired{border-left:3px solid var(--color-danger);padding-left:.75rem}.pet-record-info{flex:1;min-width:0}.pet-record-name{font-size:.8125rem;font-weight:600;display:block}.pet-record-meta{color:var(--color-text-dim);font-size:.6875rem;display:block}.pet-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;flex-shrink:0;padding:.125rem .375rem;font-size:.5625rem;font-weight:700}.pet-badge.expired{color:var(--color-danger);background:#f8717126}.pet-badge.primary{color:var(--color-primary);background:#6384ff26}.pet-action-row{gap:.5rem;margin-top:1rem;display:flex}.pet-note-item{border-bottom:1px solid var(--color-border);padding:.375rem 0;font-size:.8125rem}.pet-note-item p{margin:0}.pet-note-time{color:var(--color-text-dim);font-size:.625rem}.lr-profile-row{background:var(--color-surface-raised);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary);justify-content:space-between;align-items:flex-start;gap:.5rem;margin-bottom:.5rem;padding:.625rem .75rem;display:flex}.pets-lr-panel{border-top:1px solid var(--color-border);margin-top:1.5rem;padding-top:1rem}.pets-section-title{color:var(--color-text);align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:1.125rem;font-weight:700;display:flex}.pets-section-title .material-icon{color:var(--color-primary)}.lr-robot-card{background:var(--color-surface-raised);border-radius:var(--radius-md);border:1px solid var(--color-border);margin-bottom:.75rem;padding:.75rem}.lr-robot-header{justify-content:space-between;align-items:flex-start;gap:.5rem;display:flex}.lr-robot-name{font-size:.9375rem;font-weight:700}.lr-robot-meta{color:var(--color-text-dim);margin-top:.125rem;font-size:.75rem}.lr-status-ok{color:var(--color-success)}.lr-status-err{color:var(--color-danger)}.lr-drawer-gauge{margin:.625rem 0}.lr-drawer-label{margin-bottom:.25rem;font-size:.8125rem}.lr-drawer-bar{background:var(--color-surface);border-radius:4px;width:100%;height:8px;position:relative;overflow:hidden}.lr-drawer-fill{height:100%;transition:width .3s}.lr-drawer-tick{background:var(--color-text);pointer-events:auto;cursor:help;width:2px;position:absolute;top:-2px;bottom:-2px}.lr-drawer-alert-row{color:var(--color-text);align-items:center;gap:.375rem;margin-top:.5rem;font-size:.75rem;display:flex}.lr-drawer-alert-row a{color:inherit;text-decoration:underline}.lr-threshold-input{width:5rem;padding:.25rem .5rem;font-size:.875rem}.lr-robot-controls{flex-wrap:wrap;gap:.375rem;display:flex}.lr-robot-controls .btn{flex:1;justify-content:center;min-width:110px}.lr-heatmap{-webkit-user-select:none;user-select:none;flex-direction:column;gap:2px;font-size:.6875rem;display:flex}.lr-heatmap-row{grid-template-columns:1.25rem repeat(24,1fr);align-items:center;gap:2px;display:grid}.lr-heatmap-hour-row{color:var(--color-text-dim);grid-template-columns:1.25rem repeat(24,1fr);gap:2px;display:grid}.lr-heatmap-hour-label{text-align:center;font-size:.625rem}.lr-heatmap-day-label{text-align:center;color:var(--color-text-dim);font-weight:600}.lr-heatmap-cell{aspect-ratio:1;cursor:default;border-radius:2px}.tasks-page{max-width:800px}.task-list{flex-direction:column;display:flex}.task-item{border-bottom:1px solid var(--color-border);align-items:flex-start;gap:.75rem;padding:.625rem .5rem;display:flex}.task-item:last-child{border-bottom:none}.task-item.done{opacity:.5}.task-item.overdue{border-left:3px solid var(--color-danger);padding-left:.75rem}.task-checkbox{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);cursor:pointer;flex-shrink:0;margin-top:.125rem}.task-info{flex:1;min-width:0}.task-title{font-size:.875rem;font-weight:500;display:block}.task-item.done .task-title{color:var(--color-text-dim);text-decoration:line-through}.task-fav-icon{color:var(--color-warning);vertical-align:middle;margin-right:.25rem;font-size:.875rem}.task-meta{color:var(--color-text-dim);align-items:center;gap:.625rem;margin-top:.125rem;font-size:.6875rem;display:flex}.task-project{background:var(--color-surface-raised);border-radius:3px;padding:0 .375rem}.task-due{align-items:center;gap:.125rem;display:flex}.task-due.overdue{color:var(--color-danger);font-weight:600}.task-priority{text-transform:uppercase;letter-spacing:.05em;font-size:.625rem;font-weight:600}.task-progress{color:var(--color-primary);font-weight:600}.task-repeat-icon{color:var(--color-text-dim);font-size:.75rem}.task-labels{flex-wrap:wrap;gap:.25rem;margin-top:.25rem;display:flex}.task-label{border:1px solid;border-radius:3px;padding:.0625rem .375rem;font-size:.5625rem;font-weight:600}.task-label-removable{cursor:pointer}.task-label-removable:hover{opacity:.6}.task-actions{flex-shrink:0;gap:.125rem;display:flex}.task-item .task-actions .memo-action-btn{opacity:0;transition:opacity .15s}.task-item:hover .task-actions .memo-action-btn{opacity:1}.task-detail-meta{color:var(--color-text-dim);flex-wrap:wrap;align-items:center;gap:.625rem;margin-bottom:.75rem;font-size:.6875rem;display:flex}.task-detail-status{text-transform:uppercase;letter-spacing:.06em;border-radius:4px;padding:.125rem .5rem;font-size:.625rem;font-weight:700}.task-detail-status.open{color:var(--color-success);background:#4ade8026}.task-detail-status.done{background:var(--color-surface-raised);color:var(--color-text-dim)}.task-progress-bar{background:var(--color-border);border-radius:2px;height:4px;margin-bottom:.75rem;overflow:hidden}.task-progress-fill{background:var(--color-primary);border-radius:2px;height:100%;transition:width .3s}.task-detail-labels{flex-wrap:wrap;align-items:center;gap:.375rem;margin-bottom:.75rem;display:flex}.task-detail-desc{color:var(--color-text);margin-bottom:.75rem;font-size:.875rem;line-height:1.6}.task-detail-desc p{margin:0 0 .5rem}.task-detail-actions{flex-wrap:wrap;gap:.375rem;margin-bottom:.75rem;display:flex}.task-comments{border-top:1px solid var(--color-border);margin-top:.5rem;padding-top:.75rem}.task-comment{border-bottom:1px solid var(--color-border);padding:.375rem 0}.task-comment:last-of-type{border-bottom:none}.task-comment-author{color:var(--color-primary);margin-right:.5rem;font-size:.6875rem;font-weight:600}.task-comment-time{color:var(--color-text-dim);font-size:.625rem}.task-comment-text{margin:.125rem 0 0;font-size:.8125rem;line-height:1.5}.checklist-toggle{gap:.25rem;margin-bottom:.5rem;display:flex}.checklist-builder{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:.5rem;padding:.5rem}.checklist-item{border-bottom:1px solid var(--color-border);align-items:center;gap:.5rem;padding:.375rem .25rem;display:flex}.checklist-item:last-of-type{border-bottom:none}.checklist-item-text{flex:1;font-size:.8125rem}.checklist-item .memo-action-btn{opacity:0}.checklist-item:hover .memo-action-btn{opacity:1}.checklist-add-row{align-items:center;gap:.5rem;margin-top:.25rem;padding:.375rem .25rem;display:flex}.checklist-input{max-width:none;color:var(--color-text);background:0 0;border:none;outline:none;flex:1;padding:.25rem 0;font-size:.8125rem}.checklist-input::placeholder{color:var(--color-text-dim)}.checklist-count{color:var(--color-text-dim);text-align:right;margin-top:.25rem;font-size:.625rem;display:block}.task-checklist-wrap ul{margin:.25rem 0;padding:0;list-style:none}.task-checklist-wrap li{border-bottom:1px solid var(--color-border);cursor:pointer;align-items:center;gap:.5rem;padding:.375rem 0;font-size:.875rem;display:flex}.task-checklist-wrap li:last-child{border-bottom:none}.task-checklist-wrap input[type=checkbox]{width:1.125rem;height:1.125rem;accent-color:var(--color-primary);cursor:pointer}.task-checklist-wrap li:has(input:checked){color:var(--color-text-dim);text-decoration:line-through}.task-view-toggle{gap:2px;display:flex}.task-view-btn{color:var(--color-text-dim);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;padding:4px 8px;transition:all .15s;display:flex}.task-view-btn:first-child{border-radius:var(--radius-sm) 0 0 var(--radius-sm)}.task-view-btn:last-child{border-radius:0 var(--radius-sm) var(--radius-sm) 0}.task-view-btn:hover{color:var(--color-text);background:#ffffff14}.task-view-btn.active{color:var(--color-primary);background:#6384ff1a;border-color:#6384ff40}.task-view-btn .material-icon{font-size:1.125rem}.kanban-board{grid-template-columns:repeat(3,1fr);gap:.75rem;min-height:400px;display:grid}.kanban-column{border:1px solid var(--color-border);border-radius:var(--radius-md);background:#ffffff05;flex-direction:column;min-height:300px;display:flex}.kanban-column-header{border-bottom:1px solid var(--color-border);align-items:center;gap:.375rem;padding:.625rem .75rem;display:flex}.kanban-column-title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);flex:1;font-size:.6875rem;font-weight:700}.kanban-column-count{color:var(--color-text-dim);background:#ffffff0f;border-radius:20px;padding:1px 6px;font-size:.625rem;font-weight:700}.kanban-cards{flex-direction:column;flex:1;gap:.375rem;padding:.5rem;display:flex;overflow-y:auto}.kanban-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:transform .15s var(--ease-spring), box-shadow .2s ease;padding:.625rem .75rem}.kanban-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.kanban-card.overdue{border-left:3px solid var(--color-danger)}.kanban-card-title{margin-bottom:.25rem;font-size:.8125rem;font-weight:600;display:block}.kanban-card-meta{color:var(--color-text-dim);flex-wrap:wrap;align-items:center;gap:.375rem;font-size:.625rem;display:flex}.kanban-card-assignees{flex-wrap:wrap;gap:.25rem;margin-top:.375rem;display:flex}.kanban-card-actions{justify-content:flex-end;gap:.25rem;margin-top:.375rem;display:flex}.kanban-move-btn{border-radius:var(--radius-sm);color:var(--color-text-dim);cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;padding:2px 6px;transition:all .15s;display:flex}.kanban-move-btn:hover{color:var(--color-primary);background:#6384ff1a;border-color:#6384ff33}.kanban-move-btn .material-icon{font-size:.875rem}.kanban-empty{text-align:center;color:var(--color-text-dim);opacity:.5;padding:2rem .5rem;font-size:.75rem}@media (width<=640px){.kanban-board{grid-template-columns:1fr;min-height:auto}.kanban-column{min-height:150px}}.task-extra-meta{flex-wrap:wrap;gap:.25rem;margin-top:.25rem;display:flex}.task-assignee-chip{color:var(--color-primary);background:#6384ff1f;border:1px solid #6384ff33;border-radius:20px;align-items:center;gap:.1875rem;padding:1px 6px;font-size:.5625rem;font-weight:600;display:inline-flex}.task-assignee-chip.removable{cursor:pointer}.task-assignee-chip.removable:hover{background:#6384ff33}.task-module-chip{color:var(--color-text-muted);background:#ffffff0f;border:1px solid #ffffff1a;border-radius:20px;align-items:center;gap:.1875rem;padding:1px 6px;font-size:.5625rem;font-weight:600;display:inline-flex}.task-module-chip.removable{cursor:pointer}.task-module-chip.removable:hover{background:#ffffff1a}.task-module-chip.navigable{cursor:pointer}.task-module-chip.navigable:hover{color:var(--color-primary);background:#6384ff1f;border-color:#6384ff33}.task-module-chip-group{border:1px solid #ffffff1a;border-radius:20px;align-items:center;gap:0;display:inline-flex;overflow:hidden}.task-module-chip-group .task-module-chip{border:none;border-radius:0;padding-right:4px}.task-module-remove{color:var(--color-text-dim);cursor:pointer;background:0 0;border:none;border-left:1px solid #ffffff14;padding:1px 5px;font-size:.6875rem;transition:all .15s}.task-module-remove:hover{color:var(--color-danger);background:#ef444426}.task-detail-section{margin:.75rem 0}.task-assignee-list,.task-module-list{flex-wrap:wrap;align-items:center;gap:.375rem;display:flex}.task-empty-hint{color:var(--color-text-dim);font-size:.6875rem}.task-add-link-btn{color:var(--color-text-dim);cursor:pointer;background:0 0;border:1px dashed #ffffff26;border-radius:20px;align-items:center;gap:.25rem;padding:2px 8px;font-size:.6875rem;font-weight:500;transition:all .15s;display:inline-flex}.task-add-link-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.task-link-form{background:var(--color-surface-raised);border-radius:var(--radius-sm);border:1px solid var(--color-border);flex-direction:column;gap:.375rem;margin-top:.5rem;padding:.625rem;display:flex}.task-link-form .search-input{flex:1;min-width:0;max-width:100%}.template-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;margin-bottom:1rem;display:grid}.template-card{border-radius:var(--radius-md);cursor:pointer;background:var(--color-surface-raised);border:1px solid var(--color-border);transition:border-color .15s, transform .15s var(--ease-spring);padding:.75rem}.template-card:hover{border-color:var(--color-text-dim);transform:translateY(-1px)}.template-card-header{align-items:center;gap:.5rem;margin-bottom:.375rem;display:flex}.template-card-icon{color:var(--color-primary);opacity:.8;font-size:1.25rem}.template-card-name{flex:1;font-size:.8125rem;font-weight:700}.template-card-builtin{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);background:#6384ff1a;border-radius:3px;padding:1px 4px;font-size:.5rem;font-weight:700}.template-card-items{flex-wrap:wrap;gap:.25rem;margin-top:.25rem;display:flex}.template-card-item{color:var(--color-text-dim);background:#ffffff0a;border:1px solid #ffffff0f;border-radius:3px;padding:1px 5px;font-size:.625rem}.template-card-count{color:var(--color-text-dim);margin-top:.25rem;font-size:.625rem}.template-card-actions{justify-content:flex-end;gap:.25rem;margin-top:.5rem;display:flex}.template-use-bar{border-top:1px solid var(--color-border);gap:.375rem;margin-top:.5rem;padding-top:.5rem;display:flex}.template-picker{border-bottom:1px solid var(--color-border);align-items:center;gap:.375rem;margin-bottom:.75rem;padding-bottom:.75rem;display:flex}.template-picker select{appearance:auto;flex:1;max-width:none}.template-form{flex-direction:column;gap:.5rem;display:flex}.template-form .search-input{max-width:none}.chores-page{max-width:1100px}.section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);margin:0 0 .75rem;font-size:.875rem;font-weight:700}.chore-board{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;display:grid}.chore-board-column{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.chore-board-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding-bottom:.5rem;display:flex}.chore-board-name{font-size:.9375rem;font-weight:700}.chore-streak{color:var(--color-warning);margin-left:.25rem;font-size:.75rem;font-weight:600}.chore-balance{color:var(--color-success);background:#4ade801f;border-radius:20px;padding:2px 8px;font-size:.75rem;font-weight:700}.chore-group{flex-direction:column;gap:.375rem;display:flex}.chore-group-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);font-size:.625rem;font-weight:700}.chore-group-overdue{color:var(--color-danger)}.chore-group-upcoming{opacity:.7}.chore-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);flex-direction:column;gap:.5rem;padding:.625rem;display:flex}.chore-card.chore-overdue{border-left:3px solid var(--color-danger)}.chore-card.chore-upcoming{opacity:.6}.chore-card-top{align-items:flex-start;gap:.5rem;display:flex}.chore-icon{color:var(--color-primary);opacity:.8;flex-shrink:0;font-size:1.25rem}.chore-card-main{flex:1;min-width:0}.chore-title{margin-bottom:.125rem;font-size:.8125rem;font-weight:600}.chore-meta{color:var(--color-text-dim);flex-wrap:wrap;align-items:center;gap:.375rem;font-size:.625rem;display:flex}.chore-service-pill{color:var(--color-warning);text-transform:uppercase;background:#f59e0b1f;border-radius:3px;padding:1px 5px;font-size:.5rem;font-weight:700}.chore-reward{color:var(--color-success);font-weight:600}.chore-points{color:var(--color-primary);font-weight:600}.chore-complete-btn{justify-content:center;width:100%;padding:.375rem;font-size:.75rem}.chore-empty{text-align:center;color:var(--color-text-dim);opacity:.6;padding:1rem .5rem;font-size:.75rem}.chores-list{flex-direction:column;gap:.375rem;display:flex}.chore-row{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.chore-row.inactive{opacity:.5}.chore-row-icon{color:var(--color-primary);opacity:.8;font-size:1.375rem}.chore-row-info{flex:1;min-width:0}.chore-row-title{align-items:center;gap:.375rem;font-size:.875rem;font-weight:600;display:flex}.chore-row-meta{color:var(--color-text-dim);margin-top:.125rem;font-size:.6875rem}.chore-row-actions{gap:.25rem;display:flex}.chores-ledger{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=760px){.chores-ledger{grid-template-columns:1fr}}.balance-list{flex-direction:column;gap:.5rem;display:flex}.balance-card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:1fr auto;align-items:center;gap:.25rem .5rem;padding:.75rem;display:grid}.balance-name{grid-column:1;font-size:.9375rem;font-weight:700}.balance-amount{color:var(--color-success);grid-area:1/2/span 3;font-size:1.5rem;font-weight:800}.balance-points{color:var(--color-primary);font-size:.75rem;font-weight:600}.balance-lifetime{color:var(--color-text-dim);font-size:.625rem}.balance-card button{grid-column:1/-1;margin-top:.375rem}.ledger-feed .feed-list{flex-direction:column;gap:.25rem;display:flex}.feed-row{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);align-items:flex-start;gap:.5rem;padding:.5rem .625rem;display:flex}.feed-info{flex:1;min-width:0}.feed-title{font-size:.8125rem;font-weight:600}.feed-meta{color:var(--color-text-dim);font-size:.625rem}.feed-reward{color:var(--color-success);font-weight:600}.empty-state-inline{color:var(--color-text-dim);padding:.75rem;font-size:.75rem;font-style:italic}.cashouts-list{flex-direction:column;gap:.375rem;display:flex}.cashout-row{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-template-columns:auto 1fr auto auto;align-items:center;gap:.75rem;padding:.625rem .75rem;display:grid}.cashout-date{color:var(--color-text-dim);min-width:80px;font-size:.75rem}.cashout-info{min-width:0}.cashout-name{font-size:.875rem;font-weight:600}.cashout-note{color:var(--color-text-dim);font-size:.6875rem}.cashout-amount{color:var(--color-success);font-size:1.125rem;font-weight:700}.cashout-tx-badge{color:var(--color-primary);background:#6384ff1a;border-radius:3px;padding:2px 6px;font-size:.625rem;font-weight:600}.member-chips{flex-wrap:wrap;gap:.25rem;display:flex}.member-chip{background:var(--color-surface-raised);border:1px solid var(--color-border);color:var(--color-text-dim);cursor:pointer;border-radius:20px;padding:4px 10px;font-size:.75rem;transition:all .15s}.member-chip:hover{color:var(--color-text);border-color:var(--color-primary)}.member-chip.selected{color:var(--color-primary);border-color:var(--color-primary);background:#6384ff26}.fin-summary-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.75rem;display:grid}.fin-summary-card{border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-card);border:1px solid #ffffff14;align-items:center;gap:.75rem;padding:1rem;display:flex}.fin-summary-card .stat-value{font-size:1.25rem}.fin-summary-icon{color:var(--color-primary);opacity:.7;font-size:1.75rem}.fin-accounts-list{flex-direction:column;gap:.375rem;display:flex}.fin-account-card{border-radius:var(--radius-sm);background:var(--color-surface-raised);border:1px solid #ffffff0d;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.fin-account-name{font-size:.875rem;font-weight:600}.fin-account-type{color:var(--color-text-dim);text-transform:capitalize;font-size:.6875rem;display:block}.fin-account-balance{font-size:.9375rem;font-weight:700;font-family:var(--font-mono);color:var(--color-success)}.fin-transactions{flex-direction:column;gap:.25rem;display:flex}.fin-transaction{background:var(--color-surface-raised);border-radius:var(--radius-sm);border-left:3px solid #ffffff1f;align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.fin-tx-info{flex:1;min-width:0}.fin-tx-desc{color:var(--color-text);font-size:.8125rem;font-weight:600;display:block}.fin-tx-meta{color:var(--color-text-dim);font-size:.6875rem;display:block}.fin-tx-category{text-transform:uppercase;letter-spacing:.05em;color:var(--color-primary);background:#6384ff26;border-radius:3px;margin-top:.125rem;padding:.0625rem .375rem;font-size:.5625rem;font-weight:700;display:inline-block}.fin-tx-amount{font-size:.875rem;font-weight:700;font-family:var(--font-mono);flex-shrink:0}.fin-tx-amount.expense{color:var(--color-danger)}.fin-tx-amount.income{color:var(--color-success)}.fin-bill{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.fin-bill-info{flex:1;min-width:0}.fin-bill-name{font-size:.875rem;font-weight:600;display:block}.fin-bill-meta{color:var(--color-text-dim);text-transform:capitalize;font-size:.6875rem;display:block}.fin-bill-amount{font-size:.8125rem;font-weight:600;font-family:var(--font-mono);color:var(--color-text-muted);flex-shrink:0}.fin-sub{background:var(--color-surface-raised);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary);cursor:pointer;align-items:center;gap:.75rem;padding:.625rem .75rem;transition:background .15s;display:flex}.fin-sub.bill{border-left-color:#f97316}.fin-sub:hover{background:var(--color-surface-hover,#ffffff0a)}.fin-sub.overdue{border-left-color:var(--color-danger);background:#f871710d}.fin-sub-freq{text-transform:capitalize;font-weight:600}.fin-sub-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;margin-top:.125rem;padding:.0625rem .375rem;font-size:.5625rem;font-weight:700;display:inline-block}.fin-sub-badge.firefly{color:#f97316;background:#f9731626}.pagination{border-top:1px solid var(--color-border);justify-content:center;align-items:center;gap:.75rem;margin-top:1rem;padding-top:.75rem;display:flex}.pagination-info{color:var(--color-text-muted);font-size:.75rem}.household-page{max-width:900px}.household-page .add-item-row .search-input,.hh-detail-modal .add-item-row .search-input,.hh-detail-modal .search-input,.hh-inline-form .add-item-row .search-input{flex:1;width:auto;min-width:0;max-width:none}.hh-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:.75rem;display:grid}.hh-card{cursor:pointer;transition:transform .15s,box-shadow .15s}.hh-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.hh-card-header{align-items:center;gap:.875rem;display:flex}.hh-card-photo{object-fit:cover;border-radius:50%;flex-shrink:0;width:56px;height:56px}.hh-card-avatar{background:var(--color-surface-raised);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex}.hh-card-avatar .material-icon{color:var(--color-primary);opacity:.7;font-size:1.75rem}.hh-card-info{flex:1;min-width:0}.hh-card-name{margin:0;font-size:1rem;font-weight:700}.hh-card-role{text-transform:uppercase;letter-spacing:.06em;color:var(--color-primary);background:#6384ff26;border-radius:3px;padding:.0625rem .375rem;font-size:.625rem;font-weight:700;display:inline-block}.hh-card-detail{color:var(--color-text-muted);margin-top:.125rem;font-size:.75rem;display:block}.hh-allergy-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;align-items:center;gap:.25rem;margin-top:.5rem;padding:.125rem .375rem;font-size:.5625rem;font-weight:700;display:inline-flex}.hh-allergy-badge.severe{color:var(--color-danger);background:#f8717126}.hh-blood-badge{font-size:.6875rem;font-weight:700;font-family:var(--font-mono);color:var(--color-danger);background:#ef44441a;border-radius:3px;margin-top:.375rem;margin-left:.25rem;padding:.0625rem .375rem;display:inline-block}.hh-detail-modal{max-width:720px}.hh-detail-header{align-items:center;gap:1rem;padding:1.25rem 1.5rem .5rem;display:flex}.hh-detail-photo{object-fit:cover;border-radius:50%;flex-shrink:0;width:72px;height:72px}.hh-detail-avatar{background:var(--color-surface-raised);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;display:flex}.hh-detail-avatar .material-icon{color:var(--color-primary);opacity:.7;font-size:2rem}.hh-tabs{border-bottom:1px solid var(--color-border);flex-wrap:wrap;gap:.25rem;padding:.5rem 1.5rem;display:flex}.hh-tab{color:var(--color-text-muted);border-radius:var(--radius-sm);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:.25rem;padding:.375rem .5rem;font-size:.625rem;font-weight:600;display:flex}.hh-tab:hover{color:var(--color-text);background:var(--color-surface-raised)}.hh-tab.active{color:var(--color-primary);background:#6384ff1a;border-color:#6384ff33}.hh-tab .material-icon{font-size:.8125rem}.hh-detail-body{padding:1rem 1.5rem 1.5rem}.hh-field-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem;margin-bottom:.75rem;display:grid}.hh-field-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);font-size:.625rem;font-weight:700;display:block}.hh-field-value{font-size:.875rem;font-weight:500;display:block}.hh-blood{font-family:var(--font-mono);color:var(--color-danger);font-weight:700}.hh-notes{color:var(--color-text-muted);margin:0 0 .75rem;font-size:.8125rem}.hh-actions{gap:.5rem;margin-top:.75rem;display:flex}.hh-records{flex-direction:column;gap:.375rem;display:flex}.hh-record{background:var(--color-surface-raised);border-radius:var(--radius-sm);border-left:3px solid var(--color-border);align-items:center;gap:.625rem;padding:.5rem .75rem;display:flex}.hh-record.danger{border-left-color:var(--color-danger);background:#f871710d}.hh-record.inactive{opacity:.5}.hh-record-info{flex:1;min-width:0}.hh-record-name{font-size:.8125rem;font-weight:600;display:block}.hh-record-meta{color:var(--color-text-dim);font-size:.6875rem;display:block}.hh-severity-badge{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-radius:3px;flex-shrink:0;padding:.125rem .375rem;font-size:.5625rem;font-weight:700}.hh-severity-badge.mild{color:var(--color-success);background:#22c55e26}.hh-severity-badge.moderate{color:var(--color-warning);background:#f59e0b26}.hh-severity-badge.severe{color:var(--color-danger);background:#f8717126}.hh-severity-badge.life-threatening{color:#dc2626;background:#dc262633}.hh-doc-actions{flex-shrink:0;align-items:center;gap:.25rem;display:flex}.hh-doc-actions a{color:var(--color-text-muted);text-decoration:none}.hh-doc-actions a:hover{color:var(--color-primary)}.hh-inline-form{background:var(--color-surface-raised);border-radius:var(--radius-md);border:1px solid var(--color-border);margin-top:.75rem;padding:.75rem}.hh-emergency-card{background:var(--color-surface-raised);border-radius:var(--radius-md);border:2px solid var(--color-danger);padding:1.25rem}.hh-ec-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.hh-ec-name{margin:0;font-size:1.125rem}.hh-ec-grid{gap:1.5rem;margin-bottom:.75rem;display:flex}.hh-ec-field{flex-direction:column;display:flex}.hh-ec-label{text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-dim);font-size:.5625rem;font-weight:700}.hh-ec-section{margin-top:.75rem}.hh-ec-section-title{text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);align-items:center;gap:.25rem;margin:0 0 .375rem;font-size:.75rem;font-weight:700;display:flex}.hh-ec-section-title .material-icon{font-size:.875rem}.hh-ec-item{padding:.25rem 0;font-size:.8125rem}.hh-ec-item.danger{color:var(--color-danger);font-weight:600}@media print{body *{visibility:hidden}.hh-emergency-card,.hh-emergency-card *{visibility:visible}.hh-emergency-card{color:#000;background:#fff;border-color:#000;width:100%;position:absolute;top:0;left:0}.hh-ec-item.danger{color:#dc2626}}.settings-page{max-width:900px}.settings-section{margin-bottom:2rem}.settings-section-title{margin:0 0 .5rem;font-size:1rem;font-weight:700}.settings-hint{color:var(--color-text-dim);margin:.25rem 0 .5rem;font-size:.6875rem;line-height:1.5}.settings-hint a{color:var(--color-primary)}.settings-textarea{width:100%;max-width:100%;font-family:var(--font-mono);resize:vertical;font-size:.75rem;line-height:1.6}.settings-actions{align-items:center;gap:.5rem;margin-top:.75rem;display:flex}.settings-test-result{color:var(--color-text-muted);font-size:.75rem}.services-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:.5rem;display:grid}.service-card{align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.service-status-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.service-card.ok .service-status-dot{background:var(--color-success)}.service-card.error .service-status-dot{background:var(--color-warning)}.service-card.down .service-status-dot{background:var(--color-danger)}.service-card.not_configured .service-status-dot{background:var(--color-text-dim)}.service-info{flex:1;min-width:0}.service-name{font-size:.875rem;font-weight:600;display:block}.service-url{color:var(--color-text-dim);font-size:.625rem;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.service-latency{color:var(--color-success);margin-left:.5rem;font-size:.625rem}.service-status-text{color:var(--color-text-dim);font-size:.625rem;display:block}.service-status-text.error{color:var(--color-danger)}.users-list{flex-direction:column;gap:.5rem;display:flex}.user-card{align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.user-card.inactive{opacity:.5}.user-icon{color:var(--color-primary);opacity:.7;font-size:1.5rem}.user-info{flex:1;min-width:0}.user-name{font-size:.9375rem;font-weight:600;display:block}.user-detail{color:var(--color-text-dim);font-size:.6875rem;display:block}.user-badges{gap:.25rem;display:flex}.user-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:3px;padding:.0625rem .375rem;font-size:.5625rem;font-weight:700}.user-badge.admin{color:var(--color-primary);background:#6384ff26}.user-badge.inactive{color:var(--color-danger);background:#f8717126}.user-actions{gap:.125rem;display:flex}.notif-channels{flex-direction:column;gap:.375rem;display:flex}.notif-channel{background:var(--color-surface-raised);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary);align-items:center;gap:.75rem;padding:.625rem .75rem;display:flex}.notif-channel-icon{color:var(--color-primary);opacity:.7;flex-shrink:0;font-size:1.25rem}.notif-channel-info{flex:1;min-width:0}.notif-channel-label{font-size:.8125rem;font-weight:600;display:block}.notif-channel-url{color:var(--color-text-dim);font-size:.625rem;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.notif-channel-result{margin-top:.125rem;font-size:.625rem;font-weight:600;display:block}.notif-channel-result.success{color:var(--color-success)}.notif-channel-result.error{color:var(--color-danger)}.autoimport-status{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.autoimport-status-item{color:var(--color-text-muted);align-items:center;gap:.25rem;font-size:.75rem;display:flex}.autoimport-status-item.success{color:var(--color-success)}.autoimport-status-item.error{color:var(--color-danger)}.sidebar-order-list{flex-direction:column;gap:.25rem;max-width:400px;display:flex}.sidebar-order-item{background:var(--color-surface-raised);border-radius:var(--radius-sm);border-left:3px solid var(--color-border);align-items:center;gap:.625rem;padding:.5rem .75rem;display:flex}.sidebar-order-name{flex:1;font-size:.8125rem;font-weight:600}.sidebar-order-arrows{flex-direction:column;gap:0;display:flex}.sidebar-order-arrows .memo-action-btn{padding:0}.sidebar-order-arrows .memo-action-btn .material-icon{font-size:1.125rem}.sidebar-order-arrows .memo-action-btn:disabled{opacity:.2}.personality-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.5rem;display:grid}.personality-card{border-radius:var(--radius-md);cursor:pointer;background:var(--color-surface-raised);border:2px solid var(--color-border);padding:.75rem;transition:border-color .15s,background .15s}.personality-card:hover{border-color:var(--color-text-dim)}.personality-card-active{border-color:var(--accent,var(--color-primary));background:#6384ff0f}.personality-card-header{justify-content:space-between;align-items:center;margin-bottom:.25rem;display:flex}.personality-card-name{font-size:.875rem;font-weight:700}.personality-card-desc{color:var(--color-text-dim);font-size:.75rem;line-height:1.4}.personality-preview{background:var(--color-surface);border-radius:var(--radius-sm);border:1px solid var(--color-border);white-space:pre-wrap;word-break:break-word;max-height:200px;font-size:.7rem;line-height:1.5;font-family:var(--font-mono);margin-top:.5rem;padding:.5rem;overflow-y:auto}.notif-add-form{background:var(--color-surface-raised);border-radius:var(--radius-md);border:1px solid var(--color-border);margin-top:.75rem;padding:.75rem}.notif-owner-group{background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);margin-bottom:1.25rem;padding:.75rem}.notif-owner-header{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.notif-owner-header .material-icon{color:var(--color-text-dim)}.notif-owner-name{font-size:.9375rem;font-weight:700}.notif-owner-count{color:var(--color-text-dim);font-size:.75rem}.notif-owner-empty{color:var(--color-text-dim);padding:.5rem .25rem;font-size:.8125rem}.notif-channel.disabled{opacity:.55;border-left-color:var(--color-border)}.notif-channel-cats{flex-wrap:wrap;gap:.25rem;margin-top:.25rem;display:flex}.notif-cat{border-radius:var(--radius-sm);color:var(--color-primary);background:#6384ff1f;padding:.0625rem .375rem;font-size:.6875rem}.notif-cat-all{background:var(--color-primary);color:#fff}.notif-cat-empty{color:var(--color-danger);background:#f871711f}.notif-badge{border-radius:var(--radius-sm);background:var(--color-surface-raised);color:var(--color-text-dim);vertical-align:middle;margin-left:.375rem;padding:.0625rem .375rem;font-size:.625rem;font-weight:600;display:inline-block}.notif-badge-fallback{color:#eab308;background:#eab30826}.notif-cat-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.25rem .75rem;margin-top:.25rem;display:grid}.notif-cat-check{cursor:pointer;align-items:center;gap:.375rem;font-size:.8125rem;display:flex}.notif-cat-check input{cursor:pointer}.notif-cat-check input:disabled+span{opacity:.5}.notif-msg{border-radius:var(--radius-sm);border:1px solid #0000;align-items:center;gap:.5rem;margin:.25rem 0;padding:.5rem .75rem;font-size:.8125rem;display:flex}.notif-msg-error{color:var(--color-danger);background:#f8717114;border-color:#f8717140}.notif-msg-success{color:var(--color-success);background:#4ade8014;border-color:#4ade8040}.notif-msg-info{color:var(--color-primary);background:#6384ff14;border-color:#6384ff33}.lr-status-row{background:var(--color-surface-raised);border-radius:var(--radius-sm);gap:1rem;padding:.625rem .75rem;font-size:.8125rem;display:flex}.lr-status-item{flex-direction:column;gap:.125rem;display:flex}.lr-status-label{color:var(--color-text-dim);text-transform:uppercase;letter-spacing:.05em;font-size:.6875rem}.lr-status-value.success{color:var(--color-success)}.lr-status-value.error{color:var(--color-danger)}:root{--color-bg:#14181c;--color-surface:#1b2028;--color-surface-raised:#242c34;--color-surface-hover:#2c3440;--color-border:#ffffff12;--color-border-strong:#ffffff1f;--color-hover:#ffffff0a;--color-active:#6384ff1f;--color-primary:#6384ff;--color-primary-hover:#7a9aff;--color-primary-glow:#6384ff40;--color-success:#00c030;--color-warning:#fbbf24;--color-danger:#ef4444;--color-text:#e1e3e5;--color-text-muted:#9ab;--color-text-dim:#678;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", "JetBrains Mono", "Fira Code", monospace;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 20px #00000080;--shadow-lg:0 12px 48px #000000a6;--shadow-card:0 2px 8px #0006, 0 0 0 1px #ffffff0a;--shadow-card-hover:0 16px 48px #000000b3, 0 0 0 1px #ffffff14;--ease-spring:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);margin:0;line-height:1.5}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff2e}*{scrollbar-width:thin;scrollbar-color:#ffffff1a transparent}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-hover)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.25rem}.card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;display:grid}.stat-value{color:var(--color-text);font-size:2rem;font-weight:700;line-height:1}.stat-label{color:var(--color-text-muted);margin-top:.25rem;font-size:.8125rem}.page-header{margin-bottom:1.5rem}.page-title{letter-spacing:-.01em;margin:0 0 .25rem;font-size:1.5rem;font-weight:700}.page-subtitle{color:var(--color-text-muted);margin:0;font-size:.875rem}.btn{font-size:13px;font-weight:500;font-family:var(--font-sans);border-radius:var(--radius-sm);color:var(--color-text-muted);cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;align-items:center;gap:.375rem;padding:7px 16px;transition:all .15s;display:inline-flex}.btn:hover{color:var(--color-text);background:#ffffff1a;border-color:#ffffff26}.btn:disabled{opacity:.4;cursor:default}.btn-primary{background:var(--color-primary);border-color:var(--color-primary);color:#fff;text-shadow:0 1px 2px #0000004d;box-shadow:0 2px 12px var(--color-primary-glow);font-weight:600}.btn-primary:hover{background:var(--color-primary-hover);box-shadow:0 4px 20px var(--color-primary-glow)}.loading{color:var(--color-text-muted);justify-content:center;align-items:center;padding:3rem;display:flex}.error-message{border-radius:var(--radius-md);color:var(--color-danger);background:#ef444414;border:1px solid #ef444440;padding:1rem;font-size:.875rem}@media (width<=640px){.page-title{font-size:1.25rem}.page-subtitle{font-size:.8125rem}.card{border-radius:var(--radius-md);padding:.875rem}.card-grid{grid-template-columns:1fr}.stat-value{font-size:1.5rem}.page-header .btn{padding:6px 10px;font-size:12px}.page-header .btn .material-icon{font-size:1rem}}
