@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_2fe1ab3d-module__-T-KAq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_2fe1ab3d-module__-T-KAq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--bg-primary:#fff;--bg-secondary:#f0f4f9;--bg-surface-subtle:#f8f9fa;--bg-hover-strong:#00000014;--bg-hover-light:#f1f3f4;--bg-hover-row:#eef0f4;--bg-hover-card:#e4e8ed;--bg-hover-3dot:#dbdde0;--bg-drop-hover:rgba(var(--accent-rgb), .08);--bg-selected:#c2e7ff;--bg-selected-border:#a8d4f5;--bg-toggle:#e8eaed;--overlay-bg:#00000040;--accent-rgb:26, 115, 232;--accent:#1a73e8;--accent-hover:#1557b0;--accent-cyan:#0891b2;--success:#188038;--error:#d93025;--error-bg:#fce8e6;--error-border:#f5c6c2;--text-primary:#1f1f1f;--text-secondary:#5f6368;--text-tertiary:#80868b;--text-menu:#3c4043;--text-active:#001d35;--text-on-accent:#fff;--border-medium:#dadce0;--border-soft:#e8eaed;--preview-placeholder:#b4b7ba;--radius-sm:3px;--radius-md:4px;--shadow-md:0 1px 3px 0 #3c40434d, 0 4px 8px 3px #3c404326;--shadow-lg:0 4px 8px 3px #3c404326, 0 1px 3px #3c40434d;--shadow-popover:0 2px 6px #3c40434d, 0 6px 16px 4px #3c404326;--shadow-focus:0 0 0 3px var(--bg-selected);--shadow-toggle:0 1px 2px #3c404333;--file-container-gutter:16px;--scrollbar-w:8px;--scrollbar-thumb:#00000026;--scrollbar-thumb-hover:#00000040;--scrollbar-gutter:var(--scrollbar-w);--font-2xs:10px;--font-xs:11px;--font-sm:12px;--font-md:13px;--font-base:14px;--font-lg:18px;--font-xl:22px;--header-height:50px;--sidebar-width:240px;--panel-width:340px;--header-dropdown-w-wide:400px;--modal-w:400px;--modal-w-wide:540px;--modal-w-settings:675px;--settings-rail-w:180px;--settings-modal-h:415px;--modal-w-usage:1030px;--usage-modal-h:625px;--settings-gutter:var(--file-container-gutter);--dialog-title-band:calc(var(--header-height) - 1px);--dialog-subtitle-font:calc(var(--font-lg) - 2px);--move-tree-h:340px;--gap-shell:7px;--logo-glyph:36px;--control-sm:28px;--control-md:32px;--control-lg:36px;--input-h:40px;--new-btn-height:38px;--rail-icon-indent:16px;--control-row-height:44px;--sel-pill-inset:calc((var(--control-row-height) - var(--control-md) - 2 * var(--space-4)) / 2);--inline-edit-pull:calc(var(--file-container-gutter) - var(--scrollbar-gutter));--list-row-height:48px;--data-table-inset:12px;--grid-sort-pad-top:8px;--icon-xs:12px;--icon-sm:14px;--icon-16:16px;--icon-md:18px;--icon-lg:22px;--icon-nav:20px;--spinner-size:52px;--spinner-border:5px;--glyph-96:96px;--glyph-56:56px;--glyph-48:48px;--glyph-36:36px;--nudge-panel-title:5px;--nudge-breadcrumb-overflow:-5px;--nudge-breadcrumb-chevron:0px;--nudge-list-header:0px;--nudge-recency-label:0px;--recency-card-gap:12px;--space-4:4px;--space-6:6px;--space-7:7px;--space-8:8px;--space-10:10px;--space-12:12px;--space-14:14px;--space-16:16px;--space-18:18px;--space-20:20px;--space-24:24px;--space-28:28px;--space-32:32px;--space-60:60px;--space-100:100px;--avatar-profile:calc(3 * var(--control-md) + 3 * var(--space-6));--avatar-md:48px;--avatar-sm:24px;--avatar-initial-sm:15px;--popover-w:200px;--popover-w-wide:220px;--avatar-dropdown-w:250px;--menu-w:calc(var(--sidebar-width) - 2px - 2 * var(--space-12));--login-card-w:360px;--search-max-w:720px;--settings-control-w:220px;--settings-action-w:96px;--empty-text-w:300px;--detail-label-w:96px;--view-toggle-w:34px;--chip-x-size:23px;--tree-chevron-h:22px;--integration-logo:40px;--usage-col-name-min:275px;--usage-col:120px;--usage-col-started:168px;--app-min-width:calc(2.5 * var(--panel-width) + var(--sidebar-width) + 3 * var(--gap-shell) + 2px + 30px);--app-scrollbar-h:14px;--header-logo-width:calc(var(--sidebar-width) + var(--gap-shell));--header-dropdown-drop:calc((var(--header-height) - var(--control-lg)) / 2 + 3px)}[data-density=compact]{--font-2xs:10px;--font-xs:11px;--font-sm:12px;--font-md:12px;--font-base:13px;--font-lg:16px;--font-xl:20px;--header-height:45px;--sidebar-width:220px;--panel-width:310px;--header-dropdown-w-wide:360px;--avatar-dropdown-w:225px;--avatar-md:44px;--modal-w:360px;--modal-w-wide:490px;--modal-w-settings:620px;--settings-rail-w:165px;--settings-modal-h:380px;--modal-w-usage:930px;--usage-modal-h:572px;--move-tree-h:300px;--gap-shell:6px;--logo-glyph:32px;--control-sm:26px;--control-md:30px;--control-lg:34px;--input-h:36px;--new-btn-height:36px;--control-row-height:40px;--list-row-height:44px;--grid-sort-pad-top:6px;--icon-xs:11px;--icon-sm:13px;--icon-16:15px;--icon-md:16px;--icon-lg:20px;--icon-nav:18px;--spinner-size:46px;--spinner-border:4px;--glyph-96:80px;--glyph-56:48px;--glyph-48:40px;--glyph-36:32px;--nudge-panel-title:5px;--nudge-breadcrumb-overflow:-4px;--nudge-breadcrumb-chevron:-1px;--nudge-list-header:1px;--nudge-recency-label:0px;--recency-card-gap:11px;--space-4:4px;--space-6:5px;--space-7:6px;--space-8:6px;--space-10:8px;--space-12:10px;--space-14:11px;--space-16:13px;--space-18:14px;--space-20:16px;--space-24:19px;--space-28:22px;--space-32:26px;--space-60:46px;--space-100:72px;--file-container-gutter:12px;--scrollbar-w:6px;--scrollbar-gutter:var(--scrollbar-w);--login-card-w:324px;--avatar-sm:22px;--avatar-initial-sm:14px;--integration-logo:36px;--popover-w:184px;--popover-w-wide:202px;--settings-control-w:200px;--settings-action-w:88px;--detail-label-w:88px;--view-toggle-w:32px;--chip-x-size:21px;--usage-col-name-min:250px;--usage-col:108px;--usage-col-started:150px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{height:100%;font-family:var(--font-inter), "Google Sans", "Roboto", -apple-system, BlinkMacSystemFont, sans-serif;font-size:var(--font-base);color:var(--text-primary);background:var(--bg-secondary);-webkit-font-smoothing:antialiased;line-height:1.5;overflow:auto hidden}@supports not selector(::-webkit-scrollbar-thumb){html{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent}}::-webkit-scrollbar{width:var(--scrollbar-w);height:var(--scrollbar-w)}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:calc(var(--scrollbar-w) / 2)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}body::-webkit-scrollbar:horizontal{height:var(--app-scrollbar-h)}body::-webkit-scrollbar-track:horizontal{background:var(--bg-primary);border-top:1px solid var(--border-medium)}body::-webkit-scrollbar-thumb:horizontal{background:var(--scrollbar-thumb);background-clip:padding-box;border:1px solid #0000;border-top-width:2px;border-radius:0}body::-webkit-scrollbar-thumb:horizontal:hover{background:var(--scrollbar-thumb-hover);background-clip:padding-box}::selection{background:var(--accent);color:#fff}.icon-xs{width:var(--icon-xs);height:var(--icon-xs)}.icon-sm{width:var(--icon-sm);height:var(--icon-sm)}.icon-16{width:var(--icon-16);height:var(--icon-16)}.icon-md{width:var(--icon-md);height:var(--icon-md)}.icon-lg{width:var(--icon-lg);height:var(--icon-lg)}.icon-nav{width:var(--icon-nav);height:var(--icon-nav)}.icon-glyph-96{width:var(--glyph-96);height:var(--glyph-96)}.icon-glyph-56{width:var(--glyph-56);height:var(--glyph-56)}.icon-glyph-48{width:var(--glyph-48);height:var(--glyph-48)}.icon-glyph-36{width:var(--glyph-36);height:var(--glyph-36)}.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}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.context-menu-item:focus-visible,.new-menu-item:focus-visible,.avatar-dropdown-item:focus-visible,.filter-dropdown-item:focus-visible,.sort-dropdown-item:focus-visible,.breadcrumb-dropdown-item:focus-visible{background:var(--bg-hover-light);outline:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
.portal-root{height:100%;min-width:var(--app-min-width);background:var(--bg-secondary);flex-direction:row;display:flex;overflow:hidden}.portal-main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.portal-body{flex:1;display:flex;overflow:hidden}.portal-content{background:var(--bg-primary);border:1px solid var(--border-medium);margin:var(--gap-shell);border-radius:0;flex-direction:column;flex:1;display:flex;overflow:hidden}.file-scroll-area{flex:1;overflow:hidden auto}
.context-menu{min-width:var(--menu-w);background:var(--bg-primary);box-shadow:var(--shadow-md);border-radius:var(--radius-md);padding:var(--space-6) 0;z-index:100;animation:.1s fadeInMenu;position:fixed}.context-menu-item{align-items:center;gap:var(--space-12);width:100%;padding:var(--space-8) var(--space-16);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;line-height:1.5;transition:background .1s;display:flex}.context-menu-item:hover{background:var(--bg-hover-light)}.context-menu-item:disabled{opacity:.4;cursor:default}.context-menu-item:disabled:hover{background:0 0}.context-menu-item.danger{color:var(--error)}.context-menu-item.danger:hover{background:var(--error-bg)}.context-menu-separator{background:var(--border-medium);height:1px;margin:var(--space-4) 0}.view-toggle{background:var(--bg-toggle);border-radius:var(--radius-md);padding:var(--space-4);align-items:center;gap:2px;display:flex}.view-toggle-btn{width:var(--view-toggle-w);height:var(--control-sm);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:all .15s;display:flex}.view-toggle-btn.active{background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-toggle)}.view-toggle-btn:not(.active):hover{color:var(--text-primary)}.icon-btn{width:var(--control-lg);height:var(--control-lg);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s;display:flex}.icon-btn:hover{background:var(--bg-toggle)}.icon-btn.active{background:var(--bg-selected);color:var(--accent)}.user-avatar{width:var(--control-lg);height:var(--control-lg);border-radius:var(--radius-md);background:linear-gradient(135deg, var(--accent), var(--accent-cyan));color:var(--text-on-accent);font-size:var(--avatar-initial-sm);cursor:pointer;border:none;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;transition:opacity .15s;display:flex}.user-avatar:hover{opacity:.85}.modal-overlay{background:var(--overlay-bg);z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-dialog{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--space-24);width:var(--modal-w);box-shadow:var(--shadow-lg);animation:.15s fadeIn}.modal-header{justify-content:space-between;align-items:flex-start;gap:var(--space-14);margin-bottom:var(--space-16);display:flex}.modal-header>.icon-btn{flex-shrink:0}.modal-dialog h3{font-size:var(--font-lg);color:var(--text-primary);margin-bottom:var(--space-16);font-weight:600}.modal-header>h3{margin-bottom:0}.modal-dialog input{width:100%;height:var(--input-h);padding:0 var(--space-16);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-base);color:var(--text-primary);outline:none;font-family:inherit;transition:all .15s}.modal-dialog input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.modal-actions{justify-content:flex-end;gap:var(--space-12);margin-top:var(--space-20);display:flex}.btn-primary{padding:var(--space-8) var(--space-24);border-radius:var(--radius-md);background:var(--accent);color:var(--text-on-accent);font-size:var(--font-base);cursor:pointer;border:none;font-family:inherit;font-weight:600;transition:background .15s}.btn-primary:hover{background:var(--accent-hover)}.btn-danger{padding:var(--space-8) var(--space-24);border-radius:var(--radius-md);background:var(--error);color:var(--text-on-accent);font-size:var(--font-base);cursor:pointer;border:none;font-family:inherit;font-weight:600;transition:filter .15s}.btn-danger:hover{filter:brightness(.93)}.btn-primary:disabled,.btn-danger:disabled,.btn-outline:disabled{opacity:.6;cursor:default}.modal-message{font-size:var(--font-base);color:var(--text-secondary);line-height:1.5}.icon-btn:disabled{opacity:.6;cursor:default}.icon-btn:disabled:hover{background:0 0}.modal-error{margin-top:var(--space-12);padding:var(--space-8) var(--space-12);border-radius:var(--radius-md);background:var(--error-bg);border:1px solid var(--error-border);color:var(--error);font-size:var(--font-md)}.request-access-modal{padding:0}.request-access-modal .modal-header{height:var(--header-height);padding:0 var(--file-container-gutter);border-bottom:1px solid var(--border-medium);align-items:center;margin-bottom:0}.request-access-modal .modal-header>h3{line-height:var(--dialog-title-band)}.request-access-body{padding:var(--file-container-gutter);gap:var(--file-container-gutter);flex-direction:column;display:flex}.request-access-body .modal-actions,.request-access-body .modal-error{margin-top:0}.move-modal{width:var(--modal-w-wide);position:relative;overflow:hidden}.move-tree{height:var(--move-tree-h);border:1px solid var(--border-medium);border-radius:var(--radius-md);max-height:calc(100vh - 220px);padding:var(--space-6);-webkit-user-select:none;user-select:none;overflow-y:auto}.move-tree-row{border-radius:var(--radius-md);padding-right:var(--space-8);align-items:center;margin-bottom:2px;display:flex}.move-tree-row:hover{background:var(--bg-hover-row)}.move-tree-row.selected{background:var(--bg-selected)}.move-tree-row.blocked:not(.selected):hover{background:0 0}.move-tree-chevron{width:var(--rail-icon-indent);height:var(--tree-chevron-h);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;display:flex}.move-tree-chevron svg{transition:transform .15s}.move-tree-chevron[aria-expanded=true] svg{transform:rotate(90deg)}.move-tree-label{align-items:center;gap:var(--space-12);min-width:0;padding:var(--space-7) 0;color:var(--text-secondary);font-size:var(--font-base);text-align:left;cursor:pointer;background:0 0;border:none;flex:1;font-family:inherit;font-weight:500;display:flex}.move-tree-label>span{text-overflow:ellipsis;white-space:nowrap;color:var(--text-menu);flex:1;overflow:hidden}.move-tree-row.selected .move-tree-label,.move-tree-row.selected .move-tree-chevron{color:var(--accent)}.move-tree-row.selected .move-tree-label>span{color:var(--text-active);font-weight:600}.move-tree-row.disabled .move-tree-label,.move-tree-row.disabled .move-tree-chevron{color:var(--text-tertiary);cursor:default}.move-tree-row.disabled .move-tree-label>span{color:var(--text-tertiary)}.move-create-overlay{background:var(--overlay-bg);z-index:1;animation:.15s fadeIn;position:absolute;inset:0}.move-create-panel{background:var(--bg-primary);border-top:1px solid var(--border-medium);border-radius:var(--radius-md) var(--radius-md) 0 0;box-shadow:var(--shadow-lg);padding:var(--space-24);z-index:2;animation:.15s fadeIn;position:absolute;bottom:0;left:0;right:0}.move-modal-actions .move-newfolder-btn{margin-right:auto}.contact-modal{width:var(--modal-w-wide)}.contact-form{gap:var(--space-16);flex-direction:column;display:flex}.contact-field{gap:var(--space-6);flex-direction:column;display:flex}.contact-label{font-size:var(--font-base);color:var(--text-secondary);font-weight:600}.contact-select{width:100%;height:var(--input-h);padding:0 var(--space-16);border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--font-base);cursor:pointer;outline:none;justify-content:space-between;align-items:center;font-family:inherit;transition:all .15s;display:flex}.contact-select:hover{background:var(--bg-hover-light)}.contact-select[aria-expanded=true]{border-color:var(--accent);box-shadow:var(--shadow-focus)}.contact-select:disabled{opacity:.6;cursor:default}.contact-select svg{color:var(--text-secondary);flex-shrink:0}.contact-select-menu{background:var(--bg-primary);box-shadow:var(--shadow-md);border-radius:var(--radius-md);padding:var(--space-6) 0;z-index:30;position:absolute;top:calc(100% + 4px);left:0;right:0}.contact-select-item{align-items:center;gap:var(--space-10);width:100%;padding:var(--space-8) var(--space-16);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;transition:background .1s;display:flex}.contact-select-item:hover{background:var(--bg-hover-light)}.contact-select-item:focus-visible{background:var(--bg-hover-light);outline:none}.contact-select-item .check-icon{width:var(--icon-md);color:var(--accent);align-items:center;display:flex}.contact-select-item.is-mixed{color:var(--text-tertiary);cursor:default}.contact-select-item.is-mixed:hover{background:0 0}.contact-textarea{width:100%;padding:var(--space-10) var(--space-16);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-base);color:var(--text-primary);background:var(--bg-primary);min-height:calc(3em + 2 * var(--space-10) + 2px);resize:vertical;outline:none;font-family:inherit;line-height:1.5;transition:border-color .15s,box-shadow .15s}.contact-textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.contact-textarea:disabled{opacity:.6}.share-modal{width:var(--modal-w-wide)}.share-add-row{justify-content:flex-end;align-items:center;gap:var(--space-8);margin-top:var(--space-10);display:flex}.share-perm{flex-shrink:0}.share-perm-btn{align-items:center;gap:var(--space-4);padding:var(--space-8) var(--space-10);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--font-base);cursor:pointer;white-space:nowrap;background:0 0;border:none;outline:none;font-family:inherit;transition:background .1s,color .1s;display:flex}.share-perm-btn:hover,.share-perm-btn[aria-expanded=true]{background:var(--bg-hover-light);color:var(--text-primary)}.share-perm-btn:disabled{opacity:.6;cursor:default}.share-perm-btn svg{color:var(--text-tertiary);flex-shrink:0}.share-perm-menu{min-width:var(--menu-w);background:var(--bg-primary);box-shadow:var(--shadow-md);border-radius:var(--radius-md);padding:var(--space-6) 0}.share-section-heading{font-size:var(--font-base);color:var(--text-menu);letter-spacing:-.01em;margin:var(--space-10) 0;font-weight:600}.share-list{border:1px solid var(--border-medium);border-radius:var(--radius-md);max-height:240px;padding:var(--space-6);flex-direction:column;gap:2px;display:flex;overflow-y:auto}.share-row{align-items:center;gap:var(--space-12);padding:var(--space-8);border-radius:var(--radius-sm);display:flex}.share-avatar{width:var(--control-lg);height:var(--control-lg);font-size:var(--font-base);cursor:default;flex-shrink:0}.share-row-name{min-width:0;font-size:var(--font-base);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.share-row-role{font-size:var(--font-base);color:var(--text-secondary);padding-right:var(--space-10);flex-shrink:0}.share-empty{font-size:var(--font-md);color:var(--text-tertiary);padding:var(--space-8)}.share-requests{border:1px solid var(--border-medium);border-radius:var(--radius-md);max-height:240px;padding:var(--space-6);flex-direction:column;gap:2px;display:flex;overflow-y:auto}.share-request-row{align-items:flex-start;gap:var(--space-12);padding:var(--space-8);display:flex}.share-request-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.share-request-meta{font-size:var(--font-sm);color:var(--text-secondary)}.share-request-msg{font-size:var(--font-sm);color:var(--text-secondary);overflow-wrap:anywhere}.share-request-actions{align-items:center;gap:var(--space-8);flex-shrink:0;display:flex}.empty-state{height:100%;padding:var(--space-20) var(--space-20) var(--space-100);text-align:center;color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state p:first-of-type{font-size:var(--font-base);color:var(--text-secondary);margin-bottom:var(--space-4);font-weight:500}.empty-state p:last-of-type{font-size:var(--font-md)}.no-selection-msg{height:100%;padding:var(--space-20) var(--space-20) var(--space-60);text-align:center;color:var(--text-tertiary);flex-direction:column;justify-content:center;align-items:center;display:flex}.no-selection-msg p:first-child{font-size:var(--font-base);color:var(--text-secondary);margin-bottom:var(--space-4);font-weight:500}.no-selection-msg p:last-child{font-size:var(--font-md)}.brand-mark{align-items:center;gap:var(--space-10);display:flex}.brand-mark-chip{width:var(--logo-glyph);height:var(--logo-glyph);border-radius:var(--radius-md);background:linear-gradient(135deg, var(--accent), var(--accent-cyan));flex-shrink:0;justify-content:center;align-items:center;display:flex}.brand-mark-text{font-size:var(--font-lg);color:var(--text-secondary);white-space:nowrap;font-weight:500}.brand-mark-home{border-radius:var(--radius-md);text-decoration:none;display:flex}.auth-root{background:var(--bg-secondary);height:100%;padding:var(--space-24);justify-content:center;align-items:center;display:flex}.auth-card{width:var(--login-card-w);gap:var(--space-16);background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:var(--space-32);box-shadow:var(--shadow-md);flex-direction:column;display:flex}.auth-card>.brand-mark{align-self:center}.auth-title{font-size:var(--font-base);color:var(--text-primary);text-align:center;margin:0;font-weight:600}.folder-terminal-card{text-align:center}.folder-terminal-copy{gap:var(--space-4);flex-direction:column;display:flex}.folder-terminal-sub{font-size:var(--font-md);color:var(--text-secondary)}.folder-terminal-home{text-decoration:none}.folder-terminal-form{gap:var(--space-12);flex-direction:column;display:flex}.folder-terminal-form .modal-error{margin-top:0}.folder-terminal-actions{justify-content:flex-end;align-items:center;gap:var(--space-8);display:flex}.folder-terminal-message{width:100%;padding:var(--space-8) var(--space-12);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-base);color:var(--text-primary);text-align:left;resize:vertical;font-family:inherit;transition:border-color .15s,box-shadow .15s}.folder-terminal-message:focus{border-color:var(--accent);box-shadow:var(--shadow-focus);outline:none}.relative{position:relative}.flex-col-fill{flex-direction:column;flex:1;display:flex;overflow:hidden}.file-container-state{padding-bottom:var(--space-100);flex:1;justify-content:center;align-items:center;display:flex;overflow:hidden}.file-container-state .empty-state{height:auto;padding:0 var(--space-20)}.spinner{width:var(--spinner-size);height:var(--spinner-size);border:var(--spinner-border) solid var(--border-medium);border-top-color:var(--accent);border-radius:50%;animation:.7s linear infinite spinner-rotate}@keyframes spinner-rotate{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:1.4s}}.sort-arrow{color:var(--accent);align-items:center;transition:transform .2s;display:flex}.sort-arrow.desc{transform:rotate(180deg)}@keyframes fadeInMenu{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.data-table-header{margin:var(--nudge-list-header) calc(var(--file-container-gutter) - var(--scrollbar-gutter)) 0 var(--file-container-gutter);height:calc(var(--control-row-height) + 1px);-webkit-user-select:none;user-select:none;scrollbar-gutter:stable;flex-shrink:0;align-items:stretch;padding-bottom:1px;display:flex;position:relative;overflow:hidden}.data-table-header:after{content:"";background:var(--border-medium);height:1px;position:absolute;bottom:0;left:0;right:0}.data-table-sort-col{cursor:pointer;padding-left:var(--data-table-inset);border-radius:var(--radius-md) var(--radius-md) 0 0;background:0 0;border:none;align-items:center;font-family:inherit;line-height:1.5;transition:background .1s;display:flex}.data-table-sort-col:hover{background:var(--bg-hover-row)}.data-table-sort-col:focus-visible{outline-offset:-2px}.data-table-row{margin-left:var(--file-container-gutter);margin-right:calc(var(--file-container-gutter) - var(--scrollbar-gutter));height:var(--list-row-height);align-items:center;padding-top:2px;transition:background .1s;display:flex;position:relative}.data-table-row:after{content:"";background:var(--border-medium);height:1px;position:absolute;bottom:0;left:0;right:0}.data-table-row:hover{background:var(--bg-hover-row)}.data-table-truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.data-table-header .sort-arrow{flex-shrink:0}
.portal-header{height:var(--header-height);min-height:var(--header-height);background:var(--bg-primary);border-bottom:1px solid var(--border-medium);flex-shrink:0;align-items:center;padding:0;display:flex}.portal-header-logo{padding-left:var(--gap-shell);width:var(--header-logo-width);min-width:var(--header-logo-width);flex-shrink:0;align-items:center;display:flex}.portal-search-wrap{max-width:var(--search-max-w);padding:0 var(--space-16) 0 var(--gap-shell);flex:1}.portal-search{width:100%;position:relative}.portal-search input{width:100%;height:var(--control-lg);border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-secondary);font-size:var(--font-base);color:var(--text-primary);outline:none;padding:0 40px;font-family:inherit;transition:all .2s}.portal-search input::placeholder{color:var(--text-tertiary)}.portal-search input:focus{background:var(--bg-primary);border-color:var(--accent);box-shadow:none}.portal-search .search-icon{color:var(--text-secondary);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.search-clear-btn{width:var(--control-sm);height:var(--control-sm);position:absolute;top:50%;right:4px;transform:translateY(-50%)}.portal-header-right{align-items:center;gap:var(--space-4);padding-right:var(--gap-shell);flex-shrink:0;margin-left:auto;display:flex}.portal-header-right .user-avatar{margin-left:4px}.avatar-dropdown{top:calc(100% + var(--header-dropdown-drop));width:var(--avatar-dropdown-w);background:var(--bg-primary);box-shadow:var(--shadow-popover);border-radius:var(--radius-md);padding:0 0 var(--space-6);z-index:40;animation:.12s fadeInMenu;position:absolute;right:0;overflow:hidden}.avatar-dropdown-header{text-align:center;padding:var(--space-18) var(--space-16) var(--space-16);flex-direction:column;align-items:center;display:flex}.avatar-dropdown-avatar{width:var(--avatar-md);height:var(--avatar-md);font-size:var(--font-lg);margin-bottom:var(--space-10);cursor:default}.avatar-dropdown-name{max-width:100%;font-size:var(--font-base);color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.3;overflow:hidden}.avatar-dropdown-email{max-width:100%;font-size:var(--font-sm);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;line-height:1.3;overflow:hidden}.avatar-dropdown-separator{background:var(--border-medium);height:1px;margin:var(--space-4) 0}.avatar-dropdown-item{align-items:center;gap:var(--space-12);width:100%;padding:var(--space-8) var(--space-16);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;font-weight:500;line-height:1.5;transition:background .1s;display:flex}.avatar-dropdown-item:hover{background:var(--bg-hover-light)}.header-dropdown{top:calc(100% + var(--header-dropdown-drop));background:var(--bg-primary);box-shadow:var(--shadow-popover);border-radius:var(--radius-md);padding:0 0 var(--space-6);z-index:40;animation:.12s fadeInMenu;position:absolute;overflow:hidden}.header-dropdown-title{padding:var(--space-12) var(--space-16) var(--space-10);font-size:var(--font-base);color:var(--text-primary);font-weight:600}.header-dropdown-empty{align-items:center;gap:var(--space-8);padding:var(--space-28) var(--space-16);color:var(--text-tertiary);font-size:var(--font-md);flex-direction:column;display:flex}
.portal-sidebar{width:var(--sidebar-width);min-width:var(--sidebar-width);max-width:var(--sidebar-width);background:var(--bg-primary);border:1px solid var(--border-medium);margin:var(--gap-shell) 0 var(--gap-shell) var(--gap-shell);-webkit-user-select:none;user-select:none;z-index:5;flex-direction:column;flex-shrink:0;align-self:stretch;display:flex;overflow:visible}.sidebar-new-wrap{padding:var(--space-12) var(--space-14) var(--space-8) var(--space-12);position:relative}.sidebar-new-btn{align-items:center;gap:calc(var(--space-12) + 1px);height:var(--new-btn-height);padding:0 var(--space-20) 0 calc(var(--rail-icon-indent) - 2px);border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-medium);box-shadow:none;color:var(--text-menu);font-size:var(--font-base);cursor:pointer;font-family:inherit;font-weight:500;transition:background .15s,border-color .15s;display:flex}.sidebar-new-btn:hover{background:var(--bg-toggle);border-color:var(--text-tertiary)}.sidebar-nav{padding:var(--space-8) var(--space-12);flex:1;overflow-y:auto}.sidebar-nav-item{align-items:center;gap:var(--space-12);width:100%;padding:var(--space-7) var(--space-16) var(--space-7) var(--rail-icon-indent);border-radius:var(--radius-md);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;text-align:left;background:0 0;border:none;margin-bottom:2px;font-family:inherit;font-weight:500;transition:background .15s;display:flex}.sidebar-nav-item:hover{background:var(--bg-hover-row)}.sidebar-nav-item.active{background:var(--bg-selected);color:var(--text-active);font-weight:600}.sidebar-tree-row{border-radius:var(--radius-md);width:100%;padding-right:var(--space-16);align-items:center;margin-bottom:2px;display:flex}.sidebar-tree-row:hover{background:var(--bg-hover-row)}.sidebar-tree-row.active{background:var(--bg-selected)}.sidebar-tree-row.drop-hover{background:var(--bg-drop-hover);outline:2px solid var(--accent);outline-offset:-2px}.sidebar-tree-chevron{width:var(--rail-icon-indent);height:var(--tree-chevron-h);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-family:inherit;display:flex}.sidebar-tree-chevron svg{transition:transform .15s}.sidebar-tree-chevron[aria-expanded=true] svg{transform:rotate(90deg)}.sidebar-tree-label{align-items:center;gap:var(--space-12);min-width:0;padding:var(--space-7) 0;color:var(--text-secondary);font-size:var(--font-base);text-align:left;cursor:pointer;background:0 0;border:none;flex:1;font-family:inherit;font-weight:500;display:flex}.sidebar-tree-label>span{text-overflow:ellipsis;white-space:nowrap;color:var(--text-menu);flex:1;overflow:hidden}.sidebar-tree-label.row-denied{cursor:default}.sidebar-tree-row.active .sidebar-tree-label,.sidebar-tree-row.active .sidebar-tree-chevron{color:var(--accent)}.sidebar-tree-row.active .sidebar-tree-label>span{color:var(--text-active);font-weight:600}.new-menu{top:calc(var(--space-12) + var(--new-btn-height) + var(--space-4));left:var(--space-12);right:var(--space-12);background:var(--bg-primary);box-shadow:var(--shadow-popover);border-radius:var(--radius-md);padding:var(--space-6) 0;z-index:20;animation:.15s fadeInMenu;position:absolute}.new-menu-item{align-items:center;gap:var(--space-12);width:100%;padding:var(--space-7) var(--space-16) var(--space-7) var(--rail-icon-indent);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;transition:background .1s;display:flex}.new-menu-item:hover{background:var(--bg-hover-light)}.new-menu-item:disabled{opacity:.4;cursor:default}.new-menu-item:disabled:hover{background:0 0}.new-menu-separator{background:var(--border-medium);height:1px;margin:var(--space-4) 0}
.portal-titlebar{padding:13px var(--file-container-gutter) 7px var(--file-container-gutter);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.titlebar-left,.breadcrumb-trail{align-items:center;gap:var(--space-6);display:flex}.breadcrumb-title{font-family:inherit;line-height:1.2;font-size:var(--font-xl);color:var(--text-primary);cursor:default;padding:var(--space-4) var(--space-8);border-radius:var(--radius-md);letter-spacing:-.01em;background:0 0;border:none;align-items:center;font-weight:500;display:inline-flex}.breadcrumb-chevron{color:var(--text-tertiary);transform:translateY(var(--nudge-breadcrumb-chevron));align-items:center;display:flex}.breadcrumb-link{font-family:inherit;line-height:1.2;font-size:var(--font-xl);color:var(--text-secondary);cursor:pointer;padding:var(--space-4) var(--space-8);border-radius:var(--radius-md);letter-spacing:-.01em;background:0 0;border:none;align-items:center;font-weight:500;transition:background .15s;display:inline-flex}.breadcrumb-link:hover{background:var(--bg-hover-row)}.breadcrumb-link.drop-hover{background:var(--bg-drop-hover);outline:2px solid var(--accent);outline-offset:-2px}.breadcrumb-overflow-btn{padding:var(--space-4) var(--space-8);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-xl);letter-spacing:1px;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;font-weight:700;transition:background .15s;display:flex}.breadcrumb-overflow-btn span{transform:translateY(var(--nudge-breadcrumb-overflow));display:inline-block}.breadcrumb-overflow-btn:hover{background:var(--bg-hover-row)}.breadcrumb-overflow-btn.active{background:var(--bg-selected)}.breadcrumb-dropdown{min-width:var(--popover-w);background:var(--bg-primary);box-shadow:var(--shadow-md);border-radius:var(--radius-md);padding:var(--space-6) 0;z-index:30;animation:.1s fadeInMenu;position:absolute;top:calc(100% + 6px);left:0}.breadcrumb-dropdown-item{align-items:center;gap:var(--space-10);width:100%;padding:var(--space-8) var(--space-16);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;font-weight:500;transition:background .1s;display:flex}.breadcrumb-dropdown-item:hover{background:var(--bg-hover-light)}.titlebar-right{align-items:center;gap:var(--space-4);display:flex}.filter-row{align-items:center;gap:var(--space-8);padding:0 var(--file-container-gutter);height:var(--control-row-height);flex-shrink:0;display:flex}.filter-chip-btn{align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-12);border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--bg-primary);font-size:var(--font-base);color:var(--text-menu);cursor:pointer;white-space:nowrap;font-family:inherit;font-weight:500;display:inline-flex;position:relative}.filter-chip-btn:hover{background:var(--bg-hover-light)}.filter-chip-btn.active{background:var(--bg-selected);border-color:var(--bg-selected);color:var(--text-active)}.filter-chip-btn .chip-x,.filter-chip-btn .chip-chevron{width:var(--chip-x-size);height:var(--chip-x-size);margin-block:-4px;margin-right:calc(var(--space-6) - var(--space-12));flex-shrink:0;justify-content:center;align-items:center;display:flex}.filter-chip-btn .chip-x{border-radius:var(--radius-sm);cursor:pointer;transition:background .1s}.filter-chip-btn .chip-x:hover{background:var(--bg-hover-strong)}.clear-filters-btn{font-size:var(--font-base);color:var(--text-secondary);cursor:pointer;padding:calc(var(--space-6) + 1px) var(--space-12);border-radius:var(--radius-md);background:0 0;border:none;font-family:inherit;font-weight:500;transition:background .15s}.clear-filters-btn:hover{background:var(--bg-toggle)}.filter-dropdown{width:var(--popover-w);background:var(--bg-primary);box-shadow:var(--shadow-md);border-radius:var(--radius-md);padding:var(--space-6) 0;z-index:30;position:absolute;top:calc(100% + 4px);left:0}.filter-dropdown-item{align-items:center;gap:var(--space-10);width:100%;padding:var(--space-8) var(--space-16);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;transition:background .1s;display:flex}.filter-dropdown-item:hover{background:var(--bg-hover-light)}.filter-dropdown-item .check-icon{width:var(--icon-md);color:var(--accent);align-items:center;display:flex}.selection-toolbar{padding:0 var(--file-container-gutter);height:var(--control-row-height);flex-shrink:0;align-items:center;display:flex}.selection-toolbar-inner{align-items:center;gap:var(--space-8);width:100%;padding:var(--space-4) var(--space-10);border-radius:var(--radius-md);background:var(--bg-toggle);display:flex}.sel-actions{align-items:center;gap:var(--space-8);display:flex}.sel-icon-btn{width:var(--control-md);height:var(--control-md);border-radius:var(--radius-md);color:var(--text-menu);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sel-icon-btn:hover{background:var(--bg-hover-strong)}.sel-icon-btn:disabled{opacity:.4;cursor:default}.sel-icon-btn:disabled:hover{background:0 0}.selection-count{font-size:var(--font-base);color:var(--text-menu);margin-left:var(--space-4);margin-right:var(--space-8);white-space:nowrap;font-weight:500}.view-banner{justify-content:space-between;align-items:center;gap:var(--space-12);margin:7px var(--file-container-gutter) 6px var(--file-container-gutter);background:var(--bg-secondary);border:1px solid var(--border-soft);border-radius:var(--radius-md);flex-shrink:0;min-height:48px;padding:0 8px 0 14px;display:flex}.view-banner-text{font-size:var(--font-base);color:var(--text-menu)}.view-banner-btn{padding:var(--space-6) var(--space-12);border-radius:var(--radius-md);color:var(--accent);font-family:inherit;font-size:var(--font-base);cursor:pointer;white-space:nowrap;background:0 0;border:none;flex-shrink:0;font-weight:500;transition:background .15s}.view-banner-btn:hover{background:var(--bg-toggle)}.view-banner-btn:disabled{opacity:.6;cursor:default}.view-banner-btn:disabled:hover{background:0 0}.grid-sort-row{padding:var(--grid-sort-pad-top) var(--file-container-gutter) 0 var(--file-container-gutter);flex-shrink:0;align-items:center;display:flex}.sort-btn{align-items:center;gap:var(--space-4);font-family:inherit;font-size:var(--font-base);color:var(--text-menu);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;padding:6px 8px;font-weight:500;transition:background .15s;display:flex}.sort-btn:hover{background:var(--bg-toggle)}.sort-dropdown{width:var(--popover-w-wide);background:var(--bg-primary);box-shadow:var(--shadow-md);border-radius:var(--radius-md);padding:var(--space-6) 0;z-index:30;animation:.1s fadeInMenu;position:absolute;top:calc(100% + 4px);left:0}.sort-dropdown-label{padding:var(--space-6) var(--space-16);font-size:var(--font-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.sort-dropdown-item{align-items:center;gap:var(--space-12);width:100%;padding:var(--space-8) var(--space-16);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;text-align:left;background:0 0;border:none;font-family:inherit;transition:background .1s;display:flex}.sort-dropdown-item:hover{background:var(--bg-hover-light)}.sort-dropdown-item.active{color:var(--accent)}.sort-check{width:var(--icon-nav);color:var(--accent);justify-content:center;align-items:center;display:flex}
.file-card{background:var(--bg-secondary);border:1px solid var(--border-soft);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s,border-color .15s;overflow:hidden}.file-card.row-denied{cursor:default}.file-card:hover{background:var(--bg-hover-card)}.file-card.selected{background:var(--bg-selected);border-color:var(--bg-selected-border)}.file-card.drop-hover{border-color:var(--accent);background:var(--bg-drop-hover)}.file-card-header{align-items:center;gap:10px;padding:6px 8px 6px 14px;display:flex}.file-card-title{font-size:var(--font-base);color:var(--text-menu);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:500;line-height:1.2;overflow:hidden}.file-card-preview{background:var(--bg-primary);border-radius:0 0 var(--radius-sm) var(--radius-sm);aspect-ratio:4/3;justify-content:center;align-items:center;margin:0 4px 4px;display:flex;position:relative;overflow:hidden}.file-card-thumb{object-fit:contain;border-radius:0 0 var(--radius-sm) var(--radius-sm);width:100%;height:100%}.file-card-preview>svg,.list-thumb>svg,.side-panel-preview>svg{width:auto;height:55%;fill:var(--preview-placeholder);opacity:1}.list-thumb>svg{height:80%}.file-card-preview>svg.preview-line,.list-thumb>svg.preview-line,.side-panel-preview>svg.preview-line{fill:none;stroke:var(--preview-placeholder)}.file-card-preview>.preview-no-access,.list-thumb>.preview-no-access,.side-panel-preview>.preview-no-access{fill:none;height:88%;stroke:var(--preview-placeholder);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.preview-denied>img,.preview-denied>svg:not(.preview-no-access){opacity:.45}.three-dot-btn{width:var(--control-lg);height:var(--control-lg);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.three-dot-btn:hover{background:var(--bg-hover-3dot)}.recency-group-header{font-size:var(--font-base);color:var(--text-menu);padding:4px 0 var(--recency-card-gap) 8px;font-weight:500;line-height:20px}.recency-group-row{padding:11px calc(var(--file-container-gutter) - var(--scrollbar-gutter)) 5px calc(var(--file-container-gutter) + 12px);font-size:var(--font-base);color:var(--text-menu);align-items:center;font-weight:500;display:flex}.recency-group-row span{transform:translateY(var(--nudge-recency-label))}
.file-list-column{width:var(--list-column-width);flex-shrink:0}.list-header-cell{font-size:var(--font-base);color:var(--text-menu);white-space:nowrap;background:0 0;border:none;align-items:center;gap:4px;min-width:0;padding:4px 0;font-family:inherit;font-weight:500;transition:color .15s;display:flex}.data-table-sort-col .list-header-cell{cursor:pointer}.data-table-sort-col .list-header-cell:hover{color:var(--text-primary)}.file-list-row{cursor:pointer;-webkit-user-select:none;user-select:none}.file-list-row.row-denied{cursor:default}.file-list-row.selected{background:var(--bg-selected)}.file-list-row.drop-hover{background:var(--bg-drop-hover);outline:2px solid var(--accent);outline-offset:-2px}.list-col-name{width:auto;min-width:0;padding-left:var(--data-table-inset);flex:1;align-items:center;gap:10px;display:flex}.file-list-row .list-col-name .data-table-truncate{font-size:var(--font-base);color:var(--text-primary);line-height:1.2}.list-thumb{height:calc(var(--list-row-height) - 1px);aspect-ratio:4/3;flex-shrink:0;justify-content:center;align-self:flex-start;align-items:center;margin-top:-2px;display:flex;position:relative;overflow:hidden}.list-thumb-img{object-fit:contain;width:100%;height:100%}.list-col-owner{font-size:var(--font-base);color:var(--text-menu);padding-left:var(--data-table-inset);align-items:center;gap:8px;display:flex;overflow:hidden}.list-col-owner .user-avatar{flex-shrink:0}.list-col-date,.list-col-activity,.list-col-location{font-size:var(--font-base);color:var(--text-menu);padding-left:var(--data-table-inset);align-items:center;display:flex;overflow:hidden}.list-col-sort{justify-content:center;align-items:center;display:flex}.list-col-sort-compact{justify-content:flex-end}.list-col-sort-compact .sort-header-btn{width:var(--control-lg);justify-content:center;padding:0}.list-col-sort-compact .sort-label{display:none}.file-list-row .list-col-sort .three-dot-btn{width:var(--control-lg);height:var(--control-lg)}.sort-header-btn{color:var(--text-menu);cursor:pointer;border-radius:var(--radius-md);font-size:var(--font-base);height:var(--control-lg);background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-family:inherit;font-weight:500;transition:background .15s;display:flex}.sort-header-btn:focus-visible{outline-offset:-2px}.sort-header-btn:hover{background:var(--bg-toggle)}.sort-header-btn.active{background:var(--bg-selected);color:var(--text-active)}
.portal-side-panel{width:var(--panel-width);min-width:var(--panel-width);max-width:var(--panel-width);background:var(--bg-secondary);height:100%;padding:var(--gap-shell) var(--gap-shell) 0 0;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.side-panel-inner{background:var(--bg-primary);border:1px solid var(--border-medium);height:100%;margin-bottom:var(--gap-shell);border-radius:0;flex-direction:column;display:flex;overflow:hidden}.side-panel-header{justify-content:space-between;align-items:flex-start;gap:var(--space-14);height:calc(13px + var(--control-lg) + 7px);padding:13px var(--file-container-gutter) 0;flex-shrink:0;display:flex}.side-panel-header-title{align-items:flex-start;gap:var(--space-10);min-width:0;padding-top:var(--nudge-panel-title);flex:1;display:flex}.side-panel-header-title span{font-size:var(--font-lg);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.side-panel-content{scrollbar-gutter:stable;padding:var(--sel-pill-inset) calc(var(--file-container-gutter) - var(--scrollbar-gutter)) var(--file-container-gutter) var(--file-container-gutter);flex:1;overflow:hidden auto}.side-panel-preview{aspect-ratio:4/3;background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-md);width:100%;margin-bottom:var(--space-24);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.side-panel-thumb{object-fit:contain;width:100%;height:100%}.detail-row{margin-bottom:var(--space-10);font-size:var(--font-base);display:flex}.detail-row .detail-label{width:var(--detail-label-w);color:var(--text-secondary);flex-shrink:0}.detail-row .detail-value{color:var(--text-primary)}.detail-section-heading{font-size:var(--font-base);color:var(--text-menu);letter-spacing:-.01em;padding-bottom:var(--space-8);margin-bottom:var(--space-12);border-bottom:1px solid var(--border-medium);font-weight:600}.detail-row-name .detail-value{flex:1;min-width:0}.detail-access{margin-bottom:var(--space-24)}.access-facepile{align-items:center;gap:var(--space-6);margin-bottom:var(--space-10);display:flex}.access-face{width:var(--control-lg);height:var(--control-lg);font-size:var(--font-base);cursor:default;flex-shrink:0}.access-face-more{background:var(--bg-toggle);color:var(--text-secondary);cursor:pointer}.access-face-more:hover{background:var(--border-medium)}.access-summary{font-size:var(--font-base);color:var(--text-secondary);line-height:1.4}.access-manage-btn{margin-top:var(--space-12)}.detail-description{margin-top:var(--space-24)}.inline-edit-display{width:calc(100% + 2 * var(--inline-edit-pull));text-align:left;font-family:inherit;font-size:var(--font-base);color:var(--text-primary);border-radius:var(--radius-sm);padding:6px calc(var(--inline-edit-pull) - 1px);margin:-7px calc(-1 * var(--inline-edit-pull));cursor:text;white-space:pre-wrap;overflow-wrap:anywhere;background:0 0;border:1px solid #0000;line-height:1.5;transition:border-color .15s;display:block}.inline-edit-display:hover{border-color:var(--border-medium)}.inline-edit-empty{color:var(--text-tertiary)}.inline-edit-readonly{cursor:default}.inline-edit-readonly:hover{border-color:#0000}.inline-edit-input{width:calc(100% + 2 * var(--inline-edit-pull));font-family:inherit;font-size:var(--font-base);color:var(--text-primary);background:var(--bg-primary);border:1px solid var(--accent);border-radius:var(--radius-sm);padding:6px calc(var(--inline-edit-pull) - 1px);margin:-7px calc(-1 * var(--inline-edit-pull));resize:vertical;line-height:1.5;display:block}
.settings-modal{width:var(--modal-w-settings);flex-direction:column;padding:0;display:flex}.settings-modal .modal-header{height:var(--header-height);padding:0 var(--settings-gutter);border-bottom:1px solid var(--border-medium);flex-shrink:0;align-items:center;margin-bottom:0}.settings-modal .modal-header>h3{line-height:var(--dialog-title-band)}.settings-modal-body{min-height:0;height:var(--settings-modal-h);max-height:calc(100vh - 220px);display:flex}.settings-modal-rail{width:var(--settings-rail-w);padding:var(--space-12) var(--space-8);border-right:1px solid var(--border-medium);flex-direction:column;flex-shrink:0;display:flex;overflow-y:auto}.settings-modal-rail .sidebar-nav-item{padding-left:var(--space-8)}.settings-modal-pane{scrollbar-gutter:stable;min-width:0;padding:calc(var(--space-12) + var(--space-7)) calc(var(--settings-gutter) - var(--scrollbar-gutter)) var(--settings-gutter) var(--settings-gutter);flex:1;overflow:hidden auto}.settings-subsection{flex-direction:column;display:flex}.settings-subsection-heading{font-size:var(--font-base);color:var(--text-primary);letter-spacing:-.01em;padding-bottom:var(--space-8);margin-bottom:var(--space-8);border-bottom:1px solid var(--border-medium);font-weight:600}.settings-subsection>.settings-rows>:first-child,.settings-subsection>.settings-list>:first-child{padding-top:0}.settings-form{gap:var(--space-20);flex-direction:column;display:flex}.settings-row .settings-row-control,.settings-row-stacked .settings-row-control{width:var(--settings-control-w);height:var(--control-md);padding:0 var(--space-12);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-base);color:var(--text-primary);background:var(--bg-primary);outline:none;flex-shrink:0;font-family:inherit;transition:border-color .15s,box-shadow .15s}.settings-row-stacked .settings-row-control{width:100%}.settings-row .settings-row-control:focus,.settings-row-stacked .settings-row-control:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.settings-row .settings-row-control[readonly]{background:var(--bg-surface-subtle);color:var(--text-secondary);cursor:default}.settings-profile-head{align-items:flex-start;gap:var(--space-24);margin-top:calc(-1 * (var(--space-6) + (var(--control-md) - 1.5 * var(--font-base)) / 2));display:flex}.settings-profile-fields{flex:1;min-width:0}.settings-profile-photo{flex-shrink:0}.settings-avatar-btn{border-radius:var(--radius-md);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;line-height:0;position:relative}.settings-avatar-photo{width:var(--avatar-profile);height:var(--avatar-profile);font-size:calc(var(--avatar-profile) / 2.5);cursor:inherit}.settings-avatar-edit{border-radius:var(--radius-md);background:var(--overlay-bg);color:var(--text-on-accent);opacity:0;justify-content:center;align-items:center;transition:opacity .15s;display:flex;position:absolute;inset:0}.settings-avatar-btn:hover .settings-avatar-edit,.settings-avatar-btn:focus-visible .settings-avatar-edit,.settings-avatar-btn:hover .settings-avatar-photo{opacity:1}.settings-rows,.settings-list{flex-direction:column;display:flex}.settings-row{align-items:center;gap:var(--space-16);padding:var(--space-6) 0;display:flex}button.settings-btn{height:var(--control-md);min-width:var(--settings-action-w);padding:0 var(--space-20);flex-shrink:0;justify-content:center;align-items:center;display:flex}.settings-row-text{flex:1;min-width:0}.settings-row-label{font-size:var(--font-base);color:var(--text-primary);font-weight:500;display:block}.settings-row-desc{font-size:var(--font-sm);color:var(--text-secondary);margin-top:2px;line-height:1.4;display:block}.settings-rows .settings-row-label{color:var(--text-secondary);font-weight:400}.settings-row-stacked{gap:var(--space-6);padding:var(--space-6) 0;flex-direction:column;display:flex}.settings-row-stacked .settings-row-label{min-height:var(--control-md);color:var(--text-menu);align-items:center;font-weight:500;display:flex}.settings-textarea{width:100%;min-height:calc(3em + 2 * var(--space-8) + 2px);padding:var(--space-8) var(--space-12);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-family:inherit;font-size:var(--font-base);color:var(--text-primary);background:var(--bg-primary);resize:vertical;outline:none;line-height:1.5;transition:border-color .15s,box-shadow .15s}.settings-textarea:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.settings-integration-header{align-items:center;gap:var(--space-14);padding-bottom:var(--space-8);margin-bottom:var(--space-8);border-bottom:1px solid var(--border-medium);display:flex}.settings-integration-name{font-size:var(--font-base);color:var(--text-primary);letter-spacing:-.01em;font-weight:600}.settings-subsection-action{align-self:flex-end}.settings-integration-logo{width:var(--integration-logo);height:var(--integration-logo);flex-shrink:0}.settings-row-lead{align-items:center;gap:var(--space-14);flex:1;min-width:0;display:flex}.settings-row-lead>svg{flex-shrink:0}.settings-team-empty{padding:var(--space-32) var(--space-20);flex-direction:column;align-items:center;display:flex}.settings-team-glyph{margin-bottom:var(--space-12);opacity:.4;display:flex}.settings-team-heading{font-weight:600;font-size:var(--font-base);color:var(--text-primary);margin-bottom:var(--space-4)}.settings-team-desc{font-size:var(--font-md);color:var(--text-secondary);text-align:center;max-width:var(--empty-text-w);margin-bottom:var(--space-16)}.btn-outline{padding:var(--space-7) var(--space-20);border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--bg-primary);color:var(--text-menu);font-size:var(--font-base);cursor:pointer;font-family:inherit;font-weight:500;transition:background .15s,border-color .15s}.btn-outline:hover{background:var(--bg-hover-light);border-color:var(--text-tertiary)}.btn-outline-danger{border-color:var(--error-border);color:var(--error)}.btn-outline-danger:hover{background:var(--error-bg);border-color:var(--error)}
.usage-modal{width:var(--modal-w-usage);flex-direction:column;padding:0;display:flex}.usage-modal .modal-header{align-items:center;gap:var(--space-16);height:var(--header-height);padding:0 var(--file-container-gutter);border-bottom:1px solid var(--border-medium);flex-shrink:0;grid-template-columns:1fr auto 1fr;margin-bottom:0;display:grid}.usage-modal .modal-header>h3{line-height:var(--dialog-title-band)}.usage-modal .modal-header>.icon-btn{justify-self:end}.usage-tabs{align-self:stretch;display:flex}.usage-tab{height:100%;padding:0 var(--space-16);font-family:inherit;font-size:var(--dialog-subtitle-font);font-weight:500;line-height:var(--dialog-title-band);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;transition:color .15s;display:flex;position:relative}.usage-tab:hover{color:var(--text-primary)}.usage-tab[aria-selected=true]{color:var(--accent)}.usage-tab[aria-selected=true]:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.usage-modal-body{min-height:0;height:var(--usage-modal-h);flex-direction:column;max-height:calc(100vh - 220px);display:flex}.usage-modal .filter-row{margin-top:var(--space-8)}.usage-export-btn{align-items:center;gap:var(--space-6);padding:var(--space-6) var(--space-12) var(--space-6) var(--space-6);background:var(--bg-secondary);margin-left:auto;display:inline-flex}.usage-export-btn:hover{background:var(--bg-toggle)}.usage-export-btn>svg{margin-block:-4px}.usage-header-cell{align-items:center;gap:var(--space-4);font-size:var(--font-base);color:var(--text-menu);padding:var(--space-4) 0;white-space:nowrap;min-width:0;font-weight:500;transition:color .15s;display:flex}.data-table-sort-col:hover .usage-header-cell{color:var(--text-primary)}.usage-list-row>span{font-size:var(--font-base);color:var(--text-menu);padding-left:var(--data-table-inset);align-items:center;display:flex;overflow:hidden}.usage-list-row .jobs-row-name,.usage-list-row .usage-col-month{line-height:1.2}.usage-col-month{flex:1;min-width:0}.usage-col-num{width:var(--usage-col);flex-shrink:0}.usage-list-row .usage-col-num{font-variant-numeric:tabular-nums}.usage-list-body{scrollbar-gutter:stable;flex:1;min-height:0;overflow:hidden auto}.jobs-col-name{min-width:var(--usage-col-name-min);flex:1}.jobs-col-started{width:var(--usage-col-started);flex-shrink:0}.jobs-col-type,.jobs-col-duration,.jobs-col-hours,.jobs-col-status{width:var(--usage-col);flex-shrink:0}.usage-list-row .jobs-row-name{color:var(--text-primary);font-weight:500}.usage-list-row .jobs-col-hours{font-variant-numeric:tabular-nums}.usage-status{align-items:center;gap:var(--space-6);min-width:0;font-weight:500;display:inline-flex}.usage-status.finished{color:var(--success)}.usage-status.failed{color:var(--error)}.usage-status.cancelled{color:var(--text-secondary)}.usage-status-glyph{width:var(--icon-sm);flex-shrink:0;justify-content:center;align-items:center;display:flex}
.login-field{gap:var(--space-6);flex-direction:column;display:flex}.login-field span{font-size:var(--font-base);color:var(--text-secondary);font-weight:600}.login-field input{width:100%;height:var(--input-h);padding:0 var(--space-14);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--font-base);color:var(--text-primary);outline:none;font-family:inherit;transition:border-color .15s,box-shadow .15s}.login-field input:focus{border-color:var(--accent);box-shadow:var(--shadow-focus)}.login-error{font-size:var(--font-md);color:var(--error);text-align:center;margin:0}.login-submit{height:var(--input-h)}

