:root{color-scheme:light dark;--sidebar-width:clamp(220px, 18vw, 280px);--sidebar-width-min:200px;--sidebar-width-max:320px;--sidebar-width-collapsed:72px;--gutter:var(--space-6);--grid-card-min:200px;--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:16px;--radius-4xl:20px;--radius-full:9999px;--radius:var(--radius-2xl);--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;--text-2xs:.6875rem;--text-xs:.75rem;--text-sm:.8125rem;--text-base:.875rem;--text-md:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.75rem;--text-4xl:2rem;--text-5xl:2.5rem;--text-6xl:3rem;--leading-none:1;--leading-tight:1.25;--leading-snug:1.375;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:1.8;--weight-normal:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-extrabold:800;--tracking-tighter:-.02em;--tracking-tight:-.01em;--tracking-normal:0;--tracking-wide:.02em;--tracking-wider:.04em;--tracking-widest:.08em;--measure-prose:65ch;--icon-xs:12px;--icon-sm:14px;--icon-md:16px;--icon-lg:20px;--icon-xl:24px;--z-below:-1;--z-base:0;--z-raised:10;--z-sticky:100;--z-dropdown:1000;--z-overlay:2000;--z-drawer:2500;--z-modal:3000;--z-popover:3500;--z-toast:4000;--z-tooltip:5000;--z-notification:6000;--z-max:9999;--motion-instant:0s;--motion-fast:.12s;--motion-base:.16s;--motion-moderate:.2s;--motion-slow:.3s;--motion-slower:.5s;--motion-spinner:1s;--spin-duration:var(--motion-spinner);--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-emphasized:cubic-bezier(.3, 0, 0, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--shadow-xs:0 1px 2px var(--color-shadow-xs);--shadow-sm:0 1px 3px var(--color-shadow-sm), 0 1px 2px var(--color-shadow-xs);--shadow-md:0 4px 6px var(--color-shadow-sm), 0 2px 4px var(--color-shadow-xs);--shadow-lg:0 10px 15px var(--color-shadow-md), 0 4px 6px var(--color-shadow-sm);--shadow-xl:0 20px 25px var(--color-shadow-md), 0 8px 10px var(--color-shadow-sm);--shadow-2xl:0 25px 50px var(--color-shadow-lg);--bp-xs:480px;--bp-sm:640px;--bp-md:768px;--bp-lg:1024px;--bp-xl:1280px;--density-row-py:var(--space-3);--density-row-px:var(--space-3-5);--density-gap:var(--space-3);--density-control-h:40px;--color-bg-page:light-dark(#f5f7fa,#0f172a);--color-bg-surface:light-dark(#fff,#1e293b);--color-bg-input:light-dark(#f9fafb,#0f172a);--color-bg-hover:light-dark(#f8fafc,#334155);--color-bg-muted:light-dark(#f0f3f7,#1a2540);--color-bg-subtle:light-dark(#f8f9fa,#162032);--color-bg-alt:light-dark(#f7fafc,#0f172a);--color-bg-input-alt:light-dark(#edf2f7,#253045);--color-bg-empty:light-dark(#f0f0f0,#253045);--color-border:light-dark(#e2e8f0,#334155);--color-border-light:light-dark(#f1f5f9,#334155);--color-border-medium:light-dark(#cbd5e0,#475569);--color-border-faint:light-dark(#e0e6ed,#2a3650);--color-border-subtle:light-dark(#e0e5e8,#2a3650);--color-border-xfaint:light-dark(#f0f0f0,#1e293b);--color-border-ddd:light-dark(#ddd,#334155);--color-text:light-dark(#2d3748,#e2e8f0);--color-text-heading:light-dark(#1e293b,#f1f5f9);--color-text-secondary:light-dark(#475569,#cbd5e1);--color-text-muted:light-dark(#5e6a78,#9fadbe);--color-text-subtle:light-dark(#5e6a78,#9fadbe);--color-text-faint:light-dark(#5e6a78,#9fadbe);--color-text-dark:var(--color-text-secondary);--color-text-dim:var(--color-text-secondary);--color-text-black:var(--color-text);--color-text-gray:var(--color-text-muted);--color-text-medium:var(--color-text-muted);--color-text-faint2:var(--color-text-faint);--color-text-light:var(--color-text-faint);--color-text-placeholder:var(--color-text-faint);--color-accent:#ff5e3a;--color-accent-hover:light-dark(#e04520,#ff7a5c);--color-accent-text:light-dark(#cc3a16,#ff8a5c);--color-on-accent:#fff;--color-focus-ring:#ff5e3a;--color-logo-gradient:linear-gradient(135deg, #ff5e3a 0%, #ff8a5c 100%);--color-accent-gradient:linear-gradient(135deg, #ff5e3a 0%, #ff2d55 100%);--color-accent-shadow:#ff5e3a4d;--color-accent-ring:light-dark(#ff5e3a1a,#ff5e3a26);--color-accent-tint:light-dark(#fff5f3,#2a1a15);--color-accent-mid:#ff8a5c;--color-accent-shadow-lg:#ff5e3a66;--color-accent-bg:#ff5e3a0f;--color-accent-bg-sm:#ff5e3a14;--color-accent-ring-dark:#ff5e3a26;--color-accent-ring-strong:#ff5e3a33;--color-accent-ring-xl:#ff5e3a66;--color-accent-ring-xs:#ff5e3a0d;--color-accent-glow:#ff5e3a33;--color-accent-glow-soft:#ff5e3a1a;--brand-ambient:radial-gradient(55% 50% at 8% 4%, var(--color-accent-glow), transparent 60%), radial-gradient(55% 55% at 95% 98%, var(--color-accent-glow), transparent 58%), radial-gradient(48% 48% at 88% 12%, var(--color-accent-glow-soft), transparent 55%), radial-gradient(50% 45% at 6% 92%, var(--color-accent-glow-soft), transparent 55%), radial-gradient(78% 64% at 50% 33%, var(--color-bg-surface), transparent 70%), var(--color-bg-page);--brand-grain:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='180' height='180'><filter id='g'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix type='saturate' values='0'/></filter><rect width='180' height='180' filter='url(%23g)'/></svg>");--color-error-bg:light-dark(#fee2e2,#3b1111);--color-error-text:light-dark(#b91c1c,#fca5a5);--color-success-bg:light-dark(#dcfce7,#052e16);--color-success-text:light-dark(#15803d,#86efac);--color-success-border:#16a34a;--color-success-alt:#16a34a;--color-success-bg-alt:var(--color-success-bg);--color-success-text-alt:var(--color-success-text);--color-success-bg-green:var(--color-success-bg);--color-success-text-green:var(--color-success-text);--color-danger-bg:#ef4444;--color-danger-text:#fff;--color-danger-bg-hover:#dc2626;--color-danger-alt:#ef4444;--color-danger-ring:#ef44444d;--color-danger-ring-lg:#ef444466;--color-danger-light-bg:light-dark(#fef2f2,#2a0c0c);--color-danger-lighter:light-dark(#fef2f2,#2a0c0c);--color-danger-text-alt:var(--color-error-text);--color-danger-gradient:linear-gradient(135deg, #ef4444 0%, #dc2626 100%);--color-warning-bg:light-dark(#fef3c7,#2a2410);--color-warning-text:light-dark(#b45309,#fbbf24);--color-warning-border:#f59e0b;--color-warning-bg-dark:light-dark(#fde68a,#3d2e00);--color-warning-ring:#f59e0b1f;--color-warning-shadow:#f59e0b66;--color-warning-orange-bg:var(--color-warning-bg);--color-warning-orange-border:var(--color-warning-border);--color-warning-orange-text:var(--color-warning-text);--color-warning-bg-light:var(--color-warning-bg);--color-warning-text-amber:var(--color-warning-text);--color-warning-bg-orange:var(--color-warning-bg);--color-warning-text-orange:var(--color-warning-text);--color-info-bg:light-dark(#eff6ff,#0c2d48);--color-info-text:light-dark(#1d4ed8,#93c5fd);--color-info-border:#3b82f6;--color-info-blue:#3b82f6;--color-info-bg-alt:var(--color-info-bg);--color-info-text-alt:var(--color-info-text);--color-info-surface:var(--color-info-bg);--color-shadow:light-dark(#0000001a,#0000004d);--color-shadow-lg:light-dark(#0000001f,#00000061);--color-shadow-xs:#0000000d;--color-shadow-sm:#00000014;--color-shadow-md:light-dark(#00000026,#00000057);--color-shadow-xl:#0003;--color-shadow-2xl:#00000040;--color-shadow-3xl:#0000004d;--color-shadow-4xl:#0006;--color-overlay:#00000080;--color-scrim-control:light-dark(#ffffffeb,#0f172ad1);--color-overlay-light:#00000073;--color-overlay-heavy:#000000d9;--color-overlay-darkest:#000000eb;--color-overlay-shadow:#0009;--color-on-overlay:#fffffff2;--color-on-overlay-muted:#ffffffe6;--color-overlay-button:#ffffff1f;--color-overlay-button-hover:#ffffff38;--color-item:var(--color-bg-surface);--color-item-hover:var(--color-bg-hover);--color-item-active:light-dark(#f8d2ae,#5a5047);--color-item-selected:light-dark(#fff8f6,#39281a);--color-item-hover-accent:light-dark(#fff0ec,#3d342c);--color-item-hover-blue:#f0f8ff;--color-item-hover-sky:#e0f2fe;--color-sidebar-bg-from:light-dark(#2a3042,#0f172a);--color-sidebar-bg-to:light-dark(#232838,#0c1322);--color-sidebar-text:#ffffffa6;--color-sidebar-text-hover:#ffffffe6;--color-sidebar-text-active:#fff;--color-sidebar-active-bg:#ff5e3a1f;--color-sidebar-hover-bg:#ffffff0f;--color-sidebar-separator:#ffffff12;--color-sidebar-overlay:#00000080;--color-sidebar-storage-bg:#ffffff0d;--color-sidebar-storage-border:#ffffff12;--color-sidebar-storage-text:#fffc;--color-sidebar-storage-bar:#ffffff1a;--color-sidebar-storage-faint:#ffffff80;--color-sidebar-logo-gradient:linear-gradient(135deg, #ff5e3a 0%, #ff8a5c 100%);--color-sidebar-progress:linear-gradient(90deg, #ff5e3a 0%, #ff8a5c 100%);--color-sidebar-shadow:#ff5e3a59;--color-sidebar-shadow-lg:#ff5e3a73;--color-cal-1:#d36868;--color-cal-2:#d3a268;--color-cal-3:#c9d368;--color-cal-4:#8fd368;--color-cal-5:#68d37c;--color-cal-6:#68d3b6;--color-cal-7:#68b6d3;--color-cal-8:#687cd3;--color-cal-9:#8f68d3;--color-cal-10:#c968d3;--color-cal-11:#d368a2;--color-ft-html:#e34c26;--color-ft-js:#2965f1;--color-ft-python:#3776ab;--color-ft-typescript:#3178c6;--color-ft-rust:#dea584;--color-ft-go:#00add8;--color-ft-java:#e76f00;--color-ft-shell:#555;--color-ft-csharp:#68217a;--color-ft-php:#8892be;--color-ft-ruby:#cc342d;--color-ft-swift:#fa7343;--color-ft-kotlin:#7f52ff;--color-ft-scala:#e38c00;--color-ft-angular:#cb171e;--color-ft-cpp:#9c4221;--color-ft-docker:#083fa1;--color-ft-generic-blue:#556ee6;--color-ft-generic-green:#4eaa25;--color-ft-generic-gray:#a0aec0;--color-ft-orange-light:#ffb86c;--color-ft-yellow:#ffd43b;--color-ft-orange-alt:#e34c26;--color-ft-coffeescript:#9c4221;--color-ft-folder-bg:#ffeaa7;--color-ft-folder-tab:#fdcb6e;--color-ft-doc-bg:#e0ecff;--color-ft-doc-text:#3171d8;--color-ft-pdf-bg:#fee2e2;--color-ft-pdf-text:#e53e3e;--color-ft-image-bg:#e0f2fe;--color-ft-image-text:#3b82f6;--color-ft-video-bg-from:#ede9fe;--color-ft-video-bg-to:#fce7f3;--color-ft-video-text:#8b5cf6;--color-ft-audio-bg:#fef3c7;--color-ft-audio-text:#f59e0b;--color-ft-audio-alt-bg:#fff3e0;--color-ft-spreadsheet-bg:#e6f4ea;--color-ft-spreadsheet-text:#0d904f;--color-ft-presentation-bg:#fef3e2;--color-ft-presentation-text:#d04423;--color-ft-archive-bg:#f5f0eb;--color-ft-archive-text:#8d6e63;--color-ft-installer-bg:#f3e8ff;--color-ft-installer-text:#7c3aed;--color-ft-script-bg:#e8f5e9;--color-ft-script-text:#4eaa25;--color-ft-config-bg:#f1f3f5;--color-ft-config-text:#718096;--color-multiselect-bg:#1e293b;--color-multiselect-border:#334155;--color-multiselect-text:#fff;--color-multiselect-text-faint:#ffffffb3;--color-multiselect-hover-bg:#ffffff1a;--color-multiselect-action-text:#fff;--color-multiselect-action-hover:#fff3;--color-multiselect-danger-bg:#ef444440;--color-multiselect-danger-text:#fca5a5;--color-multiselect-danger-active:#ef444466;--color-multiselect-danger-text-active:#fff;--color-notification-bg:light-dark(#fff,#1e293b);--color-notification-badge:#ff3b30;--color-notification-success:#34c759;--color-notification-error:#ff3b30;--color-lightbox-overlay:#000000eb;--color-lightbox-btn-bg:#ffffff1f;--color-lightbox-btn-text:#fff;--color-lightbox-btn-hover:#ffffff40;--color-lightbox-gradient-top:linear-gradient(to bottom, #0009, transparent);--color-lightbox-gradient-bottom:linear-gradient(to top, #0009, transparent);--color-lightbox-text-faint:#ffffff80;--color-lightbox-text-muted:#ffffffb3;--color-oidc-bg:var(--color-info-blue);--color-oidc-shadow:#4f46e54d;--color-oidc-shadow-lg:#4f46e566;--color-device-verify-text:#ffc107;--color-device-verify-shadow:#ffc10780;--color-device-verify-drop-shadow:#ffc10766;--color-device-verify-border:#ffc107;--color-device-verify-muted:#6c757d;--color-device-verify-dim:#ccc;--color-content-muted:#888;--color-content-bg-warn:light-dark(#ffeaa7,#3d2e00);--color-content-bg-warn-dark:light-dark(#fdcb6e,#5a4200);--color-user-menu-header-bg:light-dark(linear-gradient(135deg, #fef5f3 0%, #fdf2f8 100%),linear-gradient(135deg, #1a2332 0%, #1e2940 100%));--color-user-menu-header-border:light-dark(#fce7e1,#3a2520);--color-share-link-text:var(--color-info-text);--color-share-link-hover:var(--color-info-text);--color-share-remove-text:#b71c1c;--color-share-owner-text:#757575;--color-primary:var(--color-accent);--color-primary-hover:var(--color-accent-hover);--color-recent-muted:#6c757d;--color-recent-border:#6c757d;--color-star-text:#fbbf24;--color-star-text-hover:#f59e0b;--color-star-active:#d97706;--color-card-drop-tint:#e67e2214;--color-card-drop-border:#e67e22;--color-neutral-warm-bg:#f5f0eb;--color-neutral-warm-text:#8d6e63;--color-neutral-bg:#f1f3f5;--color-admin-blue:#60a5fa;--color-admin-blue-bg:#3b82f61a;--color-admin-blue-bg-sm:#3b82f626;--color-danger-hover-bg:#ef44441a;--color-success-ring:#48bb781a;--color-success-ring-dark:#48bb7826;--color-success-text-strong:#2f855a;--color-success-ring-vivid:#4ade801a;--color-success-text-vivid:#86efac;--color-success-ring-vivid-lg:#4ade8026;--color-success-icon-vivid:#4ade80;--color-secret-green:#059669;--color-overlay-mid:#0009;--color-overlay-video:#0000008c;--color-progress-overlay:#fffffff2;--color-progress-overlay-dark:#1e293bf2;--color-black:#000;--color-info-border-light:#90cdf4;--color-notification-error-ring:#ff3b301a;--color-accent-second:#ff2d55;--color-warning-ring-xs:#ffc1070d;--color-avatar-gradient:linear-gradient(135deg, #3b82f6, #6366f1);--color-text-navy:#1a1a2e;--color-role-admin-bg:#dbeafe;--color-role-admin-text:#1d4ed8;--color-dark-mid:#475569;--color-role-admin-dark-bg:#1e3a5f;--color-photo-check-border:#fffc;--color-accent-shadow-sm:#ff5e3a40;--color-warning-bg-faint:#fffbeb;--color-storage-fill-green:linear-gradient(90deg, #059669, #10b981);--color-storage-fill-orange:linear-gradient(90deg, #d97706, #f59e0b);--color-storage-fill-red:linear-gradient(90deg, #dc2626, #ef4444);--color-error-text-dark:light-dark(#991b1b,#f87171);--color-stat-warn-border:#fbbf24;--color-badge-success-bg:#ecfdf5;--color-badge-success-bg-medium:#d1fae5;--color-badge-success-text:#065f46;--color-badge-success-border:#a7f3d0;--color-badge-success-fill:#047857;--color-badge-success-fill-dark:#064e27;--color-badge-success-fill-faint:#f0fdf4;--color-badge-green-bg:#ecfdf5;--color-badge-green-text:#065f46;--color-badge-orange-bg:light-dark(#fff5f3,#2a1814);--color-badge-orange-text:light-dark(#ff5e3a,#ff8a65);--color-badge-error-border:#fecaca;--color-badge-warning-text:#92400e;--color-badge-warning-border:#fde68a;--color-badge-amber-bg:#fef3c7;--color-badge-amber-text:#f59e0b;--color-badge-indigo-bg:#ede9fe;--color-badge-indigo-text:#6d28d9;--color-badge-blue-bg:light-dark(#eff6ff,#0c2d48);--color-badge-blue-text:light-dark(#1e40af,#93c5fd);--color-badge-blue-border:#bfdbfe;--color-badge-gray:#d1d5db;--color-dark-footer:#162032;--color-scrollbar-dark:#ffffff26;--color-border-dark-faint:#ffffff08;--color-bg-off-white:#fafbfd;--color-danger-shadow:#dc262633;--color-danger-shadow-lg:#dc26264d;--color-music-gradient:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--color-music-background:var(--color-bg-surface);--color-music-public-bg:#4a90d91f;--color-video-play:#fff;--color-video-play-shadow:#000}html[data-color-scheme=light]{color-scheme:light}html[data-color-scheme=dark]{color-scheme:dark}html[data-density=compact]{--density-row-py:var(--space-2);--density-row-px:var(--space-2-5);--density-gap:var(--space-2);--density-control-h:32px}@media (prefers-contrast:more){:root{--color-border:light-dark(#64748b,#94a3b8);--color-border-light:light-dark(#64748b,#94a3b8);--color-border-medium:light-dark(#475569,#cbd5e1)}}html{font-size:100%}*{box-sizing:border-box;font-family:var(--font-sans);margin:0;padding:0}body{height:100dvh;font-size:var(--text-base);line-height:var(--leading-normal);background-color:var(--color-bg-page);display:flex;overflow:hidden}html[dir=rtl] .fa-arrow-left:before{content:""}html[dir=rtl] .fa-sign-out-alt{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.hidden{display:none!important}::selection{background:var(--color-accent-ring-strong);color:var(--color-text-heading)}:root{caret-color:var(--color-accent)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.heading-page{font-size:var(--text-2xl);line-height:var(--leading-tight);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);color:var(--color-text-heading)}.heading-section{font-size:var(--text-xl);line-height:var(--leading-snug);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--color-text-heading)}.heading-card{font-size:var(--text-md);line-height:var(--leading-snug);font-weight:var(--weight-semibold);color:var(--color-text-heading)}.heading-eyebrow{font-size:var(--text-xs);line-height:var(--leading-normal);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-widest);text-transform:uppercase;color:var(--color-text-muted)}.prose{max-width:var(--measure-prose)}h1,h2,h3,.heading-page,.heading-section,.heading-card,.page-title{text-wrap:balance}.prose,.empty-state p,.about-description,.auth-subtitle,.auth-hint,.language-subtitle{text-wrap:pretty}.storage-info,.user-menu-storage-text,.notif-badge,.stat-value{font-variant-numeric:tabular-nums}@keyframes spin{to{transform:rotate(360deg)}}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.skip-link{top:var(--space-2);left:var(--space-2);z-index:var(--z-max);padding:var(--space-2) var(--space-4);background:var(--color-bg-surface);color:var(--color-text);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);transition:transform var(--motion-fast) var(--ease-standard);position:absolute;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:more){:root{--color-text-muted:var(--color-text-secondary);--color-text-subtle:var(--color-text-secondary);--color-text-faint:var(--color-text-secondary)}:focus-visible{outline-width:3px}}@media (forced-colors:active){:focus-visible{outline-color:highlight}}.error-toast{bottom:var(--space-5);z-index:var(--z-toast);max-width:min(90vw,420px);padding:var(--space-3) var(--space-4);background:var(--color-error-bg);color:var(--color-error-text);border:1px solid var(--color-badge-error-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-size:var(--text-sm);transform:translate(-50%, calc(100% + var(--space-5)));transition:transform var(--motion-base) var(--ease-standard);position:fixed;left:50%}.error-toast.is-visible{transform:translate(-50%)}@media print{.sidebar,.sidebar-overlay,.top-bar,.actions-bar,.page-sticky-header,.cmdk-overlay,.skip-link,.error-toast{display:none!important}.content-area,.main-content{overflow:visible!important}*{box-shadow:none!important}}@media (width<=768px){.sidebar-toggle,.search-toggle-btn,.search-back-btn,.notif-bell-btn,.user-avatar-btn{min-width:44px;min-height:44px}.nav-item{min-height:44px}.files-list-view .file-item{min-height:48px}}.form-group{margin-bottom:15px}.form-group label{margin-bottom:var(--space-2);font-weight:var(--weight-medium);color:var(--color-text-secondary);display:block}.form-group input,.form-group textarea{width:100%;padding:var(--space-2-5);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base)}.form-group textarea{resize:vertical;min-height:80px}.button{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);border:none;transition:background-color .2s}.primary{background-color:var(--color-accent);color:var(--color-danger-text)}.primary:hover{background-color:var(--color-accent-hover)}.secondary{background-color:var(--color-border);color:var(--color-text-secondary)}.secondary:hover{background-color:var(--color-border-medium)}.danger{background-color:var(--color-danger-bg);color:var(--color-danger-text)}.danger:hover{background-color:var(--color-danger-bg-hover)}.sidebar{width:var(--sidebar-width);background:linear-gradient(180deg, var(--color-sidebar-bg-from) 0%, var(--color-sidebar-bg-to) 100%);color:var(--color-sidebar-text-active);height:100%;box-shadow:2px 0 12px var(--color-shadow-md);transition:transform var(--motion-slow) var(--ease-emphasized);flex-direction:column;flex-shrink:0;display:flex}.sidebar-overlay{background:var(--color-sidebar-overlay);z-index:998;opacity:0;transition:opacity .3s;display:none;position:fixed;inset:0}.sidebar-overlay.active{opacity:1;display:block}@media (width<=768px){.sidebar{z-index:999;position:fixed;top:0;left:0;transform:translate(-100%)}.sidebar.open{transform:translate(0)}[dir=rtl] .sidebar{left:auto;right:0;transform:translate(100%)}[dir=rtl] .sidebar.open{transform:translate(0)}}.logo-container{padding:22px var(--space-5);border-bottom:1px solid var(--color-sidebar-separator);margin-bottom:var(--space-2);color:inherit;align-items:center;text-decoration:none;display:flex}.logo{background:var(--color-sidebar-logo-gradient);border-radius:var(--radius-2xl);width:40px;height:40px;margin-right:var(--space-3);box-shadow:0 3px 10px var(--color-sidebar-shadow);justify-content:center;align-items:center;transition:transform .2s,box-shadow .2s;display:flex;[dir=rtl] &{margin-left:var(--space-3);margin-right:unset}}.logo:hover{box-shadow:0 4px 14px var(--color-sidebar-shadow-lg);transform:scale(1.05)}.logo svg{width:22px;height:22px;fill:var(--color-sidebar-text-active)}.app-name{font-size:19px;font-weight:var(--weight-bold);color:var(--color-sidebar-text-active);letter-spacing:.3px}.nav-menu{padding:var(--space-2) var(--space-3);gap:var(--space-0-5);flex-direction:column;flex-grow:1;display:flex}.nav-item{width:100%;padding:11px var(--space-3-5);border-radius:var(--radius-xl);cursor:pointer;color:var(--color-sidebar-text);font-size:14.5px;font-weight:var(--weight-medium);text-align:left;appearance:none;background:0 0;border:none;border-left:3px solid #0000;align-items:center;font-family:inherit;transition:all .2s;display:flex;position:relative;[dir=rtl] &{border-left:none;border-right:3px solid #0000}}.nav-item:hover{background-color:var(--color-sidebar-hover-bg);color:var(--color-sidebar-text-hover)}.nav-item.active{background-color:var(--color-sidebar-active-bg);color:var(--color-sidebar-text-active);border-left-color:var(--color-accent);font-weight:var(--weight-semibold);[dir=rtl] &{border-left-color:#0000;border-right-color:var(--color-accent)}}.nav-item i,.nav-item .nav-icon,.nav-item .oxi-icon{margin-right:var(--space-3-5);text-align:center;width:20px;height:20px;font-size:var(--text-md);flex-shrink:0;transition:color .2s,transform .2s;[dir=rtl] &{margin-left:var(--space-3-5);margin-right:unset}}.nav-item:first-child i,.nav-item:first-child .oxi-icon{color:var(--color-cal-1)}.nav-item:nth-child(2) i,.nav-item:nth-child(2) .oxi-icon{color:var(--color-cal-2)}.nav-item:nth-child(3) i,.nav-item:nth-child(3) .oxi-icon{color:var(--color-cal-3)}.nav-item:nth-child(4) i,.nav-item:nth-child(4) .oxi-icon{color:var(--color-cal-4)}.nav-item:nth-child(5) i,.nav-item:nth-child(5) .oxi-icon{color:var(--color-cal-5)}.nav-item:nth-child(6) i,.nav-item:nth-child(6) .oxi-icon{color:var(--color-cal-6)}.nav-item.active i,.nav-item.active .oxi-icon{color:var(--color-accent)}.nav-item:hover i,.nav-item:hover .oxi-icon{transform:scale(1.1)}.storage-container{margin:auto var(--space-3) var(--space-4) var(--space-3);background:var(--color-sidebar-storage-bg);border:1px solid var(--color-sidebar-storage-border);border-radius:var(--radius-2xl);padding:var(--space-4)}.storage-title{justify-content:center;align-items:center;gap:var(--space-1-5);margin-bottom:var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-sidebar-storage-text);letter-spacing:.3px;display:flex}.storage-bar{background-color:var(--color-sidebar-storage-bar);height:6px;margin-bottom:var(--space-2-5);border-radius:3px;overflow:hidden}.storage-fill{background:var(--color-sidebar-progress);border-radius:3px;width:0%;height:100%;transition:width .8s}.storage-info{text-align:center;color:var(--color-sidebar-storage-faint);font-size:11.5px;font-weight:var(--weight-normal)}.main-content{flex-direction:column;flex-grow:1;display:flex;overflow:hidden}.top-bar{background-color:var(--color-bg-surface);border-bottom:1px solid var(--color-border);height:70px;min-height:70px;max-height:70px;padding:0 var(--gutter);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.sidebar-toggle{padding:var(--space-2-5);cursor:pointer;color:var(--color-text-secondary);border-radius:var(--radius-lg);margin-right:var(--space-3);background:0 0;border:none;flex-shrink:0;transition:background-color .2s,color .2s;display:none}.sidebar-toggle:hover{background-color:var(--color-border);border-color:var(--color-border-medium)}.sidebar-toggle i{font-size:var(--text-xl)}.search-toggle-btn{padding:var(--space-2-5);cursor:pointer;color:var(--color-text-secondary);border-radius:var(--radius-lg);font-size:var(--text-lg);background:0 0;border:none;flex-shrink:0;transition:background-color .2s,color .2s;display:none}.search-toggle-btn:hover{background-color:var(--color-border)}.search-back-btn{padding:var(--space-2-5);cursor:pointer;color:var(--color-text-secondary);border-radius:var(--radius-lg);font-size:var(--text-lg);background:0 0;border:none;flex-shrink:0;transition:background-color .2s,color .2s;display:none}.search-back-btn:hover{background-color:var(--color-border);color:var(--color-text-heading)}.search-slot{max-width:600px;margin-right:var(--space-5);flex-grow:1;align-items:center;display:flex;position:relative;[dir=rtl] &{margin-left:var(--space-5);margin-right:unset}}.search-container{flex-grow:1;align-items:center;display:flex;position:relative}.search-container input{width:100%;padding:var(--space-3) 50px var(--space-3) var(--space-11);border-radius:var(--radius-2xl);border:2px solid var(--color-border);background-color:var(--color-bg-input);font-size:var(--text-base);height:46px;color:var(--color-text-heading);transition:all .2s}.search-container input:hover{border-color:var(--color-border-medium);background-color:var(--color-bg-surface)}.search-container input:focus{border-color:var(--color-accent);background-color:var(--color-bg-surface);box-shadow:0 0 0 4px var(--color-accent-ring);outline:none}.search-container input::placeholder{color:var(--color-text-placeholder)}.search-icon{color:var(--color-text-placeholder);font-size:var(--text-md);pointer-events:none;transition:color .2s;position:absolute;top:50%;left:16px;transform:translateY(-50%);[dir=rtl] &{right:16px;left:unset}}.search-container input:focus+.search-icon,.search-container:focus-within .search-icon{color:var(--color-accent)}.search-button{background:var(--color-accent-gradient);color:var(--color-danger-text);border-radius:var(--radius-xl);cursor:pointer;width:36px;height:36px;box-shadow:0 2px 8px var(--color-accent-shadow);border:none;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:50%;right:6px;transform:translateY(-50%);[dir=rtl] &{left:6px;right:unset}}.search-button:hover{box-shadow:0 4px 12px var(--color-accent-shadow-lg);transform:translateY(-50%)scale(1.05)}.search-button:active{transform:translateY(-50%)scale(.98)}.search-button i{font-size:var(--text-base)}.user-controls{align-items:center;gap:var(--space-3);display:flex}@media (width<=768px){.top-bar{padding:0 var(--space-4)}.sidebar-toggle{justify-content:center;align-items:center;display:flex}.search-slot{display:none}.search-toggle-btn{justify-content:center;align-items:center;margin-left:auto;display:flex}.top-bar--search-active .search-back-btn{justify-content:center;align-items:center;display:flex}.top-bar--search-active .search-slot{flex-grow:1;max-width:none;margin:0;display:flex}.top-bar--search-active .search-icon{display:none}.top-bar--search-active .search-container input{padding-left:var(--space-4)}.top-bar--search-active .sidebar-toggle,.top-bar--search-active .search-toggle-btn,.top-bar--search-active .user-controls{display:none}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-bg-surface)}::-webkit-scrollbar-thumb{background:var(--color-accent);border-radius:3px}*{scrollbar-width:thin;scrollbar-color:var(--color-accent) var(--color-bg-surface)}.content-area{padding:var(--space-5) var(--gutter);scrollbar-gutter:stable;flex-grow:1;overflow-y:scroll}@media (width<=640px){:root{--gutter:var(--space-4)}.content-area{scrollbar-gutter:auto}.actions-bar{gap:var(--space-2);flex-wrap:wrap;height:auto}}.page-title{font-size:var(--text-2xl);font-weight:var(--weight-bold);margin-bottom:var(--space-5);color:var(--color-text)}.page-sticky-header{padding:var(--space-2-5) 0px;background-color:var(--color-bg-page);z-index:100;margin:0;position:sticky;top:-20px}.actions-bar{margin:0 0 var(--space-3);height:60px;padding:var(--space-2-5);justify-content:space-between;display:flex}.action-buttons{gap:var(--space-3);flex:auto;display:flex}.empty-state{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-12) var(--space-6);text-align:center;color:var(--color-text-muted);flex-direction:column;grid-column:1/-1;width:100%;min-height:320px;display:flex}.empty-state p{max-width:42ch;color:var(--color-text-muted);margin:0}.empty-state p:first-of-type{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-heading)}.empty-state .btn{margin-top:var(--space-4)}.drag-preview{pointer-events:none;width:360px;position:absolute;top:-9999px;left:-9999px}.brand-mark{border-radius:var(--radius-3xl);background:var(--color-logo-gradient);width:56px;height:56px;margin-bottom:var(--space-3);box-shadow:0 4px 14px var(--color-accent-shadow);justify-content:center;align-items:center;display:inline-flex}.brand-mark svg{width:32px;height:32px;fill:var(--color-on-accent)}.breadcrumb{font-size:var(--text-base);color:var(--color-text-medium);align-items:center;gap:var(--space-0-5);flex-wrap:wrap;margin-bottom:15px;display:flex}.breadcrumb-item{padding:var(--space-0-5) var(--space-1);border-radius:var(--radius-sm);border:2px solid #0000;transition:background .15s,color .15s}.breadcrumb-link{cursor:pointer;color:var(--color-text-muted)}.breadcrumb-link.drop-target{background-color:var(--color-warning-ring);border:2px dashed var(--color-warning-border)}.breadcrumb-link:hover{color:var(--color-accent);background:var(--color-accent-bg);text-decoration:underline}.breadcrumb-current{font-weight:var(--weight-semibold);color:var(--color-text-black);cursor:default}.breadcrumb-separator{margin:0 var(--space-1);color:var(--color-text-faint);font-size:var(--text-xs);user-select:none}.breadcrumb-home{border-radius:var(--radius-sm);justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.breadcrumb-home i{font-size:var(--text-xs)}.breadcrumb-home.breadcrumb-link:hover{background:var(--color-accent-ring)}.btn{padding:var(--space-3) var(--space-6);border-radius:var(--radius-2xl);cursor:pointer;font-size:var(--text-base);font-weight:var(--weight-medium);justify-content:center;align-items:center;gap:var(--space-2);border:none;transition:all .2s;display:flex}.btn i{font-size:15px}.btn-primary{background:var(--color-accent-gradient);color:var(--color-danger-text);box-shadow:0 4px 15px var(--color-accent-shadow)}.btn-primary:hover{box-shadow:0 6px 20px var(--color-accent-shadow-lg);transform:translateY(-2px)}.btn-primary:active{box-shadow:0 2px 10px var(--color-accent-shadow);transform:translateY(0)}.btn-secondary{background-color:var(--color-bg-hover);color:var(--color-text-secondary);border:2px solid var(--color-border)}.btn-secondary:hover{background-color:var(--color-bg-input-alt);border-color:var(--color-border-medium);box-shadow:0 4px 12px var(--color-shadow-sm);transform:translateY(-2px)}.btn-secondary:active{background-color:var(--color-border);transform:translateY(0)}.btn-danger{background:var(--color-danger-gradient);color:var(--color-danger-text);box-shadow:0 4px 15px var(--color-danger-ring)}.btn-danger:hover{box-shadow:0 6px 20px var(--color-danger-ring-lg);transform:translateY(-2px)}.btn-danger:active{box-shadow:0 2px 10px var(--color-danger-ring);transform:translateY(0)}.btn:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:2px}.btn:disabled,.btn[disabled],.btn.is-disabled{opacity:.5;cursor:not-allowed;box-shadow:none;filter:none;pointer-events:none;transform:none}.btn.is-loading,.btn[aria-busy=true]{color:#0000;pointer-events:none;position:relative}.btn.is-loading:after,.btn[aria-busy=true]:after{content:"";border:2px solid var(--color-on-accent);border-radius:var(--radius-full);width:16px;height:16px;animation:spin var(--spin-duration) linear infinite;border-top-color:#0000;margin:-8px 0 0 -8px;position:absolute;top:50%;left:50%}.btn-secondary.is-loading:after,.btn-secondary[aria-busy=true]:after{border-color:var(--color-text-secondary);border-top-color:#0000}.view-toggle{gap:var(--space-0-5);background-color:var(--color-bg-muted);border-radius:var(--radius-xl);border:1px solid var(--color-border);padding:3px;display:flex}.toggle-btn{border-radius:var(--radius-lg);cursor:pointer;width:36px;height:32px;color:var(--color-text-faint);font-size:var(--text-base);background-color:#0000;border:none;justify-content:center;align-items:center;transition:all .2s;display:flex}.toggle-btn:hover{background-color:var(--color-border);color:var(--color-text-subtle)}.toggle-btn.active{background-color:var(--color-border);color:var(--color-accent);box-shadow:0 1px 3px var(--color-shadow)}.toggle-btn i{pointer-events:none}.view-toggle-separator{background:var(--color-border-medium);width:1px;height:20px;margin:0 var(--space-0-5);align-self:center}.view-toggle-separator.hidden{display:none}.group-by-selector{align-items:center;display:flex;position:relative}.group-by-selector.hidden{display:none}.group-by-btn.active{color:var(--color-accent)}.sort-dir-btn .oxi-icon{transition:transform .2s}.sort-dir-btn.active .oxi-icon{transform:rotate(180deg)}.group-by-label{font-size:.78rem;font-weight:var(--weight-semibold);white-space:nowrap;display:none}.group-by-btn:has(.group-by-label:not(:empty)){width:auto;padding:0 var(--space-2);gap:5px}.group-by-btn:has(.group-by-label:not(:empty)) .group-by-label{display:inline}.group-by-menu{z-index:200;background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:140px;box-shadow:0 4px 16px var(--color-shadow);padding:var(--space-1);gap:var(--space-0-5);flex-direction:column;display:flex;position:absolute;top:calc(100% + 6px);left:0}.group-by-menu.hidden{display:none}.group-by-option{align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-2-5);border-radius:var(--radius-md);cursor:pointer;color:var(--color-text);text-align:left;background:0 0;border:none;width:100%;font-size:.85rem;display:flex}.group-by-option:hover{background:var(--color-border)}.group-by-option.active{color:var(--color-accent);font-weight:var(--weight-semibold)}.folder-icon{background-color:var(--color-ft-folder-bg)}.folder-icon:before{content:"";background-color:var(--color-ft-folder-tab);border-radius:var(--radius-lg) var(--radius-lg) 0 0;height:22%;position:absolute;top:0;left:0;right:0}.folder-icon>i,.folder-icon>svg{display:none!important}.pdf-icon{background-color:var(--color-ft-pdf-bg);color:var(--color-ft-pdf-text)}.doc-icon{background-color:var(--color-ft-doc-bg);color:var(--color-ft-doc-text)}.script-icon{background-color:var(--color-ft-script-bg);color:var(--color-ft-script-text)}.config-icon{background-color:var(--color-ft-config-bg);color:var(--color-ft-config-text)}.image-icon{background-color:var(--color-ft-image-bg);color:var(--color-ft-image-text)}.video-icon{background:linear-gradient(135deg, var(--color-ft-video-bg-from), var(--color-ft-video-bg-to));color:var(--color-ft-video-text)}.video-icon:has(img:not(.hidden)):before{content:"▶";color:var(--color-video-play);text-shadow:0 0 3px var(--color-video-play-shadow);z-index:2;font-weight:var(--weight-bold)}.code-icon{background-color:var(--color-border)}.json-icon{border-top-color:var(--color-ft-orange-light)}.js-icon{border-top-color:var(--color-ft-yellow)}.html-icon{border-top-color:var(--color-ft-html)}.css-icon{border-top-color:var(--color-ft-js)}.py-icon{border-top-color:var(--color-ft-python)}.ts-icon{border-top-color:var(--color-ft-typescript)}.rust-icon{border-top-color:var(--color-ft-rust)}.go-icon{border-top-color:var(--color-ft-go)}.java-icon{border-top-color:var(--color-ft-java)}.c-icon{border-top-color:var(--color-ft-shell)}.cs-icon{border-top-color:var(--color-ft-csharp)}.php-icon{border-top-color:var(--color-ft-php)}.ruby-icon{border-top-color:var(--color-ft-ruby)}.swift-icon{border-top-color:var(--color-ft-swift)}.kotlin-icon{border-top-color:var(--color-ft-kotlin)}.sql-icon{border-top-color:var(--color-ft-scala)}.yaml-icon{border-top-color:var(--color-ft-angular)}.toml-icon{border-top-color:var(--color-ft-cpp)}.md-icon{border-top-color:var(--color-ft-docker)}.spreadsheet-icon{background-color:var(--color-ft-spreadsheet-bg);color:var(--color-ft-spreadsheet-text)}.presentation-icon{background-color:var(--color-ft-presentation-bg);color:var(--color-ft-presentation-text)}.audio-icon{background-color:var(--color-ft-audio-bg);color:var(--color-ft-audio-text)}.archive-icon{background-color:var(--color-ft-archive-bg);color:var(--color-ft-archive-text)}.installer-icon{background-color:var(--color-ft-installer-bg);color:var(--color-ft-installer-text)}.files-container{padding-top:3px}.selection-rect{border:1.5px solid var(--primary-color,var(--color-card-drop-border));background-color:var(--color-card-drop-tint);pointer-events:none;z-index:1000;border-radius:3px;display:none;position:fixed}.file-icon{border-radius:var(--radius-lg);justify-content:center;align-items:center;width:100px;height:70px;display:flex;position:relative;overflow:hidden}.file-icon .file-thumb{object-fit:cover;z-index:1;pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0}.file-item{background-color:var(--color-item);transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard)}.file-item.resource-row--just-added{scroll-margin-top:100px;scroll-margin-bottom:24px;animation:1.5s ease-out resource-row-just-added}@keyframes resource-row-just-added{0%{background-color:var(--color-success-bg)}to{background-color:#0000}}.resource-list__swimlane-group--just-added>.resource-list__swimlane-header{color:var(--color-success-text)}.file-item.selected{background-color:var(--color-item-selected)}.file-item:hover{background-color:var(--color-item-hover);border-color:var(--color-border-medium)}.file-item.selected:hover{background-color:var(--color-item-hover-accent)}.file-item.dragging{opacity:.8;background-color:var(--color-bg-input)}.file-item.drop-target{background-color:var(--color-warning-ring)}.file-badge-shared{color:var(--color-badge-blue-text)}.file-item .file-icon>i,.file-item .file-icon>svg{justify-content:center;align-items:center;display:flex;position:absolute}.list-header-checkbox,.file-item .checkbox-cell{justify-content:center;align-items:center;display:flex}.list-header-checkbox input[type=checkbox],.file-item .checkbox-cell input[type=checkbox]{cursor:pointer;width:17px;height:17px;accent-color:var(--color-accent);border-radius:var(--radius-sm)}.list-header.selection-mode{background-color:var(--color-multiselect-bg);color:var(--color-multiselect-text);border-bottom-color:var(--color-multiselect-border);grid-template-columns:36px 1fr}.list-header.selection-mode .list-header-checkbox input[type=checkbox]{accent-color:var(--color-accent)}.list-header{grid-template-columns:var(--files-list-columns);column-gap:var(--space-3);font-weight:var(--weight-semibold);color:var(--color-text);background-color:var(--color-bg-subtle);border-bottom:1px solid var(--color-border-faint);align-items:center;padding:15px;display:grid}.files-list-view.trash-list{--files-list-columns:minmax(180px, 1fr) 110px 130px 100px}.files-list-view.trash-list .file-item .path-cell,.files-list-view.trash-list .list-header.trash-header>div:nth-child(2){display:none}@media (width>=1000px){.files-list-view.trash-list{--files-list-columns:minmax(180px, 1fr) 3fr 110px 130px 100px}.files-list-view.trash-list .file-item .path-cell,.files-list-view.trash-list .list-header.trash-header>div:nth-child(2){display:block}}.list-header>div,.files-list-view .file-item>div{min-width:0}.list-header>div:nth-child(5),.files-list-view .file-item .size-cell{text-align:right;justify-self:end}.list-header-sort{align-items:center;gap:var(--space-1-5);cursor:pointer;min-width:0;font:inherit;color:inherit;transition:color var(--motion-fast) var(--ease-standard);background:0 0;border:none;padding:0;display:inline-flex}.list-header-sort:hover,.list-header-sort.is-active{color:var(--color-accent)}.list-header-sort__arrow{font-size:var(--text-2xs);color:var(--color-accent);flex-shrink:0}.list-header-sort[data-sort-field=size]{justify-self:end}.list-header-sort[data-sort-field=modified_at]{justify-self:center}.owner-cell{color:var(--color-text-secondary);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;align-items:center;min-width:0;display:flex;overflow:hidden}.files-list-view:has(.owner-cell:not(.hidden)){--files-list-columns:36px minmax(200px, 2fr) 120px 100px 110px 130px 72px}.files-list-view{--files-list-columns:36px minmax(200px, 2fr) 100px 110px 130px 72px;border-radius:var(--radius-xl);background-color:var(--color-item);width:100%;box-shadow:0 1px 3px var(--color-shadow-xs);flex-direction:column;display:flex;overflow:hidden}.files-list-view .file-item{grid-template-columns:var(--files-list-columns);column-gap:var(--space-3);padding:var(--space-3) 15px;border-bottom:1px solid var(--color-border-xfaint);cursor:pointer;transition:background-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard);align-items:center;display:grid}.files-list-view .file-item:hover,.files-list-view .file-item.selected{box-shadow:inset 3px 0 0 var(--color-accent)}.files-list-view .file-item.drop-target{border:1px dashed var(--color-warning-border)}.files-list-view .file-item .name-cell{color:var(--color-text);align-items:center;gap:var(--space-3);min-width:0;display:flex;overflow:hidden}.files-list-view .file-item .name-cell span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.files-list-view .file-item .name-cell:has(.file-item__snippet){flex-wrap:wrap;row-gap:2px}.files-list-view .file-item .file-item__snippet{color:var(--color-text-muted);flex-basis:100%;padding-left:48px;font-size:12px}.files-grid-view .file-item .file-item__snippet{display:none}.files-list-view .file-item .file-icon{border-radius:var(--radius-lg);width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--color-border);font-size:var(--text-md);flex-shrink:0;justify-content:center;align-items:center;margin-bottom:0;display:flex}.list-header>div:nth-child(5),.files-list-view .file-item .date-cell{text-align:center;justify-self:center}.files-list-view .file-item .date-cell{color:var(--color-text-muted);font-size:var(--text-base)}.files-list-view .file-item .size-cell{color:var(--color-text-muted);font-size:var(--text-base);text-align:right;font-variant-numeric:tabular-nums}.files-list-view .file-item .type-cell{color:var(--color-text-secondary);font-weight:var(--weight-medium);font-size:var(--text-base)}.files-list-view .file-item .action-cell{text-align:right;align-items:center}.files-list-view .file-item .action-cell button:not(.btn-action),.files-list-view .file-item .action-cell div{border-radius:var(--radius-lg);cursor:pointer;width:28px;height:28px;color:var(--color-text-subtle);font-size:var(--text-md);background:0 0;border:none;justify-content:center;align-items:center;display:inline}.files-list-view .file-item .action-cell button:not(.btn-action):hover{background:var(--color-border-subtle);color:var(--color-text-dark)}.files-list-view .file-item .action-cell button.favorite-star{border:none;display:none}.files-list-view .file-item:hover .action-cell button.favorite-star{display:inline}@media (hover:hover){.files-list-view .file-item .action-cell button.file-actions{opacity:0;transition:opacity var(--motion-fast) var(--ease-standard)}.files-list-view .file-item:hover .action-cell button.file-actions,.files-list-view .file-item:focus-within .action-cell button.file-actions{opacity:1}}.files-grid-view{grid-template-columns:repeat(auto-fill, minmax(var(--grid-card-min), 1fr));gap:var(--space-5);display:grid;position:relative}.files-grid-view .list-header{display:none}@media (width<=640px){.list-header:not(.selection-mode){display:none}.files-list-view .file-item{align-items:center;gap:var(--space-3);display:flex}.files-list-view .file-item .type-cell,.files-list-view .file-item .date-cell,.files-list-view .file-item .owner-cell,.files-list-view .file-item .path-cell{display:none}.files-list-view .file-item .name-cell{flex:1;min-width:0}.files-list-view .file-item .checkbox-cell,.files-list-view .file-item .size-cell,.files-list-view .file-item .action-cell{flex-shrink:0}.files-grid-view{--grid-card-min:140px;gap:var(--space-2)}}.files-grid-view .file-item{border-radius:var(--radius-2xl);border:1px solid var(--color-border);padding:var(--space-3);box-shadow:0 1px 2px var(--color-shadow-xs);cursor:pointer;width:100%;min-height:160px;transition:transform var(--motion-base) var(--ease-standard), box-shadow var(--motion-base) var(--ease-standard), border-color var(--motion-base) var(--ease-standard);flex-direction:column;align-items:center;display:flex;position:relative}.files-grid-view .file-item.dragging{opacity:.5;box-shadow:none;transform:scale(.95)}.files-grid-view .file-item:hover{box-shadow:0 12px 28px -8px var(--color-shadow-md);border-color:var(--color-accent);transform:translateY(-3px)}.files-grid-view .file-item .file-icon .file-thumb{transition:transform var(--motion-moderate) var(--ease-standard)}.files-grid-view .file-item:hover .file-icon .file-thumb{transform:scale(1.04)}.files-grid-view .file-item.selected{border-color:var(--color-accent);box-shadow:0 0 0 1px var(--color-accent-ring-dark), 0 4px 12px var(--color-accent-ring)}.files-grid-view .file-item.selected:hover{box-shadow:0 0 0 1px var(--color-accent-ring-strong), 0 6px 18px var(--color-accent-ring-dark)}.files-grid-view .file-item .date-cell,.files-grid-view .file-item .type-cell,.files-grid-view .file-item .owner-cell{display:none}.files-grid-view .file-item .checkbox-cell{top:calc(var(--space-3) + 8px);left:calc(var(--space-3) + 8px);border-radius:var(--radius-md);background:var(--color-scrim-control);-webkit-backdrop-filter:blur(6px);width:26px;height:26px;box-shadow:0 1px 3px var(--color-shadow-sm);opacity:0;z-index:10;cursor:pointer;transition:opacity var(--motion-fast) var(--ease-standard);justify-content:center;align-items:center;display:flex;position:absolute}.files-grid-view .file-item:hover .checkbox-cell,.files-grid-view .file-item.selected .checkbox-cell{opacity:1}.files-grid-view .file-item .checkbox-cell input[type=checkbox]{-webkit-appearance:none;appearance:none;border:2px solid var(--color-border-medium);border-radius:var(--radius-sm);background:var(--color-bg-surface);cursor:pointer;width:18px;height:18px;transition:background-color var(--motion-fast) var(--ease-standard), border-color var(--motion-fast) var(--ease-standard);place-content:center;margin:0;display:grid}.files-grid-view .file-item .checkbox-cell input[type=checkbox]:after{content:"";border:solid var(--color-danger-text);transform-origin:50%;width:5px;height:9px;transition:transform var(--motion-fast) var(--ease-standard);border-width:0 2px 2px 0;margin-top:-1px;transform:rotate(45deg)scale(0)}.files-grid-view .file-item .checkbox-cell input[type=checkbox]:checked{background:var(--color-accent);border-color:var(--color-accent)}.files-grid-view .file-item .checkbox-cell input[type=checkbox]:checked:after{transform:rotate(45deg)scale(1)}.files-grid-view .file-item .checkbox-cell input[type=checkbox]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.files-grid-view .file-item .file-actions{top:calc(var(--space-3) + 8px);right:calc(var(--space-3) + 8px);border-radius:var(--radius-full);background:var(--color-scrim-control);-webkit-backdrop-filter:blur(6px);width:30px;height:30px;box-shadow:0 1px 3px var(--color-shadow-sm);opacity:0;z-index:10;cursor:pointer;color:var(--color-text);font-size:var(--text-md);transition:opacity var(--motion-fast) var(--ease-standard);border:none;justify-content:center;align-items:center;display:flex;position:absolute}.files-grid-view .file-item:hover .file-actions{opacity:1}.files-grid-view .file-item .file-actions:hover{color:var(--color-accent)}.files-grid-view .file-item.drop-target{background-color:var(--color-warning-ring);border:2px dashed var(--color-warning-border)}.files-grid-view .file-item .file-badge-shared{top:calc(var(--space-3) + 8px);left:calc(var(--space-3) + 8px);border-radius:var(--radius-full);background:var(--color-scrim-control);-webkit-backdrop-filter:blur(6px);width:24px;height:24px;box-shadow:0 1px 3px var(--color-shadow-sm);z-index:9;font-size:var(--text-2xs);line-height:var(--leading-none);border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute}.files-grid-view .file-item button.favorite-star{top:calc(var(--space-3) + 8px);right:calc(var(--space-3) + 8px + 34px);border-radius:var(--radius-full);background:var(--color-scrim-control);-webkit-backdrop-filter:blur(6px);width:30px;height:30px;box-shadow:0 1px 3px var(--color-shadow-sm);opacity:0;z-index:12;cursor:pointer;color:var(--color-text-subtle);font-size:15px;line-height:var(--leading-none);transition:opacity var(--motion-fast) var(--ease-standard);border:none;justify-content:center;align-items:center;padding:0;display:flex;position:absolute}.files-grid-view .file-item:hover button.favorite-star{opacity:1}.files-grid-view .file-item button.favorite-star:hover{color:var(--color-star-text)}.files-grid-view .file-item button.favorite-star.active{opacity:1;color:var(--color-star-text-hover)}.files-grid-view .file-item button.favorite-star.active:hover{color:var(--color-star-active)}.files-grid-view .file-item .name-cell{font-size:var(--text-sm);font-weight:var(--weight-medium);text-align:center;color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;width:100%;max-width:100%;margin-bottom:2px;margin-top:var(--space-1);overflow:hidden}.files-grid-view .file-item .name-cell span{white-space:nowrap;text-overflow:ellipsis;max-width:100%;padding-top:var(--space-2);padding-bottom:var(--space-2);display:block;overflow:hidden}.files-grid-view .file-item .name-cell svg.favorite-star-inline,.files-grid-view .file-item .size-cell,.grid-meta{display:none}.files-grid-view .file-item .grid-meta{justify-content:center;align-items:center;gap:var(--space-1);max-width:100%;font-size:var(--text-2xs);color:var(--color-text-muted);line-height:var(--leading-snug);margin-top:2px;display:flex}.files-grid-view .file-item .grid-meta__date{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.files-grid-view .file-item .grid-meta__size{color:var(--color-text-faint);flex:none}.files-grid-view .file-item .grid-meta__size:before{content:"·";margin-right:var(--space-1);color:var(--color-text-faint)}.files-grid-view .file-item .grid-meta .user-vignette{margin-left:var(--space-1);flex:none}.files-grid-view .file-item .file-icon{aspect-ratio:4/3;border-radius:var(--radius-lg);background:var(--color-bg-input);width:100%;height:auto;box-shadow:inset 0 0 0 1px var(--color-border);margin:0 0 var(--space-3);font-size:30px}.files-grid-view .file-item .file-icon>i,.files-grid-view .file-item .file-icon>svg{width:56px;height:56px;margin:auto;inset:0}.dragged-items{--dragged-files-list-columns:36px minmax(200px, 1fr);border-radius:var(--radius-xl);background-color:#0000;flex-direction:column;width:100%;overflow:hidden}.dragged-items .file-item{grid-template-columns:var(--dragged-files-list-columns);column-gap:var(--space-3);background-color:var(--color-item);padding:var(--space-1);width:360px;height:46px;color:var(--color-text);align-items:center;display:flex}.dragged-items .file-item div:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.dragged-items .file-item .file-icon{width:36px;height:36px}.dragged-items div.fading{-webkit-mask-image:linear-gradient(to bottom, var(--color-item) 10%, transparent);mask-image:linear-gradient(to bottom, var(--color-item) 10%, transparent)}.dragged-items-badge{background:var(--color-notification-badge);color:var(--color-danger-text);min-width:20px;height:20px;font-size:var(--text-xs);font-weight:var(--weight-bold);padding:var(--space-0-5);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:0;right:0;transform:translate(50%,-50%)}.resource-list__swimlane-header{padding:var(--space-1-5) var(--space-3) var(--space-1);font-size:.72rem;font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-faint);border-bottom:1px solid var(--color-border);margin-top:var(--space-2);cursor:default;user-select:none;grid-column:1/-1}.resource-list__swimlane-header:first-child,.list-header+.resource-list__swimlane-header{margin-top:0}.resource-list__swimlane-header--node{padding:var(--space-1) var(--space-3);text-transform:none;letter-spacing:normal;font-size:inherit;font-weight:var(--weight-normal);color:inherit;align-items:center;display:flex}.files-list-view:has(.resource-list__swimlane-group){box-shadow:none;gap:var(--space-2-5);background-color:#0000;border-radius:0;overflow:visible}.files-list-view .resource-list__swimlane-group{background-color:var(--color-item);border-radius:var(--radius-xl);box-shadow:0 1px 3px var(--color-shadow-xs);overflow:hidden}.files-list-view .resource-list__swimlane-group .resource-list__swimlane-header{margin-top:0}.files-grid-view .resource-list__swimlane-group{grid-column:1/-1;grid-template-columns:subgrid;gap:var(--space-5);display:grid}.file-item.favorite-item{border-left:3px solid var(--color-warning-border);[dir=rtl] &{border-right:3px solid var(--color-warning-border);border-left:unset}}.file-item.favorite-item{grid-template-columns:30px minmax(200px,2fr) 1fr 1fr 120px;position:relative}.file-item.favorite-item .favorite-indicator{width:30px;height:30px;position:relative;top:0;right:0}.files-grid-view .file-item.recent-item{border-left:3px solid var(--color-recent-border);[dir=rtl] &{border-right:3px solid var(--color-recent-border);border-left:unset}}.file-item.recent-item{grid-template-columns:30px minmax(200px,2fr) 1fr 1fr 120px;position:relative}.file-item.recent-item .recent-indicator{width:30px;height:30px;position:relative;top:0;right:0}.files-list-view .file-item .path-cell{color:var(--color-text-secondary);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.files-grid-view .file-item .path-cell{display:none}.btn-action{border-radius:var(--radius-lg);cursor:pointer;width:28px;height:28px;color:var(--color-text-subtle);font-size:var(--text-md);background:0 0;border:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-action:hover{background:var(--color-border-subtle);color:var(--color-text-dark)}.files-grid-view .file-item .btn-action{margin-top:var(--space-1)}.expiry-chip{align-items:center;gap:var(--space-1);padding:var(--space-0-5) 7px;border-radius:var(--radius-xl);font-size:var(--text-2xs);white-space:nowrap;flex-shrink:0;display:inline-flex}.expiry-chip__icon{opacity:.7;font-size:10px}.expiry-chip--never{background-color:var(--color-bg-muted);color:var(--color-text-faint)}.expiry-chip--normal{background-color:var(--color-bg-muted);color:var(--color-text-muted)}.expiry-chip--caution{background-color:var(--color-warning-bg-light);color:var(--color-warning-text-amber)}.expiry-chip--soon{background-color:var(--color-warning-orange-bg);color:var(--color-warning-orange-text)}.expiry-chip--urgent{background-color:var(--color-danger-light-bg);color:var(--color-danger-text-alt)}.expiry-chip--expired{background-color:var(--color-error-bg);color:var(--color-error-text-dark)}.role-chip{align-items:center;gap:var(--space-1);padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-xl);font-size:var(--text-2xs);font-weight:var(--weight-semibold);white-space:nowrap;flex-shrink:0;display:inline-flex}.role-chip__icon{opacity:.85;font-size:10px}.role-chip--manage{background:var(--color-badge-orange-bg);color:var(--color-badge-orange-text)}.role-chip--edit{background:var(--color-badge-blue-bg);color:var(--color-badge-blue-text)}.role-chip--view{background:var(--color-bg-muted);color:var(--color-text-muted)}.context-menu{background:var(--color-bg-surface);border:1px solid var(--color-border);box-shadow:0 10px 36px var(--color-shadow-lg), 0 0 0 1px var(--color-shadow-xs);padding:var(--space-1-5);z-index:2000;border-radius:14px;min-width:200px;animation:.15s ease-out contextMenuIn;display:block;position:absolute}@keyframes contextMenuIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.context-menu-item{padding:var(--space-2-5) var(--space-3-5);cursor:pointer;align-items:center;gap:var(--space-3);color:var(--color-text-dark);font-size:var(--text-base);border-radius:var(--radius-lg);transition:background .12s;display:flex}.context-menu-item:hover{background:var(--color-border-light)}.context-menu-item:active{background:var(--color-border)}.context-menu-item i{text-align:center;width:18px;font-size:var(--text-base);color:var(--color-text-subtle);[dir=rtl] &{margin-left:0;margin-right:0}}.context-menu-item-danger{color:var(--color-danger-alt)}.context-menu-item-danger:hover{background:var(--color-danger-light-bg)}.context-menu-item-danger i{color:var(--color-danger-alt)}.context-menu-separator{background:var(--color-border-light);height:1px;margin:var(--space-1) var(--space-2)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.95)translateY(-10px)}to{opacity:1;transform:scale(1)translateY(0)}}.rename-dialog{background-color:var(--color-overlay-light);z-index:3000;backdrop-filter:blur(2px);justify-content:center;align-items:center;width:100%;height:100%;animation:.2s modalFadeIn;display:flex;position:fixed;top:0;left:0}.rename-dialog-content{background-color:var(--color-bg-surface);border-radius:var(--radius-3xl);width:420px;max-width:90%;box-shadow:0 20px 60px var(--color-shadow-2xl);animation:.25s modalSlideIn;overflow:hidden}.rename-dialog-header{font-size:17px;font-weight:var(--weight-semibold);color:var(--color-text-heading);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);align-items:center;gap:var(--space-3);display:flex}.rename-dialog-body{padding:var(--space-6)}.rename-dialog input{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-hover);color:var(--color-text-heading);outline:none;font-size:15px;transition:all .15s}.rename-dialog input:focus{border-color:var(--color-accent);background:var(--color-bg-surface);box-shadow:0 0 0 3px var(--color-accent-ring)}.rename-dialog input--error{border-color:var(--color-error-text)}.rename-dialog-buttons{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--color-bg-hover);border-top:1px solid var(--color-border);display:flex}.rename-dialog-buttons .btn-outline{color:var(--color-text-secondary);border:1px solid var(--color-border-medium);background:0 0}.rename-dialog-buttons .btn-outline:hover{background:var(--color-bg-alt);border-color:var(--color-text-placeholder)}.share-dialog{background-color:var(--color-overlay-light);z-index:3000;backdrop-filter:blur(2px);justify-content:center;align-items:center;width:100%;height:100%;animation:.2s modalFadeIn;display:flex;position:fixed;top:0;left:0}.share-dialog-content{background-color:var(--color-bg-surface);border-radius:var(--radius-3xl);width:480px;max-width:90%;box-shadow:0 20px 60px var(--color-shadow-2xl);max-height:85vh;animation:.25s modalSlideIn;overflow:hidden auto}.share-dialog-header{font-size:17px;font-weight:var(--weight-semibold);color:var(--color-text-heading);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);align-items:center;gap:var(--space-3);display:flex}.share-dialog input,.share-dialog textarea{width:100%;padding:var(--space-2-5) var(--space-3-5);border:2px solid var(--color-border);border-radius:var(--radius-xl);font-size:var(--text-base);background:var(--color-bg-input);color:var(--color-text-heading);outline:none;transition:all .15s}.share-dialog input:focus,.share-dialog textarea:focus{border-color:var(--color-accent);background:var(--color-bg-surface);box-shadow:0 0 0 3px var(--color-accent-ring)}.share-dialog-buttons{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--color-bg-hover);border-top:1px solid var(--color-border);display:flex}.shared-item-info{padding:var(--space-3) var(--space-6);background:var(--color-bg-hover);border-bottom:1px solid var(--color-border);font-size:var(--text-base)}.share-options{padding:var(--space-5) var(--space-6) var(--space-5)}.share-options>#share-confirm-btn{margin-left:auto;margin-top:var(--space-4);display:block}.share-options h3,#existing-shares-section h3,#new-share-section h3{font-size:var(--text-sm);font-weight:var(--weight-semibold);margin-bottom:var(--space-2-5);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px}#existing-shares-section,#new-share-section{padding:0 var(--space-6)}.share-dialog .form-group{padding:0}.shared-dialog{background-color:var(--color-overlay-light);z-index:3000;backdrop-filter:blur(2px);justify-content:center;align-items:center;width:100%;height:100%;animation:.2s modalFadeIn;display:flex;position:fixed;top:0;left:0}.shared-dialog-content{background-color:var(--color-bg-surface);border-radius:var(--radius-3xl);width:480px;max-width:90%;box-shadow:0 20px 60px var(--color-shadow-2xl);max-height:85vh;padding:0;animation:.25s modalSlideIn;overflow:hidden auto}.shared-dialog-header{font-size:17px;font-weight:var(--weight-semibold);color:var(--color-text-heading);padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);align-items:center;gap:var(--space-3);display:flex}.shared-dialog-header .close-dialog-btn{cursor:pointer;color:var(--color-text-muted);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:0 0;border:none;margin-left:auto;font-size:22px;transition:all .15s}.shared-dialog-header .close-dialog-btn:hover{background:var(--color-bg-empty);color:var(--color-text-heading)}.shared-dialog .share-link-section,.shared-dialog .share-permissions-section,.shared-dialog .share-password-section,.shared-dialog .share-expiration-section,.shared-dialog .notification-form{padding:var(--space-4) var(--space-6)}.shared-dialog .share-link-section label,.shared-dialog .share-permissions-section h4,.shared-dialog .notification-form label{font-weight:var(--weight-semibold);margin-bottom:var(--space-2);color:var(--color-text);font-size:var(--text-base);display:block}.shared-dialog .share-link-input{gap:var(--space-2);display:flex}.shared-dialog .share-link-input input{padding:var(--space-2) var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-sm);background:var(--color-bg-hover);color:var(--color-text-heading);flex:1}.shared-dialog .share-permissions-section label,.shared-dialog .share-password-section label,.shared-dialog .share-expiration-section label{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);font-size:var(--text-base);color:var(--color-text-secondary);display:flex}.shared-dialog .password-input-group{gap:var(--space-2);margin-top:var(--space-2);display:flex}.shared-dialog .password-input-group input{padding:var(--space-2) var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-sm);background:var(--color-bg-hover);flex:1}.shared-dialog .share-expiration-section input[type=date]{padding:var(--space-2) var(--space-3);border:2px solid var(--color-border);border-radius:var(--radius-lg);font-size:var(--text-sm);background:var(--color-bg-hover);margin-top:var(--space-2)}.shared-dialog .share-actions,.shared-dialog .notification-actions{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--color-bg-hover);border-top:1px solid var(--color-border);display:flex}.shared-dialog .notification-form input,.shared-dialog .notification-form textarea{width:100%;padding:var(--space-2-5) var(--space-3-5);border:2px solid var(--color-border);border-radius:var(--radius-xl);font-size:var(--text-base);background:var(--color-bg-hover);color:var(--color-text-heading);box-sizing:border-box;outline:none;transition:all .15s}.shared-dialog .notification-form input:focus,.shared-dialog .notification-form textarea:focus{border-color:var(--color-accent);background:var(--color-bg-surface);box-shadow:0 0 0 3px var(--color-accent-ring)}.shared-dialog .notification-form .form-group{margin-bottom:15px;padding:0}.move-dialog-breadcrumb{align-items:center;gap:var(--space-1);padding:var(--space-2) var(--space-3);background:var(--color-bg-hover);border-radius:var(--radius-lg);margin-bottom:var(--space-3);font-size:var(--text-sm);flex-wrap:wrap;display:none;overflow-x:auto}.move-breadcrumb-item{color:var(--color-text-secondary);cursor:pointer;padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm);white-space:nowrap;transition:all .15s}.move-breadcrumb-item:hover{background:var(--color-bg-hover);color:var(--color-text-heading)}.move-breadcrumb-item.current{color:var(--color-accent);font-weight:var(--weight-semibold);cursor:default}.move-breadcrumb-separator{color:var(--color-text-placeholder);margin:0 var(--space-0-5)}.folder-select-item{align-items:center;gap:var(--space-2-5);padding:var(--space-2-5) var(--space-3-5);border-radius:var(--radius-lg);cursor:pointer;color:var(--color-text-secondary);font-size:var(--text-base);transition:all .15s;display:flex}.folder-select-item:hover{background-color:var(--color-bg-hover)}.folder-select-item.selected{background-color:var(--color-accent-ring);color:var(--color-accent);font-weight:var(--weight-semibold)}.folder-select-item i{color:var(--color-cal-1);font-size:var(--text-md)}.folder-select-item.selected i{color:var(--color-accent)}.folder-select-item.folder-select-current{background-color:var(--color-success-ring);color:var(--color-success-text-strong);font-weight:var(--weight-medium)}.folder-select-item.folder-select-current:hover{background-color:var(--color-success-ring-dark)}.folder-select-item.folder-select-current i{color:var(--color-success-border)}.folder-select-item.folder-navigate-up{color:var(--color-text-muted);font-style:italic}.folder-select-item.folder-navigate-up:hover{color:var(--color-text-secondary)}.folder-select-item.folder-navigate-up i{color:var(--color-text-placeholder)}.folder-select-item.folder-navigate{justify-content:space-between}.folder-select-item.folder-navigate .folder-name{flex:1}.folder-select-item.folder-navigate .folder-navigate-icon{color:var(--color-text-placeholder);font-size:var(--text-xs);opacity:0;transition:opacity .15s}.folder-select-item.folder-navigate:hover .folder-navigate-icon{opacity:1}.folder-select-empty{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-6);color:var(--color-text-placeholder);font-size:var(--text-base);display:flex}.folder-select-empty i{font-size:var(--text-xl)}.playlist-track-count{font-size:var(--text-xs);color:var(--color-text-muted);margin-left:auto}.confirm-dialog{background-color:var(--color-overlay-light);z-index:4000;backdrop-filter:blur(2px);justify-content:center;align-items:center;width:100%;height:100%;animation:.2s modalFadeIn;display:flex;position:fixed;top:0;left:0}.confirm-dialog.active{opacity:1;display:flex}.confirm-dialog-content{background:var(--color-bg-surface);border-radius:var(--radius-3xl);width:400px;max-width:90%;box-shadow:0 20px 60px var(--color-shadow-2xl);text-align:center;animation:.25s modalSlideIn;overflow:hidden}.confirm-dialog-icon{padding:var(--space-7) var(--space-6) var(--space-3)}.confirm-dialog-icon i{font-size:var(--text-5xl);color:var(--color-danger-bg)}.confirm-dialog-title{font-size:17px;font-weight:var(--weight-semibold);color:var(--color-text-heading);padding:0 var(--space-6) var(--space-2)}.confirm-dialog-message{font-size:var(--text-base);color:var(--color-text-muted);padding:0 var(--space-6) var(--space-5);line-height:var(--leading-normal)}.confirm-dialog-buttons{gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--color-bg-hover);border-top:1px solid var(--color-border);justify-content:flex-end;display:flex}.confirm-dialog-buttons .btn-danger{background:linear-gradient(135deg, var(--color-danger-bg) 0%, var(--color-danger-bg-hover) 100%);color:var(--color-danger-text);padding:var(--space-2-5) var(--space-5);border-radius:var(--radius-xl);font-weight:var(--weight-medium);cursor:pointer;box-shadow:0 2px 8px var(--color-danger-ring);border:none;transition:all .15s}.confirm-dialog-buttons .btn-danger:hover{box-shadow:0 4px 12px var(--color-danger-ring-lg);transform:translateY(-1px)}.dialog{background-color:var(--color-overlay);z-index:1000;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.dialog-content{background-color:var(--color-bg-surface);border-radius:var(--radius-xl);box-shadow:0 10px 25px var(--color-shadow);width:500px;max-width:90%;max-height:90vh;overflow-y:auto}.dialog-header{padding:15px var(--space-5);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.dialog-header h3{font-size:var(--text-lg);color:var(--color-text);margin:0}.close-dialog-btn{font-size:var(--text-2xl);cursor:pointer;color:var(--color-text-placeholder);background:0 0;border:none}.dialog-body{padding:var(--space-5)}.share-item-info{align-items:center;gap:var(--space-2-5);margin-bottom:var(--space-5);display:flex}.share-link-container{gap:var(--space-2-5);display:flex}.share-link-container input{padding:var(--space-2-5);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-base);flex-grow:1}.about-modal-overlay{background:var(--color-overlay);backdrop-filter:blur(4px);z-index:3000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.about-modal{background:var(--color-bg-surface);border-radius:var(--radius-4xl);padding:var(--space-10);text-align:center;width:90%;max-width:400px;box-shadow:0 20px 60px var(--color-shadow-xl);animation:.25s ease-out userMenuIn}.about-modal-logo{background:var(--color-logo-gradient);border-radius:var(--radius-4xl);width:72px;height:72px;margin:0 auto var(--space-5);box-shadow:0 8px 24px var(--color-accent-shadow);justify-content:center;align-items:center;display:flex}.about-modal-logo svg{width:36px;height:36px;fill:var(--color-on-accent)}.about-modal h2{font-size:22px;font-weight:var(--weight-bold);color:var(--color-text-heading);margin-bottom:var(--space-1-5)}.about-modal .about-version{font-size:var(--text-sm);color:var(--color-text-faint);margin-bottom:var(--space-5)}.about-modal .about-description{font-size:var(--text-base);color:var(--color-text-subtle);margin-bottom:var(--space-6);line-height:1.6}.about-modal .about-tech{justify-content:center;gap:var(--space-3);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.about-modal .about-tech-badge{padding:var(--space-1) var(--space-3);background:var(--color-bg-hover);border:1px solid var(--color-border);border-radius:var(--radius-4xl);font-size:var(--text-xs);color:var(--color-text-subtle);font-weight:var(--weight-medium)}.about-modal .about-links{justify-content:center;gap:var(--space-4);margin-bottom:var(--space-6);display:flex}.about-modal .about-link{align-items:center;gap:var(--space-1-5);font-size:var(--text-sm);color:var(--color-accent-text);font-weight:var(--weight-medium);text-decoration:none;transition:opacity .2s;display:flex}.about-modal .about-link:hover{opacity:.8}.about-modal .about-close-btn{padding:var(--space-2-5) var(--space-8);background:var(--color-accent-gradient);color:var(--color-danger-text);border-radius:var(--radius-xl);font-size:var(--text-base);font-weight:var(--weight-semibold);cursor:pointer;box-shadow:0 4px 15px var(--color-accent-shadow);border:none;transition:transform .2s,box-shadow .2s}.about-modal .about-close-btn:hover{box-shadow:0 6px 20px var(--color-accent-shadow-lg);transform:translateY(-1px)}.modal-overlay{background-color:var(--color-overlay);z-index:3000;opacity:0;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .2s;display:flex;position:fixed;top:0;left:0}.modal-overlay.active{opacity:1;display:flex}.modal-container{background-color:var(--color-bg-surface);border-radius:var(--radius-3xl);width:420px;max-width:90%;box-shadow:0 20px 60px var(--color-shadow-3xl);transition:transform .2s;overflow:hidden;transform:scale(.9)translateY(-20px)}.modal-overlay.active .modal-container{transform:scale(1)translateY(0)}.modal-header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--color-border);align-items:center;display:flex;position:relative}.modal-icon{background:var(--color-accent-gradient);border-radius:var(--radius-2xl);width:44px;height:44px;margin-right:var(--space-3-5);flex-shrink:0;justify-content:center;align-items:center;display:flex;[dir=rtl] &{margin-left:var(--space-3-5);margin-right:unset}}.modal-icon i{color:var(--color-danger-text);font-size:var(--text-xl)}.modal-header h2,.modal-header h3{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-heading);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;overflow:hidden}.modal-close-btn{background:var(--color-bg-muted);border-radius:var(--radius-lg);cursor:pointer;width:32px;height:32px;color:var(--color-text-subtle);border:none;justify-content:center;align-items:center;transition:all .15s;display:flex;position:absolute;top:16px;right:16px;[dir=rtl] &{left:16px;right:unset}}.modal-close-btn:hover{background:var(--color-border);color:var(--color-text-heading)}.modal-body{padding:var(--space-6)}.modal-body label{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-2);display:block}.modal-input{width:100%;padding:var(--space-3) var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-bg-hover);color:var(--color-text-heading);outline:none;font-size:15px;transition:all .15s}.modal-input:focus{border-color:var(--color-accent);background:var(--color-bg-surface);box-shadow:0 0 0 3px var(--color-accent-ring)}.modal-input::placeholder{color:var(--color-text-placeholder)}.modal-input--error{border-color:var(--color-error-text)}.modal-error{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-error-text)}.modal-footer{justify-content:flex-end;gap:var(--space-3);padding:var(--space-4) var(--space-6);background:var(--color-bg-hover);border-top:1px solid var(--color-border);display:flex}.modal-footer .btn{padding:var(--space-2-5) var(--space-5);font-size:var(--text-base);font-weight:var(--weight-medium);border-radius:var(--radius-xl);cursor:pointer;transition:all .15s}.modal-footer .btn-secondary{background:var(--color-bg-surface);border:1px solid var(--color-border);color:var(--color-text-secondary)}.modal-footer .btn-secondary:hover{background:var(--color-bg-muted);border-color:var(--color-border-medium)}.modal-footer .btn-primary{background:var(--color-accent-gradient);color:var(--color-danger-text);box-shadow:0 2px 8px var(--color-accent-shadow);border:none}.modal-footer .btn-primary:hover{box-shadow:0 4px 12px var(--color-accent-shadow-lg);transform:translateY(-1px)}.modal-footer .btn-primary:active{transform:translateY(0)}.modal-container--panel{flex-direction:column;width:620px;max-width:96vw;max-height:88vh;display:flex}.modal-container--panel .modal-body{flex:1;padding:0;overflow-y:auto}.permission-options{gap:15px;margin-top:5px;display:flex}.permission-option{align-items:center;gap:5px;display:flex}.existing-share-item{background-color:var(--color-bg-subtle);border-radius:var(--radius-sm);padding:var(--space-2-5);margin-bottom:var(--space-2-5)}.share-url{font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;color:var(--color-share-link-text);margin-bottom:5px;overflow:hidden}.share-info{font-size:var(--text-2xs);margin-bottom:var(--space-2-5);color:var(--color-share-owner-text);gap:15px;display:flex}.share-protected{color:var(--color-share-link-text)}.share-expiration{color:var(--color-share-remove-text)}.share-actions{justify-content:flex-end;gap:5px;display:flex}.share-link-actions{gap:var(--space-2-5);margin-top:5px;display:flex}.btn-small{font-size:var(--text-xs);padding:5px var(--space-2-5)}#notification-message{width:100%;padding:var(--space-2-5);border:1px solid var(--color-border-ddd);border-radius:var(--radius-sm);resize:vertical}.smd-body{flex-direction:column;display:flex}.smd-section{border-top:.5px solid var(--color-border);padding:var(--space-4) var(--space-5)}.smd-section:first-child{border-top:none}.smd-section-title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-3)}.smd-skeleton{gap:var(--space-3);padding:var(--space-5);flex-direction:column;display:flex}.smd-skeleton-line{background:var(--color-bg-muted);border-radius:var(--radius-md);height:14px;animation:1.4s ease-in-out infinite smdSkeletonPulse}.smd-skeleton-line--short{width:40%}.smd-skeleton-line--medium{width:65%}@keyframes smdSkeletonPulse{0%,to{opacity:1}50%{opacity:.4}}.smd-search-row{gap:var(--space-2);margin-bottom:var(--space-3);flex-wrap:wrap;align-items:flex-start;display:flex}.smd-search-wrap{flex:1;min-width:180px;position:relative}.smd-search-input{width:100%;padding:9px var(--space-3);font-size:var(--text-base);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-hover);color:var(--color-text-heading);box-sizing:border-box;outline:none;transition:border-color .15s}.smd-search-input:focus{border-color:var(--color-accent);background:var(--color-bg-surface);box-shadow:0 0 0 3px var(--color-accent-ring)}.smd-suggestions{background:var(--color-bg-surface);border:.5px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 8px 24px var(--color-shadow-xl);z-index:100;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden}.smd-suggestion-item{align-items:center;gap:var(--space-2-5);padding:9px var(--space-3);cursor:pointer;transition:background .1s;display:flex}.smd-suggestion-item:hover,.smd-suggestion-item:focus{background:var(--color-bg-hover)}.smd-suggestion-item .user-vignette{flex:1;min-width:0}.smd-suggestion-item--email{border-top:1px solid var(--color-border)}.smd-suggestion-hint{color:var(--color-text-faint);font-size:var(--text-xs);flex-shrink:0;margin-left:auto;font-style:italic}.smd-role-select{padding:9px var(--space-2-5);font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-hover);color:var(--color-text-heading);cursor:pointer;max-width:120px}.smd-add-btn{min-width:44px;min-height:36px;padding:var(--space-2) var(--space-3-5);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-lg)}.smd-chips{gap:var(--space-1-5);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.smd-chip{align-items:center;gap:var(--space-1-5);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-1);border:.5px solid var(--color-border-medium);border-radius:var(--radius-4xl);background:var(--color-bg-hover);font-size:var(--text-base);color:var(--color-text-heading);display:inline-flex}.smd-chip-remove{cursor:pointer;width:16px;height:16px;color:var(--color-text-faint);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:background .1s,color .1s;display:flex}.smd-chip-remove:hover{background:var(--color-bg-muted);color:var(--color-text-heading)}.smd-group{margin-top:var(--space-3)}.smd-group:first-child{margin-top:0}.smd-group-header{align-items:center;gap:var(--space-1-5);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1-5);display:flex}.smd-group-badge{min-width:18px;height:18px;font-size:var(--text-2xs);font-weight:var(--weight-bold);background:var(--color-bg-muted);color:var(--color-text-subtle);border-radius:9px;justify-content:center;align-items:center;padding:0 5px;display:inline-flex}.smd-member-row{align-items:center;gap:var(--space-2-5);padding:7px 0;display:flex}.smd-member-row .user-vignette{flex:1;min-width:0}.smd-member-role-select{font-size:var(--text-sm);padding:var(--space-1) var(--space-2);border:.5px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-hover);color:var(--color-text-heading);cursor:pointer;max-width:33%}.smd-row-action{cursor:pointer;min-width:32px;min-height:32px;color:var(--color-text-faint);border-radius:var(--radius-md);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background .1s,color .1s;display:flex}.smd-row-action:hover{background:var(--color-bg-hover);color:var(--color-error-text)}.smd-directory-unavailable{font-size:var(--text-sm);color:var(--color-text-faint);padding:var(--space-1) 0 var(--space-2);font-style:italic}.smd-link-row{align-items:center;gap:var(--space-2-5);padding:var(--space-2) 0;display:flex}.smd-link-icon{background:var(--color-bg-muted);border:.5px solid var(--color-border);width:32px;height:32px;color:var(--color-text-subtle);font-size:var(--text-base);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.smd-link-info{flex:1;overflow:hidden}.smd-link-name{min-width:0;font-size:var(--text-base);color:var(--color-text-heading);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.smd-link-tags{gap:var(--space-1-5);flex-wrap:wrap;margin-top:3px;display:flex}.smd-link-tag{font-size:var(--text-2xs);padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm);background:var(--color-bg-muted);color:var(--color-text-subtle);border:.5px solid var(--color-border);white-space:nowrap}.smd-link-actions{gap:var(--space-0-5);flex-shrink:0;display:flex}.smd-edit-panel{margin:var(--space-1) 0 var(--space-2) 42px;padding:var(--space-3);background:var(--color-bg-hover);border:.5px solid var(--color-border);border-radius:var(--radius-lg);gap:var(--space-2-5);flex-direction:column;display:flex}.smd-edit-panel label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);margin-bottom:var(--space-1);display:block}.smd-edit-input{width:100%;padding:var(--space-2) var(--space-2-5);font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-heading);box-sizing:border-box;outline:none;transition:border-color .15s}.smd-edit-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring)}.smd-edit-panel-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.smd-new-link-btn{justify-content:center;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2-5);margin-top:var(--space-2);font-size:var(--text-sm);color:var(--color-text-subtle);border:1.5px dashed var(--color-border-medium);border-radius:var(--radius-lg);cursor:pointer;background:0 0;transition:background .15s,border-color .15s,color .15s;display:flex}.smd-new-link-btn:hover{background:var(--color-bg-hover);border-color:var(--color-accent);color:var(--color-accent)}.smd-pw-toggle{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--color-text-secondary);cursor:pointer;user-select:none;display:flex}.smd-spinner{vertical-align:middle;width:14px;height:14px;margin-left:var(--space-1-5);border:2px solid #0000;border-top-color:currentColor;border-radius:50%;animation:.6s linear infinite smdSpin;display:inline-block}@keyframes smdSpin{to{transform:rotate(360deg)}}.smd-expiry-chip-wrap{flex-shrink:0;align-items:stretch;width:130px;display:inline-flex}.smd-expiry-chip{box-sizing:border-box;width:100%;padding:var(--space-1) var(--space-2);font-size:var(--text-base);border:1px dashed var(--color-border-medium);border-radius:var(--radius-md);color:var(--color-text-faint);cursor:pointer;white-space:nowrap;background:0 0;align-items:center;gap:5px;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.smd-expiry-chip:hover{border-color:var(--color-accent);color:var(--color-accent);background:var(--color-bg-hover)}.smd-expiry-chip--set{border-style:solid;border-color:var(--color-border);background:var(--color-bg-muted);color:var(--color-text-secondary)}.smd-expiry-chip--set:hover{border-color:var(--color-border-medium);color:var(--color-text-heading);background:var(--color-bg-hover)}.smd-expiry-chip-clear{font-size:var(--text-sm);line-height:var(--leading-none);color:var(--color-text-faint);margin-left:auto;padding:0;transition:color .1s}.smd-expiry-chip-clear:hover{color:var(--color-error-text)}.smd-expiry-date-input{box-sizing:border-box;width:100%;padding:var(--space-1) var(--space-2);font-size:var(--text-xs);border:1px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text-heading);box-shadow:0 0 0 3px var(--color-accent-ring);outline:none}.smd-search-row .smd-expiry-chip,.smd-search-row .smd-expiry-date-input{padding:9px var(--space-2-5);font-size:var(--text-sm)}.groups-modal{gap:var(--space-3);padding:var(--space-4) var(--space-5);flex-direction:column;display:flex}.groups-modal__status,.groups-modal__empty-line{color:var(--color-text-subtle);font-size:var(--text-sm);padding:var(--space-2) 0}.groups-modal__error{color:var(--color-danger-text);background:var(--color-danger-bg);border:1px solid var(--color-danger-alt);border-radius:var(--radius-md);padding:var(--space-2-5) var(--space-3);font-size:var(--text-sm)}.groups-modal__inline-error{margin:0 0 var(--space-2) 0;color:var(--color-danger-text);background:var(--color-danger-bg);border:1px solid var(--color-danger-alt);border-radius:var(--radius-md);padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.groups-modal__section-title{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.groups-modal__header{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.groups-modal__subtitle{font-size:var(--text-base);color:var(--color-text-secondary)}.groups-modal__create-btn{flex-shrink:0}.groups-modal__list{gap:var(--space-1);flex-direction:column;max-height:60vh;display:flex;overflow-y:auto}.groups-modal__row{padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-lg);cursor:pointer;justify-content:space-between;align-items:center;transition:background-color .12s;display:flex}.groups-modal__row:hover,.groups-modal__row:focus-visible{background:var(--color-bg-hover);outline:none}.groups-modal__row-main{align-items:center;gap:var(--space-3);flex:1;min-width:0;display:flex}.groups-modal__row-desc{color:var(--color-text-subtle);font-size:var(--text-xs);margin-left:var(--space-2);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.groups-modal__row-badge{background:var(--color-bg-muted);color:var(--color-text-subtle);font-size:var(--text-2xs);font-weight:var(--weight-semibold);padding:var(--space-0-5) var(--space-2);border-radius:var(--radius-xl);text-transform:uppercase;letter-spacing:.03em;margin-left:var(--space-2);flex-shrink:0}.groups-modal__row-count{color:var(--color-text-subtle);font-size:var(--text-xs);padding-left:var(--space-2);white-space:nowrap;flex-shrink:0;margin-left:auto}.groups-modal__load-more{margin-top:var(--space-3);align-self:center}.groups-modal__empty{text-align:center;color:var(--color-text-subtle);padding:var(--space-8) var(--space-3)}.groups-modal__empty-icon{font-size:var(--text-4xl);color:var(--color-text-faint);margin-bottom:var(--space-2);display:block}.groups-modal__detail-header{align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border);display:flex}.groups-modal__back-btn{flex-shrink:0}.groups-modal__detail-title-wrap{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.groups-modal__members{gap:var(--space-1);flex-direction:column;max-height:40vh;display:flex;overflow-y:auto}.groups-modal__member-row{padding:var(--space-1-5) var(--space-2);border-radius:var(--radius-md);justify-content:space-between;align-items:center;transition:background-color .12s;display:flex}.groups-modal__member-row:hover{background:var(--color-bg-hover)}.groups-modal__member-remove{color:var(--color-text-subtle);border-radius:50%;flex-shrink:0;width:28px;height:28px;padding:0}.groups-modal__member-remove:hover{color:var(--color-danger-text);background:var(--color-danger-bg)}.groups-modal__add-row{margin-top:var(--space-2);position:relative}.groups-modal__add-input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text);font-size:var(--text-sm)}.groups-modal__add-input:focus{outline:2px solid var(--color-accent-ring);outline-offset:-1px;border-color:var(--color-accent)}.groups-modal__add-dropdown{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:0 4px 12px var(--color-shadow);z-index:10;max-height:240px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.groups-modal__add-dropdown.hidden{display:none}.groups-modal__add-item{padding:var(--space-2) var(--space-3);cursor:pointer;transition:background-color .12s}.groups-modal__add-item:hover,.groups-modal__add-item:focus-visible{background:var(--color-bg-hover);outline:none}.groups-modal__footer{padding-top:var(--space-3);border-top:1px solid var(--color-border);margin-top:var(--space-2);justify-content:flex-start;display:flex}.groups-modal__form{gap:var(--space-3);padding:var(--space-2) 0;flex-direction:column;display:flex}.groups-modal__form-label{gap:var(--space-1-5);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text-secondary);flex-direction:column;display:flex}.groups-modal__form-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-1);display:flex}.groups-modal__inline-error.hidden{display:none}.oxi-tooltip-popover{min-width:0;max-width:280px;padding:var(--space-1-5) var(--space-2-5);background-color:var(--color-text);color:var(--color-bg-page);font-size:var(--text-xs);line-height:var(--leading-normal);text-align:left;border-radius:var(--radius-md);box-shadow:0 2px 8px var(--color-shadow);pointer-events:none;opacity:0;z-index:10000;transition:opacity .1s ease-out;position:fixed}.oxi-tooltip-popover--simple{white-space:nowrap;max-width:none}.oxi-tooltip-popover--visible{opacity:1;transition:opacity .1s ease-out .25s}.oxi-tooltip-popover__line{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.oxi-tooltip-popover__overflow{margin-top:var(--space-1);font-size:var(--text-2xs);font-weight:var(--weight-semibold);color:var(--color-bg-page);background-color:var(--color-text-faint);border-radius:var(--radius-full);padding:1px 7px;display:inline-block}.oxi-tooltip-popover__placeholder{color:var(--color-text-faint);font-style:italic}.user-vignette{align-items:center;gap:var(--space-1-5);min-width:0;display:inline-flex;overflow:hidden}.user-vignette__avatar{font-weight:var(--weight-bold);width:var(--avatar-size,24px);height:var(--avatar-size,24px);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:10px;display:flex;position:relative}.user-vignette__name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-base);color:var(--color-text-secondary);overflow:hidden}.user-vignette__info{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex;overflow:hidden}.user-vignette__email{font-size:var(--text-xs);color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.user-vignette--xs{--avatar-size:20px}.user-vignette--xs .user-vignette__avatar{font-size:9px}.user-vignette--sm{--avatar-size:24px}.user-vignette--sm .user-vignette__avatar{font-size:10px}.user-vignette--list{--avatar-size:36px}.user-vignette--list .user-vignette__avatar{font-size:var(--text-sm)}.user-vignette--md{--avatar-size:32px}.user-vignette--md .user-vignette__avatar{font-size:var(--text-xs)}.user-vignette--lg{--avatar-size:40px}.user-vignette--lg .user-vignette__avatar{font-size:15px}.user-vignette--menu{--avatar-size:38px}.user-vignette--menu .user-vignette__avatar{font-size:var(--text-base)}.user-vignette--xl{--avatar-size:48px}.user-vignette--xl .user-vignette__avatar{font-size:17px}.uv-color-0{background:var(--color-badge-indigo-bg);color:var(--color-badge-indigo-text)}.uv-color-1{background:var(--color-badge-green-bg);color:var(--color-badge-green-text)}.uv-color-2{background:var(--color-badge-orange-bg);color:var(--color-badge-orange-text)}.uv-color-3{background:var(--color-badge-blue-bg);color:var(--color-badge-blue-text)}.uv-color-4{background:var(--color-badge-amber-bg);color:var(--color-badge-amber-text)}.user-vignette__avatar img,.user-vignette__avatar .oxi-icon:not(.user-vignette__origin){object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.user-vignette-group .user-vignette__avatar{background:var(--color-badge-blue-bg);color:var(--color-badge-blue-text)}.user-vignette-group .user-vignette__avatar i{width:62%;height:62%}.user-vignette-group .user-vignette__avatar .oxi-icon{width:100%;height:100%}.user-vignette__origin{line-height:var(--leading-none);flex-shrink:0;font-size:1em}.user-vignette__origin--external{color:var(--color-warning-orange-text)}.user-vignette__origin--overlay{font-size:calc(var(--avatar-size,24px) * .3);background:var(--color-bg-surface);box-shadow:0 0 0 1.5px var(--color-bg-surface);border-radius:50%;position:absolute;bottom:-2px;right:-2px}.user-vignette__origin.hidden{display:none}.link-chip{max-width:100%;padding:var(--space-0-5) 0;color:var(--color-text);cursor:pointer;font-size:var(--text-sm);text-align:left;background:0 0;border:none;align-items:center;gap:5px;transition:color .12s;display:inline-flex}.link-chip:hover{color:var(--color-accent)}.link-chip:disabled{opacity:.5;cursor:not-allowed}.link-chip__icon{font-size:var(--text-xs);color:var(--color-text-faint);flex-shrink:0;transition:color .12s}.link-chip:hover .link-chip__icon{color:var(--color-accent)}.link-chip__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.upload-dropdown{display:inline-block;position:relative}.upload-dropdown .btn-primary{align-items:center;gap:var(--space-1-5);display:flex}.upload-dropdown-menu{background:var(--color-bg-surface);border-radius:var(--radius-2xl);min-width:200px;box-shadow:0 8px 30px var(--color-shadow-md);border:1px solid var(--color-border);z-index:1000;animation:.15s ease-out dropdownFadeIn;display:block;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.upload-dropdown-item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);color:var(--color-text-dark);font-size:var(--text-base);cursor:pointer;text-align:left;background:0 0;border:none;transition:background .15s;display:flex}.upload-dropdown-item:hover{background:var(--color-border-light)}.upload-dropdown-item:active{background:var(--color-border)}.upload-dropdown-item i{text-align:center;width:20px;color:var(--color-text-subtle);font-size:15px}.upload-dropdown-item:first-child{border-bottom:1px solid var(--color-border-light)}.upload-caret{margin-left:var(--space-1);font-size:var(--text-xs)}.notification{background-color:var(--color-notification-bg);border-radius:var(--radius-lg);width:250px;box-shadow:0 5px 15px var(--color-shadow);border-left:4px solid var(--color-accent);z-index:1000;padding:15px;display:none;position:absolute;top:70px;right:20px;[dir=rtl] &{border-right:4px solid var(--color-accent);left:20px;right:unset;border-left:unset}}.notification-title{font-weight:var(--weight-bold);font-size:var(--text-base);color:var(--color-text);margin-bottom:5px}.notification-message{font-size:var(--text-xs);color:var(--color-text-muted)}.notification-banner{padding:15px var(--space-5);background-color:var(--color-notification-bg);border-radius:var(--radius-lg);box-shadow:0 4px 12px var(--color-shadow);z-index:2000;opacity:0;justify-content:space-between;align-items:center;max-width:400px;transition:transform .3s,opacity .3s;display:flex;position:fixed;top:20px;right:20px;transform:translateY(-100px)}.notification-banner.active{opacity:1;transform:translateY(0)}.notification-banner.success{border-left:4px solid var(--color-success-border)}.notification-banner.error{border-left:4px solid var(--color-danger-bg)}.close-notification-btn{font-size:var(--text-lg);cursor:pointer;color:var(--color-text-placeholder);margin-left:var(--space-2-5);background:0 0;border:none}.notif-wrapper{position:relative}.notif-bell-btn{cursor:pointer;font-size:var(--text-lg);color:var(--color-text-subtle);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;position:relative}.notif-bell-btn:hover{background:var(--color-accent-bg-sm);color:var(--color-accent)}.notif-bell-btn.active{color:var(--color-accent);background:var(--color-accent-ring)}.notif-badge{border-radius:var(--radius-lg);background:var(--color-notification-badge);min-width:16px;height:16px;color:var(--color-notification-bg);font-size:10px;line-height:16px;font-weight:var(--weight-bold);text-align:center;padding:0 var(--space-1);pointer-events:none;position:absolute;top:4px;right:4px}@keyframes bellRing{0%,to{transform:rotate(0)}13%{transform:rotate(22deg)}26%{transform:rotate(-22deg)}39%{transform:rotate(14deg)}52%{transform:rotate(-14deg)}65%{transform:rotate(8deg)}78%{transform:rotate(-8deg)}91%{transform:rotate(3deg)}}.notif-bell-btn.ring{animation:1s bellRing}.notif-panel{background:var(--color-notification-bg);border-radius:var(--radius-3xl);width:380px;max-height:480px;box-shadow:0 12px 40px var(--color-shadow-md), 0 0 0 1px var(--color-shadow-xs);z-index:2000;animation:.2s ease-out notifPanelIn;display:none;position:absolute;top:calc(100% + 10px);right:-40px;overflow:hidden}.notif-wrapper.open .notif-panel{flex-direction:column;display:flex}@keyframes notifPanelIn{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.notif-panel-header{padding:var(--space-3-5) var(--space-4);border-bottom:1px solid var(--color-border-xfaint);justify-content:space-between;align-items:center;display:flex}.notif-panel-title{font-weight:var(--weight-semibold);color:var(--color-text-heading);font-size:15px}.notif-clear-btn{cursor:pointer;color:var(--color-text-faint);font-size:var(--text-base);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);background:0 0;border:none;transition:all .15s}.notif-clear-btn:hover{color:var(--color-accent);background:var(--color-accent-bg-sm)}.notif-panel-body{scrollbar-width:thin;scrollbar-color:var(--color-border-medium) transparent;flex:1;max-height:400px;overflow-y:auto}.notif-panel-body::-webkit-scrollbar{width:6px}.notif-panel-body::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:var(--radius-full)}.notif-panel-body::-webkit-scrollbar-track{background:0 0}.notif-empty{padding:var(--space-10) var(--space-5);color:var(--color-text-faint);justify-content:center;align-items:center;gap:var(--space-2);flex-direction:column;display:flex}.notif-empty i{font-size:var(--text-3xl);opacity:.5}.notif-empty span{font-size:var(--text-base)}.notif-item{padding:var(--space-3) var(--space-4);align-items:flex-start;gap:var(--space-3);border-bottom:1px solid var(--color-bg-subtle);cursor:default;transition:background .15s;display:flex}.notif-item:last-child{border-bottom:none}.notif-item:hover{background:var(--color-bg-hover)}.notif-item-icon{border-radius:var(--radius-lg);width:32px;height:32px;font-size:var(--text-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.notif-item-icon.upload{background:var(--color-accent-ring);color:var(--color-accent)}.notif-item-icon.success{background:var(--color-success-ring);color:var(--color-notification-success)}.notif-item-icon.error{background:var(--color-notification-error-ring);color:var(--color-notification-error)}.notif-item-body{flex:1;min-width:0}.notif-item-title{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--color-text-heading);margin-bottom:var(--space-0-5)}.notif-item-text{font-size:var(--text-xs);color:var(--color-text-subtle);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.notif-item-time{font-size:var(--text-2xs);color:var(--color-text-faint);margin-top:3px}.notif-upload-progress{margin-top:var(--space-1-5)}.notif-upload-bar{background:var(--color-bg-empty);border-radius:var(--radius-xs);height:3px;overflow:hidden}.notif-upload-fill{background:var(--color-accent);border-radius:var(--radius-xs);width:0%;height:100%;transition:width .2s}.notif-upload-fill.done{background:var(--color-notification-success)}.notif-upload-fill.error{background:var(--color-notification-error)}.notif-upload-detail{justify-content:space-between;align-items:center;margin-top:3px;display:flex}.notif-upload-pct,.notif-upload-stats{font-size:var(--text-2xs);color:var(--color-text-faint)}.user-menu-wrapper{position:relative}.user-avatar-btn{cursor:pointer;transition:transform var(--motion-base) var(--ease-standard);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.user-avatar-btn:hover{transform:scale(1.05)}.user-avatar-btn:hover .user-vignette__avatar{box-shadow:0 0 0 3px var(--color-accent-ring), 0 3px 12px -2px var(--color-accent-shadow)}.user-menu-wrapper.open .user-avatar-btn .user-vignette__avatar{box-shadow:0 0 0 3px var(--color-accent-ring-strong)}.user-avatar-btn .user-vignette__avatar{letter-spacing:.5px;user-select:none;transition:box-shadow var(--motion-base) var(--ease-standard)}.user-menu-header .user-vignette__avatar{letter-spacing:.5px;box-shadow:0 4px 12px var(--color-accent-shadow)}.user-menu{background:var(--color-bg-surface);border-radius:var(--radius-3xl);width:300px;box-shadow:0 12px 40px var(--color-shadow-md), 0 0 0 1px var(--color-shadow-xs);z-index:2000;animation:.2s ease-out userMenuIn;display:none;position:absolute;top:calc(100% + 10px);left:auto;right:0;overflow:hidden}.user-menu-wrapper.open .user-menu{display:block}[dir=rtl] .user-menu{left:0;right:auto}@keyframes userMenuIn{0%{opacity:0;transform:translateY(-8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.user-menu-header{align-items:center;gap:var(--space-3-5);padding:var(--space-5) var(--space-5) var(--space-4);background:var(--color-user-menu-header-bg);border-bottom:1px solid var(--color-user-menu-header-border);display:flex}.user-menu-header .user-vignette{flex:1;min-width:0}.user-menu-header .user-vignette__name{font-size:15px;font-weight:var(--weight-semibold);color:var(--color-text-heading)}.user-menu-header .user-vignette__email{margin-top:1px;font-size:12.5px}.user-menu-storage{padding:var(--space-3-5) var(--space-5)}.user-menu-storage-label{align-items:center;gap:var(--space-2);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-2);display:flex}.user-menu-storage-label i{font-size:var(--text-2xs);color:var(--color-text-faint)}.user-menu-storage-bar{background:var(--color-border-light);height:6px;margin-bottom:var(--space-1-5);border-radius:3px;overflow:hidden}.user-menu-storage-fill{background:linear-gradient(90deg, var(--color-accent), var(--color-accent-second));border-radius:3px;width:0%;height:100%;transition:width .5s}.user-menu-storage-text{color:var(--color-text-faint);font-size:11.5px}.user-menu-divider{background:var(--color-border-light);height:1px;margin:var(--space-1) 0}.user-menu-item{align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-5);color:var(--color-text-dark);font-size:var(--text-base);cursor:pointer;text-align:left;background:0 0;border:none;transition:background .15s;display:flex}.user-menu-item:hover,.user-menu-item:focus-visible{background:var(--color-bg-hover)}.user-menu-item i{text-align:center;width:20px;color:var(--color-text-subtle);font-size:15px}.user-menu-item--theme{cursor:default}.user-menu-item--theme:hover{background:0 0}.theme-segmented{background:var(--color-bg-muted);border:1px solid var(--color-border);border-radius:var(--radius-full);padding:var(--space-0-5);gap:var(--space-0-5);margin-left:auto;display:inline-flex}.theme-segmented__opt{width:28px;height:22px;color:var(--color-text-subtle);border-radius:var(--radius-full);cursor:pointer;font-size:var(--text-2xs);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background .15s,color .15s;display:inline-flex}.theme-segmented__opt:hover{color:var(--color-text)}.theme-segmented__opt--active{background:var(--color-accent);color:var(--color-danger-text)}.theme-segmented__opt--active:hover{color:var(--color-danger-text)}.user-menu-admin{color:var(--color-primary)}.user-menu-admin i{color:var(--color-info-blue)}.user-menu-admin:hover{background:var(--color-info-bg-alt)}.user-menu-role-badge{padding:0 var(--space-5) var(--space-1)}.role-badge{align-items:center;gap:var(--space-1);font-size:var(--text-2xs);font-weight:var(--weight-semibold);padding:var(--space-0-5) var(--space-2-5);border-radius:var(--radius-xl);display:inline-flex}.role-badge-admin{background:var(--color-info-surface);color:var(--color-primary)}.role-badge i{font-size:10px}.user-menu-logout{color:var(--color-danger-alt);margin-bottom:var(--space-1)}.user-menu-logout i{color:var(--color-danger-alt)}.user-menu-logout:hover{background:var(--color-danger-lighter)}.language-selector{position:relative}.language-selector-toggle{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3-5);background-color:var(--color-bg-muted);border:1px solid var(--color-border);cursor:pointer;font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--color-text-secondary);user-select:none;border-radius:50px;transition:all .2s;display:flex}.language-selector-toggle:hover{background-color:var(--color-border);border-color:var(--color-border-medium)}.language-selector-toggle i{font-size:var(--text-base);color:var(--color-text-muted)}.language-selector-toggle .lang-code{font-weight:var(--weight-semibold);color:var(--color-text)}.language-selector-toggle .dropdown-arrow{color:var(--color-text-muted);margin-left:var(--space-0-5);font-size:10px;transition:transform .2s}.language-selector.open .dropdown-arrow{transform:rotate(180deg)}.language-selector-dropdown{background-color:var(--color-bg-surface);border-radius:var(--radius-2xl);min-width:160px;max-height:420px;box-shadow:0 4px 20px var(--color-shadow-lg);border:1px solid var(--color-border);opacity:0;visibility:hidden;z-index:1000;transition:all .2s;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;transform:translateY(-10px)}.language-selector.open .language-selector-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.language-option{align-items:center;gap:var(--space-2-5);padding:var(--space-3) var(--space-4);cursor:pointer;font-size:var(--text-base);color:var(--color-text-secondary);transition:background-color .15s;display:flex}.language-option:hover{background-color:var(--color-bg-hover)}.language-option.active{background-color:var(--color-accent-bg-sm);color:var(--color-accent-text)}.language-option .lang-flag{font-size:var(--text-lg);line-height:var(--leading-none)}.language-option .lang-name{flex:1}.language-option .lang-check{color:var(--color-accent);font-size:var(--text-xs);opacity:0}.language-option.active .lang-check{opacity:1}.user-menu .language-selector{width:100%}.user-menu .language-selector-toggle{width:100%;padding:var(--space-3) var(--space-5);gap:var(--space-3);color:var(--color-text-dark);font-size:var(--text-base);cursor:pointer;box-shadow:none!important;background:0 0!important;border:none!important;border-radius:0!important}.user-menu .language-selector-toggle:hover,.user-menu .language-selector-toggle:focus{background:var(--color-bg-hover)!important;border:none!important}.user-menu .language-selector-toggle i.fa-globe{text-align:center;width:20px;color:var(--color-text-subtle);font-size:15px}.user-menu .language-selector-toggle .lang-code{font-weight:var(--weight-medium);font-size:var(--text-sm);color:var(--color-text-dark)}.user-menu .language-selector-dropdown{border-top:1px solid var(--color-border-light);background:var(--color-bg-muted);max-height:0;transition:max-height .25s;overflow:hidden;box-shadow:none!important;opacity:1!important;visibility:visible!important;z-index:auto!important;border:none!important;border-radius:0!important;position:static!important;transform:none!important}.user-menu .language-selector.open .language-selector-dropdown{max-height:260px;overflow-y:auto}.user-menu .language-option{padding:var(--space-2-5) var(--space-5) var(--space-2-5) var(--space-7);font-size:13.5px}.batch-selection-info{justify-content:space-between;align-items:center;gap:var(--space-4);min-width:0;display:flex}.batch-selection-bar{background:var(--color-multiselect-bg);color:var(--color-multiselect-text);padding:var(--space-2-5) var(--space-5);border-radius:var(--radius-2xl);margin-right:var(--space-3);pointer-events:auto;align-items:center;height:60px;transition:opacity .2s,max-height .25s,transform .2s,margin .2s,padding .2s;display:flex;overflow:hidden;transform:translateY(-8px)}.batch-bar-close{color:var(--color-multiselect-text-faint);cursor:pointer;font-size:var(--text-base);padding:var(--space-1) var(--space-1-5);border-radius:var(--radius-md);background:0 0;border:none;transition:background .15s,color .15s}.batch-bar-close:hover{background:var(--color-multiselect-hover-bg);color:var(--color-multiselect-text)}.batch-bar-count{font-size:var(--text-base);font-weight:var(--weight-semibold);white-space:nowrap}.batch-bar-actions{align-items:center;gap:var(--space-1-5);display:flex}.batch-btn{align-items:center;gap:var(--space-1-5);padding:7px var(--space-3-5);border-radius:var(--radius-lg);background:var(--color-multiselect-hover-bg);color:var(--color-multiselect-action-text);font-size:var(--text-sm);font-weight:var(--weight-medium);cursor:pointer;white-space:nowrap;border:none;transition:background .15s;display:inline-flex}.batch-btn:hover{background:var(--color-multiselect-action-hover)}.batch-btn-danger{background:var(--color-multiselect-danger-bg);color:var(--color-multiselect-danger-text)}.batch-btn-danger:hover{background:var(--color-multiselect-danger-active);color:var(--color-multiselect-danger-text-active)}@media (width<=640px){.batch-btn span{display:none}.batch-btn{padding:7px var(--space-2-5)}}.files-loading-spinner{padding:var(--space-20) var(--space-5);justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;grid-column:1/-1;display:flex}.files-loading-spinner .spinner{border:3px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;width:36px;height:36px;animation:.7s linear infinite spin}.files-loading-spinner span{font-size:var(--text-base);color:var(--color-text-placeholder);font-weight:var(--weight-medium)}.dropzone{top:var(--space-4);right:var(--space-4);bottom:var(--space-4);left:calc(var(--sidebar-width) + var(--space-4));z-index:var(--z-overlay);justify-content:center;align-items:center;gap:var(--space-4);border:3px dashed var(--color-border-medium);border-radius:var(--radius-3xl);background:var(--color-scrim-control);-webkit-backdrop-filter:blur(4px);color:var(--color-text-secondary);font-size:var(--text-lg);font-weight:var(--weight-semibold);text-align:center;flex-direction:column;display:flex;position:fixed}.dropzone>*{pointer-events:none}.dropzone-icon{font-size:var(--text-6xl);color:var(--color-accent)}.dropzone.active{border-color:var(--color-accent);color:var(--color-accent-text)}@media (width<=768px){.dropzone{left:var(--space-4)}}.upload-progress{width:100%;margin-top:15px;display:block}.progress-bar{background-color:var(--color-bg-empty);border-radius:3px;height:6px;overflow:hidden}.progress-fill{background-color:var(--color-accent);width:0%;height:100%;transition:width .3s}.skeleton{background:var(--color-bg-muted);border-radius:var(--radius-md);animation:1.4s ease-in-out infinite skeletonPulse}.skeleton-line{height:14px}.skeleton-line--short{width:40%}.skeleton-line--medium{width:65%}.skeleton-line--full{width:100%}.skeleton-row{grid-template-columns:var(--files-list-columns,36px 1fr 90px);column-gap:var(--space-3);padding:var(--space-3) 15px;border-bottom:1px solid var(--color-border-xfaint);align-items:center;display:grid}.skeleton-tile{aspect-ratio:1;border-radius:var(--radius-lg);width:100%}.skeleton-card{gap:var(--space-2);padding:var(--space-4);border:2px solid var(--color-border);border-radius:var(--radius-2xl);flex-direction:column;display:flex}.skeleton-card .skeleton-thumb{aspect-ratio:4/3;border-radius:var(--radius-lg);width:100%;margin-bottom:var(--space-2)}.skeleton-card .skeleton-line{align-self:center}.skeleton-icon{border-radius:var(--radius-md);width:36px;height:36px}@keyframes skeletonPulse{0%,to{opacity:1}50%{opacity:.4}}.search-results-header{padding:var(--space-2-5) 0;border-bottom:1px solid var(--color-bg-empty);justify-content:space-between;align-items:center;gap:var(--space-2);flex-wrap:wrap;width:100%;margin-bottom:15px;display:flex}.search-results-header h3{font-size:var(--text-md);color:var(--color-text-dim);margin:0}.search-results-header .search-time{font-size:var(--text-xs);font-weight:var(--weight-normal);color:var(--color-text-light)}.search-controls{align-items:center;gap:var(--space-2);display:flex}.search-sort-select{padding:var(--space-1) var(--space-2);border:1px solid var(--color-border-ddd);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--color-bg-surface);color:var(--color-text-black);cursor:pointer;outline:none}.search-sort-select:focus{border-color:var(--primary-color,var(--color-accent))}.oxi-icon{vertical-align:-.125em;fill:currentColor;flex-shrink:0;width:1em;height:1em;display:inline-block;overflow:hidden}.oxi-icon-spin{animation:1s linear infinite oxi-spin}@keyframes oxi-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.empty-state-icon{font-size:var(--text-6xl);color:var(--color-accent);margin-bottom:var(--space-4);opacity:.9}.empty-state-icon.error{color:var(--color-danger-text-alt)}.empty-state-icon.spinner{color:var(--color-text-medium)}.dialog-header-icon{color:var(--color-accent)}.icon-mr{margin-right:5px}.icon-ml{margin-left:var(--space-1);font-size:var(--text-xs)}.check-icon{color:var(--color-success-border)}.move-dialog-hint{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--text-base)}.folder-select-container{max-height:220px;overflow-y:auto}.share-section{margin:15px 0}.search-spinner{margin-right:var(--space-2)}.search-empty-text{color:var(--text-secondary,var(--color-text-subtle))}.notif-upload-current{font-size:var(--text-2xs);color:var(--color-text-subtle);white-space:nowrap;text-overflow:ellipsis;margin:3px 0;overflow:hidden}.auth-hint{color:var(--text-secondary,var(--color-text-medium));margin-top:var(--space-1);display:block}.about-modal-body{max-width:380px}.about-modal-header{text-align:center;padding:var(--space-5) var(--space-5) 0}.about-modal-avatar{background:var(--color-avatar-gradient);width:64px;height:64px;color:var(--color-danger-text);font-size:var(--text-2xl);font-weight:var(--weight-bold);margin-bottom:var(--space-3);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.about-modal-username{font-size:var(--text-lg);color:var(--color-text-navy);margin:0}.about-modal-email{margin:var(--space-1) 0 0;font-size:var(--text-sm);color:var(--color-text-subtle)}.about-modal-role{margin-top:var(--space-2);padding:var(--space-0-5) var(--space-2-5);border-radius:var(--radius-xl);font-size:var(--text-2xs);font-weight:var(--weight-semibold);display:inline-block}.about-modal-role-admin{background:var(--color-role-admin-bg);color:var(--color-role-admin-text)}.about-modal-role-user{background:var(--color-border-light);color:var(--color-text-subtle)}.about-modal-storage{padding:var(--space-4) var(--space-5)}.about-modal-storage-label{font-size:var(--text-xs);color:var(--color-text-subtle);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1-5)}.about-modal-storage-label i{margin-right:var(--space-1)}.about-modal-bar-bg{background:var(--color-border-light);border-radius:var(--radius-md);height:8px;margin-bottom:var(--space-1);overflow:hidden}.about-modal-bar-fill{border-radius:var(--radius-md);height:100%;transition:width .3s}.about-modal-bar-text{font-size:var(--text-xs);color:var(--color-text-subtle);text-align:right}.about-modal-footer{padding:0 var(--space-5) var(--space-4);justify-content:center;display:flex}.about-modal-close-btn{padding:var(--space-2) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-bg-surface);color:var(--color-text-dark);font-size:var(--text-sm);font-weight:var(--weight-semibold);cursor:pointer;transition:background .15s}.path-tooltip{background-color:var(--color-bg-surface);column-gap:.6em;row-gap:var(--space-1-5);color:var(--color-text-muted);font-size:var(--text-xs);pointer-events:none;opacity:1;grid-template-columns:1em max-content 1fr;align-items:center;transition:opacity .2s;display:grid;position:absolute;inset:0}.path-tooltip.hidden{opacity:0;transition-delay:1s;display:grid!important}.path-tooltip__icon{color:var(--color-text-faint);text-align:center;justify-self:center;font-size:.7rem}.path-tooltip__label{font-weight:var(--weight-semibold);color:var(--color-text-secondary);white-space:nowrap}.path-tooltip__label:after{content:":"}.path-tooltip__value{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.path-tooltip__value--path{font-family:monospace}.path-tooltip__value--unknown{color:var(--color-text-faint);font-style:italic}.path-tooltip .user-vignette{min-width:0;overflow:hidden}.path-tooltip .user-vignette__name{font-size:var(--text-xs)}.cmdk-overlay{z-index:var(--z-modal);padding:12vh var(--space-4) var(--space-4);background:var(--color-overlay);backdrop-filter:blur(2px);opacity:0;transition:opacity var(--motion-base) var(--ease-standard);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0}.cmdk-overlay.active{opacity:1}.cmdk-overlay.hidden{display:none}.cmdk-panel{background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-3xl);width:min(560px,92vw);box-shadow:var(--shadow-2xl);transition:transform var(--motion-base) var(--ease-standard);overflow:hidden;transform:translateY(-8px)scale(.98)}.cmdk-overlay.active .cmdk-panel{transform:none}.cmdk-search{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);display:flex}.cmdk-search i{color:var(--color-text-muted)}.cmdk-input{min-width:0;font-size:var(--text-md);color:var(--color-text);background:0 0;border:none;outline:none;flex:1}.cmdk-input::placeholder{color:var(--color-text-faint)}.cmdk-list{padding:var(--space-1-5);max-height:56vh;margin:0;list-style:none;overflow-y:auto}.cmdk-item{align-items:center;gap:var(--space-3);padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-lg);cursor:pointer;color:var(--color-text);display:flex}.cmdk-item i{text-align:center;width:20px;color:var(--color-text-muted)}.cmdk-item.is-active{background:var(--color-accent-bg-sm)}.cmdk-item.is-active i{color:var(--color-accent)}.cmdk-empty{padding:var(--space-5);text-align:center;color:var(--color-text-muted)}@supports not (color:light-dark(white, black)){[data-theme=dark],html[data-color-scheme=dark]{--color-bg-page:#0f172a;--color-bg-surface:#1e293b;--color-bg-input:#0f172a;--color-bg-hover:#334155;--color-bg-muted:#1a2540;--color-bg-subtle:#162032;--color-bg-alt:#0f172a;--color-bg-input-alt:#253045;--color-bg-empty:#253045;--color-border:#334155;--color-border-light:#334155;--color-border-medium:#475569;--color-border-faint:#2a3650;--color-border-subtle:#2a3650;--color-border-xfaint:#1e293b;--color-border-ddd:#334155;--color-text:#e2e8f0;--color-text-heading:#f1f5f9;--color-text-muted:#94a3b8;--color-text-faint:#7a8a9f;--color-text-secondary:#cbd5e1;--color-text-subtle:#94a3b8;--color-text-dark:#cbd5e1;--color-text-placeholder:#64748b;--color-text-gray:#94a3b8;--color-text-medium:#94a3b8;--color-text-faint2:#64748b;--color-text-light:#64748b;--color-text-black:#e2e8f0;--color-text-dim:#94a3b8;--color-accent:#ff5e3a;--color-accent-hover:#ff7a5c;--color-accent-gradient:linear-gradient(135deg, #ff5e3a 0%, #ff2d55 100%);--color-accent-shadow:#ff5e3a4d;--color-accent-ring:#ff5e3a26;--color-accent-tint:#2a1a15;--color-error-bg:#3b1111;--color-error-text:#fca5a5;--color-success-bg:#052e16;--color-success-text:#86efac;--color-shadow:#0000004d;--color-shadow-lg:#0000004d;--color-shadow-md:#0000004d;--color-warning-bg:#3d2e00;--color-warning-bg-dark:#5a4200;--color-notification-bg:#1e293b;--color-user-menu-header-bg:linear-gradient(135deg, #1a2332 0%, #1e2940 100%);--color-user-menu-header-border:#3a2520;--color-info-bg:#0c1e35;--color-info-bg-alt:#0c1e35;--color-info-surface:#0c1e35;--color-danger-light-bg:#2a0c0c;--color-danger-lighter:#2a0c0c;--color-error-text-dark:#f87171;--color-badge-orange-bg:#2a1814;--color-badge-orange-text:#ff8a65;--color-badge-blue-bg:#0c2d48;--color-badge-blue-text:#93c5fd;--color-warning-bg-light:#2a2410;--color-warning-text-amber:#fbbf24;--color-warning-orange-bg:#2a1c10;--color-warning-orange-text:#fb923c;--color-success-bg-alt:#0a2015;--color-success-bg-green:#0a2015;--color-content-bg-warn:#3d2e00;--color-content-bg-warn-dark:#5a4200;--color-sidebar-bg-from:#0f172a;--color-sidebar-bg-to:#0c1322;--color-item-active:#5a5047;--color-item-selected:#39281a;--color-item-hover-accent:#3d342c;--color-primary:#60a5fa;--color-primary-hover:#6fa8ee}[data-theme=dark] select,html[data-color-scheme=dark] select{color:#e2e8f0;background-color:#1e293b;border-color:#334155}[data-theme=dark] select:hover,html[data-color-scheme=dark] select:hover{border-color:#475569}[data-theme=dark] select:focus,html[data-color-scheme=dark] select:focus{background-color:#1e293b;border-color:#ff5e3a}[data-theme=dark] .smd-expiry-date-input::-webkit-calendar-picker-indicator,html[data-color-scheme=dark] .smd-expiry-date-input::-webkit-calendar-picker-indicator{filter:invert()}}.inline-viewer-modal{z-index:9999;background-color:var(--color-overlay-heavy);opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.inline-viewer-modal.active{opacity:1;pointer-events:all;justify-content:center;align-items:center;display:flex!important}.inline-viewer-content{background-color:var(--color-bg-surface);border-radius:var(--radius-lg);width:90%;max-width:1200px;height:90%;box-shadow:0 4px 20px var(--color-shadow-3xl);flex-direction:column;display:flex;overflow:hidden}.inline-viewer-header{padding:var(--space-3) var(--space-4);background-color:var(--color-bg-subtle);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.inline-viewer-title{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.inline-viewer-close{font-size:var(--text-lg);cursor:pointer;color:var(--color-text-muted);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background-color .2s;display:flex}.inline-viewer-close:hover{background-color:var(--color-border);color:var(--color-text-secondary)}.inline-viewer-container{background-color:var(--color-bg-muted);flex-grow:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:auto}.inline-viewer-toolbar{padding:var(--space-3) var(--space-4);background-color:var(--color-bg-subtle);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.inline-viewer-download{background-color:var(--color-accent);color:var(--color-danger-text);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-4);font-size:var(--text-base);font-weight:var(--weight-medium);cursor:pointer;align-items:center;gap:var(--space-2);border:none;transition:background-color .2s;display:flex}.inline-viewer-download:hover{background-color:var(--color-danger-alt)}.inline-viewer-controls{gap:var(--space-2);display:flex}.inline-viewer-controls button{background-color:var(--color-border-light);border:1px solid var(--color-border-medium);border-radius:var(--radius-sm);cursor:pointer;width:36px;height:36px;color:var(--color-text-subtle);justify-content:center;align-items:center;transition:all .2s;display:flex}.inline-viewer-controls button:hover{background-color:var(--color-border);color:var(--color-text-dark)}.inline-viewer-image{object-fit:contain;transform-origin:50%;min-width:0;max-width:100%;min-height:0;max-height:100%;transition:transform .2s}.inline-viewer-container{scrollbar-width:thin;scrollbar-color:var(--color-border-medium) transparent}.inline-viewer-container::-webkit-scrollbar{width:8px;height:8px}.inline-viewer-container::-webkit-scrollbar-thumb{background:var(--color-border-medium);border-radius:var(--radius-full)}.inline-viewer-container::-webkit-scrollbar-track{background:0 0}.inline-viewer-pdf,.inline-viewer-pdf-fallback{border:none;width:100%;height:100%}.inline-viewer-pdf+.inline-viewer-pdf-fallback{display:none}.inline-viewer-pdf:not([data]),.inline-viewer-pdf[data=""]+.inline-viewer-pdf-fallback{display:block}.inline-viewer-loader{color:var(--color-text-subtle);font-size:36px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.inline-viewer-progress{align-items:center;gap:var(--space-3);padding:var(--space-5);background:var(--color-progress-overlay);border-radius:var(--radius-lg);box-shadow:0 2px 8px var(--color-shadow);flex-direction:column;display:flex}.inline-viewer-progress-bar{background:var(--color-border);border-radius:var(--radius-sm);width:200px;height:8px;overflow:hidden}.inline-viewer-progress-fill{background:linear-gradient(90deg, var(--color-info-blue), var(--color-admin-blue));border-radius:var(--radius-sm);height:100%;transition:width .2s}.inline-viewer-progress-text{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text-secondary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.inline-viewer-message{padding:var(--space-8);text-align:center;max-width:400px}.inline-viewer-icon{color:var(--color-text-dark);margin-bottom:var(--space-6);font-size:64px}.inline-viewer-text{color:var(--color-text-subtle);line-height:1.6}.inline-viewer-text p{margin:0 0 var(--space-4)}.inline-viewer-text-content{width:100%;height:100%;padding:var(--space-4) var(--space-6);font-family:Courier New,Consolas,Monaco,monospace;font-size:var(--text-base);color:var(--color-text);background-color:var(--color-bg-surface);white-space:pre-wrap;word-wrap:break-word;box-sizing:border-box;text-align:left;tab-size:4;margin:0;line-height:1.6;overflow:auto}.inline-viewer-video{object-fit:contain;border-radius:var(--radius-sm);background-color:var(--color-black);max-width:100%;max-height:100%}.inline-viewer-audio-wrapper{justify-content:center;align-items:center;gap:var(--space-6);padding:var(--space-12) var(--space-8);flex-direction:column;width:100%;max-width:500px;display:flex}.inline-viewer-audio-icon{color:var(--color-text-faint);font-size:80px;animation:2s ease-in-out infinite audio-pulse}@keyframes audio-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.inline-viewer-audio-name{font-size:var(--text-md);font-weight:var(--weight-medium);color:var(--color-text-secondary);text-align:center;word-break:break-word;max-width:100%}.inline-viewer-audio{border-radius:var(--radius-lg);outline:none;width:100%;max-width:460px}@media (width<=768px){.inline-viewer-content{border-radius:0;width:100%;height:100%}.inline-viewer-controls{display:none}}.favorite-indicator{width:25px;height:25px;color:var(--color-device-verify-dim);cursor:pointer;z-index:5;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:10px;right:10px;[dir=rtl] &{left:10px;right:unset}}.favorite-indicator:hover{transform:scale(1.1)}.favorite-indicator.active{color:var(--color-warning-text);text-shadow:0 0 5px var(--color-warning-shadow)}.favorite-item{position:relative}.list-header.favorites-header{grid-template-columns:30px minmax(200px,2fr) 1fr 1fr 120px}.favorites-empty-state{padding:50px var(--space-5);text-align:center;color:var(--color-text-gray);flex-direction:column;justify-content:center;align-items:center;display:flex}.favorites-empty-state i{font-size:var(--text-6xl);color:var(--color-warning-text);margin-bottom:var(--space-5);opacity:.6}.favorites-empty-state p{margin-bottom:var(--space-2-5);max-width:400px}@keyframes favorite-pulse{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}.favorite-indicator.active{animation:.3s favorite-pulse}.file-item .favorite-star{pointer-events:auto;z-index:12}.file-item .favorite-star.active i,.file-item .favorite-star.active svg{animation:.3s favorite-pulse}.favorite-star-inline{color:var(--color-warning-text);font-size:var(--text-2xs);margin-left:var(--space-1-5);vertical-align:middle;filter:drop-shadow(0 0 1px var(--color-device-verify-drop-shadow));[dir=rtl] &{margin-left:0;margin-right:var(--space-1-5)}}.recent-indicator{width:25px;height:25px;color:var(--color-recent-muted);z-index:5;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:10px;right:10px;[dir=rtl] &{left:10px;right:unset}}.recent-item{position:relative}.list-header.recent-header{grid-template-columns:30px minmax(200px,2fr) 1fr 1fr 120px}.recents-empty-state{padding:50px var(--space-5);text-align:center;color:var(--color-recent-muted);flex-direction:column;justify-content:center;align-items:center;display:flex}.recents-empty-state i{font-size:var(--text-6xl);color:var(--color-recent-muted);margin-bottom:var(--space-5);opacity:.6}.recents-empty-state p{margin-bottom:var(--space-2-5);max-width:400px}.recent-item .type-cell{cursor:help}.recent-item{animation:.3s recent-fade-in}@keyframes recent-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.swm-load-more-wrapper{padding:var(--space-4) 0 var(--space-6);justify-content:center;display:flex}.ms-load-more-wrapper{padding:var(--space-4) 0 var(--space-2);justify-content:center;display:flex}.ms-load-more-wrapper.hidden{display:none}.files-list-view:has(.ms-lane){box-shadow:none;gap:var(--space-2-5);background-color:#0000;border-radius:0;flex-direction:column;display:flex;overflow:visible}.ms-lane{background-color:var(--color-item);border-radius:var(--radius-xl);box-shadow:0 1px 3px var(--color-shadow-xs);overflow:hidden}.ms-lane__header{background:var(--color-bg-muted);border-bottom:1px solid var(--color-border-faint)}.ms-lane__header .user-vignette{padding:var(--space-2-5) var(--space-3-5);font-weight:var(--weight-semibold)}.ms-lane__header .user-vignette .user-vignette__name{font-size:var(--text-sm);color:var(--color-text-heading);font-weight:var(--weight-semibold)}.ms-resource-row{align-items:center;gap:var(--space-2);padding:var(--space-2-5) var(--space-3-5);display:flex}.ms-resource-row .file-icon{border-radius:var(--radius-md);width:36px;height:36px;font-size:var(--text-base);flex-shrink:0}.ms-grant-row__identity .file-icon,.ms-link-identity__resource .file-icon{border-radius:var(--radius-sm);width:24px;height:24px;font-size:var(--text-2xs);flex-shrink:0}.ms-resource-row__name{font-weight:var(--weight-semibold);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;flex:1;text-decoration:none;overflow:hidden}.ms-resource-row__name:hover{color:var(--color-accent);text-decoration:underline}.ms-resource-row__edit{font-size:var(--text-xs);padding:3px var(--space-2);opacity:.6;flex-shrink:0;transition:opacity .15s}.ms-resource-row__edit:hover{opacity:1}.ms-link-lane-label{align-items:center;gap:var(--space-1-5);padding:var(--space-2) var(--space-3-5);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);display:flex}.ms-link-lane-label__icon{color:var(--color-text-faint);font-size:var(--text-xs)}.ms-grant-row{align-items:center;gap:var(--space-2);padding:7px var(--space-3-5) 7px var(--space-7);border-bottom:1px solid var(--color-border-faint);grid-template-columns:1fr 110px 180px auto;transition:background .1s;display:grid}.ms-grant-row>.role-chip,.ms-grant-row>.expiry-chip{justify-self:start}.ms-grant-row:last-child{border-bottom:none}.ms-grant-row:hover{background:var(--color-bg-hover)}.ms-grant-row--expired{opacity:.6}.ms-grant-row__identity{align-items:center;gap:var(--space-1-5);flex:1;min-width:0;display:flex}.ms-identity__name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ms-identity__resource-name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.ms-identity__resource-name:hover{color:var(--color-accent);text-decoration:underline}.ms-link-identity__arrow{font-size:var(--text-2xs);color:var(--color-text-faint);flex-shrink:0}.ms-link-identity__resource{font-size:var(--text-xs);color:var(--color-text-secondary);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:3px;text-decoration:none;display:inline-flex;overflow:hidden}.ms-link-identity__resource:hover{color:var(--color-accent);text-decoration:underline}.ms-btn-icon{border-radius:var(--radius-sm);width:22px;height:22px;color:var(--color-text-muted);cursor:pointer;font-size:var(--text-2xs);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .12s,color .12s;display:inline-flex}.ms-btn-icon:hover{background:var(--color-bg-hover);color:var(--color-text)}.ms-btn-icon:disabled{opacity:.4;cursor:not-allowed}.ms-kebab-btn{margin-left:auto}.ms-menu-item--current{font-weight:var(--weight-semibold)}.ms-menu-expiry-row{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-1-5) var(--space-3);display:flex}.ms-menu-expiry-label{font-size:var(--text-xs);color:var(--color-text-muted);white-space:nowrap;flex-shrink:0}.ms-menu-expiry-row .smd-expiry-chip-wrap{flex:1;min-width:0}.btn-action--delete{color:var(--color-danger-text-alt)}.btn-danger{background-color:var(--color-danger-bg);color:var(--color-danger-text)}.btn-danger:hover{background-color:var(--color-danger-bg-hover)}.files-grid-view.trash-list .file-item .date-cell{z-index:2;padding:0;display:block;position:absolute;top:-1px;right:3px}.files-grid-view.trash-list .file-item .date-cell .expiry-chip{box-shadow:0 1px 3px var(--color-shadow-xs)}.photos-container{padding:0;display:none}.photos-container.active{display:block}.photos-toolbar{padding:var(--space-2) var(--space-2) var(--space-1);justify-content:flex-end;align-items:center;display:flex}.photos-toolbar .toggle-btn{width:auto;padding:0 var(--space-3-5);font-size:var(--text-sm);font-weight:var(--weight-medium)}.photos-day-header{padding:var(--space-4) var(--space-2) var(--space-2-5);font-size:15px;font-weight:var(--weight-semibold);color:var(--color-text)}.photos-day-header .photos-day-count{font-weight:var(--weight-normal);color:var(--color-text-faint);font-size:var(--text-sm);margin-left:var(--space-2)}.photos-grid{gap:var(--space-3);padding:0 var(--space-2);margin-bottom:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(150px,1fr));display:grid}.photos-group-monthly .photos-grid{gap:var(--space-3-5);grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}.photos-group-monthly .photos-day-header{padding:var(--space-5) var(--space-2) var(--space-3);font-size:17px}.photos-group-yearly .photos-grid{gap:var(--space-2-5);grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}.photos-group-yearly .photos-day-header{font-size:var(--text-xl);padding:var(--space-6) var(--space-2) var(--space-3-5)}.photo-tile{aspect-ratio:1;border-radius:var(--radius-2xl);border:2px solid var(--color-border);cursor:pointer;background:var(--color-bg-muted);box-shadow:0 1px 3px var(--color-shadow-xs);transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}.photo-tile img{object-fit:cover;border-radius:var(--radius-xl);opacity:0;width:100%;height:100%;transition:opacity .4s,transform .2s}.photo-tile img.is-loaded{opacity:1}.photo-tile:hover{box-shadow:0 5px 15px var(--color-shadow-sm);border-color:var(--color-border-medium);transform:translateY(-2px)}.photo-tile:hover img{transform:scale(1.03)}.photo-tile .photo-check{border:2px solid var(--color-photo-check-border);background:var(--color-shadow-2xl);opacity:0;width:22px;height:22px;color:var(--color-danger-text);font-size:var(--text-2xs);z-index:2;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;top:6px;left:6px}.photo-tile:hover .photo-check,.photo-tile.selected .photo-check{opacity:1}.photo-tile.selected .photo-check{background:var(--color-accent);border-color:var(--color-accent)}.photo-tile.selected{border-color:var(--color-accent);background:var(--color-item-selected);box-shadow:0 0 0 1px var(--color-accent-ring-dark), 0 4px 12px var(--color-accent-ring)}.photo-tile.selected img{transform:scale(.95)}.photo-tile .video-badge{background:var(--color-overlay-video);width:28px;height:28px;color:var(--color-danger-text);font-size:var(--text-xs);z-index:2;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:6px;right:6px}.photo-tile .video-duration{font-size:var(--text-2xs);color:var(--color-danger-text);background:var(--color-overlay-video);padding:var(--space-0-5) var(--space-1-5);border-radius:var(--radius-sm);z-index:2;position:absolute;bottom:6px;left:6px}.photos-empty{padding:var(--space-20) var(--space-5);text-align:center;color:var(--color-text-faint);flex-direction:column;justify-content:center;align-items:center;display:flex}.photos-empty i{margin-bottom:var(--space-4);color:var(--color-border-medium);font-size:56px}.photos-empty p{margin:var(--space-1) 0;font-size:15px}.photos-empty .photos-empty-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--color-text-subtle)}.photos-sentinel{width:100%;height:1px}.photos-loading{padding:var(--space-6);color:var(--color-text-faint);font-size:var(--text-base);justify-content:center;align-items:center;gap:var(--space-2);display:flex}.photos-loading i{animation:1s linear infinite spin}.photos-selection-bar{background:var(--color-multiselect-bg);color:var(--color-multiselect-text);padding:var(--space-2-5) var(--space-5);border-radius:var(--radius-2xl);align-items:center;gap:var(--space-4);box-shadow:0 8px 30px var(--color-shadow-3xl);z-index:1000;font-size:var(--text-base);display:flex;position:fixed;bottom:20px;left:50%;transform:translate(-50%)}.photos-selection-bar button{color:var(--color-multiselect-text);cursor:pointer;padding:var(--space-1-5) var(--space-2-5);border-radius:var(--radius-md);font-size:var(--text-base);background:0 0;border:none;transition:background .15s}.photos-selection-bar button:hover{background:var(--color-multiselect-action-hover)}.photos-selection-bar .selection-count{font-weight:var(--weight-semibold)}@media (width<=768px){.photos-grid{gap:var(--space-0-5);padding:0 var(--space-0-5);margin-bottom:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}.photos-group-monthly .photos-grid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr))}.photos-group-yearly .photos-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}.photo-tile .photo-check{opacity:1}.photos-day-header{font-size:var(--text-base);padding:var(--space-2-5) var(--space-1) var(--space-1-5)}.photos-toolbar{padding:var(--space-1-5) var(--space-1) var(--space-0-5)}}.photos-lightbox{z-index:10000;background:var(--color-lightbox-overlay);opacity:0;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:fixed;inset:0}.photos-lightbox.active{opacity:1;pointer-events:auto}.lightbox-content{justify-content:center;align-items:center;max-width:90vw;max-height:85vh;display:flex;position:relative}.lightbox-content img,.lightbox-content video{object-fit:contain;border-radius:var(--radius-sm);user-select:none;max-width:90vw;max-height:85vh}.lightbox-nav{background:var(--color-lightbox-btn-bg);width:48px;height:48px;color:var(--color-lightbox-btn-text);font-size:var(--text-xl);cursor:pointer;z-index:10001;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.lightbox-nav:hover{background:var(--color-lightbox-btn-hover)}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-close{background:var(--color-lightbox-btn-bg);width:40px;height:40px;color:var(--color-lightbox-btn-text);font-size:var(--text-lg);cursor:pointer;z-index:10001;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex;position:absolute;top:16px;right:16px}.lightbox-close:hover{background:var(--color-lightbox-btn-hover)}.lightbox-info{padding:var(--space-4) 70px var(--space-4) var(--space-5);background:var(--color-lightbox-gradient-top);color:var(--color-lightbox-btn-text);z-index:10001;position:absolute;top:0;left:0;right:0}.lightbox-filename{font-size:15px;font-weight:var(--weight-semibold);margin-bottom:var(--space-0-5);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.lightbox-meta{font-size:var(--text-xs);color:var(--color-lightbox-text-muted);gap:var(--space-3);flex-wrap:wrap;display:flex}.lightbox-toolbar{padding:var(--space-4) var(--space-5);background:var(--color-lightbox-gradient-bottom);justify-content:center;align-items:center;gap:var(--space-2);z-index:10001;display:flex;position:absolute;bottom:0;left:0;right:0}.lightbox-toolbar button{background:var(--color-lightbox-btn-bg);color:var(--color-lightbox-btn-text);cursor:pointer;width:40px;height:40px;font-size:var(--text-md);border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s;display:flex}.lightbox-toolbar button:hover{background:var(--color-lightbox-btn-hover)}.lightbox-toolbar button.active{color:var(--color-accent)}.lightbox-counter{color:var(--color-lightbox-text-faint);font-size:var(--text-sm);z-index:10001;position:absolute;bottom:16px;left:20px}@media (width<=768px){.lightbox-nav{width:36px;height:36px;font-size:var(--text-md)}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-content img,.lightbox-content video{max-width:100vw;max-height:80vh}}.music-container{padding:0;display:none}.music-container.active{display:block}.music-empty-state{text-align:center;padding:var(--space-20) var(--space-10);flex-direction:column;justify-content:center;align-items:center;min-height:calc(100dvh - 260px);display:flex}.music-empty-state-icon{background:var(--color-music-gradient);width:96px;height:96px;margin-bottom:var(--space-6);box-shadow:0 8px 32px var(--color-shadow-2xl);border-radius:50%;justify-content:center;align-items:center;display:flex}.music-empty-state-icon i{font-size:var(--text-5xl);color:var(--color-danger-text)}.music-empty-state-title{margin:0 0 var(--space-2);font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--color-text)}.music-empty-state-desc{margin:0 0 var(--space-7);font-size:var(--text-base);color:var(--color-text-muted);max-width:360px;line-height:var(--leading-normal)}.music-toolbar{display:none}.music-content{gap:0;height:calc(100dvh - 200px);min-height:400px;transition:height .3s;display:flex}.music-player-active .music-content{height:calc(100dvh - 290px)}.music-sidebar{border-right:1px solid var(--color-border);background:var(--color-bg-surface);flex-direction:column;width:280px;min-width:280px;display:flex}.music-sidebar-header{padding:var(--space-3-5) var(--space-4);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.music-sidebar-header h3{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0}.music-sidebar-add-btn{border-radius:var(--radius-md);background:var(--color-accent-gradient);width:28px;height:28px;color:var(--color-danger-text);font-size:var(--text-sm);cursor:pointer;box-shadow:0 2px 8px var(--color-accent-shadow);border:none;justify-content:center;align-items:center;transition:transform .15s,box-shadow .15s;display:flex}.music-sidebar-add-btn:hover{box-shadow:0 4px 12px var(--color-accent-shadow);transform:translateY(-1px)}.music-playlist-list{padding:var(--space-2);flex:1;overflow-y:auto}.music-playlist-item{align-items:center;gap:var(--space-3);padding:var(--space-2-5) var(--space-3);border-radius:var(--radius-lg);cursor:pointer;transition:background .15s;display:flex}.music-playlist-item:hover{background:var(--color-bg-hover)}.music-playlist-item.active{background:var(--color-bg-alt)}.music-playlist-icon{border-radius:var(--radius-lg);background:var(--color-music-gradient);width:36px;height:36px;color:var(--color-danger-text);font-size:var(--text-base);flex-shrink:0;justify-content:center;align-items:center;display:flex}.music-playlist-item-info{flex:1;min-width:0}.music-playlist-item-name{font-weight:var(--weight-medium);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.music-playlist-item-count{font-size:var(--text-xs);color:var(--color-text-secondary);display:block}.music-main{padding:var(--space-6);flex:1;overflow-y:auto}.music-welcome{text-align:center;height:100%;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.music-welcome i{margin-bottom:var(--space-5);color:var(--color-text-muted);font-size:64px}.music-welcome h3{margin:0 0 var(--space-2);font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--color-text)}.music-welcome p{font-size:var(--text-base);margin:0}.music-playlist-detail{max-width:900px}.music-playlist-header{align-items:center;gap:var(--space-6);margin-bottom:var(--space-6);display:flex}.music-playlist-cover{border-radius:var(--radius-2xl);background:var(--color-music-gradient);width:140px;min-width:140px;height:140px;color:var(--color-danger-text);font-size:var(--text-6xl);box-shadow:0 8px 24px var(--color-shadow-3xl);justify-content:center;align-items:center;display:flex}.music-playlist-info{flex:1}.music-playlist-info h2{margin:0 0 var(--space-2);font-size:var(--text-3xl);font-weight:var(--weight-bold);color:var(--color-text)}.music-playlist-info p{font-size:var(--text-base);color:var(--color-text-secondary);margin:0}.music-playlist-actions{gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap;align-items:center;display:flex}.music-playlist-actions .btn{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);border-radius:var(--radius-lg)}.music-playlist-actions .btn i{font-size:var(--text-sm)}.music-playlist-actions .btn:not(:has(span)){padding:var(--space-2) var(--space-3);justify-content:center;min-width:36px}.music-track-list{background:var(--color-item);border-radius:var(--radius-2xl);overflow:hidden}.music-track-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;align-items:center;display:flex}.music-track{padding:var(--space-2-5) var(--space-4);border-bottom:1px solid var(--color-border);cursor:pointer;align-items:center;transition:background .15s;display:flex}.music-track:last-child{border-bottom:none}.music-track:hover{background:var(--color-item-hover)}.music-track.selected{background:var(--color-item-selected)}.music-track-col{padding:0 var(--space-2)}.music-track-num{text-align:center;width:40px;color:var(--color-text-secondary);font-size:var(--text-base)}.music-track-title{align-items:center;gap:var(--space-3);flex:2;min-width:0;display:flex}.music-track-icon{color:var(--color-text-secondary);font-size:var(--text-base)}.music-track-name{white-space:nowrap;text-overflow:ellipsis;font-weight:var(--weight-medium);color:var(--color-text);overflow:hidden}.music-track-artist,.music-track-album{color:var(--color-text-secondary);font-size:var(--text-base);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.music-track-duration{text-align:right;width:60px;color:var(--color-text-secondary);font-size:var(--text-base);font-variant-numeric:tabular-nums}.music-empty{padding:60px var(--space-5);text-align:center;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.music-empty i{font-size:var(--text-6xl);margin-bottom:var(--space-4);color:var(--color-text-muted)}.music-empty p{font-size:var(--text-base);margin:0}.music-loading{padding:var(--space-10);color:var(--color-text-secondary);font-size:var(--text-base);justify-content:center;align-items:center;gap:var(--space-2);display:flex}.music-loading i{animation:1s linear infinite spin}.music-error{padding:var(--space-10);text-align:center;color:var(--color-error-text);flex-direction:column;justify-content:center;align-items:center;display:flex}.music-error i{font-size:var(--text-6xl);margin-bottom:var(--space-4)}.music-error p{font-size:var(--text-base);margin:0}@media (width<=768px){.music-content{flex-direction:column;height:auto}.music-sidebar{border-right:none;border-bottom:1px solid var(--color-border);width:100%;min-width:100%;max-height:200px}.music-playlist-header{flex-direction:column;align-items:flex-start}.music-playlist-cover{width:120px;height:120px;font-size:var(--text-4xl)}.music-playlist-info h2{font-size:var(--text-xl)}.music-track-album{display:none}}.music-player{background:var(--color-music-background);border-top:1px solid var(--color-border);height:90px;padding:0 var(--space-4);align-items:center;gap:var(--space-4);z-index:1000;box-shadow:0 -4px 20px var(--color-shadow);transition:transform .3s;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%)}.music-player.has-track{transform:translateY(0)}.music-player.hidden{display:none}.player-track-info{align-items:center;gap:var(--space-3);min-width:180px;max-width:240px;display:flex}.player-album-art{border-radius:var(--radius-lg);background:var(--color-music-gradient);width:56px;height:56px;color:var(--color-danger-text);font-size:var(--text-xl);flex-shrink:0;justify-content:center;align-items:center;display:flex}.player-track-details{flex-direction:column;min-width:0;display:flex}.player-track-name{font-weight:var(--weight-medium);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;max-width:150px;overflow:hidden}.player-track-artist{font-size:var(--text-xs);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;max-width:150px;overflow:hidden}.player-controls{align-items:center;gap:var(--space-2);flex-direction:column;flex:1;max-width:600px;display:flex}.player-buttons{align-items:center;gap:var(--space-2);display:flex}.player-btn{cursor:pointer;padding:var(--space-2);color:var(--color-text-secondary);font-size:var(--text-md);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex}.player-btn:hover{color:var(--color-text);background:var(--color-bg-hover)}.player-btn.active{color:var(--color-text)}.player-btn-main{background:var(--color-text);font-size:21px;color:var(--color-danger-text)!important}.player-btn-main:hover{background:var(--color-text-dark);transform:scale(1.05)}.player-btn-small{padding:var(--space-1-5);font-size:var(--text-base)}.player-progress{align-items:center;gap:var(--space-2);width:100%;display:flex}.player-time{font-size:var(--text-2xs);color:var(--color-text-secondary);font-variant-numeric:tabular-nums;min-width:40px}.player-time-current{text-align:right}.player-time-total{text-align:left}.player-progress-bar{background:var(--color-border);border-radius:var(--radius-xs);cursor:pointer;flex:1;height:4px;position:relative;overflow:visible}.player-progress-fill{background:var(--color-text);border-radius:var(--radius-xs);width:0;height:100%;transition:width .1s linear}.player-progress-handle{background:var(--color-text);opacity:0;width:12px;height:12px;box-shadow:0 2px 4px var(--color-shadow-xl);border-radius:50%;transition:opacity .2s;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.player-progress-bar:hover .player-progress-handle{opacity:1}.player-progress-bar:hover .player-progress-fill{height:6px;margin-top:-1px}.player-extra{align-items:center;gap:var(--space-2);justify-content:flex-end;min-width:160px;display:flex}.player-close-btn{opacity:.5;margin-left:var(--space-1);transition:opacity .15s}.player-close-btn:hover{opacity:1}.player-volume-slider{align-items:center;width:80px;display:flex}#player-volume-input{-webkit-appearance:none;appearance:none;background:var(--color-border);border-radius:var(--radius-xs);cursor:pointer;width:100%;height:4px}#player-volume-input::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;background:var(--color-text);cursor:pointer;border-radius:50%;width:12px;height:12px}#player-volume-input::-moz-range-thumb{background:var(--color-text);cursor:pointer;border:none;border-radius:50%;width:12px;height:12px}.player-queue{background:var(--color-music-background);border:1px solid var(--color-border);border-radius:var(--radius-2xl);width:320px;max-height:400px;box-shadow:0 8px 30px var(--color-shadow-md);z-index:1001;flex-direction:column;display:flex;position:fixed;bottom:100px;right:16px;overflow:hidden}.player-queue:after{content:"";background:var(--color-music-background);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);z-index:-1;width:14px;height:14px;position:absolute;bottom:-8px;right:60px;transform:rotate(45deg)}.player-queue.hidden{display:none}.player-queue-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.player-queue-header h3{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--color-text);margin:0}.player-queue-list{padding:var(--space-2);flex:1;overflow-y:auto}.player-queue-item{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-lg);cursor:pointer;transition:background .15s;display:flex}.player-queue-item:hover{background:var(--color-bg-hover)}.player-queue-item.active{background:var(--color-bg-alt)}.queue-item-num{text-align:center;width:20px;font-size:var(--text-xs);color:var(--color-text-secondary)}.player-queue-item.active .queue-item-num{color:var(--color-text);font-weight:var(--weight-semibold)}.queue-item-info{flex-direction:column;flex:1;min-width:0;display:flex}.queue-item-name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-text);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.queue-item-artist{font-size:var(--text-2xs);color:var(--color-text-secondary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.queue-item-duration{font-size:var(--text-2xs);color:var(--color-text-secondary)}.queue-item-remove{padding:var(--space-1);cursor:pointer;color:var(--color-text-secondary);opacity:0;background:0 0;border:none;transition:opacity .15s}.player-queue-item:hover .queue-item-remove{opacity:1}.queue-item-remove:hover{color:var(--color-error-text)}.player-queue-empty{padding:var(--space-10) var(--space-5);text-align:center;color:var(--color-text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.player-queue-empty i{font-size:var(--text-4xl);margin-bottom:var(--space-3);color:var(--color-text-muted)}.music-track.playing{background:var(--color-item-active)}.music-track.playing.selected{background:var(--color-item-selected)}.music-track.playing .music-track-name{color:var(--color-text)}.track-num-text.hidden{display:none}.track-play-icon{color:var(--color-text);display:none}.player-btn.repeat-one i{position:relative}.player-btn.repeat-one i:after{content:"1";font-size:8px;position:absolute;top:0;right:0}@media (width<=768px){.music-player{height:70px;padding:0 var(--space-2);gap:var(--space-2)}.music-player-active .music-content{height:calc(100dvh - 270px)}.player-track-info{min-width:auto;max-width:120px}.player-album-art{width:44px;height:44px;font-size:var(--text-md)}.player-track-name{max-width:70px;font-size:var(--text-xs)}.player-track-artist{max-width:70px;font-size:10px}.player-controls{max-width:none}.player-buttons{gap:var(--space-1)}.player-btn{padding:var(--space-1-5);font-size:var(--text-base)}.player-btn-main{width:36px;height:36px;font-size:var(--text-md)}.player-extra{min-width:auto}.player-volume-slider{display:none}.player-queue{width:auto;left:8px;right:8px}}.music-track-drag{cursor:grab;width:28px;color:var(--color-text-secondary);opacity:0;flex:0 0 28px;justify-content:center;align-items:center;transition:opacity .15s;display:flex}.music-track-header .music-track-drag{cursor:default}.music-track:hover .music-track-drag{opacity:.6}.music-track-drag:active{cursor:grabbing}.music-track.dragging{opacity:.35;background:var(--color-bg-hover)}.music-track.drag-over{border-top:2px solid var(--color-accent-hover);margin-top:-2px}.music-track-actions{flex:0 0 36px;justify-content:center;align-items:center;width:36px;display:flex}.music-track-remove-btn{color:var(--color-text-secondary);cursor:pointer;padding:var(--space-1) var(--space-1-5);border-radius:var(--radius-sm);opacity:0;background:0 0;border:none;font-size:.85rem;transition:opacity .15s,color .15s}.music-track:hover .music-track-remove-btn{opacity:1}.music-track-remove-btn:hover{color:var(--color-danger-text);background:var(--color-danger-bg)}.music-playlist-cover{cursor:pointer;position:relative;overflow:hidden}.music-cover-img{object-fit:cover;border-radius:inherit;width:100%;height:100%}.music-cover-overlay{background:var(--color-shadow-4xl);color:var(--color-danger-text);opacity:0;border-radius:inherit;justify-content:center;align-items:center;font-size:1.1rem;transition:opacity .2s;display:flex;position:absolute;inset:0}.music-playlist-cover:hover .music-cover-overlay{opacity:1}.music-public-badge{align-items:center;gap:var(--space-1);padding:var(--space-0-5) var(--space-2);background:var(--color-music-public-bg);color:var(--color-text);border-radius:var(--radius-2xl);margin-top:var(--space-1);font-size:.72rem;display:inline-flex}.music-public-badge.hidden{display:none}#music-toggle-public-btn.active{color:var(--color-text);background:var(--color-item-active)}.music-shares-overlay{background:var(--color-shadow-4xl);z-index:10000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.music-shares-panel{background:var(--color-music-background);border-radius:var(--radius-2xl);width:420px;max-width:90vw;max-height:80vh;box-shadow:0 8px 32px var(--color-shadow-md);flex-direction:column;display:flex}.music-shares-header{padding:var(--space-3-5) var(--space-5);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.music-shares-header h3{align-items:center;gap:var(--space-2);margin:0;font-size:.95rem;display:flex}.music-shares-close-btn{cursor:pointer;color:var(--color-text-secondary);padding:var(--space-1);font-size:var(--text-md);background:0 0;border:none}.music-shares-close-btn:hover{color:var(--color-text)}.music-shares-body{padding:var(--space-3) var(--space-5);flex:1;min-height:60px;overflow-y:auto}.music-shares-loading{text-align:center;padding:var(--space-5);color:var(--color-text-secondary)}.music-shares-empty{text-align:center;color:var(--color-text-secondary);padding:var(--space-4) 0;margin:0}.music-share-item{align-items:center;gap:var(--space-2-5);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);display:flex}.music-share-item:last-child{border-bottom:none}.music-share-user{align-items:center;gap:var(--space-1-5);flex:1;font-size:.88rem;display:flex}.music-share-perm{color:var(--color-text-secondary);font-size:.78rem}.music-share-remove-btn{cursor:pointer;color:var(--color-text-secondary);padding:var(--space-1);background:0 0;border:none;transition:color .15s}.music-share-remove-btn:hover{color:var(--color-danger-text)}.music-shares-add{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.music-shares-input{min-width:120px;padding:var(--space-1-5) var(--space-2-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-surface);color:var(--color-text);flex:1;font-size:.88rem}.music-shares-input:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-ring);outline:none}.music-shares-write-label{align-items:center;gap:var(--space-1);color:var(--color-text-secondary);white-space:nowrap;font-size:.78rem;display:flex}.music-picker-overlay{z-index:9999;background:var(--color-shadow-4xl);opacity:0;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:fixed;inset:0}.music-picker-overlay.active{opacity:1}.music-picker-modal{background:var(--color-music-background);border-radius:var(--radius-2xl);width:min(560px,94vw);max-height:min(620px,85vh);box-shadow:0 12px 40px var(--color-shadow-xl);flex-direction:column;transition:transform .2s;display:flex;overflow:hidden;transform:translateY(12px)}.music-picker-overlay.active .music-picker-modal{transform:translateY(0)}.music-picker-header{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.music-picker-header h3{font-size:var(--text-md);font-weight:var(--weight-semibold);color:var(--color-text);margin:0}.music-picker-header h3 i{margin-right:var(--space-2);color:var(--color-primary)}.music-picker-close{cursor:pointer;color:var(--color-text-muted);padding:0 var(--space-1);font-size:22px;line-height:var(--leading-none);background:0 0;border:none}.music-picker-close:hover{color:var(--color-text)}.music-picker-search{padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--color-border);position:relative}.music-picker-search i{color:var(--color-text-muted);font-size:var(--text-sm);position:absolute;top:50%;left:32px;transform:translateY(-50%)}.music-picker-search input{width:100%;padding:var(--space-2) var(--space-3) var(--space-2) var(--space-8);border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:var(--text-sm);background:var(--color-bg-surface);color:var(--color-text);outline:none}.music-picker-search input:focus{border-color:var(--color-accent)}.music-picker-list{padding:var(--space-1) 0;flex:1;min-height:200px;overflow-y:auto}.music-picker-loading,.music-picker-empty{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-5);color:var(--color-text-muted);font-size:var(--text-sm);display:flex}.music-picker-item{align-items:center;gap:var(--space-2-5);padding:var(--space-2) var(--space-5);cursor:pointer;font-size:var(--text-sm);color:var(--color-text);transition:background .1s;display:flex}.music-picker-item:hover{background:var(--color-item-hover)}.music-picker-item.selected{background:var(--color-item-selected)}.music-picker-item input[type=checkbox]{accent-color:var(--color-primary);flex-shrink:0;width:16px;height:16px}.music-picker-item i.fa-file-audio{color:var(--color-primary);font-size:var(--text-base);flex-shrink:0}.music-picker-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.music-picker-size{font-size:var(--text-xs);color:var(--color-text-muted);flex-shrink:0}.music-picker-footer{padding:var(--space-3) var(--space-5);border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.music-picker-selected-count{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:var(--weight-medium)}.music-picker-actions{gap:var(--space-2);display:flex}