:root,[data-theme=light]{--qd-bg:#f8f9fa;--qd-surface:#fff;--qd-surface-2:#f5f5f5;--qd-surface-3:#eef0f2;--qd-overlay:#00000080;--qd-text:#202124;--qd-text-muted:#5f6368;--qd-text-subtle:#80868b;--qd-text-on-accent:#fff;--qd-border:#e0e0e0;--qd-border-strong:#ccced2;--qd-accent:#1a73e8;--qd-accent-hover:#1565c0;--qd-accent-active:#0d47a1;--qd-accent-text:#1a73e8;--qd-accent-subtle:#e8f0fe;--qd-danger:#dc3545;--qd-danger-hover:#c62828;--qd-danger-subtle:#fff5f5;--qd-success:#28a745;--qd-success-subtle:#e6f4ea;--qd-warning:#f59e0b;--qd-warning-subtle:#fff8e1;--qd-shadow-sm:0 1px 2px #00000014;--qd-shadow-md:0 4px 12px #0000001f;--qd-shadow-lg:0 10px 30px #0000002e;--qd-focus-ring-color:#1a73e866;--qd-focus-ring:0 0 0 3px var(--qd-focus-ring-color);--qd-ring-accent:0 0 0 2px var(--qd-accent);color-scheme:light}:root{--qd-radius-xs:4px;--qd-radius-sm:6px;--qd-radius-md:8px;--qd-radius-lg:12px;--qd-radius-xl:16px;--qd-radius-pill:999px;--qd-radius-circle:50%;--qd-space-1:4px;--qd-space-2:8px;--qd-space-3:12px;--qd-space-4:16px;--qd-space-5:20px;--qd-space-6:24px;--qd-space-8:32px;--qd-space-10:40px;--qd-space-12:48px;--qd-font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;--qd-font-mono:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace;--qd-text-xs:0.75rem;--qd-text-sm:0.85rem;--qd-text-base:0.9375rem;--qd-text-md:1rem;--qd-text-lg:1.125rem;--qd-text-xl:1.25rem;--qd-text-2xl:1.5rem;--qd-text-3xl:2rem;--qd-weight-normal:400;--qd-weight-medium:500;--qd-weight-semibold:600;--qd-weight-bold:700;--qd-ease:cubic-bezier(0.4,0,0.2,1);--qd-transition-fast:0.12s var(--qd-ease);--qd-transition:0.18s var(--qd-ease);--qd-transition-slow:0.3s var(--qd-ease);--qd-control-sm:32px;--qd-control-md:38px;--qd-control-lg:44px;--qd-z-base:1;--qd-z-sticky:100;--qd-z-drop-overlay:200;--qd-z-dropdown:1000;--qd-z-modal-backdrop:1000;--qd-z-modal:1001;--qd-z-toast:2000}[data-theme=dark]{--qd-bg:#0f1115;--qd-surface:#1a1d23;--qd-surface-2:#22262e;--qd-surface-3:#2b3039;--qd-overlay:#000000a6;--qd-text:#e6e8eb;--qd-text-muted:#a8aeb8;--qd-text-subtle:#7d838d;--qd-text-on-accent:#fff;--qd-border:#2e333b;--qd-border-strong:#3c424c;--qd-accent:#3b82f6;--qd-accent-hover:#60a5fa;--qd-accent-active:#93c5fd;--qd-accent-text:#6ba5f5;--qd-accent-subtle:#1c2740;--qd-danger:#f87171;--qd-danger-hover:#ef4444;--qd-danger-subtle:#2a1719;--qd-success:#4ade80;--qd-success-subtle:#16271c;--qd-warning:#fbbf24;--qd-warning-subtle:#2a2310;--qd-shadow-sm:0 1px 2px #00000080;--qd-shadow-md:0 4px 12px #0000008c;--qd-shadow-lg:0 10px 30px #0009;--qd-focus-ring-color:#60a5fa73;color-scheme:dark}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--qd-bg);color:var(--qd-text);font-family:var(--qd-font-sans);font-size:var(--qd-text-base);height:100vh;margin:0}code{font-family:var(--qd-font-mono)}:focus-visible{border-radius:var(--qd-radius-sm);box-shadow:var(--qd-focus-ring);outline:none}[role=button]:focus-visible,[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{box-shadow:var(--qd-focus-ring);outline:none}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.qd-btn{align-items:center;border:1px solid #0000;border-radius:var(--qd-radius-md);box-sizing:border-box;cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--qd-text-base);font-weight:var(--qd-weight-semibold);gap:var(--qd-space-2);justify-content:center;line-height:1;min-height:var(--qd-control-md);padding:0 var(--qd-space-4);text-decoration:none;transition:background-color var(--qd-transition-fast),border-color var(--qd-transition-fast),box-shadow var(--qd-transition-fast),color var(--qd-transition-fast),transform var(--qd-transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.qd-btn:active:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]){transform:translateY(.5px)}.qd-btn:disabled,.qd-btn[aria-disabled=true],.qd-btn[data-enabled=false]{cursor:not-allowed;opacity:.55;pointer-events:none}.qd-btn svg{flex-shrink:0}.qd-btn--sm{font-size:var(--qd-text-sm);gap:var(--qd-space-1);min-height:var(--qd-control-sm);padding:0 var(--qd-space-3)}.qd-btn--lg{font-size:var(--qd-text-md);min-height:var(--qd-control-lg);padding:0 var(--qd-space-5)}.qd-btn--block{width:100%}.btn-primary,.qd-btn--primary{background-color:var(--qd-accent);border-color:var(--qd-accent);color:var(--qd-text-on-accent)}.btn-primary:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]),.qd-btn--primary:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]){background-color:var(--qd-accent-hover);border-color:var(--qd-accent-hover)}.btn-secondary,.qd-btn--secondary{background-color:var(--qd-surface-2);border-color:var(--qd-border);color:var(--qd-text)}.btn-secondary:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]),.qd-btn--secondary:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]){background-color:var(--qd-surface-3);border-color:var(--qd-border-strong)}.btn-ghost,.qd-btn--ghost{background-color:initial;border-color:#0000;color:var(--qd-text-muted)}.btn-ghost:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]),.qd-btn--ghost:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]){background-color:var(--qd-surface-3);color:var(--qd-text)}.btn-danger,.qd-btn--danger{background-color:var(--qd-danger);border-color:var(--qd-danger);color:var(--qd-text-on-accent)}.btn-danger:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]),.qd-btn--danger:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]){background-color:var(--qd-danger-hover);border-color:var(--qd-danger-hover)}.btn-success,.qd-btn--success{background-color:var(--qd-success);border-color:var(--qd-success);color:var(--qd-text-on-accent)}.qd-btn--subtle{background-color:var(--qd-accent-subtle);border-color:#0000;color:var(--qd-accent-text)}.qd-btn--subtle:hover:not(:disabled):not([aria-disabled=true]):not([data-enabled=false]){background-color:var(--qd-accent-subtle);border-color:var(--qd-accent)}.qd-banner{align-items:flex-start;border:1px solid #0000;border-radius:var(--qd-radius-md);display:flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);line-height:1.45;padding:var(--qd-space-3) var(--qd-space-4)}.qd-banner-icon{display:flex;flex-shrink:0;margin-top:1px}.qd-banner-icon svg{height:16px;width:16px}.qd-banner-content{flex:1 1;min-width:0}.qd-banner-title{font-weight:var(--qd-weight-semibold);margin:0}.qd-banner-title+.qd-banner-body{margin-top:2px}.qd-banner-body{color:inherit;margin:0;opacity:.92}.qd-banner-dismiss{align-items:center;background:#0000;border:none;border-radius:var(--qd-radius-sm);color:inherit;cursor:pointer;display:flex;flex-shrink:0;height:22px;justify-content:center;opacity:.7;transition:opacity var(--qd-transition-fast),background-color var(--qd-transition-fast);width:22px}.qd-banner-dismiss:hover{background-color:#0000000f;opacity:1}.qd-banner--info{background-color:var(--qd-accent-subtle);border-color:var(--qd-accent);color:var(--qd-accent-text)}.qd-banner--success{background-color:var(--qd-success-subtle);border-color:var(--qd-success);color:var(--qd-success)}.qd-banner--warning{background-color:var(--qd-warning-subtle);border-color:var(--qd-warning);color:var(--qd-text)}.qd-banner--danger{background-color:var(--qd-danger-subtle);border-color:var(--qd-danger);color:var(--qd-danger)}.spinner-container{align-items:center;display:flex;height:100%;justify-content:center;width:100%}.spinner{animation:spin .8s linear infinite;border:3px solid var(--qd-border);border-radius:var(--qd-radius-circle);border-top-color:var(--qd-accent);box-sizing:border-box;height:36px;height:var(--qd-spinner-size,36px);width:36px;width:var(--qd-spinner-size,36px)}.spinner--inline{border:2px solid;border-left:2px solid #0000;height:1em;opacity:.9;width:1em}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.cwm-overlay{align-items:center;animation:cwm-fade-in .15s ease-out;background:var(--qd-overlay);display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--qd-z-modal)}.cwm-panel{animation:cwm-slide-up .18s ease-out;background:var(--qd-surface);border-radius:var(--qd-radius-lg);box-shadow:var(--qd-shadow-lg);margin:var(--qd-space-4);max-width:440px;overflow:hidden;width:100%}.cwm-header{align-items:center;display:flex;justify-content:space-between;padding:var(--qd-space-5) var(--qd-space-6) 0}.cwm-title{color:var(--qd-text);font-size:var(--qd-text-lg);font-weight:var(--qd-weight-semibold);margin:0}.cwm-close{align-items:center;background:none;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);cursor:pointer;display:flex;height:var(--qd-control-sm);justify-content:center;transition:background var(--qd-transition-fast),color var(--qd-transition-fast);width:var(--qd-control-sm)}.cwm-close:hover{background:var(--qd-surface-3);color:var(--qd-text)}.cwm-form{gap:var(--qd-space-5);padding:var(--qd-space-5) var(--qd-space-6) var(--qd-space-6)}.cwm-field,.cwm-form{display:flex;flex-direction:column}.cwm-field{gap:var(--qd-space-2)}.cwm-label{color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold)}.cwm-input{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text);font-size:var(--qd-text-base);height:var(--qd-control-lg);outline:none;padding:0 var(--qd-space-3);transition:border-color var(--qd-transition),box-shadow var(--qd-transition)}.cwm-input:focus{border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring)}.cwm-input--error{border-color:var(--qd-danger);box-shadow:none}.cwm-input--error:focus{box-shadow:0 0 0 3px var(--qd-danger-subtle)}.cwm-input:disabled{background:var(--qd-surface-2);color:var(--qd-text-subtle)}.cwm-char-count{align-self:flex-end;color:var(--qd-text-subtle);font-size:var(--qd-text-xs);margin-top:-2px;transition:color var(--qd-transition)}.cwm-char-count--warn{color:var(--qd-warning)}.cwm-footer{display:flex;gap:var(--qd-space-3);justify-content:flex-end}.navbar{align-items:center;background-color:var(--qd-surface);border-bottom:1px solid var(--qd-border);box-shadow:var(--qd-shadow-sm);display:flex;height:60px;justify-content:space-between;padding:0 var(--qd-space-5)}.navbar-logo{color:var(--qd-text);font-size:var(--qd-text-lg);font-weight:var(--qd-weight-bold)}.navbar-right{align-items:center;display:flex;gap:var(--qd-space-3)}.workspace-switcher{position:relative}.workspace-trigger{align-items:center;background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text);cursor:pointer;display:flex;font-size:var(--qd-text-base);font-weight:var(--qd-weight-medium);gap:var(--qd-space-2);height:var(--qd-control-sm);max-width:220px;padding:0 var(--qd-space-3) 0 var(--qd-space-2);transition:background var(--qd-transition),border-color var(--qd-transition),box-shadow var(--qd-transition)}.workspace-trigger:hover:not(:disabled){background:var(--qd-surface-3);border-color:var(--qd-border-strong);box-shadow:var(--qd-shadow-sm)}.workspace-trigger:disabled{cursor:default;opacity:.6}.workspace-trigger-name{flex:1 1;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}.workspace-icon-initials{align-items:center;background-color:var(--qd-accent);color:var(--qd-text-on-accent);display:flex;font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);justify-content:center}.workspace-icon-img,.workspace-icon-initials{border-radius:var(--qd-radius-sm);flex-shrink:0;height:22px;width:22px}.workspace-icon-img{object-fit:cover}.workspace-chevron{color:var(--qd-text-muted);flex-shrink:0;transition:transform var(--qd-transition)}.workspace-chevron.open{transform:rotate(180deg)}.workspace-dropdown{animation:fadeIn var(--qd-transition-fast);background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);box-shadow:var(--qd-shadow-md);max-width:320px;min-width:240px;padding:var(--qd-space-2) 0;position:absolute;right:0;top:calc(100% + var(--qd-space-2));z-index:var(--qd-z-dropdown)}.workspace-dropdown-label{color:var(--qd-text-subtle);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);letter-spacing:.04em;margin:0;padding:var(--qd-space-2) var(--qd-space-4) var(--qd-space-2);text-transform:uppercase}.workspace-dropdown-item{align-items:center;background:none;border:none;color:var(--qd-text);cursor:pointer;display:flex;font-size:var(--qd-text-base);gap:var(--qd-space-3);padding:var(--qd-space-2) var(--qd-space-4);text-align:left;transition:background var(--qd-transition-fast);width:100%}.workspace-dropdown-item:hover{background:var(--qd-surface-3)}.workspace-dropdown-item.active{background:var(--qd-accent-subtle);color:var(--qd-accent-text);font-weight:var(--qd-weight-medium)}.workspace-dropdown-item.active .workspace-icon-initials{background-color:var(--qd-accent)}.workspace-item-name{flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-item-check{color:var(--qd-accent-text);flex-shrink:0}.profile-circle-wrapper{position:relative}.profile-circle{align-items:center;background-color:var(--qd-accent);border:none;border-radius:var(--qd-radius-circle);color:var(--qd-text-on-accent);cursor:pointer;display:flex;font:inherit;height:40px;justify-content:center;overflow:hidden;padding:0;transition:box-shadow var(--qd-transition);-webkit-user-select:none;user-select:none;width:40px}.profile-circle:hover{box-shadow:0 0 0 4px var(--qd-accent-subtle)}.profile-img{height:100%;object-fit:cover;width:100%}.profile-initials{font-size:var(--qd-text-md);font-weight:var(--qd-weight-medium)}.profile-dropdown{animation:fadeIn var(--qd-transition-fast);background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);box-shadow:var(--qd-shadow-md);display:flex;flex-direction:column;padding:var(--qd-space-2) 0;position:absolute;right:0;top:calc(100% + var(--qd-space-2));width:260px;z-index:var(--qd-z-dropdown)}.dropdown-header{padding:var(--qd-space-3) var(--qd-space-4)}.user-name{color:var(--qd-text);font-size:var(--qd-text-base);font-weight:var(--qd-weight-semibold);margin:0}.user-email{color:var(--qd-text-muted);font-size:var(--qd-text-sm);margin:var(--qd-space-1) 0 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-divider{background-color:var(--qd-border);height:1px;margin:var(--qd-space-2) 0}.dropdown-item{background:none;border:none;text-align:left;transition:background-color var(--qd-transition-fast);width:100%}.dropdown-icon{color:var(--qd-text-muted);margin-right:var(--qd-space-3)}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.workspace-dropdown-divider{background:var(--qd-border);height:1px;margin:var(--qd-space-2) 0}.workspace-new-btn{color:var(--qd-accent-text);font-weight:var(--qd-weight-medium)}.workspace-new-btn:hover{background:var(--qd-accent-subtle)}.workspace-new-icon{background:var(--qd-accent-subtle);border-radius:var(--qd-radius-sm);color:var(--qd-accent-text);height:22px;width:22px}.navbar-settings-btn,.workspace-new-icon{align-items:center;display:flex;flex-shrink:0;justify-content:center}.navbar-settings-btn{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text-muted);cursor:pointer;height:36px;transition:background var(--qd-transition),border-color var(--qd-transition),color var(--qd-transition),box-shadow var(--qd-transition);width:36px}.navbar-settings-btn:hover{background:var(--qd-surface-3);border-color:var(--qd-border-strong);box-shadow:var(--qd-shadow-sm);color:var(--qd-text)}.navbar-theme-btn{align-items:center;background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:8px;color:var(--qd-text-muted);cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;width:36px}.navbar-theme-btn:hover{background:var(--qd-surface-3);border-color:var(--qd-border-strong);box-shadow:var(--qd-shadow-sm);color:var(--qd-text)}.appearance-options{display:flex;flex-wrap:wrap;gap:10px}.appearance-option{align-items:center;background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:8px;color:var(--qd-text-muted);cursor:pointer;display:flex;font-family:inherit;font-size:.9rem;font-weight:500;justify-content:center;min-width:96px;padding:9px 16px;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.appearance-option:hover{background:var(--qd-surface-3);border-color:var(--qd-border-strong);color:var(--qd-text)}.appearance-option.active{background:var(--qd-accent-subtle);border-color:var(--qd-accent);color:var(--qd-accent-text);font-weight:600}.appearance-option:focus-visible{border-color:var(--qd-accent);box-shadow:0 0 0 3px var(--qd-accent-subtle);outline:none}.modalbackdrop{animation:qd-modal-fade .15s var(--qd-ease);background-color:var(--qd-overlay);height:100%;left:0;position:fixed;top:0;width:100%;z-index:var(--qd-z-modal-backdrop)}.modal{animation:qd-modal-pop .18s var(--qd-ease);background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);box-shadow:var(--qd-shadow-lg);color:var(--qd-text);left:50%;max-height:90vh;max-width:calc(100vw - var(--qd-space-8));overflow:auto;padding:var(--qd-space-5);position:fixed;top:50%;transform:translate(-50%,-50%);z-index:var(--qd-z-modal)}.modal--sm{width:440px}.modal--md{width:600px}.modal--lg{width:760px}.modal>.closingX{background-color:initial;border:none;border-radius:var(--qd-radius-sm);cursor:pointer;font-size:var(--qd-text-xl);height:30px;padding:var(--qd-space-1);position:absolute;right:var(--qd-space-2);top:var(--qd-space-2);transition:background-color var(--qd-transition-fast);width:30px}.modal--chrome{display:flex;flex-direction:column;padding:0}.modal-header{gap:var(--qd-space-3);padding:var(--qd-space-4) var(--qd-space-5)}.modal-title{color:var(--qd-text);font-size:var(--qd-text-xl);font-weight:var(--qd-weight-semibold);margin:0}.modal-subtitle{color:var(--qd-text-muted);font-size:var(--qd-text-sm);margin:2px 0 0}.modal-body{flex:1 1 auto;overflow-y:auto;padding:var(--qd-space-5)}.modal-footer{align-items:center;gap:var(--qd-space-2);justify-content:flex-end;padding:var(--qd-space-4) var(--qd-space-5)}.modal-footer--split{justify-content:space-between}@keyframes qd-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes qd-modal-pop{0%{opacity:0;transform:translate(-50%,-48%) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.closingX{align-items:center;background-color:initial;border:none;border-radius:var(--qd-radius-circle);color:var(--qd-text-muted);cursor:pointer;display:inline-flex;height:36px;justify-content:center;padding:var(--qd-space-2);transition:background-color var(--qd-transition),color var(--qd-transition),transform var(--qd-transition-fast);width:36px}.closingX svg{height:100%;width:100%}.closingX:hover{background-color:var(--qd-surface-3);color:var(--qd-text)}.closingX:active{transform:scale(.92)}.closingX:focus-visible{outline:2px solid var(--qd-accent);outline-offset:2px}.bbutton{align-items:center;border-radius:var(--qd-radius-md);border-style:solid;border-width:1px;box-sizing:border-box;color:var(--qd-text);cursor:pointer;display:inline-flex;font-family:inherit;font-size:var(--qd-text-base);font-weight:var(--qd-weight-semibold);gap:var(--qd-space-2);justify-content:center;line-height:1;margin:0;min-height:var(--qd-control-md);padding:0 var(--qd-space-4);text-align:center;transition:background-color var(--qd-transition-fast),border-color var(--qd-transition-fast),box-shadow var(--qd-transition-fast),color var(--qd-transition-fast),transform var(--qd-transition-fast);-webkit-user-select:none;user-select:none;white-space:nowrap}.bbutton:not([class*=btn-]){background-color:var(--qd-surface-2);border-color:var(--qd-border)}.bbutton:not([class*=btn-]):hover{background-color:var(--qd-surface-3);border-color:var(--qd-border-strong)}.bbutton:active[data-enabled=true]{transform:translateY(.5px)}.bbutton svg{flex-shrink:0}.bbutton[aria-disabled=true],.bbutton[data-enabled=false]{cursor:not-allowed;opacity:.55;pointer-events:none}.tag-selector{font-family:var(--qd-font-sans);position:relative;width:100%}.tag-selector h3{color:var(--qd-text-muted);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);letter-spacing:.5px;margin:0 0 var(--qd-space-2) 0;text-transform:uppercase}.input-wrapper{align-items:center;display:flex;position:relative}.tag-input{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text);font-size:var(--qd-text-base);height:var(--qd-control-md);outline:none;padding:0 var(--qd-space-3) 0 34px;transition:border-color var(--qd-transition),box-shadow var(--qd-transition);width:100%}.tag-input::placeholder{color:var(--qd-text-subtle)}.tag-input:focus{border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring)}.search-icon{color:var(--qd-text-subtle);font-size:var(--qd-text-lg);left:var(--qd-space-3);pointer-events:none;position:absolute}.tag-dropdown{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);box-shadow:var(--qd-shadow-md);left:0;list-style:none;margin-top:var(--qd-space-1);max-height:250px;overflow-y:auto;padding:0;position:absolute;right:0;top:100%;z-index:var(--qd-z-dropdown)}.dropdown-item{border-bottom:1px solid var(--qd-border);color:var(--qd-text)}.dropdown-item:last-child{border-bottom:none}.dropdown-item.highlighted{background-color:var(--qd-surface-3)}.tag-name{font-weight:var(--qd-weight-medium)}.create-item{color:var(--qd-success)}.create-item.highlighted{background-color:var(--qd-success-subtle)}.plus-icon{font-size:var(--qd-text-lg);font-weight:var(--qd-weight-bold);margin-right:var(--qd-space-2)}.no-results{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);font-style:italic;margin-top:var(--qd-space-2);padding-left:var(--qd-space-1)}.qd-chip{align-items:center;border:1px solid #0000;border-radius:var(--qd-radius-pill);box-sizing:border-box;display:inline-flex;font-size:var(--qd-text-xs);font-weight:var(--qd-weight-medium);gap:var(--qd-space-1);line-height:1.5;max-width:100%;overflow:hidden;padding:3px var(--qd-space-2);text-overflow:ellipsis;white-space:nowrap}.qd-chip--sm{font-size:.68rem;padding:1px var(--qd-space-2)}.qd-chip-label{overflow:hidden;text-overflow:ellipsis}.qd-chip--neutral{background-color:var(--qd-surface-3);border-color:var(--qd-border);color:var(--qd-text-muted)}.qd-chip--accent{background-color:var(--qd-accent);color:var(--qd-text-on-accent)}.qd-chip--accent-subtle{background-color:var(--qd-accent-subtle);color:var(--qd-accent-text)}.qd-chip--success{background-color:var(--qd-success-subtle);color:var(--qd-success)}.qd-chip--warning{background-color:var(--qd-warning-subtle);color:var(--qd-text)}.qd-chip--danger{background-color:var(--qd-danger-subtle);color:var(--qd-danger)}.qd-chip-remove{align-items:center;background:#0000;border:none;border-radius:var(--qd-radius-circle);color:currentColor;cursor:pointer;display:inline-flex;height:16px;justify-content:center;margin-right:-2px;opacity:.7;padding:0;transition:opacity var(--qd-transition-fast),background-color var(--qd-transition-fast);width:16px}.qd-chip-remove:hover{background-color:#00000026;opacity:1}.qd-chip-remove svg{height:10px;width:10px}.uploadFileModal{background-color:var(--qd-surface);display:flex;flex-direction:column;font-family:var(--qd-font-sans);max-height:85vh;max-width:95vw;width:600px}.modal-header{align-items:center;border-bottom:1px solid var(--qd-border);display:flex;flex-shrink:0;justify-content:space-between;padding:var(--qd-space-5) var(--qd-space-6)}.modal-header h1{color:var(--qd-text);font-size:var(--qd-text-2xl);margin:0}.modal-body-scroll{flex-grow:1;overflow-y:auto;padding:var(--qd-space-6)}.modal-footer{border-top:1px solid var(--qd-border);display:flex;flex-direction:column;flex-shrink:0;gap:var(--qd-space-4);padding:var(--qd-space-5) var(--qd-space-6)}.modal-actions{display:flex;gap:var(--qd-space-3);justify-content:flex-end}.drop-zone{background-color:var(--qd-surface-2);border:2px dashed var(--qd-border-strong);border-radius:var(--qd-radius-lg);cursor:pointer;padding:var(--qd-space-8) var(--qd-space-5);text-align:center;transition:border-color var(--qd-transition),background-color var(--qd-transition)}.drop-zone.dragging,.drop-zone:hover{background-color:var(--qd-accent-subtle);border-color:var(--qd-accent)}.dz-icon{display:block;font-size:2.5rem;margin-bottom:var(--qd-space-3)}.dz-content p{color:var(--qd-text-muted);font-size:var(--qd-text-md);margin:0}.upload-queue-list{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);margin-top:var(--qd-space-5);max-height:250px;overflow-y:auto;padding:0}.upload-queue-list h4{color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);margin:var(--qd-space-3) var(--qd-space-3) var(--qd-space-2)}.queue-item{grid-gap:var(--qd-space-3);align-items:center;border-bottom:1px solid var(--qd-border);display:grid;gap:var(--qd-space-3);grid-template-columns:1fr auto;padding:var(--qd-space-3);transition:background-color var(--qd-transition)}.queue-item:hover{background-color:var(--qd-surface-3)}.queue-item:last-child{border-bottom:none}.qi-content{flex-direction:column;min-width:0}.qi-content,.qi-header{display:flex;gap:var(--qd-space-2)}.qi-header{align-items:center}.qi-name{color:var(--qd-text);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qi-progress-track{background-color:var(--qd-surface-3);border-radius:var(--qd-radius-pill);height:6px;overflow:hidden;width:100%}.qi-progress-fill{background-color:var(--qd-accent);height:100%;transition:width var(--qd-transition-slow)}.qi-status-label{color:var(--qd-text-subtle);font-size:var(--qd-text-xs)}.status-success .qi-progress-fill{background-color:var(--qd-success)}.status-error .qi-progress-fill{background-color:var(--qd-danger)}.status-success .qi-status-label{color:var(--qd-success)}.status-error .qi-status-label{color:var(--qd-danger)}.qi-actions,.qi-btn{align-items:center;display:flex}.qi-btn{background:none;border:none;border-radius:var(--qd-radius-xs);color:var(--qd-text-subtle);cursor:pointer;font-size:1.2rem;justify-content:center;line-height:1;padding:var(--qd-space-2);transition:background-color var(--qd-transition),color var(--qd-transition)}.qi-btn:hover{background-color:var(--qd-surface-3);color:var(--qd-text)}.qi-btn.retry{color:var(--qd-accent);font-size:var(--qd-text-md)}.qi-btn.remove:hover{background-color:var(--qd-danger-subtle);color:var(--qd-danger)}.divider{background-color:var(--qd-border);border:none;filter:drop-shadow(1px 1px 2px var(--qd-border));height:1px;margin:var(--qd-space-6) 0;outline:none}.config-section.disabled{opacity:.5;pointer-events:none}.config-section h3{color:var(--qd-text);margin-bottom:var(--qd-space-5);margin-top:0}.config-row{margin-bottom:var(--qd-space-6)}.config-row h4{font-size:.9rem;letter-spacing:.5px;margin:0 0 10px;text-transform:uppercase}.config-row h4,.fg-label{color:var(--qd-text-muted)}.fg-label{display:block;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);margin-bottom:var(--qd-space-2)}.fg-input{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);box-sizing:border-box;color:var(--qd-text);font-size:var(--qd-text-base);height:var(--qd-control-md);outline:none;padding:0 var(--qd-space-3);transition:border-color var(--qd-transition),box-shadow var(--qd-transition);width:100%}.fg-input:focus{border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring)}.fg-input:disabled{background-color:var(--qd-surface-2);color:var(--qd-text-subtle)}.fg-hint{color:var(--qd-text-subtle);display:block;font-size:var(--qd-text-sm);line-height:1.4;margin-top:var(--qd-space-2)}.fg-danger-zone{border-top:1px solid var(--qd-border);margin-top:var(--qd-space-8);padding-top:var(--qd-space-5)}.fg-danger-zone .fg-danger-title{color:var(--qd-danger);letter-spacing:normal;margin:0 0 var(--qd-space-3);text-transform:none}.checkbox-container{align-items:center;cursor:pointer;display:flex;font-size:1rem;padding-left:30px;position:relative;-webkit-user-select:none;user-select:none}.checkbox-container input{cursor:pointer;height:0;opacity:0;position:absolute;width:0}.checkmark{background-color:var(--qd-surface);border:2px solid var(--qd-border-strong);border-radius:var(--qd-radius-xs);height:20px;left:0;position:absolute;top:0;transition:background-color var(--qd-transition),border-color var(--qd-transition);width:20px}.checkbox-container:hover input~.checkmark{border-color:var(--qd-accent)}.checkbox-container input:checked~.checkmark{background-color:var(--qd-accent);border-color:var(--qd-accent)}.checkmark:after{content:"";display:none;position:absolute}.checkbox-container input:checked~.checkmark:after{display:block}.checkbox-container .checkmark:after{border:solid var(--qd-text-on-accent);border-width:0 2px 2px 0;height:10px;left:6px;top:2px;transform:rotate(45deg);width:5px}.meta-table-container,.tag-config-wrapper{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);padding:var(--qd-space-4)}.meta-table-container{padding:0}.selected-tags-container{display:flex;flex-wrap:wrap;gap:var(--qd-space-2);margin-top:var(--qd-space-3)}.meta-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--qd-space-2)}.meta-header h4{margin:0}.btn-small{background-color:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);cursor:pointer;font-size:var(--qd-text-sm);padding:var(--qd-space-2) var(--qd-space-3)}.btn-small:hover{background-color:var(--qd-surface-3)}.meta-table{border-collapse:collapse;width:100%}.meta-table td,.meta-table th{border-bottom:1px solid var(--qd-border);padding:var(--qd-space-3) var(--qd-space-4);text-align:left}.meta-table th{background-color:var(--qd-surface-2);color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold)}.meta-table tr:last-child td{border-bottom:none}.meta-table input{border:1px solid #0000;border-radius:var(--qd-radius-xs);padding:var(--qd-space-2);transition:border-color var(--qd-transition);width:100%}.meta-table input:focus{background-color:var(--qd-surface-2);border-color:var(--qd-accent);outline:none}.btn-remove-row{background:none;border:none;color:var(--qd-danger);cursor:pointer;font-size:1.2rem}.btn-remove-row:hover{color:var(--qd-danger-hover)}.progress-container{background-color:var(--qd-surface-3);border-radius:var(--qd-radius-xs);height:6px;overflow:hidden;position:relative;width:100%}.progress-bar{background-color:var(--qd-success);height:100%;transition:width var(--qd-transition-slow)}.status-msg{border-radius:var(--qd-radius-sm);font-size:var(--qd-text-sm);margin-bottom:var(--qd-space-2);padding:var(--qd-space-3);text-align:center}.status-msg.success{background-color:var(--qd-success-subtle);color:var(--qd-success)}.status-msg.error{background-color:var(--qd-danger-subtle);color:var(--qd-danger)}.qd-confirm.modal{max-width:calc(100vw - var(--qd-space-8));overflow:visible;padding:0;width:420px}.qd-confirm-inner{display:flex;gap:var(--qd-space-4);padding:var(--qd-space-5) var(--qd-space-5) var(--qd-space-4)}.qd-confirm-icon{align-items:center;border-radius:var(--qd-radius-circle);display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.qd-confirm-icon svg{height:20px;width:20px}.qd-confirm-icon--danger{background-color:var(--qd-danger-subtle);color:var(--qd-danger)}.qd-confirm-icon--default{background-color:var(--qd-accent-subtle);color:var(--qd-accent-text)}.qd-confirm-text{flex:1 1;min-width:0}.qd-confirm-title{color:var(--qd-text);font-size:var(--qd-text-lg);font-weight:var(--qd-weight-semibold);margin:2px 0 var(--qd-space-2)}.qd-confirm-message{color:var(--qd-text-muted);font-size:var(--qd-text-base);line-height:1.5;margin:0}.qd-confirm-actions{display:flex;gap:var(--qd-space-2);justify-content:flex-end;padding:0 var(--qd-space-5) var(--qd-space-5)}.metadata-editor-component{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);font-size:var(--qd-text-base);overflow:hidden}.metadata-editor-component.disabled{opacity:.6;pointer-events:none}.me-table{border-collapse:collapse;width:100%}.me-table td{border-bottom:1px solid var(--qd-border);padding:var(--qd-space-3) var(--qd-space-4)}.me-key{background-color:var(--qd-surface-2);border-right:1px solid var(--qd-border);color:var(--qd-text-muted);font-weight:var(--qd-weight-semibold);width:30%}.me-val{color:var(--qd-text);word-break:break-all}.me-muted{color:var(--qd-text-subtle);font-style:italic}.me-val-content{align-items:flex-start;display:flex;gap:var(--qd-space-3);justify-content:space-between}.me-val-text{flex:1 1}.me-row-actions{display:flex;gap:var(--qd-space-1);opacity:0;transition:opacity var(--qd-transition)}.me-row.editable-row:hover .me-row-actions{opacity:1}.me-icon-btn{background:none;border:none;border-radius:var(--qd-radius-xs);color:var(--qd-text-subtle);cursor:pointer;font-size:var(--qd-text-md);padding:var(--qd-space-1) var(--qd-space-2)}.me-icon-btn:hover{background-color:var(--qd-surface-3);color:var(--qd-accent)}.me-icon-btn.me-delete-icon:hover{background-color:var(--qd-danger-subtle);color:var(--qd-danger)}.me-inline-editor{display:flex;flex-direction:column;gap:var(--qd-space-3)}.me-inline-editor>input{border:1px solid var(--qd-border);border-radius:var(--qd-radius-xs);font-family:inherit;padding:var(--qd-space-2);width:100%}.me-save-actions{display:flex;gap:var(--qd-space-2)}.me-custom-key-form button,.me-save-actions button{border:none;border-radius:var(--qd-radius-xs);cursor:pointer;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);padding:var(--qd-space-2) var(--qd-space-4)}.me-save-btn{background-color:var(--qd-accent);color:var(--qd-text-on-accent)}.me-save-btn:hover{background-color:var(--qd-accent-hover)}.me-cancel-btn{color:var(--qd-text-muted)}.me-cancel-btn,.me-cancel-btn:hover{background-color:var(--qd-surface-3)}.me-list-editor{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);flex-direction:column;padding:var(--qd-space-3)}.me-list-editor,.me-list-item-row{display:flex;gap:var(--qd-space-2)}.me-list-item-row{align-items:center}.me-list-item-row input{border:1px solid var(--qd-border);border-radius:var(--qd-radius-xs);flex:1 1;padding:var(--qd-space-2) var(--qd-space-3)}.me-list-item-actions{display:flex;gap:var(--qd-space-1)}.me-list-item-actions button{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-xs);color:var(--qd-text-muted);cursor:pointer;height:28px;width:28px}.me-list-item-actions button:hover:not(:disabled){background:var(--qd-surface-3)}.me-list-item-actions button:disabled{cursor:not-allowed;opacity:.4}.me-list-item-actions button.me-remove-btn{color:var(--qd-danger)}.me-add-list-item-btn{align-self:flex-start;background:none;border:1px dashed var(--qd-border-strong);border-radius:var(--qd-radius-xs);color:var(--qd-text-muted);cursor:pointer;font-weight:var(--qd-weight-semibold);padding:var(--qd-space-2) var(--qd-space-3)}.me-add-list-item-btn:hover{background:var(--qd-accent-subtle);border-color:var(--qd-accent);color:var(--qd-accent)}.me-footer{background-color:var(--qd-surface-2);border-top:1px solid var(--qd-border);padding:var(--qd-space-3) var(--qd-space-4)}.me-add-custom-btn{background:none;border:none;color:var(--qd-accent-text);cursor:pointer;font-weight:var(--qd-weight-semibold)}.me-add-custom-btn:hover:not(:disabled){text-decoration:underline}.me-add-custom-btn:disabled{color:var(--qd-text-subtle);cursor:not-allowed}.me-custom-key-form{align-items:center;display:flex;gap:var(--qd-space-2)}.me-custom-key-form input{border:1px solid var(--qd-border);border-radius:var(--qd-radius-xs);flex:1 1;padding:var(--qd-space-2) var(--qd-space-3)}.me-list-display{display:flex;flex-direction:column;gap:var(--qd-space-2);list-style-type:none;margin:var(--qd-space-1) 0;padding-left:0}.me-list-display li{background-color:var(--qd-surface-2);border-left:3px solid var(--qd-accent);border-radius:var(--qd-radius-sm);color:var(--qd-text);font-size:.95em;line-height:1.4;padding:var(--qd-space-2) var(--qd-space-3);word-break:break-word}.me-link{align-items:center;color:var(--qd-accent-text);display:inline-flex;font-weight:var(--qd-weight-medium);gap:var(--qd-space-1);text-decoration:none;transition:color var(--qd-transition),-webkit-text-decoration var(--qd-transition);transition:color var(--qd-transition),text-decoration var(--qd-transition);transition:color var(--qd-transition),text-decoration var(--qd-transition),-webkit-text-decoration var(--qd-transition)}.me-link:focus,.me-link:hover{color:var(--qd-accent-hover);text-decoration:underline}.me-link:after{content:"↗";font-size:.8em;margin-left:2px;opacity:.7}.qd-empty{align-items:center;box-sizing:border-box;color:var(--qd-text-muted);display:flex;flex-direction:column;gap:var(--qd-space-3);height:100%;justify-content:center;min-height:220px;padding:var(--qd-space-10) var(--qd-space-6);text-align:center}.qd-empty--compact{min-height:0;padding:var(--qd-space-6) var(--qd-space-4)}.qd-empty-icon{align-items:center;background-color:var(--qd-surface-2);border-radius:var(--qd-radius-circle);color:var(--qd-text-subtle);display:flex;height:56px;justify-content:center;margin-bottom:var(--qd-space-1);width:56px}.qd-empty-icon svg{height:28px;width:28px}.qd-empty-title{color:var(--qd-text);font-size:var(--qd-text-lg);font-weight:var(--qd-weight-semibold);margin:0}.qd-empty-desc{color:var(--qd-text-muted);font-size:var(--qd-text-base);line-height:1.5;margin:0;max-width:44ch}.qd-empty-action{display:flex;gap:var(--qd-space-2);margin-top:var(--qd-space-2)}.qd-progress{width:100%}.qd-progress-head{align-items:center;color:var(--qd-text-muted);display:flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);justify-content:space-between;margin-bottom:var(--qd-space-1)}.qd-progress-track{background-color:var(--qd-surface-3);border-radius:var(--qd-radius-pill);height:8px;overflow:hidden;width:100%}.qd-progress-fill{background-color:var(--qd-accent);border-radius:var(--qd-radius-pill);height:100%;transition:width var(--qd-transition)}.qd-progress-fill--success{background-color:var(--qd-success)}.qd-progress-fill--warning{background-color:var(--qd-warning)}.qd-progress-fill--danger{background-color:var(--qd-danger)}.qd-progress--indeterminate .qd-progress-fill{animation:qd-progress-indeterminate 1.1s var(--qd-ease) infinite;width:35%!important}@keyframes qd-progress-indeterminate{0%{margin-left:-35%}to{margin-left:100%}}.importWizardModal{background-color:var(--qd-surface);display:flex;flex-direction:column;font-family:var(--qd-font-sans);height:min(820px,90vh);max-width:95vw;padding:0;width:min(1100px,95vw)}.importWizardModal .modal-body-scroll.iw-body{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden;padding:0}.iw-muted{color:var(--qd-text-muted)}.iw-hint{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);margin:var(--qd-space-1) 0 var(--qd-space-3)}.iw-dropzone{align-items:center;border:2px dashed var(--qd-border-strong);border-radius:var(--qd-radius-lg);color:var(--qd-text-muted);display:flex;flex:1 1;flex-direction:column;gap:var(--qd-space-4);justify-content:center;margin:var(--qd-space-6);transition:background-color var(--qd-transition),border-color var(--qd-transition)}.iw-dropzone.dragging{background-color:var(--qd-accent-subtle);border-color:var(--qd-accent)}.iw-dz-icon{font-size:48px}.iw-dz-actions{display:flex;gap:var(--qd-space-3)}.iw-extracting{color:var(--qd-accent);font-weight:var(--qd-weight-semibold)}.iw-organize{display:flex;flex:1 1;flex-direction:column;min-height:0}.iw-organize-toolbar{align-items:center;border-bottom:1px solid var(--qd-border);display:flex;gap:var(--qd-space-3);justify-content:space-between;padding:var(--qd-space-3) var(--qd-space-5)}.iw-summary{color:var(--qd-text)}.iw-summary strong{color:var(--qd-accent-text)}.iw-filterbar{background-color:var(--qd-surface-2);border-bottom:1px solid var(--qd-border);gap:var(--qd-space-3) var(--qd-space-5);padding:var(--qd-space-3) var(--qd-space-5)}.iw-filter-group,.iw-filterbar{align-items:center;display:flex;flex-wrap:wrap}.iw-chip-toggle,.iw-filter-group,.iw-filter-types{gap:var(--qd-space-2)}.iw-chip-toggle{align-items:center;background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-pill);color:var(--qd-text-muted);cursor:pointer;display:inline-flex;font-size:var(--qd-text-sm);padding:var(--qd-space-1) var(--qd-space-3);transition:border-color var(--qd-transition),background-color var(--qd-transition),color var(--qd-transition);-webkit-user-select:none;user-select:none}.iw-chip-toggle.on{background-color:var(--qd-accent-subtle);border-color:var(--qd-accent);color:var(--qd-text)}.iw-chip-toggle input{margin:0}.iw-count{font-feature-settings:"tnum";color:var(--qd-text-subtle);font-variant-numeric:tabular-nums}.iw-filter-name,.iw-filter-size{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text);font-size:var(--qd-text-sm);padding:var(--qd-space-1) var(--qd-space-2)}.iw-filter-name{min-width:160px}.iw-filter-size{width:80px}.iw-text-btn{background:none;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-accent-text);cursor:pointer;font-size:var(--qd-text-sm);padding:var(--qd-space-1) var(--qd-space-2)}.iw-text-btn:disabled{color:var(--qd-text-subtle);cursor:default}.iw-organize-main{display:flex;flex:1 1;min-height:0}.iw-tree{flex:1 1;min-height:0;overflow:auto;padding:var(--qd-space-2) 0}.iw-tree-virtual{overflow:hidden;padding:0}.iw-tree-empty{color:var(--qd-text-subtle);justify-content:center}.iw-row,.iw-tree-empty{align-items:center;display:flex}.iw-row{box-sizing:border-box;color:var(--qd-text);cursor:pointer;font-size:var(--qd-text-sm);gap:var(--qd-space-1);height:30px;padding:0 var(--qd-space-3) 0 var(--qd-space-2);-webkit-user-select:none;user-select:none}.iw-row:hover{background-color:var(--qd-surface-3)}.iw-row.selected{background-color:var(--qd-accent-subtle);box-shadow:inset 2px 0 0 var(--qd-accent)}.iw-row.excluded{opacity:.45}.iw-row.treeview-folder .iw-row-name{font-weight:var(--qd-weight-semibold)}.iw-guides{align-self:stretch;display:flex;flex-shrink:0}.iw-guide{align-self:stretch;border-left:1px solid var(--qd-border)}.iw-caret{align-items:center;background:none;border:none;color:var(--qd-text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;height:16px;justify-content:center;padding:0;width:16px}.iw-caret-tri{font-size:.6rem;line-height:1;transition:transform var(--qd-transition-fast)}.iw-caret-tri.open{transform:rotate(90deg)}.iw-row-check{flex-shrink:0;margin:0}.iw-row-icon{flex-shrink:0;font-size:var(--qd-text-base);line-height:1}.iw-row-name{flex-shrink:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iw-row-tags{align-items:center;display:flex;flex-shrink:0;gap:var(--qd-space-1);margin-left:auto;max-width:45%;overflow:hidden}.qd-chip.iw-chip-mini{border-radius:var(--qd-radius-xs)}.iw-inherit-badge,.iw-tag-more{color:var(--qd-text-subtle);font-size:var(--qd-text-xs)}.iw-inspector{background-color:var(--qd-surface-2);border-left:1px solid var(--qd-border);flex-shrink:0;overflow:auto;padding:var(--qd-space-4);width:340px}.iw-inspector-empty{display:flex;flex-direction:column;justify-content:center}.iw-inspector-head{align-items:center;display:flex;gap:var(--qd-space-2);margin-bottom:var(--qd-space-2)}.iw-inspector-title{font-weight:var(--qd-weight-semibold);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iw-whole-import{margin-left:auto;white-space:nowrap}.iw-include-toggle{align-items:center;display:flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);margin:var(--qd-space-2) 0 var(--qd-space-4)}.iw-section{margin-top:var(--qd-space-4)}.iw-section h4{color:var(--qd-text);margin:0 0 var(--qd-space-2)}.iw-inherited{align-items:center;display:flex;flex-wrap:wrap;gap:var(--qd-space-1);margin-bottom:var(--qd-space-2)}.iw-inherited-label{color:var(--qd-text-subtle);font-size:var(--qd-text-xs)}.iw-own-tags{display:flex;flex-wrap:wrap;gap:var(--qd-space-1);margin-bottom:var(--qd-space-3)}.qd-chip.iw-chip-inherited{background-color:initial;border:1px dashed var(--qd-border-strong);color:var(--qd-text-muted)}.iw-import{padding:var(--qd-space-8)}.iw-import h3{color:var(--qd-text)}.iw-result-banner{margin:var(--qd-space-2) 0}.iw-failures{margin-top:var(--qd-space-4)}.iw-failures h4{color:var(--qd-danger);margin:0 0 var(--qd-space-2)}.iw-failures ul{color:var(--qd-text-muted);font-size:var(--qd-text-sm);margin:0;max-height:240px;overflow:auto;padding-left:var(--qd-space-5)}.iw-group-opt{align-items:center;display:flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);margin-right:auto}.iw-group-name{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text);padding:var(--qd-space-2) var(--qd-space-3)}.importWizardModal .modal-actions,.iw-toolbar-actions{align-items:center;flex-wrap:wrap}.iw-toolbar-actions{display:flex;gap:var(--qd-space-2)}.iw-suggested{background-color:var(--qd-accent-subtle);border:1px dashed var(--qd-accent);border-radius:var(--qd-radius-md);margin:var(--qd-space-2) 0 var(--qd-space-3);padding:var(--qd-space-2)}.iw-suggested-head{align-items:center;display:flex;gap:var(--qd-space-2);justify-content:space-between;margin-bottom:var(--qd-space-2)}.iw-suggested-label{color:var(--qd-accent-text);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold)}.iw-ai-desc{color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-style:italic;margin:0 0 var(--qd-space-2)}.qd-chip.iw-chip-suggested{background-color:var(--qd-surface);border:1px solid var(--qd-accent);color:var(--qd-text)}.iw-tag-accept{background:none;border:none;color:var(--qd-success);cursor:pointer;font-size:var(--qd-text-md);font-weight:var(--qd-weight-bold);line-height:1;padding:0 1px}.iw-tag-accept:disabled{color:var(--qd-text-subtle);cursor:default}.iw-suggest-badge{color:var(--qd-accent-text);font-size:var(--qd-text-xs)}.iw-quickfill{align-items:center;display:flex;flex-wrap:wrap;gap:var(--qd-space-2);margin:var(--qd-space-2) 0 var(--qd-space-3)}.iw-preset-select{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text);font-size:var(--qd-text-sm);max-width:160px;padding:var(--qd-space-1) var(--qd-space-2)}.iw-resume-banner{margin-bottom:var(--qd-space-4);max-width:540px}.bulk-modal{display:flex;flex-direction:column;gap:var(--qd-space-5);width:min(520px,92vw)}.bulk-modal-header h2{color:var(--qd-text);font-size:var(--qd-text-lg);margin:0}.bulk-modal-header p{color:var(--qd-text-muted);font-size:var(--qd-text-sm);margin:var(--qd-space-1) 0 0}.bulk-tabs{background:var(--qd-surface-3);border-radius:var(--qd-radius-md);display:flex;gap:var(--qd-space-1);padding:var(--qd-space-1)}.bulk-tab{background:#0000;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);cursor:pointer;flex:1 1;font-size:var(--qd-text-base);padding:var(--qd-space-2) var(--qd-space-3);transition:background var(--qd-transition),color var(--qd-transition)}.bulk-tab.active{background:var(--qd-surface);box-shadow:var(--qd-shadow-sm);color:var(--qd-accent-text)}.bulk-pill-list{display:flex;flex-wrap:wrap;gap:var(--qd-space-2);max-height:220px;overflow-y:auto}.bulk-pill-count{font-feature-settings:"tnum";color:var(--qd-text-subtle);font-size:var(--qd-text-xs);font-variant-numeric:tabular-nums}.bulk-field{display:flex;flex-direction:column;gap:var(--qd-space-2)}.bulk-field label{color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold)}.bulk-field input,.bulk-field select{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text);font-size:var(--qd-text-base);padding:var(--qd-space-2) var(--qd-space-3)}.bulk-field input:focus,.bulk-field select:focus{border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring);outline:none}.bulk-field-hint{color:var(--qd-text-subtle);font-size:var(--qd-text-xs)}.bulk-footer{display:flex;gap:var(--qd-space-3);justify-content:flex-end;margin-top:var(--qd-space-1)}.fb-toolbar{background-color:var(--qd-surface);border-bottom:1px solid var(--qd-border);box-sizing:border-box;gap:var(--qd-space-5);height:70px;justify-content:space-between;padding:0 var(--qd-space-6)}.fb-toolbar,.fb-toolbar-group{align-items:center;display:flex}.fb-toolbar-group{flex:1 1;gap:var(--qd-space-3)}.fb-selection-group{align-items:center;background-color:var(--qd-accent-subtle);border-left:1px solid var(--qd-border);border-radius:var(--qd-radius-md);display:flex;gap:var(--qd-space-2);margin-left:var(--qd-space-1);padding:var(--qd-space-1) var(--qd-space-2) var(--qd-space-1) var(--qd-space-3)}.fb-selection-count{color:var(--qd-accent-text);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);white-space:nowrap}.fb-toolbar-search{align-items:center;display:flex;flex:2 1;justify-content:center;max-width:600px}.fb-toolbar-group.right{justify-content:flex-end}.view-toggle{background:var(--qd-surface-3);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);display:flex;padding:3px}.vt-btn{align-items:center;background:#0000;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-subtle);cursor:pointer;display:flex;height:var(--qd-control-sm);justify-content:center;transition:background-color var(--qd-transition),color var(--qd-transition);width:var(--qd-control-sm)}.vt-btn:hover{color:var(--qd-text-muted)}.vt-btn.active,.vt-btn:hover{background-color:var(--qd-surface)}.vt-btn.active{box-shadow:var(--qd-shadow-sm);color:var(--qd-accent)}.dropdown-wrapper{position:relative}.dropdown-wrapper,.icon-btn{align-items:center;display:flex}.icon-btn{background:#0000;border:1px solid #0000;border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);cursor:pointer;font-size:var(--qd-text-base);gap:var(--qd-space-2);height:var(--qd-control-md);padding:var(--qd-space-2) var(--qd-space-3);transition:background-color var(--qd-transition),border-color var(--qd-transition)}.icon-btn:hover{background-color:var(--qd-surface-2);border-color:var(--qd-border)}.dropdown-menu{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);box-shadow:var(--qd-shadow-md);display:flex;flex-direction:column;margin-top:var(--qd-space-2);min-width:200px;padding:var(--qd-space-2) 0;position:absolute;right:0;top:100%;z-index:var(--qd-z-dropdown)}.dropdown-menu h4{border-bottom:1px solid var(--qd-border);color:var(--qd-text-subtle);font-size:var(--qd-text-xs);letter-spacing:.5px;margin:0;padding:var(--qd-space-2) var(--qd-space-4);text-transform:uppercase}.dropdown-item{align-items:center;color:var(--qd-text-muted);cursor:pointer;display:flex;font-size:var(--qd-text-base);padding:var(--qd-space-3) var(--qd-space-4);transition:background var(--qd-transition-fast);-webkit-user-select:none;user-select:none}.dropdown-item:hover{background-color:var(--qd-surface-3);color:var(--qd-text)}.dropdown-item input{accent-color:var(--qd-accent);height:16px;margin-right:var(--qd-space-3);width:16px}.dropdown-backdrop{cursor:default;height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:var(--qd-z-drop-overlay)}.dm-section{margin-bottom:var(--qd-space-6)}.dm-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--qd-space-3)}.dm-section h3{align-items:center;color:var(--qd-text);display:flex;font-size:var(--qd-text-md);gap:var(--qd-space-2);margin:0}.dm-list-container{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);overflow:hidden}.dm-row{align-items:center;border-bottom:1px solid var(--qd-border);display:flex;justify-content:space-between;padding:var(--qd-space-3) var(--qd-space-4);transition:background-color var(--qd-transition)}.dm-row:last-child{border-bottom:none}.dm-row:hover{background-color:var(--qd-surface-3)}.dm-info{display:flex;flex-direction:column;gap:var(--qd-space-1)}.dm-name{color:var(--qd-text);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-medium)}.dm-meta{color:var(--qd-text-subtle);font-size:var(--qd-text-xs)}.dm-groups-container{display:flex;flex-direction:column;gap:var(--qd-space-4)}.dm-card{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);overflow:hidden}.dm-card-header{align-items:center;background-color:var(--qd-surface-2);border-bottom:1px solid var(--qd-border);display:flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);padding:var(--qd-space-2) var(--qd-space-4)}.dm-hash-label{color:var(--qd-text-muted);font-weight:var(--qd-weight-semibold)}.dm-hash-val{background:var(--qd-surface-3);border-radius:var(--qd-radius-xs);color:var(--qd-text-muted);font-family:var(--qd-font-mono);padding:2px var(--qd-space-2)}.dm-action-btn{background:none;border:none;border-radius:var(--qd-radius-xs);cursor:pointer;font-size:var(--qd-text-sm);padding:var(--qd-space-2) var(--qd-space-3);transition:background-color var(--qd-transition),color var(--qd-transition)}.dm-action-btn.primary{background-color:var(--qd-accent-subtle);color:var(--qd-accent);font-weight:500}.dm-action-btn.primary:hover{background-color:var(--qd-accent);color:var(--qd-text-on-accent)}.dm-action-btn.danger{align-items:center;background-color:var(--qd-danger-subtle);color:var(--qd-danger);display:flex;font-size:var(--qd-text-md);height:var(--qd-control-sm);justify-content:center;padding:0;width:var(--qd-control-sm)}.dm-action-btn.danger:hover{background-color:var(--qd-danger);color:var(--qd-text-on-accent)}.dm-action-btn:disabled{cursor:not-allowed;filter:grayscale(100%);opacity:.5}.empty-state-success{align-items:center;background-color:var(--qd-success-subtle);border:1px dashed var(--qd-success);border-radius:var(--qd-radius-md);color:var(--qd-success);display:flex;flex-direction:column;font-size:var(--qd-text-base);gap:var(--qd-space-2);padding:var(--qd-space-6);text-align:center}.empty-state-success svg{font-size:var(--qd-text-2xl)}.badge-warning{color:var(--qd-warning)}.badge-danger,.badge-warning{margin-right:var(--qd-space-1)}.badge-danger{color:var(--qd-danger)}.dm-toolbar{padding:var(--qd-space-3) 0 var(--qd-space-1)}.dm-search,.dm-toolbar{align-items:center;display:flex;gap:var(--qd-space-2)}.dm-search{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text-subtle);flex:1 1;padding:var(--qd-space-2) var(--qd-space-3)}.dm-search input{background:#0000;border:none;color:var(--qd-text);flex:1 1;font-size:var(--qd-text-sm);outline:none}.dm-icon-btn{align-items:center;background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text-muted);cursor:pointer;display:flex;height:var(--qd-control-md);justify-content:center;margin-left:auto;transition:background var(--qd-transition),color var(--qd-transition);width:var(--qd-control-md)}.dm-icon-btn:hover:not(:disabled){background:var(--qd-surface-3);color:var(--qd-text)}.dm-icon-btn:disabled{cursor:not-allowed;opacity:.5}.dm-tabs{border-bottom:1px solid var(--qd-border);display:flex;gap:var(--qd-space-1);margin-bottom:var(--qd-space-4);overflow-x:auto}.dm-tab{align-items:center;background:none;border:none;border-bottom:2px solid #0000;color:var(--qd-text-muted);cursor:pointer;display:flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);padding:var(--qd-space-3) var(--qd-space-4);transition:color var(--qd-transition),border-color var(--qd-transition);white-space:nowrap}.dm-tab:hover{color:var(--qd-text)}.dm-tab.active{border-bottom-color:var(--qd-accent);color:var(--qd-accent);font-weight:var(--qd-weight-semibold)}.dm-tab-badge{background:var(--qd-surface-3);border-radius:var(--qd-radius-pill);color:var(--qd-text-muted);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);min-width:18px;padding:1px var(--qd-space-2);text-align:center}.dm-tab-badge.danger{background:var(--qd-danger-subtle);color:var(--qd-danger)}.dm-stat-grid{grid-gap:var(--qd-space-3);display:grid;gap:var(--qd-space-3);grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.dm-stat{align-items:flex-start;background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);color:var(--qd-text);display:flex;flex-direction:column;gap:var(--qd-space-1);padding:var(--qd-space-4);text-align:left}.dm-stat.clickable{cursor:pointer;transition:border-color var(--qd-transition),transform var(--qd-transition-fast)}.dm-stat.clickable:hover{border-color:var(--qd-accent);transform:translateY(-1px)}.dm-stat:disabled{cursor:default}.dm-stat-icon{color:var(--qd-text-subtle);font-size:var(--qd-text-lg)}.dm-stat.ok .dm-stat-icon{color:var(--qd-success)}.dm-stat.warn .dm-stat-icon{color:var(--qd-warning)}.dm-stat-value{font-size:var(--qd-text-2xl);font-weight:var(--qd-weight-bold);line-height:1.1}.dm-stat-label{color:var(--qd-text-subtle);font-size:var(--qd-text-xs)}.dm-subsection{margin-top:var(--qd-space-6)}.dm-subsection h4{align-items:center;color:var(--qd-text);display:flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);margin:0 0 var(--qd-space-3)}.dm-hint{color:var(--qd-text-subtle);font-size:var(--qd-text-xs);margin:calc(var(--qd-space-1)*-1) 0 var(--qd-space-3)}.dm-bar{background:var(--qd-surface-3);border-radius:var(--qd-radius-pill);display:flex;height:14px;overflow:hidden}.dm-bar-seg{height:100%;min-width:2px}.dm-legend{display:flex;flex-wrap:wrap;gap:var(--qd-space-3);margin-top:var(--qd-space-3)}.dm-legend-item{align-items:center;color:var(--qd-text-muted);display:flex;font-size:var(--qd-text-xs);gap:var(--qd-space-2)}.dm-legend-dot{border-radius:var(--qd-radius-xs);height:10px;width:10px}.dm-size-pill{background:var(--qd-surface-3);border-radius:var(--qd-radius-pill);color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);padding:var(--qd-space-1) var(--qd-space-3);white-space:nowrap}.dm-progress{padding:var(--qd-space-2) 0 var(--qd-space-1)}.dm-progress-label{color:var(--qd-text-muted);font-size:var(--qd-text-sm);margin-bottom:var(--qd-space-2)}.dm-progress-track{background:var(--qd-surface-3);border-radius:var(--qd-radius-pill);height:6px;overflow:hidden}.dm-progress-fill{background:var(--qd-accent);height:100%;transition:width var(--qd-transition)}.dm-error-banner{align-items:flex-end;display:flex;flex-direction:column;gap:var(--qd-space-3)}.dm-error-banner .qd-banner{width:100%}.dm-error-retry{align-self:flex-end}.dm-row--note{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);font-style:italic;justify-content:center}.dm-card-spacer{flex:1 1}.dm-resolve-btn{font-size:var(--qd-text-sm)!important;font-weight:var(--qd-weight-semibold);height:auto!important;padding:var(--qd-space-1) var(--qd-space-3)!important;width:auto!important}.dm-keeper-pick{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:var(--qd-space-3);min-width:0}.dm-keeper-pick input[type=radio]{accent-color:var(--qd-accent);cursor:pointer}.dm-row--keeper{background:var(--qd-success-subtle)}.dm-keeper-tag{background:var(--qd-surface);border:1px solid var(--qd-success);border-radius:var(--qd-radius-xs);color:var(--qd-success);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);letter-spacing:.04em;margin-left:var(--qd-space-2);padding:1px var(--qd-space-2);text-transform:uppercase}.dm-footer-stat{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);margin-right:auto}.fileMaintenanceModal .modal-footer{align-items:center;display:flex}.contextmenu{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);box-shadow:var(--qd-shadow-md);display:flex;flex-direction:column;justify-content:left;left:var(--qd-space-3);list-style:none;margin:0;min-height:10px;min-width:160px;padding:var(--qd-space-1);position:absolute;text-align:left;top:var(--qd-space-3);z-index:var(--qd-z-dropdown)}.contextmenu>button{background-color:initial;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text);cursor:pointer;font-size:var(--qd-text-base);padding:var(--qd-space-2) var(--qd-space-3);text-align:left;transition:background-color var(--qd-transition-fast),color var(--qd-transition-fast);width:100%}.contextmenu>button:hover{background-color:var(--qd-surface-3)}.file-card.playing-audio{border-color:var(--qd-success);box-shadow:0 0 0 2px var(--qd-success)}.file-thumb-wrapper{position:relative}.audio-playing-overlay{align-items:center;animation:qd-audio-fade-in .2s ease-in;background-color:#0006;display:flex;height:100%;justify-content:center;left:0;pointer-events:none;position:absolute;top:0;width:100%}.audio-playing-overlay span{animation:qd-pulse-audio 1s infinite;color:var(--qd-text-on-accent);filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));font-size:2rem}@keyframes qd-audio-fade-in{0%{opacity:0}to{opacity:1}}@keyframes qd-pulse-audio{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.file-progress-overlay{background-color:var(--qd-accent-subtle);border-radius:var(--qd-radius-xs) 0 0 var(--qd-radius-xs);border-right:1px solid var(--qd-accent);height:100%;left:0;opacity:.55;pointer-events:none;position:absolute;top:0;transition:width .05s linear;width:0;z-index:1}.file-note-indicator{align-items:center;background-color:var(--qd-accent);border-radius:var(--qd-radius-pill);box-shadow:0 1px 3px #0000004d;color:var(--qd-text-on-accent);display:inline-flex;font-size:.62rem;font-weight:var(--qd-weight-semibold);gap:2px;line-height:1.4;padding:1px 5px 1px 4px;pointer-events:none;position:absolute;right:4px;top:4px;z-index:2}.file-note-indicator svg{display:block}.file-note-indicator-count{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.file-badges{align-content:flex-start;display:flex;flex-wrap:wrap;gap:4px;justify-content:center;min-height:0;overflow:hidden;width:100%}.file-badge{background-color:var(--qd-surface-3);border:1px solid var(--qd-border);border-radius:var(--qd-radius-pill);color:var(--qd-text-muted);display:inline-block;flex:0 1 auto;font-size:.62rem;line-height:1.45;max-width:100%;min-width:0;overflow:hidden;padding:1px 7px;text-overflow:ellipsis;white-space:nowrap}.fileDetailsModal{background:var(--qd-surface);border-radius:var(--qd-radius-lg);box-shadow:var(--qd-shadow-lg);display:flex;flex-direction:column;font-family:var(--qd-font-sans);height:85vh;max-width:1400px;overflow:hidden;width:80vw}.fd-header{align-items:center;background-color:var(--qd-surface-2);border-bottom:1px solid var(--qd-border);display:flex;justify-content:space-between;padding:var(--qd-space-4) var(--qd-space-6)}.fd-title h1{color:var(--qd-text);font-size:var(--qd-text-xl);font-weight:var(--qd-weight-bold);margin:0}.fd-id{color:var(--qd-text-subtle);font-family:var(--qd-font-mono);font-size:var(--qd-text-xs)}.fd-toolbar{background:var(--qd-surface);border-bottom:1px solid var(--qd-border);flex-wrap:wrap;justify-content:space-between;padding:var(--qd-space-3) var(--qd-space-6)}.fd-toolbar,.primary-actions,.secondary-actions{display:flex;gap:var(--qd-space-3)}.fileDetailsModal .secondary-actions .btn-danger{background-color:var(--qd-danger-subtle);color:var(--qd-danger-hover)}.fileDetailsModal .secondary-actions .btn-danger:hover{background-color:var(--qd-danger);color:var(--qd-text-on-accent)}.fd-body{background-color:var(--qd-bg);display:flex;flex:1 1;overflow:hidden}.fd-panel{display:flex;flex-direction:column;gap:var(--qd-space-6);overflow-y:auto;padding:var(--qd-space-6)}.preview-panel{background-color:var(--qd-surface-3);border-right:1px solid var(--qd-border);flex:1.2 1}.preview-container,.preview-panel{align-items:center;display:flex;justify-content:center}.preview-container{height:100%;width:100%}.bimage-container,.content img,.media-player{border-radius:var(--qd-radius-md);filter:drop-shadow(var(--qd-shadow-md));max-height:100%;max-width:100%}.pdf-preview{height:100%}.pdf-preview,.text-preview{border-radius:var(--qd-radius-md);width:100%}.text-preview{background:var(--qd-surface);font-family:var(--qd-font-mono);height:-webkit-fit-content;height:-moz-fit-content;height:fit-content;padding:var(--qd-space-5);white-space:pre-wrap}.details-panel{background-color:var(--qd-surface);flex:1 1;min-width:350px}.detail-section h3{border-bottom:2px solid var(--qd-border);color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-bold);letter-spacing:.5px;margin:0 0 var(--qd-space-3) 0;padding-bottom:var(--qd-space-2);text-transform:uppercase}.metadata-table-wrapper{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);overflow:hidden}.metadata-table{border-collapse:collapse;font-size:var(--qd-text-base);width:100%}.metadata-table td{border-bottom:1px solid var(--qd-border);padding:var(--qd-space-3) var(--qd-space-4)}.metadata-table tr:last-child td{border-bottom:none}.meta-key{background-color:var(--qd-surface-2);border-right:1px solid var(--qd-border);color:var(--qd-text-muted);font-weight:var(--qd-weight-semibold);width:30%}.meta-val{color:var(--qd-text);word-break:break-all}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--qd-space-3)}.section-header h3{border:none;margin:0;padding:0}.add-tag-btn{border:none;border-radius:var(--qd-radius-xs);color:var(--qd-accent);cursor:pointer;font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);padding:var(--qd-space-1) var(--qd-space-3);transition:background-color var(--qd-transition)}.add-tag-btn,.add-tag-btn:hover{background:var(--qd-accent-subtle)}.tag-list{display:flex;flex-wrap:wrap;gap:var(--qd-space-2)}.transcription-box{background-color:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text);font-size:var(--qd-text-base);line-height:1.6;max-height:400px;min-height:150px;overflow-y:auto;padding:var(--qd-space-4)}.empty-transcription{color:var(--qd-text-subtle);font-style:italic;padding:var(--qd-space-5);text-align:center}.text-link{background:none;border:none;color:var(--qd-accent-text);cursor:pointer;font-weight:var(--qd-weight-semibold);text-decoration:underline}@media (max-width:900px){.fd-body{flex-direction:column;overflow-y:auto}.fd-panel{flex:none;overflow:visible}.preview-panel{border-bottom:1px solid var(--qd-border);border-right:none;min-height:300px}.metadata-table-wrapper{overflow-x:auto}}.detail-section:has(.fvh-root){flex-shrink:0}.bimage-container{align-items:center;border-radius:var(--qd-radius-sm);cursor:zoom-in;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.bimage{display:block;height:auto;max-height:100%;max-width:100%;object-fit:contain;width:auto}.bimage.hidden{display:none}.bimage-hover-icons{background:#0006;border-radius:var(--qd-radius-pill);display:flex;gap:var(--qd-space-3);opacity:0;padding:var(--qd-space-1);position:absolute;right:var(--qd-space-3);top:var(--qd-space-3);transition:opacity var(--qd-transition)}.bimage-container:hover .bimage-hover-icons{opacity:1}.icon{color:#fff;cursor:pointer;font-size:var(--qd-text-md);padding:var(--qd-space-1);transition:transform var(--qd-transition)}.icon:hover{color:var(--qd-accent);transform:scale(1.2)}.fullscreen-overlay{align-items:center;background:#000000eb;cursor:zoom-out;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:var(--qd-z-toast)}.fullscreen-image{border-radius:var(--qd-radius-sm);box-shadow:var(--qd-shadow-lg);cursor:default;max-height:90%;max-width:90%;object-fit:contain}.fullscreen-close{align-items:center;background:#00000073;border:1px solid #ffffff40;border-radius:var(--qd-radius-circle);color:#fff;cursor:pointer;display:flex;font-size:var(--qd-text-2xl);height:var(--qd-control-md);justify-content:center;line-height:1;position:absolute;right:var(--qd-space-6);top:var(--qd-space-5);transition:background-color var(--qd-transition),transform var(--qd-transition);width:var(--qd-control-md)}.fullscreen-close:hover{background:#000000bf;transform:scale(1.05)}.fvh-root,.fvh-timeline{display:flex;flex-direction:column}.fvh-commit,.fvh-timeline{position:relative}.fvh-commit{align-items:flex-start;display:flex;gap:0}.fvh-commit-spine{align-items:center;display:flex;flex-direction:column;flex-shrink:0;padding-top:var(--qd-space-4);width:28px}.fvh-commit-line{background-color:var(--qd-border);flex:1 1;min-height:12px;width:2px}.fvh-commit-dot{border:2px solid #0000;border-radius:var(--qd-radius-circle);flex-shrink:0;height:12px;position:relative;width:12px;z-index:var(--qd-z-base)}.fvh-commit-dot--head{animation:fvh-pulse 2.4s ease-in-out infinite;background-color:var(--qd-accent);border-color:var(--qd-surface);box-shadow:0 0 0 2px var(--qd-accent),0 0 0 5px var(--qd-accent-subtle)}.fvh-commit-dot--old{background-color:var(--qd-surface);border-color:var(--qd-text-subtle);box-shadow:0 0 0 1px var(--qd-border)}.fvh-commit-dot--ghost{background-color:var(--qd-surface-3);border-color:var(--qd-border)}@keyframes fvh-pulse{0%,to{box-shadow:0 0 0 2px var(--qd-accent),0 0 0 5px var(--qd-accent-subtle)}50%{box-shadow:0 0 0 2px var(--qd-accent),0 0 0 7px var(--qd-focus-ring-color)}}.fvh-commit-card{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);flex:1 1;margin-bottom:var(--qd-space-3);margin-left:var(--qd-space-1);min-width:0;overflow:hidden;transition:border-color var(--qd-transition),box-shadow var(--qd-transition)}.fvh-commit-card:hover{border-color:var(--qd-border-strong);box-shadow:var(--qd-shadow-sm)}.fvh-commit-card--head{background:linear-gradient(135deg,var(--qd-accent-subtle) 0,var(--qd-surface) 100%);border-color:var(--qd-accent)}.fvh-commit-card--head:hover{border-color:var(--qd-accent-hover);box-shadow:var(--qd-shadow-md)}.fvh-commit-card-top{align-items:center;display:flex;gap:var(--qd-space-3);justify-content:space-between;padding:var(--qd-space-3)}.fvh-commit-info{display:flex;flex-direction:column;gap:var(--qd-space-1);min-width:0}.fvh-commit-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--qd-space-2)}.fvh-commit-name{color:var(--qd-text);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fvh-commit-sub{align-items:center;display:flex;flex-wrap:wrap;gap:var(--qd-space-1)}.fvh-commit-sha{background:var(--qd-accent-subtle);border-radius:var(--qd-radius-xs);color:var(--qd-accent-text);cursor:default;font-family:var(--qd-font-mono);font-size:var(--qd-text-xs);letter-spacing:.03em;padding:1px 5px}.fvh-commit-sep{color:var(--qd-border-strong);font-size:var(--qd-text-xs);-webkit-user-select:none;user-select:none}.fvh-commit-date,.fvh-commit-size{color:var(--qd-text-muted);font-size:var(--qd-text-xs)}.fvh-commit-date{cursor:default}.fvh-commit-author{color:var(--qd-text-subtle);font-family:var(--qd-font-mono);font-size:var(--qd-text-xs);max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fvh-head-tag{background:var(--qd-accent);border-radius:var(--qd-radius-xs);color:var(--qd-text-on-accent);text-transform:uppercase}.fvh-head-tag,.fvh-version-tag{flex-shrink:0;font-family:var(--qd-font-mono);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);letter-spacing:.04em;padding:2px 6px}.fvh-version-tag{background:var(--qd-accent-subtle);border:1px solid var(--qd-border);border-radius:var(--qd-radius-xs);color:var(--qd-accent-hover)}.fvh-version-tag--old{background:var(--qd-surface-2);border-color:var(--qd-border);color:var(--qd-text-muted)}.fvh-commit-actions{align-items:center;display:flex;flex-shrink:0;gap:var(--qd-space-2)}.fvh-btn{align-items:center;border-radius:var(--qd-radius-sm);cursor:pointer;display:inline-flex;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);gap:var(--qd-space-1);line-height:1;padding:var(--qd-space-1) var(--qd-space-3);transition:background-color var(--qd-transition),border-color var(--qd-transition),transform var(--qd-transition-fast);white-space:nowrap}.fvh-btn-icon{font-size:var(--qd-text-base);line-height:1}.fvh-btn--upload{background-color:var(--qd-accent);border:1px solid var(--qd-accent-hover);color:var(--qd-text-on-accent)}.fvh-btn--upload:hover:not(:disabled){background-color:var(--qd-accent-hover);transform:translateY(-1px)}.fvh-btn--upload:disabled{cursor:not-allowed;opacity:.55;transform:none}.fvh-btn--ghost{background:#0000;border:1px solid var(--qd-border);color:var(--qd-text-muted)}.fvh-btn--ghost:hover:not(:disabled){background-color:var(--qd-surface-3);border-color:var(--qd-border-strong);color:var(--qd-text)}.fvh-btn--ghost:disabled{cursor:not-allowed;opacity:.45}.fvh-btn--restore{background:#0000;border:1px solid var(--qd-border);color:var(--qd-accent)}.fvh-btn--restore:hover:not(:disabled){background-color:var(--qd-accent-subtle);border-color:var(--qd-accent)}.fvh-btn--restore:disabled{cursor:not-allowed;opacity:.5}.fvh-spinner{animation:fvh-spin .6s linear infinite;border:2px solid;border-radius:var(--qd-radius-circle);border-right:2px solid #0000;display:inline-block;height:10px;width:10px}.fvh-spin{animation:fvh-spin .8s linear infinite;display:inline-block}@keyframes fvh-spin{to{transform:rotate(1turn)}}.fvh-msg-wrap,.fvh-progress-wrap{padding:0 var(--qd-space-3) var(--qd-space-3)}.fvh-expand-btn{align-items:center;background:none;border:1px dashed var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);cursor:pointer;display:flex;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);gap:var(--qd-space-2);margin-bottom:var(--qd-space-3);margin-left:var(--qd-space-8);padding:var(--qd-space-2) var(--qd-space-3);text-align:left;transition:background-color var(--qd-transition),color var(--qd-transition),border-color var(--qd-transition);width:calc(100% - var(--qd-space-8))}.fvh-expand-btn:hover{background-color:var(--qd-surface-2);border-color:var(--qd-accent);color:var(--qd-accent)}.fvh-expand-btn--collapse{border-color:var(--qd-border);border-style:solid;color:var(--qd-text-muted);margin-top:2px}.fvh-expand-btn--collapse:hover{background-color:var(--qd-danger-subtle);border-color:var(--qd-danger);color:var(--qd-danger-hover)}.fvh-expand-dots{color:var(--qd-text-subtle);font-size:var(--qd-text-md);letter-spacing:2px}.fvh-loading{margin:0;padding:var(--qd-space-2) 0 var(--qd-space-2) var(--qd-space-1)}.fvh-empty-hint,.fvh-loading{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);font-style:italic}.fvh-empty-hint{margin-left:var(--qd-space-8);padding:var(--qd-space-1) 0 var(--qd-space-1) var(--qd-space-1)}.notes-panel{gap:var(--qd-space-3)}.notes-list,.notes-panel{display:flex;flex-direction:column}.notes-list{gap:var(--qd-space-2)}.notes-state{font-size:var(--qd-text-sm);margin:0;padding:var(--qd-space-2) var(--qd-space-1)}.notes-state--muted{color:var(--qd-text-subtle)}.note-row{align-items:flex-start;background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);display:flex;gap:var(--qd-space-3);padding:var(--qd-space-2) var(--qd-space-3);transition:background-color var(--qd-transition),opacity var(--qd-transition)}.note-row:hover{background-color:var(--qd-surface-3)}.note-row--busy{opacity:.6;pointer-events:none}.note-check{align-items:center;cursor:pointer;display:flex;margin:0;padding-top:1px}.note-check input{accent-color:var(--qd-accent);cursor:pointer;height:15px;width:15px}.note-body{flex:1 1;min-width:0}.note-text{color:var(--qd-text);font-size:var(--qd-text-base);line-height:1.4;white-space:pre-wrap;word-break:break-word}.note-meta{align-items:center;color:var(--qd-text-subtle);display:flex;font-size:var(--qd-text-xs);gap:var(--qd-space-2);margin-top:var(--qd-space-1)}.note-author{color:var(--qd-text-muted);font-weight:var(--qd-weight-semibold)}.note-sep{color:var(--qd-border-strong)}.note-row--done{background-color:var(--qd-surface-2)}.note-row--done .note-text{color:var(--qd-text-subtle);text-decoration:line-through}.note-delete{align-items:center;background:#0000;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-subtle);cursor:pointer;display:inline-flex;flex-shrink:0;height:28px;justify-content:center;padding:0;transition:background-color var(--qd-transition),color var(--qd-transition);width:28px}.note-delete:hover:not(:disabled){background-color:var(--qd-danger-subtle);color:var(--qd-danger)}.note-delete:disabled{cursor:default;opacity:.5}.notes-add{background-color:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);display:flex;flex-direction:column;gap:var(--qd-space-2);padding:var(--qd-space-3)}.notes-add-input{background-color:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);box-sizing:border-box;color:var(--qd-text);font-family:inherit;font-size:var(--qd-text-base);line-height:1.4;min-height:var(--qd-control-lg);padding:var(--qd-space-2) var(--qd-space-3);resize:vertical;width:100%}.notes-add-input::placeholder{color:var(--qd-text-subtle)}.notes-add-input:focus{border-color:var(--qd-accent);box-shadow:0 0 0 2px var(--qd-accent-subtle);outline:none}.notes-add-input:disabled{opacity:.7}.notes-add-footer{align-items:center;display:flex;gap:var(--qd-space-2);justify-content:space-between}.notes-add-hint{color:var(--qd-text-subtle);font-size:var(--qd-text-xs)}.notes-add-btn{background-color:var(--qd-accent);border:1px solid #0000;border-radius:var(--qd-radius-sm);color:var(--qd-text-on-accent);cursor:pointer;flex-shrink:0;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);padding:var(--qd-space-2) var(--qd-space-4);transition:background-color var(--qd-transition)}.notes-add-btn:hover:not(:disabled){background-color:var(--qd-accent-hover)}.notes-add-btn:disabled{background-color:var(--qd-surface-3);color:var(--qd-text-subtle);cursor:default}.asp-root{background:var(--qd-surface);border-right:1px solid var(--qd-border);color:var(--qd-text);display:flex;flex-direction:column;font-size:var(--qd-text-sm);gap:var(--qd-space-1);height:-webkit-fill-available;max-width:300px;min-width:260px;overflow-y:auto;padding:var(--qd-space-3)}.asp-search-box{align-items:center;background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);display:flex;gap:var(--qd-space-2);height:var(--qd-control-md);margin-bottom:var(--qd-space-2);padding:0 var(--qd-space-3);transition:border-color var(--qd-transition),box-shadow var(--qd-transition),background-color var(--qd-transition)}.asp-search-box:focus-within{background:var(--qd-surface);border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring)}.asp-search-icon{color:var(--qd-text-subtle);display:flex;flex-shrink:0;transition:color var(--qd-transition)}.asp-search-box:focus-within .asp-search-icon{color:var(--qd-accent)}.asp-search-input{background:#0000;border:none;color:var(--qd-text);flex:1 1;font-family:inherit;font-size:var(--qd-text-sm);min-width:0;outline:none}.asp-clear-input,.asp-search-input::placeholder{color:var(--qd-text-subtle)}.asp-clear-input{align-items:center;background:none;border:none;border-radius:var(--qd-radius-sm);cursor:pointer;display:flex;font-size:var(--qd-text-md);justify-content:center;line-height:1;padding:0 var(--qd-space-1);transition:color var(--qd-transition-fast)}.asp-clear-input:hover{color:var(--qd-danger)}.asp-spinner{animation:asp-spin .7s linear infinite;border:2px solid var(--qd-border-strong);border-radius:var(--qd-radius-circle);border-top-color:var(--qd-accent);display:inline-block;flex-shrink:0;height:12px;width:12px}@keyframes asp-spin{to{transform:rotate(1turn)}}.asp-stats{color:var(--qd-text-muted);font-size:var(--qd-text-xs);padding:0 var(--qd-space-1) var(--qd-space-2)}.asp-active-filters,.asp-stats{border-bottom:1px solid var(--qd-border);margin-bottom:var(--qd-space-1)}.asp-active-filters{align-items:center;display:flex;flex-wrap:wrap;gap:var(--qd-space-1);padding-bottom:var(--qd-space-2)}.asp-chip-field{flex-shrink:0;opacity:.85}.asp-chip-value{font-weight:var(--qd-weight-semibold);max-width:110px;overflow:hidden;text-overflow:ellipsis}.asp-clear-all{align-self:center;background:none;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-subtle);cursor:pointer;font-size:var(--qd-text-xs);padding:var(--qd-space-1) var(--qd-space-1);text-decoration:underline;transition:color var(--qd-transition-fast)}.asp-clear-all:hover{color:var(--qd-text)}.asp-facet-section{border-bottom:1px solid var(--qd-border);padding-bottom:var(--qd-space-1)}.asp-facet-header{align-items:center;background:none;border:none;color:var(--qd-text-muted);cursor:pointer;display:flex;font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);justify-content:space-between;letter-spacing:.04em;padding:var(--qd-space-2) var(--qd-space-1) var(--qd-space-2);text-transform:uppercase;-webkit-user-select:none;user-select:none;width:100%}.asp-chevron{display:inline-block;font-size:var(--qd-text-lg);line-height:1;transform:rotate(0deg);transition:transform var(--qd-transition)}.asp-chevron.open{transform:rotate(90deg)}.asp-facet-body{display:flex;flex-direction:column;gap:2px;padding-bottom:var(--qd-space-2)}.asp-facet-item{align-items:center;border-radius:var(--qd-radius-sm);cursor:pointer;display:flex;gap:var(--qd-space-2);padding:var(--qd-space-1);transition:background-color var(--qd-transition-fast),box-shadow var(--qd-transition-fast),transform var(--qd-transition-fast)}.asp-facet-item:hover{background:var(--qd-surface-3)}.asp-facet-item.checked{background:var(--qd-accent)}.asp-facet-item input[type=checkbox]{accent-color:var(--qd-accent);cursor:pointer;flex-shrink:0;height:13px;width:13px}.asp-facet-item.checked input[type=checkbox]{accent-color:var(--qd-surface)}.asp-facet-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.asp-facet-item.checked .asp-facet-label{color:var(--qd-text-on-accent)}.asp-facet-count{color:var(--qd-text-subtle);flex-shrink:0;font-size:var(--qd-text-xs)}.asp-facet-item.checked .asp-facet-count{color:var(--qd-text-on-accent);opacity:.85}.asp-show-more{background:none;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-accent-text);cursor:pointer;font-size:var(--qd-text-xs);padding:var(--qd-space-1) var(--qd-space-1);text-align:left}.asp-show-more:hover{text-decoration:underline}.asp-pagination{align-items:center;color:var(--qd-text-subtle);display:flex;font-size:var(--qd-text-xs);justify-content:space-between;padding:var(--qd-space-3) var(--qd-space-1) var(--qd-space-1)}.asp-pagination button{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);cursor:pointer;font-size:var(--qd-text-xs);padding:var(--qd-space-1) var(--qd-space-3);transition:background-color var(--qd-transition),color var(--qd-transition)}.asp-pagination button:hover:not(:disabled){background:var(--qd-surface-3);color:var(--qd-text)}.asp-pagination button:disabled{cursor:default;opacity:.4}.asp-slider-readout{color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-medium);justify-content:space-between}.asp-fancy-slider,.asp-slider-readout{display:flex;margin-bottom:var(--qd-space-3)}.asp-fancy-slider{align-items:center;height:20px;position:relative;width:100%}.asp-slider-track{background-color:var(--qd-surface-3);width:100%}.asp-slider-fill,.asp-slider-track{border-radius:var(--qd-radius-xs);height:6px;position:absolute}.asp-slider-fill{background-color:var(--qd-accent);pointer-events:none}.asp-slider-input{-webkit-appearance:none;appearance:none;background:#0000;margin:0;outline:none;pointer-events:none;position:absolute;width:100%}.asp-slider-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background-color:var(--qd-surface);border:2px solid var(--qd-accent);border-radius:var(--qd-radius-circle);box-shadow:var(--qd-shadow-sm);cursor:grab;height:18px;pointer-events:auto;-webkit-transition:transform var(--qd-transition-fast),box-shadow var(--qd-transition-fast);transition:transform var(--qd-transition-fast),box-shadow var(--qd-transition-fast);width:18px}.asp-slider-input::-webkit-slider-thumb:hover{box-shadow:var(--qd-shadow-md);transform:scale(1.15)}.asp-slider-input::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.1)}.asp-slider-input::-moz-range-thumb{background-color:var(--qd-surface);border:2px solid var(--qd-accent);border-radius:var(--qd-radius-circle);box-shadow:var(--qd-shadow-sm);cursor:grab;height:14px;pointer-events:auto;-moz-transition:transform var(--qd-transition-fast),box-shadow var(--qd-transition-fast);transition:transform var(--qd-transition-fast),box-shadow var(--qd-transition-fast);width:14px}.asp-slider-input::-moz-range-thumb:hover{transform:scale(1.15)}.asp-slider-input::-moz-range-thumb:active{cursor:grabbing}.asp-slider-unit{color:var(--qd-text-subtle);font-size:var(--qd-text-xs);margin-top:var(--qd-space-1);text-align:right}.asp-slider-readout-inputs{align-items:center;display:flex;justify-content:space-between;margin-bottom:var(--qd-space-3)}.asp-input-wrapper{flex:1 1}.asp-input-separator{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);margin:0 var(--qd-space-2)}.asp-input-wrapper input{background-color:var(--qd-surface-2);border:1px solid #0000;border-radius:var(--qd-radius-xs);box-sizing:border-box;color:var(--qd-text);font-family:inherit;font-size:var(--qd-text-sm);padding:var(--qd-space-1) var(--qd-space-2);text-align:center;transition:background-color var(--qd-transition),border-color var(--qd-transition),box-shadow var(--qd-transition);width:100%}.asp-input-wrapper input:hover{background-color:var(--qd-surface-3);border-color:var(--qd-border)}.asp-input-wrapper input:focus{background-color:var(--qd-surface);border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring);outline:none}.asp-input-wrapper input[type=number]::-webkit-inner-spin-button,.asp-input-wrapper input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.asp-input-wrapper input[type=number]{-moz-appearance:textfield}.qd-skeleton{background-color:var(--qd-surface-2);border-radius:var(--qd-radius-sm);display:block;overflow:hidden;position:relative}.qd-skeleton:after{animation:qd-skeleton-shimmer 1.3s infinite;background-image:linear-gradient(90deg,#0000 0,var(--qd-surface-3) 50%,#0000 100%);content:"";inset:0;position:absolute;transform:translateX(-100%)}.qd-skeleton--circle{border-radius:var(--qd-radius-circle)}.qd-skeleton--text{border-radius:var(--qd-radius-sm);height:.85em;margin:.2em 0}@keyframes qd-skeleton-shimmer{to{transform:translateX(100%)}}.file-browser-container{background-color:var(--qd-surface);display:flex;flex-direction:column;height:100%;position:relative}.fb-drop-overlay{background-color:var(--qd-accent-subtle);border:3px dashed var(--qd-accent);border-radius:8px;inset:0;justify-content:center;padding:16px;pointer-events:none;position:absolute;z-index:50}.fb-drop-hint,.fb-drop-overlay{align-items:center;display:flex}.fb-drop-hint{background-color:var(--qd-surface);border-radius:12px;box-shadow:var(--qd-shadow-lg);flex-direction:column;gap:12px;padding:24px 36px}.fb-drop-hint,.fb-drop-icon{color:var(--qd-accent)}.fb-drop-hint p{color:var(--qd-text);font-size:1.05rem;font-weight:600;margin:0}.file-browser-content{background-color:var(--qd-bg);padding:20px;position:relative}.file-grid-view{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.file-list-view-container{background:var(--qd-surface);border-radius:8px;box-shadow:var(--qd-shadow-sm);overflow:hidden}.file-list-table{border-collapse:collapse;font-size:.9rem;width:100%}.file-list-table th{background-color:var(--qd-surface-3);border-bottom:2px solid var(--qd-border);color:var(--qd-text-muted);font-weight:600;padding:12px 15px;text-align:left}.file-list-table td{border-bottom:1px solid var(--qd-border);padding:10px 15px;vertical-align:middle}.file-list-table tr:hover{background-color:var(--qd-surface-3);cursor:pointer}.file-list-table tr.selected{background-color:var(--qd-accent-subtle)}.file-list-row{cursor:pointer}.file-list-row:hover{background-color:var(--qd-surface-3)}.file-list-row.selected{background-color:var(--qd-accent-subtle)}.table-thumb{border-radius:4px;height:30px;object-fit:cover;width:30px}.file-card{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:8px;cursor:pointer;display:flex;flex-direction:column;height:192px;overflow:hidden;position:relative;transition:all .2s ease}.file-card:hover{border-color:var(--qd-border-strong);box-shadow:var(--qd-shadow-md);transform:translateY(-2px)}.file-card.selected{background-color:var(--qd-accent-subtle);border-color:var(--qd-accent);box-shadow:var(--qd-ring-accent)}.file-card--skeleton{cursor:default;pointer-events:none}.file-card--skeleton:hover{border-color:var(--qd-border);box-shadow:none;transform:none}.file-skeleton-info{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;padding:var(--qd-space-3) var(--qd-space-2);width:100%}.file-skeleton-info .qd-skeleton{height:.7rem}.file-thumb-wrapper{align-items:center;background-color:var(--qd-surface-2);display:flex;flex-shrink:0;height:116px;justify-content:center;width:100%}.file-thumb-wrapper img{height:100%;object-fit:cover;width:100%}.file-info{align-items:center;box-sizing:border-box;display:flex;flex:1 1 auto;flex-direction:column;font-size:.9rem;gap:4px;min-height:0;overflow:hidden;padding:6px 8px;text-align:center}.file-name{flex-shrink:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}.file-select-checkbox{left:8px;opacity:0;position:absolute;top:8px;transition:opacity .2s}.file-card.selected .file-select-checkbox,.file-card:hover .file-select-checkbox{opacity:1}.file-browser-filegroups-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));padding:20px}.file-browser-main{display:flex;flex:1 1;min-height:0;overflow:hidden}.file-browser-content{flex:1 1;min-height:0;overflow-y:auto;padding:12px}.qdex-auth-wrapper{align-items:center;background-color:var(--qd-bg);background-image:radial-gradient(circle at 50% 0,var(--qd-surface) 0,var(--qd-bg) 70%);color:var(--qd-text);display:flex;font-family:Inter,system-ui,-apple-system,sans-serif;justify-content:center;min-height:100vh;padding:20px}.qdex-auth-card{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:12px;box-shadow:var(--qd-shadow-lg);max-width:420px;padding:40px;transition:transform .3s ease;width:100%}.qdex-brand{margin-bottom:30px;text-align:center}.qdex-logo{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0ea5e9,#2563eb);-webkit-background-clip:text;font-size:2.5rem;font-weight:800;letter-spacing:-1.5px;margin:0}.qdex-subtitle{color:var(--qd-text-muted);font-size:.85rem;font-weight:600;letter-spacing:1px;margin:4px 0 0;text-transform:uppercase}.qdex-auth-card h2{color:var(--qd-text);font-size:1.25rem;font-weight:600;margin-bottom:24px;text-align:center}.qdex-error-message{align-items:center;background:var(--qd-danger-subtle);border:1px solid var(--qd-danger);border-radius:6px;color:var(--qd-danger);display:flex;font-size:.875rem;gap:8px;margin-bottom:20px;padding:12px}.qdex-error-message svg{height:16px;width:16px}.qdex-form{display:flex;flex-direction:column;gap:16px}.qdex-input{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:6px;box-sizing:border-box;color:var(--qd-text);font-size:.95rem;padding:12px 16px;transition:all .2s ease;width:100%}.qdex-input::placeholder{color:var(--qd-text-subtle)}.qdex-input:focus{border-color:var(--qd-accent);box-shadow:0 0 0 3px #3b82f626;outline:none}.qdex-input:disabled{background:var(--qd-surface-2);color:var(--qd-text-subtle);cursor:not-allowed}.qdex-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:10px;justify-content:center;padding:12px;transition:all .2s ease;width:100%}.qdex-btn:disabled{cursor:not-allowed;opacity:.7}.qdex-btn-primary{background:var(--qd-accent);box-shadow:0 4px 6px -1px #0ea5e933,0 2px 4px -1px #0ea5e91a;color:var(--qd-text-on-accent)}.qdex-btn-primary:hover:not(:disabled){background:var(--qd-accent-hover);box-shadow:0 4px 6px -1px #0ea5e94d,0 2px 4px -1px #0ea5e933}.qdex-divider{margin:24px 0;position:relative;text-align:center}.qdex-divider:before{background:var(--qd-border);content:"";height:1px;left:0;position:absolute;right:0;top:50%}.qdex-divider span{background:var(--qd-surface);color:var(--qd-text-muted);font-size:.8rem;font-weight:600;padding:0 12px;position:relative}.qdex-btn-google{background:var(--qd-surface);border:1px solid var(--qd-border);color:var(--qd-text)}.qdex-btn-google:hover:not(:disabled){background:var(--qd-surface-3);border-color:var(--qd-border-strong)}.qdex-footer-text{color:var(--qd-text-muted);font-size:.875rem;margin-top:24px;text-align:center}.qdex-text-btn{background:none;border:none;color:var(--qd-accent-text);cursor:pointer;font-size:inherit;font-weight:600;margin-left:6px;padding:0}.qdex-text-btn:hover:not(:disabled){color:var(--qd-accent-hover);text-decoration:underline}#root{height:100vh;overflow:hidden}.container{height:calc(100vh - 60px);margin:0;overflow:hidden;padding:0}.settings-root{background:var(--qd-bg);display:flex;flex-direction:column;font-family:var(--qd-font-sans);height:100vh;overflow:hidden}.settings-topbar{align-items:center;background:var(--qd-surface);border-bottom:1px solid var(--qd-border);box-shadow:var(--qd-shadow-sm);display:flex;flex-shrink:0;gap:var(--qd-space-4);height:60px;padding:0 var(--qd-space-6)}.settings-back-btn{align-items:center;background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text-muted);cursor:pointer;display:flex;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-medium);gap:var(--qd-space-2);height:var(--qd-control-sm);line-height:1;padding:0 var(--qd-space-3);transition:background var(--qd-transition),border-color var(--qd-transition),box-shadow var(--qd-transition)}.settings-back-btn:hover{background:var(--qd-surface-3);border-color:var(--qd-border-strong);box-shadow:var(--qd-shadow-sm)}.settings-topbar-title{color:var(--qd-text);font-size:var(--qd-text-md);font-weight:var(--qd-weight-semibold)}.settings-body{display:flex;flex:1 1;overflow:hidden}.settings-sidebar{background:var(--qd-surface);border-right:1px solid var(--qd-border);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto;padding:var(--qd-space-5) var(--qd-space-3);width:220px}.settings-sidebar nav{display:flex;flex-direction:column;gap:2px}.settings-sidebar-section-label{color:var(--qd-text-subtle);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);letter-spacing:.06em;margin:0 0 var(--qd-space-1) var(--qd-space-3);text-transform:uppercase}.settings-sidebar-divider{background:var(--qd-border);height:1px;margin:var(--qd-space-3) var(--qd-space-1)}.settings-tab-btn{align-items:center;background:#0000;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);cursor:pointer;display:flex;font-size:var(--qd-text-base);font-weight:var(--qd-weight-medium);gap:var(--qd-space-2);padding:var(--qd-space-2) var(--qd-space-3);text-align:left;transition:background var(--qd-transition-fast),color var(--qd-transition-fast);width:100%}.settings-tab-btn:hover{background:var(--qd-surface-3)}.settings-tab-btn.active{background:var(--qd-accent-subtle);color:var(--qd-accent);font-weight:var(--qd-weight-semibold)}.settings-tab-btn.active .settings-tab-icon svg{stroke:var(--qd-accent)}.settings-tab-icon{align-items:center;color:inherit;display:flex;flex-shrink:0}.settings-content{flex:1 1;overflow-y:auto;padding:var(--qd-space-8) var(--qd-space-12)}.settings-panel h2{color:var(--qd-text);font-size:var(--qd-text-2xl);font-weight:var(--qd-weight-bold);margin:0 0 var(--qd-space-2) 0}.settings-panel .settings-panel-subtitle{color:var(--qd-text-muted);font-size:var(--qd-text-base);margin:0 0 var(--qd-space-6) 0}.settings-section{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);margin-bottom:var(--qd-space-5);padding:var(--qd-space-6)}.settings-section h3{border-bottom:1px solid var(--qd-border);color:var(--qd-text);font-size:var(--qd-text-base);font-weight:var(--qd-weight-bold);margin:0 0 var(--qd-space-4) 0;padding-bottom:var(--qd-space-3)}.settings-section-intro{margin:0 0 var(--qd-space-5) 0}.settings-field{display:flex;flex-direction:column;gap:var(--qd-space-2);margin-bottom:var(--qd-space-5)}.settings-field:last-child{margin-bottom:0}.settings-field label{color:var(--qd-text-muted);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold)}.settings-field input,.settings-field select,.settings-field textarea{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text);font-family:inherit;font-size:var(--qd-text-base);height:var(--qd-control-md);outline:none;padding:0 var(--qd-space-3);transition:border-color var(--qd-transition),box-shadow var(--qd-transition)}.settings-field textarea{height:auto;padding:var(--qd-space-2) var(--qd-space-3);resize:vertical}.settings-field input:focus,.settings-field select:focus,.settings-field textarea:focus{background:var(--qd-surface);border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring)}.settings-field .field-hint{color:var(--qd-text-subtle);font-size:var(--qd-text-sm)}.settings-actions{display:flex;gap:var(--qd-space-3);justify-content:flex-end;margin-top:var(--qd-space-2)}.settings-usage-bar-label,.settings-usage-bar-wrap{margin-bottom:var(--qd-space-2)}.settings-usage-bar-label{color:var(--qd-text-muted);display:flex;font-size:var(--qd-text-sm);justify-content:space-between}.settings-stat-grid{grid-gap:var(--qd-space-3);display:grid;gap:var(--qd-space-3);grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}.settings-stat-card{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);padding:var(--qd-space-4)}.settings-stat-card .stat-value{color:var(--qd-text);font-size:var(--qd-text-2xl);font-weight:var(--qd-weight-bold);line-height:1}.settings-stat-card .stat-label{color:var(--qd-text-muted);font-size:var(--qd-text-sm);margin-top:var(--qd-space-1)}.settings-muted-text{color:var(--qd-text-subtle);font-size:var(--qd-text-sm)}.settings-banner,.settings-form-banner{margin-bottom:var(--qd-space-4)}.settings-plan-summary{margin-top:var(--qd-space-3)}.settings-flush{margin:0}.settings-link-btn{background:none;border:none;color:var(--qd-accent-text);cursor:pointer;font:inherit;padding:0;text-decoration:underline}.settings-plan-grid{grid-gap:var(--qd-space-4);display:grid;gap:var(--qd-space-4);grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.settings-plan-card{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);display:flex;flex-direction:column;padding:var(--qd-space-5);position:relative}.settings-plan-card.current{border-color:var(--qd-accent);box-shadow:0 0 0 1px var(--qd-accent)}.settings-plan-badge{background:var(--qd-accent-subtle);border-radius:var(--qd-radius-pill);color:var(--qd-accent);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);letter-spacing:.04em;padding:2px var(--qd-space-3);position:absolute;right:var(--qd-space-3);text-transform:uppercase;top:var(--qd-space-3)}.settings-plan-name{color:var(--qd-text);font-size:var(--qd-text-lg);font-weight:var(--qd-weight-bold);margin:0 0 var(--qd-space-2) 0}.settings-plan-price{align-items:baseline;display:flex;gap:var(--qd-space-1);margin-bottom:var(--qd-space-3)}.settings-plan-price-amount{color:var(--qd-text);font-size:var(--qd-text-2xl);font-weight:var(--qd-weight-bold);line-height:1}.settings-plan-price-period{color:var(--qd-text-subtle);font-size:var(--qd-text-sm)}.settings-plan-features{display:flex;flex:1 1;flex-direction:column;gap:var(--qd-space-2);list-style:none;margin:0 0 var(--qd-space-4) 0;padding:0}.settings-plan-features li{color:var(--qd-text-muted);font-size:var(--qd-text-sm);padding-left:var(--qd-space-5);position:relative}.settings-plan-features li:before{color:var(--qd-success);content:"✓";font-weight:var(--qd-weight-bold);left:0;position:absolute}.settings-plan-pending-note{color:var(--qd-warning);font-size:var(--qd-text-xs);margin:0 0 var(--qd-space-3) 0}.settings-plan-btn{text-align:center;width:100%}.settings-plan-confirm{display:flex;flex-direction:column;gap:var(--qd-space-2)}.settings-plan-confirm-text{color:var(--qd-text);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);margin:0}.settings-plan-confirm-actions{display:flex;gap:var(--qd-space-2)}.settings-plan-confirm-actions .settings-plan-btn{flex:1 1;width:auto}.settings-invite-form{align-items:flex-end;display:flex;flex-wrap:wrap;gap:var(--qd-space-3)}.settings-invite-form .settings-field{margin-bottom:0}.settings-invite-form__uid{flex:1 1;min-width:200px}.settings-invite-form .qd-btn,.settings-invite-form__role{flex-shrink:0}.settings-table-scroll{overflow-x:auto;width:100%}.settings-members-table{border-collapse:collapse;font-size:var(--qd-text-base);width:100%}.settings-members-table th{color:var(--qd-text-subtle);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);letter-spacing:.04em;padding:var(--qd-space-2) var(--qd-space-3);text-align:left;text-transform:uppercase}.settings-members-table td,.settings-members-table th{border-bottom:1px solid var(--qd-border);white-space:nowrap}.settings-members-table td{color:var(--qd-text-muted);padding:var(--qd-space-3);vertical-align:middle}.settings-members-table tr:last-child td{border-bottom:none}.settings-members-uid{color:var(--qd-text-subtle);font-family:var(--qd-font-mono);font-size:var(--qd-text-sm)}.settings-members-actions{text-align:right}.settings-members-loading{display:flex;flex-direction:column;gap:var(--qd-space-4);padding:var(--qd-space-2) 0}.settings-members-loading-row{align-items:center;display:flex;gap:var(--qd-space-3)}.member-avatar{align-items:center;background:var(--qd-accent);border-radius:var(--qd-radius-circle);color:var(--qd-text-on-accent);display:inline-flex;flex-shrink:0;font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);height:30px;justify-content:center;margin-right:var(--qd-space-3);vertical-align:middle;width:30px}.badge-pref-category,.member-name-cell{align-items:center;display:flex}.badge-pref-category{border-bottom:1px solid var(--qd-border);flex-wrap:wrap;gap:var(--qd-space-3) var(--qd-space-5);padding:var(--qd-space-3) 0}.badge-pref-category:first-of-type{padding-top:0}.badge-pref-category-label{color:var(--qd-text);flex:0 0 110px;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold)}.badge-pref-options{display:flex;flex-wrap:wrap;gap:var(--qd-space-2) var(--qd-space-5)}.badge-pref-option{align-items:center;color:var(--qd-text-muted);cursor:pointer;display:inline-flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);-webkit-user-select:none;user-select:none}.badge-pref-option input{accent-color:var(--qd-accent);cursor:pointer;height:15px;width:15px}.qd-notif-region{align-items:flex-end;display:flex;flex-direction:column;max-width:min(420px,calc(100vw - var(--qd-space-8)));pointer-events:none;position:fixed;right:var(--qd-space-4);top:var(--qd-space-4);width:-webkit-max-content;width:max-content;z-index:var(--qd-z-toast)}.qd-notif-toolbar{margin-bottom:var(--qd-space-2);pointer-events:auto}.qd-notif-stack:not(:empty)~.qd-notif-stack:not(:empty){margin-top:var(--qd-space-2)}.qd-notif-clear{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);cursor:pointer;font-size:var(--qd-text-xs);padding:var(--qd-space-1) var(--qd-space-3);transition:background var(--qd-transition),color var(--qd-transition)}.qd-notif-clear:hover{background:var(--qd-surface-3);color:var(--qd-text)}.qd-notif-stack{align-items:stretch;display:flex;flex-direction:column;gap:var(--qd-space-2);width:100%}.qd-notif{animation:qd-notif-in var(--qd-transition);background:var(--qd-surface);border:1px solid var(--qd-border);border-left:4px solid var(--qd-text-subtle);border-radius:var(--qd-radius-md);box-shadow:var(--qd-shadow-lg);overflow:hidden;pointer-events:auto;width:100%}@keyframes qd-notif-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:none}}.qd-notif--leaving{animation:qd-notif-out var(--qd-transition-slow) forwards;pointer-events:none}@keyframes qd-notif-out{0%{margin-bottom:0;max-height:400px;opacity:1;transform:none}to{margin-bottom:calc(var(--qd-space-2)*-1);max-height:0;opacity:0;transform:translateX(12px)}}@media (prefers-reduced-motion:reduce){.qd-notif{animation:none}.qd-notif--leaving{animation:qd-notif-fade-out var(--qd-transition) forwards}@keyframes qd-notif-fade-out{to{opacity:0}}}.qd-notif--error{background:var(--qd-danger-subtle);border-left-color:var(--qd-danger)}.qd-notif--warning{background:var(--qd-warning-subtle);border-left-color:var(--qd-warning)}.qd-notif--info{background:var(--qd-accent-subtle);border-left-color:var(--qd-accent)}.qd-notif--success{background:var(--qd-success-subtle);border-left-color:var(--qd-success)}.qd-notif-head{align-items:stretch;display:flex}.qd-notif-main{align-items:flex-start;background:#0000;border:none;color:inherit;cursor:pointer;display:flex;flex:1 1 auto;font:inherit;gap:var(--qd-space-3);min-width:0;padding:var(--qd-space-3) var(--qd-space-2) var(--qd-space-3) var(--qd-space-4);text-align:left}.qd-notif-main--static{cursor:default}.qd-notif-main:focus-visible{border-radius:var(--qd-radius-md);outline:2px solid var(--qd-accent);outline-offset:-2px}.qd-notif-icon{border-radius:var(--qd-radius-circle);color:var(--qd-text-on-accent);display:grid;flex:0 0 auto;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-bold);height:20px;line-height:1;margin-top:1px;place-items:center;width:20px}.qd-notif--error .qd-notif-icon{background:var(--qd-danger)}.qd-notif--info .qd-notif-icon{background:var(--qd-accent)}.qd-notif--warning .qd-notif-icon{background:var(--qd-warning-subtle);box-shadow:inset 0 0 0 1.5px var(--qd-warning);color:var(--qd-warning)}.qd-notif--success .qd-notif-icon{background:var(--qd-success-subtle);box-shadow:inset 0 0 0 1.5px var(--qd-success);color:var(--qd-success)}.qd-notif-text{display:flex;flex:1 1 auto;flex-direction:column;min-width:0}.qd-notif-title{align-items:center;color:var(--qd-text);display:flex;font-size:var(--qd-text-sm);font-weight:var(--qd-weight-semibold);gap:var(--qd-space-2)}.qd-notif-count{background:var(--qd-surface-3);border-radius:var(--qd-radius-pill);color:var(--qd-text-muted);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);padding:0 var(--qd-space-2)}.qd-notif-message{color:var(--qd-text-muted);display:block;font-size:var(--qd-text-sm);margin-top:2px;overflow-wrap:anywhere;word-break:break-word}.qd-notif:not(.qd-notif--expanded) .qd-notif-message{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.qd-notif-chevron{color:var(--qd-text-subtle);flex:0 0 auto;font-size:var(--qd-text-sm);margin-top:2px;transition:transform var(--qd-transition)}.qd-notif-chevron.open{transform:rotate(180deg)}.qd-notif-close{align-self:flex-start;background:#0000;border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-subtle);cursor:pointer;display:grid;flex:0 0 auto;font-size:var(--qd-text-lg);height:var(--qd-control-sm);line-height:1;margin:var(--qd-space-1) var(--qd-space-1) 0 0;place-items:center;transition:background var(--qd-transition),color var(--qd-transition);width:var(--qd-control-sm)}.qd-notif-close:hover{background:var(--qd-surface-3);color:var(--qd-text)}.qd-notif-details{background:var(--qd-surface);border-top:1px solid var(--qd-border);padding:var(--qd-space-3) var(--qd-space-4)}.qd-notif-meta{grid-gap:2px var(--qd-space-3);display:grid;font-size:var(--qd-text-xs);gap:2px var(--qd-space-3);grid-template-columns:auto 1fr;margin:0 0 var(--qd-space-2)}.qd-notif-meta dt{color:var(--qd-text-subtle);font-weight:var(--qd-weight-semibold)}.qd-notif-meta dd{color:var(--qd-text);margin:0;overflow-wrap:anywhere;word-break:break-word}.qd-notif-mono{font-family:var(--qd-font-mono);font-size:var(--qd-text-xs)}.qd-notif-section-label{color:var(--qd-text-subtle);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);letter-spacing:.04em;margin:var(--qd-space-2) 0 var(--qd-space-1);text-transform:uppercase}.qd-notif-pre{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);font-family:var(--qd-font-mono);font-size:var(--qd-text-xs);line-height:1.45;margin:0;max-height:220px;overflow:auto;padding:var(--qd-space-2) var(--qd-space-3);white-space:pre-wrap;word-break:break-word}.qd-notif-trace{max-height:200px}.qd-notif-actions{display:flex;justify-content:flex-end;margin-top:var(--qd-space-3)}.qd-notif-copy{background:var(--qd-accent);border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-on-accent);cursor:pointer;font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);padding:var(--qd-space-1) var(--qd-space-3);transition:background var(--qd-transition)}.qd-notif-copy:hover{background:var(--qd-accent-hover)}.admin-topbar-badge{background:var(--qd-accent-subtle);border-radius:var(--qd-radius-pill);color:var(--qd-accent);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);letter-spacing:.05em;padding:2px var(--qd-space-3);text-transform:uppercase}.admin-panel-header{align-items:flex-start;display:flex;gap:var(--qd-space-4);justify-content:space-between;margin-bottom:var(--qd-space-5)}.admin-panel-header h2{color:var(--qd-text);font-size:var(--qd-text-xl);font-weight:var(--qd-weight-bold);margin:0 0 var(--qd-space-1) 0}.admin-panel-header .admin-panel-subtitle{color:var(--qd-text-muted);font-size:var(--qd-text-sm);margin:0}.admin-stat-grid{grid-gap:var(--qd-space-4);display:grid;gap:var(--qd-space-4);grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-bottom:var(--qd-space-6)}.admin-stat-card{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);padding:var(--qd-space-5)}.admin-stat-card.accent{border-color:var(--qd-accent);box-shadow:0 0 0 1px var(--qd-accent)}.admin-stat-value{color:var(--qd-text);font-size:var(--qd-text-2xl);font-weight:var(--qd-weight-bold);line-height:1.1;word-break:break-word}.admin-stat-label{color:var(--qd-text-muted);font-size:var(--qd-text-sm);margin-top:var(--qd-space-1)}.admin-stat-hint{color:var(--qd-text-subtle);font-size:var(--qd-text-xs);margin-top:var(--qd-space-1)}.admin-section{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);margin-bottom:var(--qd-space-5);padding:var(--qd-space-6)}.admin-section h3{border-bottom:1px solid var(--qd-border);color:var(--qd-text);font-size:var(--qd-text-md);font-weight:var(--qd-weight-bold);margin:0 0 var(--qd-space-4) 0;padding-bottom:var(--qd-space-3)}.admin-section-flush{overflow:hidden;padding:0}.admin-table-wrap{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:var(--qd-radius-lg);overflow:hidden}.admin-table-toolbar{align-items:center;border-bottom:1px solid var(--qd-border);display:flex;gap:var(--qd-space-3);justify-content:space-between;padding:var(--qd-space-3) var(--qd-space-4)}.admin-table-search{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text);flex:1 1;font-size:var(--qd-text-sm);max-width:360px;outline:none;padding:var(--qd-space-2) var(--qd-space-3);transition:border-color var(--qd-transition),box-shadow var(--qd-transition)}.admin-table-search:focus{background:var(--qd-surface);border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring)}.admin-table-count{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);white-space:nowrap}.admin-table-scroll{overflow-x:auto}.admin-table{border-collapse:collapse;font-size:var(--qd-text-sm);width:100%}.admin-table th{background:var(--qd-surface);border-bottom:1px solid var(--qd-border);color:var(--qd-text-subtle);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-bold);letter-spacing:.04em;padding:var(--qd-space-3) var(--qd-space-4);position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;white-space:nowrap}.admin-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.admin-table th.sortable:hover{color:var(--qd-text-muted)}.admin-table th.sortable:focus-visible{border-radius:var(--qd-radius-xs);box-shadow:var(--qd-focus-ring);outline:none}.admin-sort-arrow{color:var(--qd-accent)}.admin-table td{border-bottom:1px solid var(--qd-border);color:var(--qd-text-muted);padding:var(--qd-space-3) var(--qd-space-4);vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tbody tr.clickable{cursor:pointer;transition:background var(--qd-transition-fast)}.admin-table tbody tr.clickable:hover{background:var(--qd-surface-3)}.admin-table .align-right{text-align:right}.admin-table-empty,.admin-table-empty td{padding:0}.admin-cell-primary{color:var(--qd-text);font-weight:var(--qd-weight-medium)}.admin-cell-mono{color:var(--qd-text-subtle);font-family:var(--qd-font-mono);font-size:var(--qd-text-sm)}.admin-name-cell{align-items:center;display:flex;flex-wrap:wrap;gap:var(--qd-space-2)}.admin-avatar{align-items:center;background:var(--qd-accent);border-radius:var(--qd-radius-circle);color:var(--qd-text-on-accent);display:inline-flex;flex-shrink:0;font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);height:30px;justify-content:center;overflow:hidden;width:30px}.admin-avatar img{height:100%;object-fit:cover;width:100%}.admin-usage{display:flex;flex-direction:column;gap:var(--qd-space-1);min-width:120px}.admin-usage-bar{background:var(--qd-surface-3);border-radius:var(--qd-radius-pill);height:6px;overflow:hidden}.admin-usage-bar-fill{background:var(--qd-accent);border-radius:var(--qd-radius-pill);height:100%;transition:width var(--qd-transition-slow)}.admin-usage-bar-fill.warn{background:var(--qd-warning)}.admin-usage-bar-fill.danger{background:var(--qd-danger)}.admin-usage-text{color:var(--qd-text-subtle);font-size:var(--qd-text-xs)}.admin-loading{color:var(--qd-text-muted);font-size:var(--qd-text-base);padding:var(--qd-space-10) var(--qd-space-4);text-align:center}.admin-chip-row{display:flex;flex-wrap:wrap;gap:var(--qd-space-2)}.admin-chip{align-items:center;background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text-muted);display:inline-flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);padding:var(--qd-space-2) var(--qd-space-4)}.admin-chip strong{color:var(--qd-text);font-weight:var(--qd-weight-bold)}.admin-drawer-overlay{animation:admin-fade-in var(--qd-transition);background:var(--qd-overlay);display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:var(--qd-z-modal)}.admin-drawer{animation:admin-slide-in var(--qd-transition-slow);background:var(--qd-bg);border-left:1px solid var(--qd-border);box-shadow:var(--qd-shadow-lg);display:flex;flex-direction:column;height:100%;width:min(560px,100%)}@keyframes admin-fade-in{0%{opacity:0}to{opacity:1}}@keyframes admin-slide-in{0%{opacity:.6;transform:translateX(24px)}to{opacity:1;transform:translateX(0)}}.admin-drawer-header{align-items:center;background:var(--qd-surface);border-bottom:1px solid var(--qd-border);display:flex;flex-shrink:0;gap:var(--qd-space-3);justify-content:space-between;padding:var(--qd-space-4) var(--qd-space-5)}.admin-drawer-title{color:var(--qd-text);font-size:var(--qd-text-lg);font-weight:var(--qd-weight-bold);margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-drawer-subtitle{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);margin:2px 0 0}.admin-drawer-close{align-items:center;background:var(--qd-surface-2);border:none;border-radius:var(--qd-radius-sm);color:var(--qd-text-muted);cursor:pointer;display:inline-flex;flex-shrink:0;height:var(--qd-control-sm);justify-content:center;line-height:1;transition:background var(--qd-transition),color var(--qd-transition);width:var(--qd-control-sm)}.admin-drawer-close:hover{background:var(--qd-surface-3);color:var(--qd-text)}.admin-drawer-close svg{height:16px;width:16px}.admin-drawer-body{flex:1 1;overflow-y:auto;padding:var(--qd-space-5)}.admin-drawer-section{margin-bottom:var(--qd-space-6)}.admin-drawer-section:last-child{margin-bottom:0}.admin-drawer-section h4{color:var(--qd-text-subtle);font-size:var(--qd-text-sm);font-weight:var(--qd-weight-bold);letter-spacing:.04em;margin:0 0 var(--qd-space-3) 0;text-transform:uppercase}.admin-kv{grid-gap:var(--qd-space-2) var(--qd-space-4);display:grid;font-size:var(--qd-text-sm);gap:var(--qd-space-2) var(--qd-space-4);grid-template-columns:140px 1fr}.admin-kv dt{color:var(--qd-text-subtle)}.admin-kv dd{color:var(--qd-text);margin:0;word-break:break-word}.admin-form-row{align-items:center;display:flex;flex-wrap:wrap;gap:var(--qd-space-2)}.admin-form-row input,.admin-form-row select{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-sm);color:var(--qd-text);font-size:var(--qd-text-sm);outline:none;padding:var(--qd-space-2) var(--qd-space-3)}.admin-form-row input{flex:1 1;min-width:160px}.admin-form-row input:focus,.admin-form-row select:focus{background:var(--qd-surface);border-color:var(--qd-accent);box-shadow:var(--qd-focus-ring)}.admin-integration-grid{grid-gap:var(--qd-space-3);display:grid;gap:var(--qd-space-3);grid-template-columns:repeat(auto-fill,minmax(220px,1fr))}.admin-integration{align-items:center;background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:var(--qd-radius-md);color:var(--qd-text);display:flex;font-size:var(--qd-text-sm);gap:var(--qd-space-2);padding:var(--qd-space-3) var(--qd-space-4)}.admin-status-dot{background:var(--qd-text-subtle);border-radius:var(--qd-radius-circle);flex-shrink:0;height:9px;width:9px}.admin-integration.on .admin-status-dot{background:var(--qd-success)}.admin-integration.off .admin-status-dot{background:var(--qd-text-subtle)}.admin-integration-status{color:var(--qd-text-subtle);font-size:var(--qd-text-xs);font-weight:var(--qd-weight-semibold);margin-left:auto}.admin-integration.on .admin-integration-status{color:var(--qd-success)}.admin-section-text{color:var(--qd-text-muted);font-size:var(--qd-text-sm);line-height:1.5;margin:0 0 var(--qd-space-4) 0}.loading-screen{align-items:center;background:var(--qd-bg);color:var(--qd-text-muted);display:flex;font-size:1rem;gap:.75rem;height:100vh;justify-content:center;width:100%}.loading-screen:before{animation:qd-spin .7s linear infinite;border:2.5px solid var(--qd-border-strong);border-radius:50%;border-top-color:var(--qd-accent);content:"";height:20px;width:20px}@keyframes qd-spin{to{transform:rotate(1turn)}}.app-error-boundary,.app-notfound{align-items:center;background:var(--qd-bg);box-sizing:border-box;color:var(--qd-text);display:flex;flex-direction:column;height:100vh;justify-content:center;padding:24px;text-align:center;width:100%}.app-error-card{background:var(--qd-surface);border:1px solid var(--qd-border);border-radius:12px;box-shadow:var(--qd-shadow-md);max-width:460px;padding:32px 28px}.app-error-icon{font-size:2.5rem;margin-bottom:8px}.app-error-boundary h1,.app-notfound h1{color:var(--qd-text);font-size:1.4rem;margin:8px 0}.app-error-boundary p,.app-error-detail,.app-notfound p{color:var(--qd-text-muted);margin:0 0 20px}.app-error-detail{background:var(--qd-surface-2);border:1px solid var(--qd-border);border-radius:8px;font-size:.8rem;max-height:140px;overflow:auto;padding:10px 12px;text-align:left;white-space:pre-wrap;word-break:break-word}.app-error-btn{background:var(--qd-accent);border:none;border-radius:8px;color:var(--qd-text-on-accent);cursor:pointer;font-size:.95rem;font-weight:600;padding:10px 20px;transition:background .15s ease}.app-error-btn:hover{background:var(--qd-accent-hover)}.app-error-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.app-error-btn--ghost{background:var(--qd-surface-2);border:1px solid var(--qd-border);color:var(--qd-text)}.app-error-btn--ghost:hover{background:var(--qd-surface-3)}.app-error-trace{margin-top:16px;text-align:left}.app-error-trace .app-error-detail{max-height:220px}.app-notfound-code{color:var(--qd-accent);font-size:4rem;font-weight:800;line-height:1}
/*# sourceMappingURL=main.2c5ccc05.css.map*/