.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border:1px solid var(--border-subtle);height:calc(100vh - 1.5rem);box-shadow:var(--shadow-panel);z-index:100;border-radius:20px;flex-direction:column;flex-shrink:0;align-items:stretch;margin:.75rem 0 .75rem .75rem;padding:1.1rem .8rem .8rem;display:flex}.sidebar-header{justify-content:flex-start;width:100%;margin-bottom:1.15rem;padding:0 .35rem;display:flex}.logo{align-items:center;gap:.75rem;text-decoration:none;display:flex}.logo-icon{background:var(--surface-card);border:1px solid var(--border-subtle);width:38px;height:38px;box-shadow:var(--shadow-card);color:var(--accent-solid);border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;transition:transform .18s;display:flex}.logo:hover .logo-icon{transform:scale(1.04)}.logo h2{color:var(--text-primary);letter-spacing:-.01em;margin:0;font-size:1.15rem;font-weight:700;display:block}.sidebar-nav{flex-direction:column;flex:1;align-items:stretch;gap:.35rem;width:100%;min-height:0;display:flex;overflow-y:auto}.sidebar-nav::-webkit-scrollbar{display:none}.sidebar-category{flex-direction:column;align-items:stretch;gap:.25rem;width:100%;display:flex}.sidebar-category-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);padding:.5rem .65rem .2rem;font-size:.66rem;font-weight:700;display:block}.sidebar-category-separator{display:none}.sidebar-category-items{flex-direction:column;align-items:stretch;gap:.2rem;width:100%;display:flex}.nav-item{width:100%;height:40px;color:var(--text-nav);border:1px solid #0000;border-radius:12px;justify-content:flex-start;align-items:center;gap:.75rem;padding:0 .75rem;text-decoration:none;transition:background-color .18s,border-color .18s,color .18s,box-shadow .18s,transform .18s;display:flex;position:relative}.nav-item:hover{background:color-mix(in srgb, var(--primary) 6%, transparent);color:var(--text-primary);transform:translateY(-1px)}.nav-item.active{border-color:color-mix(in srgb, var(--primary) 38%, transparent);box-shadow:none;font-weight:600;background:color-mix(in srgb, var(--primary) 14%, transparent)!important;color:var(--primary-text)!important}.nav-item .nav-label{color:inherit;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:.875rem;font-weight:500;display:block;overflow:hidden}.nav-item.active .nav-label{color:var(--primary-text)!important}.sidebar-footer{border-top:1px solid color-mix(in srgb, var(--line) 9.6%, transparent);flex-direction:column;align-items:stretch;gap:.55rem;width:100%;margin-top:auto;padding-top:.65rem;display:flex}.sidebar-footer-toolbar{background:0 0;border:none;flex-direction:row;justify-content:space-between;align-items:center;width:100%;padding:0 .15rem;display:flex}.sidebar-footer-actions{flex-direction:row;align-items:center;gap:.35rem;display:flex}.footer-icon-button{background:var(--bg-control);border:1px solid var(--border-color);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;transition:all .18s;display:flex}.footer-icon-button:hover{background:var(--bg-card-hover);color:var(--text-primary);transform:translateY(-1px)}.footer-icon-button.logout-btn:hover{background:color-mix(in srgb, var(--error) 19.5%, transparent);color:var(--danger-color);border-color:color-mix(in srgb, var(--error) 39%, transparent)}.mode-switch{background:var(--bg-control);border:1px solid var(--border-color);cursor:pointer;border-radius:999px;grid-template-columns:1fr 1fr;align-items:center;width:62px;height:32px;padding:3px;transition:background-color .2s,border-color .2s;display:inline-grid;position:relative}.mode-switch:hover{border-color:color-mix(in srgb, var(--primary) 30%, transparent)}.mode-switch-thumb{background:var(--primary);border-radius:50%;width:24px;height:24px;transition:transform .22s,background-color .2s;position:absolute;top:3px;left:3px}.mode-switch[aria-checked=true] .mode-switch-thumb{transform:translate(30px)}.mode-switch-icon{z-index:1;color:var(--text-muted);justify-content:center;align-items:center;transition:color .2s;display:flex;position:relative}.mode-switch[aria-checked=false] .mode-switch-icon:nth-of-type(2),.mode-switch[aria-checked=true] .mode-switch-icon:nth-of-type(3){color:var(--primary-contrast)}.sidebar-version{display:none}.sidebar-feedback-btn{border:1px dashed var(--border-color);width:100%;min-height:36px;color:var(--text-secondary);font:inherit;cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:.55rem;padding:0 .7rem;font-size:.8rem;font-weight:500;transition:background .18s,color .18s,border-color .18s;display:flex}.sidebar-feedback-btn:hover{background:var(--bg-control);color:var(--text-primary);border-style:solid}.sidebar-feedback-btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.footer-icon-button.syncing{color:var(--accent-solid);border-color:var(--border-strong);background:var(--bg-card-hover);cursor:not-allowed}.spin-icon{animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:768px){.sidebar{z-index:2000;background:var(--surface-card);border-radius:0;align-items:flex-start;height:100dvh;margin:0;padding:1.25rem 1rem;transition:left .28s cubic-bezier(.16,1,.3,1);position:fixed;top:0;bottom:0;left:-100%;width:250px!important}.sidebar.open{left:0}.logo{justify-content:flex-start;gap:.75rem}.logo h2{color:var(--text-primary);margin:0;font-size:1.15rem;font-weight:600;display:block}.sidebar-category-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);width:100%;padding:.25rem .5rem;font-size:.65rem;font-weight:600;display:block}.sidebar-category-items{align-items:stretch}.nav-item{justify-content:flex-start;gap:.75rem;width:100%;height:44px;padding:0 .75rem}.nav-item .nav-label{font-size:.875rem;font-weight:500;display:block}.nav-item.active .nav-label{color:var(--primary-text)}.nav-badge{margin-left:auto;position:static!important}.sidebar-footer-toolbar{flex-direction:row;justify-content:space-between}.sidebar-footer-actions{flex-direction:row}.footer-icon-button{width:44px;height:44px}.sidebar-feedback-btn{min-height:44px}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1999;background:#0000008c;animation:.25s fadeIn;position:fixed;inset:0}}
