.toast{position:fixed;top:20px;right:20px;display:flex;align-items:center;gap:12px;padding:16px 20px;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;z-index:9999;min-width:300px;max-width:500px;animation:slideInRight .3s ease-out}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left:4px solid #28a745}.toast-error{border-left:4px solid #dc3545}.toast-icon{font-size:24px;flex-shrink:0}.toast-success .toast-icon{color:#28a745}.toast-error .toast-icon{color:#dc3545}.toast-message{flex:1;font-size:14px;color:#000;line-height:1.4}.toast-close{background:transparent;border:none;color:#999;font-size:16px;cursor:pointer;padding:4px;flex-shrink:0;transition:color .2s}.toast-close:hover{color:#000}@media(max-width:768px){.toast{top:10px;right:10px;left:10px;min-width:auto;max-width:none}}.confirm-dialog-overlay{position:fixed;inset:0;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3000;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.confirm-dialog-content{background:#fff;border-radius:12px;width:90%;max-width:420px;box-shadow:0 10px 40px #0000004d;animation:slideUp .2s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.confirm-dialog-header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 20px 0}.confirm-dialog-icon{width:48px;height:48px;border-radius:50%;background:#fff5f5;display:flex;align-items:center;justify-content:center;font-size:24px;color:#dc3545}.confirm-dialog-close{background:transparent;border:none;font-size:20px;color:#666;cursor:pointer;padding:4px;transition:all .2s}.confirm-dialog-close:hover{color:#000}.confirm-dialog-body{padding:20px}.confirm-dialog-body h3{margin:0 0 12px;font-size:20px;color:#000;font-weight:600}.confirm-dialog-body p{margin:0;font-size:14px;color:#666;line-height:1.5;word-break:break-word}.confirm-dialog-actions{display:flex;gap:10px;padding:0 20px 20px}.btn-confirm-cancel,.btn-confirm-action{flex:1;padding:12px 20px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-confirm-cancel{background:#f5f5f5;color:#000}.btn-confirm-cancel:hover{background:#e0e0e0}.btn-confirm-action{background:#000;color:#fff}.btn-confirm-action:hover{background:#333}.btn-confirm-action.danger{background:#dc3545}.btn-confirm-action.danger:hover{background:#c82333}@media(max-width:768px){.confirm-dialog-content{width:90%;margin:20px}.confirm-dialog-body h3{font-size:18px}.confirm-dialog-body p{font-size:13px}.confirm-dialog-actions{flex-direction:column}.btn-confirm-cancel,.btn-confirm-action{width:100%}}.folder-browser-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:3000}.folder-browser-modal{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 10px 40px #0000004d;position:relative;overflow:hidden}.fb-header{padding:16px 20px;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center}.fb-header h3{margin:0;font-size:18px;color:#000}.fb-close{background:transparent;border:none;font-size:18px;color:#666;cursor:pointer;padding:5px;border-radius:4px;transition:all .2s}.fb-close:hover{background:#f0f0f0;color:#000}.fb-path-bar{padding:12px 20px;border-bottom:1px solid #f0f0f0}.fb-manual-path{display:flex;gap:8px}.fb-manual-path input{flex:1;padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:13px;font-family:monospace}.fb-manual-path input:focus{outline:none;border-color:#000}.fb-manual-path button{padding:8px 16px;background:#000;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500}.fb-current-path{padding:10px 20px;background:#f8f8f8;display:flex;align-items:center;gap:8px;font-size:13px;border-bottom:1px solid #f0f0f0}.fb-path-label{color:#666;font-weight:500}.fb-path-value{font-family:monospace;color:#000;word-break:break-all;flex:1}.fb-writable-badge{background:#e8f5e9;color:#2e7d32;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;white-space:nowrap}.fb-readonly-badge{background:#fff3e0;color:#e65100;padding:2px 8px;border-radius:10px;font-size:11px;font-weight:500;white-space:nowrap}.fb-new-folder-btn{background:none;border:1px solid #ddd;border-radius:6px;padding:3px 10px;font-size:12px;cursor:pointer;display:flex;align-items:center;gap:4px;color:#333;white-space:nowrap;transition:all .2s}.fb-new-folder-btn:hover{background:#000;color:#fff;border-color:#000}.fb-new-folder-bar{padding:10px 20px;border-bottom:1px solid #f0f0f0;background:#fafafa}.fb-new-folder-form{display:flex;align-items:center;gap:8px}.fb-new-folder-form input{flex:1;padding:7px 10px;border:1px solid #ddd;border-radius:6px;font-size:13px}.fb-new-folder-form input:focus{outline:none;border-color:#000}.fb-new-folder-form button[type=submit]{padding:7px 14px;background:#000;color:#fff;border:none;border-radius:6px;font-size:13px;cursor:pointer;white-space:nowrap}.fb-new-folder-form button[type=submit]:disabled{background:#ccc;cursor:not-allowed}.fb-new-folder-cancel{background:none;border:none;color:#999;cursor:pointer;padding:5px;font-size:14px;display:flex;align-items:center}.fb-new-folder-cancel:hover{color:#000}.fb-folder-list{flex:1;overflow-y:auto;padding:8px 0;min-height:200px;max-height:400px}.fb-folder-item{display:flex;align-items:center;gap:0;padding:0 20px;transition:background .15s;font-size:14px}.fb-folder-item:hover{background:#f5f5f5}.fb-folder-click{display:flex;align-items:center;gap:10px;flex:1;padding:10px 0;cursor:pointer}.fb-delete-btn{background:none;border:none;color:#ccc;cursor:pointer;padding:6px 8px;font-size:13px;border-radius:4px;transition:all .2s;flex-shrink:0}.fb-delete-btn:hover{color:#d32f2f;background:#fce4ec}.fb-go-back{color:#666;font-style:italic}.fb-icon{font-size:16px;flex-shrink:0}.fb-folder-icon{color:#f9a825}.fb-folder-name{flex:1;word-break:break-all}.fb-no-write{opacity:.6}.fb-lock{font-size:11px;color:#999;background:#f0f0f0;padding:2px 6px;border-radius:8px}.fb-loading{padding:40px;text-align:center;color:#666;display:flex;align-items:center;justify-content:center;gap:8px}.fb-spin{animation:fbSpin 1s linear infinite}@keyframes fbSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fb-error{padding:20px;text-align:center;color:#d32f2f;font-size:14px}.fb-empty{padding:30px;text-align:center;color:#999;font-size:14px}.fb-actions{padding:16px 20px;border-top:1px solid #e5e5e5;display:flex;gap:10px;justify-content:flex-end}.fb-btn-cancel,.fb-btn-select{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.fb-btn-cancel{background:#f5f5f5;color:#000}.fb-btn-cancel:hover{background:#e0e0e0}.fb-btn-select{background:#000;color:#fff;display:flex;align-items:center;gap:8px}.fb-btn-select:hover{background:#333}.fb-btn-select:disabled{background:#ccc;cursor:not-allowed}.fb-confirm-overlay{position:absolute;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;border-radius:12px;z-index:10}.fb-confirm-dialog{background:#fff;border-radius:10px;padding:24px;max-width:360px;width:90%;box-shadow:0 8px 30px #0003}.fb-confirm-dialog h4{margin:0 0 10px;font-size:16px;color:#000}.fb-confirm-dialog p{margin:0 0 20px;font-size:13px;color:#555;line-height:1.5}.fb-confirm-actions{display:flex;gap:10px;justify-content:flex-end}.fb-confirm-cancel{padding:8px 16px;background:#f5f5f5;color:#000;border:none;border-radius:6px;cursor:pointer;font-size:13px}.fb-confirm-cancel:hover{background:#e0e0e0}.fb-confirm-delete{padding:8px 16px;background:#d32f2f;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;display:flex;align-items:center;gap:6px}.fb-confirm-delete:hover{background:#b71c1c}@media(max-width:768px){.folder-browser-modal{width:95%;max-height:85vh;border-radius:16px}.fb-header{padding:14px 16px}.fb-path-bar{padding:10px 16px}.fb-current-path{padding:8px 16px;flex-wrap:wrap}.fb-folder-item{padding:10px 16px}.fb-actions{padding:14px 16px;flex-direction:column}.fb-btn-cancel,.fb-btn-select{width:100%;justify-content:center}}.afv-container{display:flex;flex-direction:column;height:100%;background:#fff}.afv-header{display:flex;align-items:center;gap:20px;padding:16px 40px;border-bottom:1px solid #e0e0e0;background:#000;color:#fff}.afv-back-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s;white-space:nowrap}.afv-back-btn:hover{background:#fff3}.afv-user-info{display:flex;align-items:center;gap:16px;flex:1;min-width:0}.afv-user-info h2{font-size:18px;font-weight:600;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.afv-storage-badge{background:#ffffff1a;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;white-space:nowrap;border:1px solid rgba(255,255,255,.15)}.afv-breadcrumb-desktop{padding:12px 40px;background:#fff;border-bottom:1px solid #e0e0e0;display:block}.afv-breadcrumb-mobile{display:none;padding:10px 16px;background:#fff;border-bottom:1px solid #e0e0e0;align-items:center}.afv-toolbar{padding:10px 40px;border-bottom:1px solid #e0e0e0;display:flex;gap:12px;align-items:center;background:#f8f8f8}.afv-toolbar select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:13px;background:#fff;cursor:pointer}.afv-content{flex:1;overflow-y:auto;padding:20px}@media(max-width:768px){.afv-header{padding:12px 16px;gap:12px}.afv-user-info h2{font-size:15px}.afv-storage-badge,.afv-breadcrumb-desktop{display:none}.afv-breadcrumb-mobile{display:flex}.afv-toolbar{padding:10px 16px}.afv-content{padding:12px}}.user-management{padding:20px;max-width:1200px;margin:0 auto}.user-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.user-management-header h2{font-size:24px;color:#000;margin:0}.btn-add-user{background:#000;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .3s}.btn-add-user:hover{background:#000}.users-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;width:100%;display:block;max-height:calc(100vh - 200px)}.users-table{width:100%;border-collapse:collapse}.users-table thead{background:#f8f8f8;position:sticky;top:0;z-index:10}.users-table th{padding:15px;text-align:left;font-weight:600;color:#000;border-bottom:2px solid #e5e5e5;background:#f8f8f8}.users-table td{padding:15px;border-bottom:1px solid #f0f0f0}.users-table tbody tr:hover{background:#f8f8f8}.role-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500;text-transform:capitalize}.role-admin{background:#fff3e0;color:#999}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.btn-view,.btn-edit,.btn-delete{padding:6px 10px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.btn-view:hover{background:#333}.modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:85vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;border:1px solid rgba(255,255,255,.2)}.modal-header{padding:20px;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:20px;color:#000}.btn-close{background:transparent;border:none;font-size:20px;color:#666;cursor:pointer;padding:5px;transition:all .2s}.btn-close:hover{color:#000;background:#f0f0f0;border-radius:4px}.user-form{padding:20px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#000}.form-group input,.form-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #667eea1a}.form-group input[disabled]{background:#f5f5f5;cursor:not-allowed}.storage-path-input{display:flex;gap:8px}.storage-path-input input{flex:1}.btn-browse{padding:8px 14px;background:#000;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap;transition:all .2s}.btn-browse:hover{background:#333}.checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer}.checkbox-group input[type=checkbox]{width:auto;cursor:pointer}.modal-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:10px;border-top:1px solid #e5e5e5}.btn-cancel,.btn-save{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-cancel{background:#f5f5f5;color:#000}.btn-save{background:#000;color:#fff;display:flex;align-items:center;gap:8px}.btn-save:hover{background:#000}.user-management-loading{padding:40px;text-align:center;font-size:16px;color:#666}@media(max-width:768px){.user-management{padding:15px 15px 20px;overflow-x:hidden;min-height:100vh}.user-management-header{flex-direction:column;gap:15px;align-items:stretch}.btn-add-user{justify-content:center}.users-table-container{overflow-x:scroll;overflow-y:auto;-webkit-overflow-scrolling:touch;margin:0;padding:0;border-radius:8px;width:100%;max-height:calc(100vh - 180px)}.users-table{font-size:11px;min-width:700px;width:700px}.users-table th,.users-table td{padding:10px 8px;white-space:nowrap}.users-table th:first-child,.users-table td:first-child{position:sticky;left:0;background:#fff;z-index:10;box-shadow:2px 0 4px #0000000d}.users-table thead th:first-child{background:#f8f8f8;z-index:11}.users-table tbody tr:hover td:first-child{background:#f8f8f8}.user-management .modal-content{width:85%;max-height:65vh;overflow-y:auto;border-radius:16px;box-shadow:0 15px 50px #00000080;margin:20px;pointer-events:all}.user-management .modal-header{padding:15px}.user-management .modal-header h3{font-size:18px}.user-management .user-form{padding:15px}.user-management .form-group{margin-bottom:15px}.user-management .form-group label{margin-bottom:6px;font-size:14px}.user-management .form-group input,.user-management .form-group select{padding:8px;font-size:14px}.user-management .form-group small{font-size:11px;line-height:1.4}.user-management .modal-actions{flex-direction:column}.user-management .btn-cancel,.user-management .btn-save{width:100%;justify-content:center}.action-buttons{display:flex;gap:8px}.btn-edit,.btn-delete{padding:6px 10px;font-size:12px}}.share-modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000}.share-modal{background:#fff;border-radius:12px;width:90%;max-width:520px;max-height:85vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.share-modal-header{padding:20px;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center}.share-modal-header h3{margin:0;font-size:18px;color:#000;display:flex;align-items:center;gap:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-btn-close{background:transparent;border:none;font-size:20px;color:#666;cursor:pointer;padding:5px;transition:all .2s;flex-shrink:0}.share-btn-close:hover{color:#000;background:#f0f0f0;border-radius:4px}.share-tabs{display:flex;border-bottom:1px solid #e5e5e5}.share-tab{flex:1;padding:12px 16px;border:none;background:transparent;font-size:14px;font-weight:500;color:#666;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;border-bottom:2px solid transparent}.share-tab:hover{background:#f8f8f8;color:#000}.share-tab.active{color:#000;border-bottom-color:#000}.share-modal-body{padding:20px}.share-form-group{margin-bottom:16px}.share-form-group label{display:block;margin-bottom:6px;font-weight:500;color:#333;font-size:14px}.share-form-group input,.share-form-group select{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;box-sizing:border-box}.share-form-group input:focus,.share-form-group select:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #0000000d}.share-form-group small{display:block;margin-top:4px;color:#999;font-size:12px}.share-email-chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.share-email-chip{display:inline-flex;align-items:center;gap:6px;background:#000;color:#fff;padding:4px 8px 4px 12px;border-radius:20px;font-size:13px}.share-email-chip button{background:transparent;border:none;color:#ffffffb3;cursor:pointer;padding:0;font-size:10px;display:flex;align-items:center;transition:color .2s}.share-email-chip button:hover{color:#fff}.share-email-input-wrapper{position:relative}.share-suggestions-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid #ddd;border-top:none;border-radius:0 0 6px 6px;box-shadow:0 4px 12px #0000001f;z-index:100;max-height:200px;overflow-y:auto}.share-suggestion-item{display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;transition:background .15s}.share-suggestion-item:hover{background:#f5f5f5}.share-suggestion-icon{color:#999;font-size:14px;flex-shrink:0}.share-suggestion-info{display:flex;flex-direction:column;min-width:0}.share-suggestion-name{font-size:14px;font-weight:500;color:#333}.share-suggestion-email{font-size:12px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.share-btn-primary{width:100%;padding:10px 20px;background:#000;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.share-btn-primary:hover{background:#333}.share-btn-primary:disabled{opacity:.6;cursor:not-allowed}.share-users-list{margin-top:20px;border-top:1px solid #f0f0f0;padding-top:16px}.share-users-list h4{margin:0 0 12px;font-size:14px;color:#333}.share-user-item{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f8f8f8;border-radius:6px;margin-bottom:8px}.share-user-info{display:flex;align-items:center;gap:10px}.share-user-email{font-size:13px;color:#333}.share-user-access{font-size:11px;background:#e0e0e0;color:#555;padding:2px 8px;border-radius:10px;text-transform:capitalize}.share-btn-remove{background:transparent;border:none;color:#999;cursor:pointer;padding:4px;font-size:12px;transition:color .2s}.share-btn-remove:hover{color:#e53935}.share-public-status{display:flex;align-items:center;gap:8px;margin-bottom:16px;font-size:14px;font-weight:500;color:#2e7d32}.share-link-icon{font-size:18px}.share-public-url{display:flex;gap:8px;margin-bottom:12px}.share-public-url input{flex:1;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:13px;background:#f8f8f8;color:#333}.share-btn-copy{padding:10px 16px;background:#000;color:#fff;border:none;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:6px;white-space:nowrap;transition:all .2s}.share-btn-copy:hover{background:#333}.share-public-info{font-size:12px;color:#999;margin-bottom:16px}.share-btn-danger{width:100%;padding:10px 20px;background:#fff;color:#e53935;border:1px solid #e53935;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.share-btn-danger:hover{background:#e53935;color:#fff}.share-public-empty{text-align:center;padding:20px 0}.share-link-icon-large{font-size:40px;color:#ccc;margin-bottom:12px}.share-public-empty p{color:#666;font-size:14px;margin-bottom:20px}@media(max-width:768px){.share-modal{width:92%;max-height:75vh}.share-modal-header,.share-modal-body{padding:15px}.share-public-url{flex-direction:column}.share-btn-copy{justify-content:center}}.ss-management{padding:20px;max-width:100%;height:100%;display:flex;flex-direction:column}.ss-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;flex-wrap:wrap;gap:12px}.ss-header h2{margin:0;font-size:22px;display:flex;align-items:center;gap:10px;color:#1a1a2e}.ss-header-right{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.ss-drive-selector{flex-shrink:0}.ss-drive-dropdown{padding:8px 12px;border:2px solid #1976d2;border-radius:8px;background:#fff;font-size:14px;font-weight:500;color:#333;cursor:pointer;min-width:180px;outline:none}.ss-drive-dropdown:focus{box-shadow:0 0 0 2px #1976d226}.ss-disk-info{display:flex;align-items:center;gap:12px;min-width:250px}.ss-disk-bar-container{flex:1;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;min-width:120px}.ss-disk-bar{height:100%;background:linear-gradient(90deg,#4caf50,#ff9800);border-radius:4px;transition:width .3s}.ss-disk-text{font-size:13px;color:#666;white-space:nowrap}.ss-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding:10px 14px;background:#f5f5f5;border-radius:8px;flex-wrap:wrap}.ss-nav-buttons{display:flex;gap:6px;flex-shrink:0}.ss-toolbar-right{display:flex;align-items:center;gap:6px;margin-left:auto;flex-shrink:0}.ss-item-count{font-size:12px;color:#888;white-space:nowrap;padding-right:4px}.ss-sort-select{padding:6px 10px;border:1px solid #ddd;border-radius:6px;background:#fff;font-size:13px;color:#333;cursor:pointer;outline:none}.ss-btn{border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.ss-btn-nav{width:34px;height:34px;border-radius:6px;background:#fff;color:#555;font-size:14px;border:1px solid #ddd}.ss-btn-nav:hover:not(:disabled){background:#e8e8e8;color:#333}.ss-btn-nav:disabled{opacity:.4;cursor:not-allowed}.ss-btn-active{background:#1976d2!important;color:#fff!important;border-color:#1976d2!important}.ss-breadcrumbs{display:flex;align-items:center;gap:4px;font-size:14px;color:#666;overflow-x:auto;white-space:nowrap;flex:1;min-width:0}.ss-breadcrumb-clickable{cursor:pointer;color:#1976d2;padding:2px 4px;border-radius:4px}.ss-breadcrumb-clickable:hover{background:#e3f2fd}.ss-breadcrumb-separator{font-size:10px;color:#999;flex-shrink:0}.ss-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:60px 20px;color:#666}.ss-spinner{animation:ss-spin 1s linear infinite;font-size:20px}@keyframes ss-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ss-file-list{flex:1;overflow-y:auto;border:1px solid #e0e0e0;border-radius:8px}.ss-file-list-header{display:grid;grid-template-columns:1fr 100px 120px 120px;padding:10px 16px;background:#f9f9f9;border-bottom:2px solid #e0e0e0;font-weight:600;font-size:13px;color:#555;position:sticky;top:0;z-index:1}.ss-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;display:flex;align-items:center;gap:4px}.ss-sortable:hover,.ss-sort-active{color:#1976d2}.ss-sort-icon{font-size:11px}.ss-file-row{display:grid;grid-template-columns:1fr 100px 120px 120px;padding:10px 16px;border-bottom:1px solid #f0f0f0;cursor:pointer;align-items:center;transition:background .15s}.ss-file-row:hover{background:#f5f8ff}.ss-file-row-dir{font-weight:500}.ss-file-row-error{opacity:.5;cursor:default}.ss-col-name{display:flex;align-items:center;gap:10px;min-width:0}.ss-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ss-col-size,.ss-col-modified{font-size:13px;color:#777}.ss-col-actions{display:flex;gap:6px;justify-content:flex-end}.ss-permission-badge{font-size:11px;background:#ffebee;color:#c62828;padding:2px 6px;border-radius:4px;margin-left:6px;flex-shrink:0}.ss-icon{font-size:18px;flex-shrink:0}.ss-icon-folder{color:#ffc107}.ss-icon-file{color:#90a4ae}.ss-icon-pdf{color:#e53935}.ss-icon-image{color:#43a047}.ss-icon-video{color:#8e24aa}.ss-icon-audio{color:#1e88e5}.ss-icon-code{color:#00897b}.ss-icon-archive{color:#6d4c41}.ss-icon-excel{color:#2e7d32}.ss-icon-word{color:#1565c0}.ss-icon-csv{color:#558b2f}.ss-btn-action{width:30px;height:30px;border-radius:6px;font-size:13px;background:transparent}.ss-btn-view{color:#1976d2}.ss-btn-view:hover{background:#e3f2fd}.ss-btn-download{color:#2e7d32}.ss-btn-download:hover{background:#e8f5e9}.ss-btn-delete{color:#e53935}.ss-btn-delete:hover{background:#ffebee}.ss-btn-share{color:#1976d2}.ss-btn-share:hover{background:#e3f2fd}.ss-empty{text-align:center;padding:60px 20px;color:#999;font-size:15px}.ss-loading-more{display:flex;align-items:center;justify-content:center;gap:8px;padding:20px;color:#888;font-size:14px}.ss-grid-wrapper{flex:1;overflow-y:auto;border:1px solid #e0e0e0;border-radius:8px;padding:16px}.ss-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px}.ss-grid-item{background:#fff;border:1px solid #e0e0e0;border-radius:10px;overflow:hidden;cursor:pointer;transition:all .2s;position:relative}.ss-grid-item:hover{border-color:#1976d2;box-shadow:0 4px 12px #1976d21f}.ss-grid-item-error{opacity:.5;cursor:default}.ss-grid-thumbnail{width:100%;height:120px;display:flex;align-items:center;justify-content:center;background:#f8f9fa;overflow:hidden;position:relative}.ss-grid-thumb-img{width:100%;height:100%;object-fit:cover}.ss-grid-thumb-fallback{position:absolute;top:0;left:0;width:100%;height:100%;background:#f8f9fa;align-items:center;justify-content:center}.ss-grid-icon-large{font-size:48px;display:flex;align-items:center;justify-content:center}.ss-grid-icon-large .ss-icon{font-size:48px}.ss-grid-info{padding:10px 12px}.ss-grid-name{display:block;font-size:13px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#333}.ss-grid-meta{display:block;font-size:12px;color:#999;margin-top:2px}.ss-grid-actions{display:flex;gap:4px;padding:0 10px 10px;justify-content:flex-end}.ss-grid-badge{position:absolute;top:8px;right:8px}.ss-fullscreen-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#000000f2;z-index:9999;display:flex;align-items:center;justify-content:center}.ss-fullscreen-name{position:absolute;top:20px;left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:10px 20px;border-radius:20px;font-size:14px;max-width:70%;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;z-index:20}.ss-fullscreen-close{position:absolute;top:20px;right:20px;background:#0009;color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:24px;cursor:pointer;z-index:30;display:flex;align-items:center;justify-content:center;transition:background .3s}.ss-fullscreen-close:hover{background:#f00c}.ss-fullscreen-download{position:absolute;top:20px;right:70px;background:#0009;color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:16px;cursor:pointer;z-index:30;display:flex;align-items:center;justify-content:center;transition:background .3s}.ss-fullscreen-download:hover{background:#2e7d32cc}.ss-fullscreen-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#0009;color:#fff;border:none;border-radius:50%;width:50px;height:50px;font-size:20px;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:background .3s}.ss-fullscreen-arrow:hover{background:#000000d9}.ss-fullscreen-arrow-left{left:15px}.ss-fullscreen-arrow-right{right:15px}.ss-fullscreen-image{max-width:95%;max-height:90vh;object-fit:contain}.ss-fullscreen-video{max-width:95%;max-height:90vh;object-fit:contain;background:#000}.ss-fullscreen-audio{display:flex;flex-direction:column;align-items:center;gap:10px}.ss-fullscreen-audio audio{width:350px;max-width:90vw}.ss-fullscreen-counter{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;z-index:20}.ss-fullscreen-loading{position:absolute;display:flex;flex-direction:column;align-items:center;gap:15px;z-index:5}.ss-fullscreen-spinner{width:50px;height:50px;border:5px solid rgba(255,255,255,.3);border-top:5px solid white;border-radius:50%;animation:ss-spin 1s linear infinite}.ss-preview-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.ss-preview-modal{background:#fff;border-radius:12px;width:90vw;max-width:1000px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.ss-preview-header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid #e0e0e0;background:#f9f9f9}.ss-preview-header h3{margin:0;font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.ss-preview-header-actions{display:flex;gap:8px;align-items:center;flex-shrink:0}.ss-btn-close{width:34px;height:34px;border-radius:50%;background:#f0f0f0;color:#555;font-size:16px;flex-shrink:0}.ss-btn-close:hover{background:#e0e0e0;color:#333}.ss-preview-content{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:20px;min-height:300px}.ss-preview-iframe{width:100%;height:70vh;border:none}.ss-preview-text{width:100%;max-height:70vh;overflow:auto;background:#1e1e1e;color:#d4d4d4;padding:20px;border-radius:8px;font-size:13px;font-family:Fira Code,Consolas,Monaco,monospace;line-height:1.6;white-space:pre-wrap;word-break:break-word;margin:0}@media(max-width:768px){.ss-management{padding:12px}.ss-header{flex-direction:column;align-items:flex-start}.ss-header-right{width:100%;flex-direction:column}.ss-drive-dropdown,.ss-disk-info{width:100%}.ss-toolbar{gap:8px}.ss-toolbar-right{margin-left:0;width:100%;justify-content:flex-end}.ss-file-list-header{display:none}.ss-file-row{grid-template-columns:1fr auto;gap:4px;padding:12px}.ss-col-size,.ss-col-modified{display:none}.ss-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px}.ss-grid-wrapper{padding:10px}.ss-grid-thumbnail{height:90px}.ss-preview-modal{width:95vw;max-height:95vh}.ss-preview-content{padding:10px}.ss-fullscreen-arrow{width:40px;height:40px;font-size:16px}.ss-fullscreen-arrow-left{left:8px}.ss-fullscreen-arrow-right{right:8px}.ss-fullscreen-image,.ss-fullscreen-video{max-height:85vh}}.ss-grid-info-btn{position:absolute;top:6px;left:6px;background:#0009;color:#fff;border:none;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;font-size:16px;width:28px;height:28px;border-radius:50%;transition:all .2s;opacity:0}.ss-grid-item:hover .ss-grid-info-btn{opacity:1}.ss-grid-info-btn:hover{background:#000000d9;transform:scale(1.1)}.ss-file-info-modal{background:#fff;border-radius:12px;width:90%;max-width:450px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.ss-file-info-body{padding:20px}.ss-file-info-icon{display:flex;justify-content:center;margin-bottom:20px}.ss-file-info-icon .ss-icon{font-size:48px}.ss-file-info-table{width:100%;border-collapse:collapse}.ss-file-info-table tr{border-bottom:1px solid #f0f0f0}.ss-file-info-table tr:last-child{border-bottom:none}.ss-info-label{padding:10px 12px;font-weight:600;color:#333;font-size:13px;width:100px;vertical-align:top;white-space:nowrap}.ss-info-value{padding:10px 12px;color:#555;font-size:13px;word-break:break-all}.ss-info-path{font-family:monospace;font-size:12px;background:#f8f8f8;padding:8px 12px;border-radius:4px}@media(max-width:768px){.ss-grid-info-btn{opacity:1;font-size:14px;width:24px;height:24px}.ss-file-info-modal{width:92%;max-height:70vh}}.role-management{padding:20px;max-width:1200px;margin:0 auto}.role-management-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.role-management-header h2{font-size:24px;color:#000;margin:0}.btn-add-role{background:#000;color:#fff;border:none;padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .3s}.btn-add-role:hover{background:#333}.roles-table-container{background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow-x:auto;overflow-y:auto;-webkit-overflow-scrolling:touch;width:100%;display:block;max-height:calc(100vh - 200px)}.roles-table{width:100%;border-collapse:collapse}.roles-table thead{background:#f8f8f8;position:sticky;top:0;z-index:10}.roles-table th{padding:15px;text-align:left;font-weight:600;color:#000;border-bottom:2px solid #e5e5e5;background:#f8f8f8}.roles-table td{padding:15px;border-bottom:1px solid #f0f0f0}.roles-table tbody tr:hover{background:#f8f8f8}.role-name-code{background:#f0f0f0;padding:2px 8px;border-radius:4px;font-size:13px;font-family:monospace}.module-badges{display:flex;flex-wrap:wrap;gap:6px}.module-badge{background:#000;color:#fff;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:500}.no-modules{color:#999;font-size:13px;font-style:italic}.system-badge{background:#f0f0f0;color:#000;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.custom-badge{background:#fff3e0;color:#e65100;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.role-management .action-buttons{display:flex;gap:8px}.role-management .btn-edit,.role-management .btn-delete{padding:6px 10px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s}.role-management .btn-edit{background:#000;color:#fff}.role-management .btn-edit:hover{background:#333}.role-management .btn-delete{background:#000;color:#fff}.role-management .btn-delete:hover{background:#333}.role-management .modal-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:2000}.role-management .modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:85vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d;border:1px solid rgba(255,255,255,.2)}.role-management .modal-header{padding:20px;border-bottom:1px solid #e5e5e5;display:flex;justify-content:space-between;align-items:center}.role-management .modal-header h3{margin:0;font-size:20px;color:#000}.role-management .btn-close{background:transparent;border:none;font-size:20px;color:#666;cursor:pointer;padding:5px;transition:all .2s}.role-management .btn-close:hover{color:#000;background:#f0f0f0;border-radius:4px}.role-form{padding:20px}.role-form .form-group{margin-bottom:20px}.role-form .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#000}.role-form .form-group input[type=text]{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:all .2s;box-sizing:border-box}.role-form .form-group input[type=text]:focus{outline:none;border-color:#000;box-shadow:0 0 0 3px #0000000d}.role-form .form-group input[disabled]{background:#f5f5f5;cursor:not-allowed}.form-hint{display:block;margin-top:4px;font-size:12px;color:#999}.modules-checklist{display:flex;flex-direction:column;gap:12px;padding:12px;background:#f8f8f8;border-radius:8px;border:1px solid #e5e5e5}.module-checkbox{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px 12px;border-radius:6px;transition:background .2s}.module-checkbox:hover{background:#f0f0f0}.module-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#000000}.checkbox-label{font-size:14px;color:#333;font-weight:400}.role-management .modal-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:10px;border-top:1px solid #e5e5e5}.role-management .btn-cancel,.role-management .btn-save{padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.role-management .btn-cancel{background:#f5f5f5;color:#000}.role-management .btn-cancel:hover{background:#e0e0e0}.role-management .btn-save{background:#000;color:#fff;display:flex;align-items:center;gap:8px}.role-management .btn-save:hover{background:#333}.role-management-loading{padding:40px;text-align:center;font-size:16px;color:#666}@media(max-width:768px){.role-management{padding:15px 15px 20px;overflow-x:hidden;min-height:100vh}.role-management-header{flex-direction:column;gap:15px;align-items:stretch}.btn-add-role{justify-content:center}.roles-table-container{overflow-x:scroll;overflow-y:auto;-webkit-overflow-scrolling:touch;margin:0;padding:0;border-radius:8px;width:100%;max-height:calc(100vh - 180px)}.roles-table{font-size:11px;min-width:600px;width:600px}.roles-table th,.roles-table td{padding:10px 8px;white-space:nowrap}.roles-table th:first-child,.roles-table td:first-child{position:sticky;left:0;background:#fff;z-index:10;box-shadow:2px 0 4px #0000000d}.roles-table thead th:first-child{background:#f8f8f8;z-index:11}.roles-table tbody tr:hover td:first-child{background:#f8f8f8}.role-management .modal-content{width:85%;max-height:65vh;overflow-y:auto;border-radius:16px;box-shadow:0 15px 50px #00000080;margin:20px}.role-management .modal-header{padding:15px}.role-management .modal-header h3{font-size:18px}.role-form{padding:15px}.role-form .form-group{margin-bottom:15px}.role-management .modal-actions{flex-direction:column}.role-management .btn-cancel,.role-management .btn-save{width:100%;justify-content:center}.module-badges{flex-wrap:wrap}.module-badge{font-size:10px;padding:2px 8px}}.shared-with-me{padding:20px}.shared-header{display:flex;align-items:center;gap:12px;margin-bottom:24px}.shared-header h2{font-size:22px;color:#000;margin:0;display:flex;align-items:center;gap:10px}.shared-back-btn{background:#000;color:#fff;border:none;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;transition:all .2s}.shared-back-btn:hover{background:#333}.shared-tabs{display:flex;border-bottom:1px solid #e5e5e5;margin-bottom:20px}.shared-tab{flex:1;padding:12px 16px;border:none;background:transparent;font-size:14px;font-weight:500;color:#666;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;border-bottom:2px solid transparent}.shared-tab:hover{background:#f8f8f8;color:#000}.shared-tab.active{color:#000;border-bottom-color:#000}.shared-tab-count{background:#000;color:#fff;font-size:11px;padding:1px 7px;border-radius:10px;font-weight:600}.shared-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:60px 20px;color:#666;font-size:16px}.shared-spinner{animation:shared-spin 1s linear infinite}@keyframes shared-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.shared-empty{text-align:center;padding:60px 20px;color:#999}.shared-empty-icon{font-size:48px;color:#ddd;margin-bottom:16px;display:block}.shared-empty p{font-size:16px;margin:0}.shared-groups{display:flex;flex-direction:column;gap:24px}.shared-group-header{display:flex;align-items:baseline;gap:10px;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e5e5e5}.shared-group-name{font-weight:600;font-size:16px;color:#000}.shared-group-email{font-size:13px;color:#999}.shared-group-items{display:flex;flex-direction:column;gap:8px}.shared-item-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8f8f8;border-radius:8px;transition:all .2s}.shared-item-card:hover{background:#f0f0f0}.shared-item-folder{cursor:pointer}.shared-item-icon{font-size:22px;color:#555;flex-shrink:0;width:28px;display:flex;align-items:center;justify-content:center}.shared-icon-folder{color:#f9a825}.shared-item-details{flex:1;min-width:0}.shared-item-name{font-size:14px;font-weight:500;color:#000;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shared-item-meta{display:flex;align-items:center;gap:10px;margin-top:4px;font-size:12px;color:#999}.shared-access-badge{background:#e0e0e0;color:#555;padding:1px 8px;border-radius:10px;font-size:11px;text-transform:capitalize}.shared-item-size{font-size:12px;color:#999}.shared-item-actions{display:flex;gap:6px;flex-shrink:0}.shared-item-actions button{background:#000;color:#fff;border:none;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:13px;transition:all .2s}.shared-item-actions button:hover{background:#333}.shared-folder-contents{display:flex;flex-direction:column;gap:8px}.shared-preview-overlay{position:fixed;inset:0;background:#000000f2;z-index:3000;display:flex;align-items:center;justify-content:center}.shared-preview-topbar{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:linear-gradient(to bottom,rgba(0,0,0,.7),transparent);z-index:10}.shared-preview-filename{color:#fff;font-size:16px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60%}.shared-preview-topbar-actions{display:flex;gap:8px}.shared-preview-topbar-actions button{background:#ffffff26;color:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.shared-preview-topbar-actions button:hover{background:#ffffff4d}.shared-preview-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff26;color:#fff;border:none;width:48px;height:48px;border-radius:50%;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .2s}.shared-preview-arrow:hover{background:#ffffff4d}.shared-preview-arrow-left{left:16px}.shared-preview-arrow-right{right:16px}.shared-preview-image{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:4px}.shared-preview-video{max-width:90vw;max-height:85vh;background:#000}.shared-preview-audio{display:flex;flex-direction:column;align-items:center;justify-content:center}.shared-preview-audio audio{min-width:300px}.shared-preview-pdf{width:85vw;height:85vh;border:none;border-radius:4px;background:#fff}.shared-preview-counter{position:absolute;bottom:20px;left:50%;transform:translate(-50%);color:#fffc;font-size:14px;background:#00000080;padding:4px 14px;border-radius:20px}.shared-preview-loading{color:#fff;font-size:30px}.shared-system-path{font-size:11px;color:#999;font-family:monospace;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:768px){.shared-with-me{padding:15px}.shared-header h2{font-size:18px}.shared-item-card{padding:10px 12px}.shared-item-meta{flex-wrap:wrap;gap:6px}.shared-group-header{flex-direction:column;gap:2px}}.profile-dropdown{position:relative;display:inline-block}.profile-button{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#000;color:#fff;border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;transition:all .2s}.profile-button:hover{background:#333}.profile-button svg{font-size:20px}.profile-email{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-dropdown-menu{position:absolute;top:calc(100% + 8px);right:0;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:240px;z-index:3000;overflow:hidden}.profile-dropdown-header{display:flex;align-items:center;gap:12px;padding:16px;background:#f8f8f8}.profile-avatar{font-size:32px;color:#000}.profile-info{display:flex;flex-direction:column;gap:4px}.profile-name{font-size:14px;font-weight:600;color:#000}.profile-role{font-size:12px;color:#666;text-transform:capitalize}.profile-dropdown-divider{height:1px;background:#e5e5e5;margin:4px 0}.profile-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 16px;background:transparent;border:none;cursor:pointer;font-size:14px;color:#000;transition:all .2s;text-align:left}.profile-dropdown-item:hover{background:#f8f8f8}.profile-dropdown-item svg{font-size:16px;color:#666}.profile-dropdown-item.logout{color:#dc3545}.profile-dropdown-item.logout svg{color:#dc3545}.profile-dropdown-item.logout:hover{background:#fff5f5}@media(max-width:768px){.profile-email{display:none}.profile-button{padding:8px 12px}.profile-dropdown-menu{right:0;min-width:220px}}.change-password-modal{max-width:500px}.change-password-form{padding:20px}.password-input-wrapper{position:relative;display:flex;align-items:center}.password-input-wrapper input{flex:1;padding-right:40px}.btn-toggle-password{position:absolute;right:10px;background:transparent;border:none;cursor:pointer;color:#666;font-size:16px;padding:5px;display:flex;align-items:center;justify-content:center;transition:color .2s}.btn-toggle-password:hover{color:#000}.password-requirements{display:block;margin-top:6px;font-size:12px;color:#666;line-height:1.4}@media(max-width:768px){.change-password-modal{width:95%;max-height:80vh}.change-password-form{padding:15px}.form-group{margin-bottom:15px}}.modal-overlay{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.storage-settings-modal{max-width:700px;max-height:90vh}.storage-settings-content{padding:20px}.add-path-section{margin-bottom:30px;padding:20px;background:#f8f8f8;border-radius:8px}.add-path-section h4{margin:0 0 12px;font-size:16px;color:#000}.add-path-input-group{display:flex;gap:10px;margin-bottom:8px}.add-path-input-group input{flex:1;padding:10px;border:1px solid #ddd;border-radius:6px;font-size:14px}.add-path-input-group input:focus{outline:none;border-color:#000}.btn-add-path{display:flex;align-items:center;gap:8px;padding:10px 20px;background:#000;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-add-path:hover:not(:disabled){background:#333}.btn-add-path:disabled{opacity:.5;cursor:not-allowed}.path-help-text{display:block;font-size:12px;color:#666;line-height:1.4;margin-top:8px}.storage-paths-list h4{margin:0 0 16px;font-size:16px;color:#000}.loading-state{text-align:center;padding:40px;color:#666}.empty-state{text-align:center;padding:60px 20px;color:#999}.empty-state p{margin:16px 0 8px;font-size:16px;color:#666}.empty-state small{font-size:14px}.paths-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.path-card{background:#fff;border:1px solid #e5e5e5;border-radius:8px;padding:16px;transition:all .2s}.path-card:hover{box-shadow:0 4px 12px #0000001a;border-color:#ddd}.path-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.path-icon{font-size:24px;color:#000}.btn-remove-path{background:transparent;border:none;color:#dc3545;font-size:16px;cursor:pointer;padding:8px;border-radius:4px;transition:all .2s}.btn-remove-path:hover:not(:disabled){background:#fff5f5}.btn-remove-path:disabled{opacity:.5;cursor:not-allowed}.path-details{display:flex;flex-direction:column;gap:12px}.path-text{font-size:13px;font-family:monospace;color:#000;font-weight:500;word-break:break-all;padding:8px;background:#f8f8f8;border-radius:4px}.path-space-info{display:flex;flex-direction:column;gap:6px;font-size:13px}.space-row{display:flex;justify-content:space-between;align-items:center}.space-label{color:#666}.space-value{font-weight:600;color:#000}.space-value.free{color:#28a745}.storage-bar{height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden}.storage-fill{height:100%;transition:width .3s,background-color .3s}.usage-percentage{font-size:12px;color:#666;text-align:center}.path-error{padding:8px;background:#fff5f5;border:1px solid #fcc;border-radius:4px}.path-error small{color:#c33;font-size:12px}.btn-close-modal{width:100%;padding:12px;background:#000;color:#fff;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.btn-close-modal:hover{background:#333}.alert{padding:12px 16px;border-radius:6px;margin-bottom:16px;font-size:14px}.alert-error{background:#fee;color:#c33;border:1px solid #fcc}.alert-success{background:#efe;color:#3c3;border:1px solid #cfc}@media(max-width:768px){.storage-settings-modal{width:95%;max-height:70vh}.storage-settings-content,.add-path-section{padding:15px}.add-path-input-group{flex-direction:column}.btn-add-path{width:100%;justify-content:center}.paths-grid{grid-template-columns:1fr}.path-text{font-size:11px}}.dashboard{min-height:100vh;background-color:#fff}.dashboard-header{background:#000;color:#fff;padding:16px 40px;display:flex;justify-content:space-between;align-items:center;border-bottom:.5px solid rgba(255,255,255,.1)}.dashboard-header h1{font-size:22px;font-weight:600;letter-spacing:-.5px}.header-right{display:flex;align-items:center;gap:24px;margin-left:auto}.storage-info{display:flex;align-items:center;gap:12px;padding:8px 16px;background:#ffffff0d;border-radius:20px;border:.5px solid rgba(255,255,255,.1)}.storage-icon{font-size:18px;color:#fff;opacity:.9}.storage-details{display:flex;flex-direction:column;gap:4px}.storage-details span{font-size:11px;font-weight:500;letter-spacing:.3px;opacity:.9}.storage-bar{width:120px;height:4px;background:#ffffff26;border-radius:2px;overflow:hidden}.storage-fill{height:100%;background:#fff;transition:width .3s;border-radius:2px}.btn-admin,.btn-logout{padding:8px 16px;border-radius:20px;font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px;transition:all .2s;border:.5px solid rgba(255,255,255,.15);letter-spacing:.2px}.btn-admin{background:#ffffff14;color:#fff}.btn-admin:hover{background:#ffffff26;transform:scale(1.02)}.btn-shared{background:#ffffff14;color:#fff;width:36px;height:36px;padding:0;border-radius:50%;font-size:15px;display:flex;align-items:center;justify-content:center;border:.5px solid rgba(255,255,255,.15);cursor:pointer;transition:all .2s}.btn-shared:hover{background:#ffffff26;transform:scale(1.05)}.btn-shared.active{background:#ffffff40}.btn-logout{background:#ffffff14;color:#fff}.btn-logout:hover{background:#ffffff26;transform:scale(1.02)}.hamburger-menu{background:transparent;border:none;color:#fff;font-size:22px;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;transition:all .2s;margin-right:15px;border-radius:8px}.hamburger-menu:hover{background:#ffffff14;transform:scale(1.05)}.sidebar-overlay{position:fixed;inset:0;background:#00000080;z-index:999}.admin-sidebar{position:fixed;top:0;left:-300px;width:300px;height:100vh;background:#fff;box-shadow:2px 0 10px #0000001a;z-index:1000;transition:left .3s ease;display:flex;flex-direction:column}.admin-sidebar.open{left:0}.sidebar-header{padding:20px;background:#000;color:#fff;display:flex;justify-content:space-between;align-items:center}.sidebar-header h2{font-size:20px;font-weight:600;margin:0}.sidebar-close{background:transparent;border:none;color:#fff;font-size:20px;cursor:pointer;padding:5px;display:flex;align-items:center;justify-content:center;transition:all .2s}.sidebar-close:hover{background:#fff3;border-radius:4px}.sidebar-content{flex:1;overflow-y:auto;padding:20px 0}.sidebar-menu{display:flex;flex-direction:column}.sidebar-menu-item{padding:15px 20px;display:flex;align-items:center;gap:12px;cursor:pointer;transition:all .2s;font-size:16px;color:#000;border-left:3px solid transparent}.sidebar-menu-item:hover{background:#f8f8f8;border-left-color:#000}.sidebar-menu-item.active{background:#f0f0f0;border-left-color:#000;color:#000;font-weight:600}.sidebar-menu-divider{height:1px;background:#e5e5e5;margin:8px 15px}.sidebar-menu-item svg{font-size:18px;color:#000}.dashboard-content{padding:30px 40px}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding:15px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d}.toolbar-secondary{margin-bottom:15px;padding:15px 20px;background:#fff;border-radius:8px;box-shadow:0 2px 8px #0000000d}.select-all-label{display:flex;align-items:center;gap:8px;cursor:pointer;margin-left:auto;padding:8px 12px;border-radius:6px;transition:background .2s;-webkit-user-select:none;user-select:none}.select-all-label:hover{background:#667eea1a}.select-all-checkbox{width:18px;height:18px;cursor:pointer;accent-color:#000000}.select-all-text{font-size:14px;font-weight:500;color:#000}.breadcrumb{display:flex;align-items:center;gap:5px;font-size:14px;flex:1}.breadcrumb-item{cursor:pointer;color:#000;transition:color .3s}.breadcrumb-item:hover{color:#000;text-decoration:underline}.breadcrumb-separator{color:#999;margin:0 6px}.toolbar-actions{display:flex;gap:10px}.btn-action{padding:10px 20px;background:#000;color:#fff;border-radius:6px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .3s}.btn-action:hover{background:#1a1a1a;transform:translateY(-2px)}.btn-upload,.btn-upload:hover{background:#000}.items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:20px}.item{background:#fff;padding:0;border-radius:8px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;transition:all .3s;overflow:hidden;width:100%;box-sizing:border-box}.file-item{background:#f8f8f8}.file-item>*:not(:first-child){padding:0 12px}.file-item>.item-actions{padding:0 12px 12px}.folder-item{padding:0;gap:0;position:relative}.folder-item>*{padding:0!important}.folder-item .item-name{padding:12px!important}.item>div[style*="position: absolute"][style*="right: 5px"]{position:absolute!important;top:5px!important;right:5px!important}.item:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-5px)}.item-icon{font-size:48px;color:#000;cursor:pointer;padding:20px;display:flex;align-items:center;justify-content:center;flex:1}.folder-item .item-icon{color:#000}.item-name{font-weight:500;color:#000;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;padding:8px 12px!important;width:100%;box-sizing:border-box}.folder-name{text-align:center}.item-size{font-size:11px;color:#999;padding:0 12px!important}.item-actions{display:flex;gap:6px;margin-top:auto}.item-actions button{padding:8px;border-radius:4px;font-size:14px;transition:all .3s;flex:1;display:flex;align-items:center;justify-content:center;min-width:40px}.folder-actions button{padding:10px 20px;font-size:15px}.btn-view{background:#000;color:#fff}.btn-view:hover{background:#000}.btn-download{background:#000;color:#fff}.btn-download:hover{background:#000}.btn-delete{background:#000;color:#fff}.btn-delete:hover{background:#000}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:300px;padding:60px 20px;color:#999;width:100%;grid-column:1 / -1}.empty-state p{margin-bottom:10px;font-size:16px}.empty-state p:first-child{font-size:20px;font-weight:500;color:#666}.modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000;overflow:hidden;pointer-events:auto}.modal{background:#fff;padding:30px;border-radius:10px;width:90%;max-width:500px;box-shadow:0 10px 40px #0003;pointer-events:all;position:relative;z-index:1001}.modal-large{max-width:95vw;max-height:95vh;width:auto}.modal-fullscreen{position:fixed!important;top:0!important;left:0!important;max-width:100vw!important;max-height:100vh!important;width:100vw!important;height:100vh!important;padding:0!important;margin:0!important;background:#000000f2!important;border-radius:0!important;box-shadow:none!important;overflow:hidden!important}.modal-fullscreen h2{position:absolute;top:20px;left:50%;transform:translate(-50%);margin:0;font-size:16px;color:#fff;background:#0009;padding:10px 20px;border-radius:20px;z-index:20;max-width:80%;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-fullscreen .modal-actions{display:none}.modal-fullscreen .file-viewer{height:100vh;width:100vw;overflow:hidden;position:relative}.modal input[type=text],.modal input[type=number]{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:16px;margin-bottom:20px}.file-input-wrapper{margin-bottom:20px;display:flex;align-items:center;gap:12px}.file-input{display:none}.file-input-label{padding:12px 28px;background:#000;color:#fff;border:none;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #667eea4d;font-size:15px;display:inline-block}.file-input-label:hover{transform:translateY(-2px);box-shadow:0 4px 15px #667eea80}.file-input-label:active{transform:translateY(0);box-shadow:0 2px 8px #667eea4d}.file-count-badge{padding:8px 16px;background:#f0f0f0;color:#2e7d32;border-radius:20px;font-size:14px;font-weight:600;border:2px solid #000000}.selected-files{background:#f8f8f8;padding:15px;border-radius:6px;margin-bottom:20px}.selected-files p{font-weight:600;margin-bottom:10px}.selected-files ul{list-style:none;max-height:150px;overflow-y:auto}.selected-files li{padding:5px 0;font-size:14px;color:#666}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.btn-cancel{padding:10px 20px;background:#f8f8f8;color:#000;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:14px}.btn-primary{padding:10px 20px;background:#000;color:#fff;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s ease;font-size:14px}.btn-primary:hover:not(:disabled){background:#1a1a1a}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.upload-progress-modal{min-width:500px;max-width:600px}@media(max-width:768px){.upload-progress-modal{min-width:unset;max-width:unset;width:90%;max-height:80vh;overflow-y:auto}.upload-progress-modal h2{font-size:18px}}.file-viewer{margin:20px 0;max-height:600px;overflow:auto}.file-viewer img{max-width:100%;border-radius:8px}.file-viewer video{width:100%;border-radius:8px}.file-viewer iframe{width:100%;height:600px;border:none;border-radius:8px}.no-preview{text-align:center;padding:40px}.no-preview p{margin-bottom:20px;color:#666}.no-preview button{padding:10px 20px;background:#000;color:#fff;border-radius:6px;font-weight:500}.no-preview button:hover{background:#1a1a1a}@media(max-width:1024px){.dashboard-header{padding:15px 20px}.dashboard-header h1{font-size:20px}.header-right{gap:15px}.dashboard-content{padding:20px}.toolbar{flex-direction:column;gap:15px;align-items:flex-start}.toolbar-actions{width:100%;justify-content:space-between}.items-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:15px}}.toolbar-toggle{display:none;padding:10px;background:#000;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:16px;margin-bottom:10px;align-items:center;justify-content:center;gap:8px;transition:all .3s}.toolbar-toggle:hover{background:#1a1a1a}.header-title-mobile,.breadcrumb-mobile{display:none}.breadcrumb-desktop{display:block;padding:12px 40px;background:#fff;border-bottom:1px solid #e0e0e0}.toolbar-container-mobile{display:block;background:#fff;border-bottom:1px solid #e0e0e0;padding:16px 40px;box-shadow:0 2px 4px #0000000d}.toolbar-container-mobile .toolbar-secondary{margin-bottom:0;background:transparent;box-shadow:none;padding:0}.toolbar-container-mobile .toolbar-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.toolbar-container-mobile select{background:#000;border:1px solid rgba(255,255,255,.1);color:#fff;font-weight:500;padding:10px 20px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s ease}.toolbar-container-mobile select:hover{background:#1a1a1a;box-shadow:0 2px 8px #0003}.toolbar-container-mobile select option{background:#fff;color:#000;padding:10px}.toolbar-container-mobile .btn-action{background:#000;color:#fff;border:1px solid rgba(255,255,255,.1);font-weight:500;transition:all .2s ease}.toolbar-container-mobile .btn-action:hover{background:#1a1a1a;box-shadow:0 2px 8px #0003}@media(max-width:768px){.dashboard-header{padding:12px 15px;flex-direction:row;gap:10px;align-items:center;position:relative;justify-content:space-between}.header-title-desktop{display:none}.header-title-mobile{display:flex;align-items:center;gap:8px;font-size:16px;text-align:left;margin:0;flex-shrink:0}.mobile-title-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:#fff;border-radius:8px;color:#000;font-size:13px;box-shadow:0 2px 8px #0000001a}.header-right{flex-direction:row;gap:10px;align-items:center;flex:1;justify-content:flex-end;margin-left:auto}.storage-info{max-width:none;display:flex;flex-direction:row;gap:8px;padding:6px 12px;flex-shrink:1}.storage-details{display:flex;flex-direction:column;gap:2px}.storage-details span{font-size:9px;white-space:nowrap}.storage-bar{width:100px;height:3px}.storage-icon{font-size:14px}.btn-admin{display:none}.btn-logout{padding:8px;flex-shrink:0;min-width:auto;width:auto;line-height:1;border-radius:50%;background:#ffffff14;border:.5px solid rgba(255,255,255,.1)}.btn-logout svg{display:inline-block;margin:0;font-size:16px}.btn-logout .logout-text{display:none}.dashboard-content{padding:15px 10px}.breadcrumb-mobile{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;margin-bottom:12px;padding:8px 12px;background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a}.breadcrumb-mobile>div:first-child{flex:1;overflow-x:auto;white-space:nowrap}.toolbar-toggle-mobile{flex-shrink:0;background:transparent;border:none;color:#000;font-size:18px;cursor:pointer;padding:4px 8px;display:flex;align-items:center;justify-content:center}.toolbar-toggle-mobile:hover{color:#000}.breadcrumb-desktop{display:none}.toolbar-container-mobile{display:block;background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;margin-bottom:15px;padding:15px;overflow:hidden}.toolbar{display:none!important}.toolbar-secondary{flex-direction:column;gap:10px;align-items:stretch;background:transparent;padding:0}.breadcrumb{font-size:12px;flex-wrap:wrap}.select-all-label{width:100%;margin-left:0;padding:10px 0;justify-content:flex-start}.select-all-checkbox{width:20px;height:20px}.select-all-text{font-size:14px}.toolbar-toggle{display:flex}.toolbar-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.btn-action{width:100%;justify-content:center;padding:12px 16px;font-size:13px}.items-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px}.item-name{font-size:11px;padding:6px 8px!important}.item-actions{flex-direction:row;gap:4px;flex-wrap:wrap}.item-actions button{flex:1;min-width:35px;padding:8px 4px;font-size:12px}.modal{width:95%;max-width:none;padding:20px;margin:10px}.modal-large{width:95%;max-width:none}.file-viewer{max-height:400px}.file-viewer iframe{height:400px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.selected-files ul{max-height:100px}.list-header{display:none!important}.list-item{grid-template-columns:30px 1fr 28px!important;grid-template-rows:auto;gap:6px!important;padding:10px 8px!important;position:relative;border-radius:8px;margin-bottom:8px;overflow:hidden;align-items:center}.list-col-checkbox{display:flex!important;align-items:center;justify-content:center;grid-column:1;width:30px!important;padding:0!important}.list-col-checkbox input[type=checkbox]{width:15px!important;height:15px!important;margin:0!important}.list-col-name{grid-column:2;font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;min-width:0;padding:0!important}.list-col-name span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:inline-block;max-width:calc(100% - 28px);vertical-align:middle}.list-col-size,.list-col-type{display:none!important}.list-col-info{display:flex!important;align-items:center;justify-content:center;grid-column:3;width:28px!important;padding:0!important}.list-col-info button{padding:5px!important;font-size:13px!important;min-width:28px!important;width:28px!important;height:28px!important}.file-info-btn{top:3px!important;left:3px!important;font-size:14px!important;padding:2px!important}.file-checkbox-area{top:1px!important;right:1px!important;width:28px!important;height:28px!important}.file-checkbox{width:14px!important;height:14px!important}}@media(max-width:480px){.dashboard-header h1{font-size:16px}.btn-admin,.btn-logout{font-size:13px;padding:10px 14px}.breadcrumb{font-size:11px}.btn-action{font-size:13px;padding:10px 16px}.items-grid{grid-template-columns:repeat(3,1fr);gap:6px}.item-name{font-size:10px;padding:4px 6px!important}.list-col-name{font-size:13px}.list-col-size{font-size:11px}.modal{padding:15px}.modal h2{font-size:18px}.file-viewer{max-height:300px}.file-viewer iframe{height:300px}}@media(max-height:500px)and (orientation:landscape){.dashboard-header{padding:10px 15px}.dashboard-header h1{font-size:16px}.header-right{flex-direction:row;flex-wrap:wrap}.modal{max-height:90vh;overflow-y:auto}.file-viewer{max-height:250px}.file-viewer iframe{height:250px}}.items-list{background:#fff;border-radius:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.list-header{display:grid;grid-template-columns:50px 2fr 1fr 1fr 50px;gap:15px;padding:15px 20px;background:#f8f9fa;border-bottom:2px solid #e9ecef;font-weight:600;font-size:14px;color:#495057}.list-item{display:grid;grid-template-columns:50px 2fr 1fr 1fr 50px;gap:15px;padding:15px 20px;border-bottom:1px solid #e9ecef;align-items:center;transition:background .2s}.list-item:hover{background:#f8f9fa}.list-col-checkbox,.list-col-info{display:flex;align-items:center;justify-content:center}.list-col-name{display:flex;align-items:center;font-weight:500;cursor:pointer;color:#212529}.list-col-name:hover{color:#000}.list-col-type{color:#6c757d;font-size:13px;text-transform:capitalize}.list-col-size,.list-col-date{color:#6c757d;font-size:13px}.list-col-actions{display:flex;gap:8px;justify-content:flex-end}.list-col-actions button{padding:8px 12px;border:none;border-radius:4px;cursor:pointer;font-size:14px;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.list-col-actions .btn-view{background:#000;color:#fff}.list-col-actions .btn-view:hover{background:#000}.list-col-actions .btn-download{background:#000;color:#fff}.list-col-actions .btn-download:hover{background:#000}.list-col-actions .btn-delete{background:#000;color:#fff}.list-col-actions .btn-delete:hover{background:#000}.btn-info{background:#ff9800;color:#fff}.btn-info:hover{background:#f57c00}.list-col-actions .btn-info{background:#ff9800;color:#fff}.list-col-actions .btn-info:hover{background:#f57c00}.list-info-btn,.list-checkbox-container{display:none!important}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.dashboard-content{display:flex;flex-direction:column;height:calc(100vh - 80px);overflow:hidden}.admin-panel{min-height:100vh;background-color:#f8f8f8}.admin-header{background:#000;color:#fff;padding:20px 40px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 10px #0000001a}.header-left{display:flex;align-items:center;gap:20px}.btn-back{padding:8px 16px;background:#fff3;color:#fff;border-radius:6px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;transition:all .3s}.btn-back:hover{background:#ffffff4d}.admin-header h1{font-size:24px;font-weight:600}.btn-add-user{padding:10px 20px;background:#fff;color:#000;border-radius:6px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px;transition:all .3s}.btn-add-user:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.admin-content{padding:30px 40px}.users-table{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000000d;overflow:hidden}table{width:100%;border-collapse:collapse}thead{background:#f8f8f8}th{padding:15px 20px;text-align:left;font-weight:600;color:#000;font-size:14px;border-bottom:2px solid #e0e0e0}td{padding:15px 20px;border-bottom:1px solid #f0f0f0;font-size:14px;color:#666666666}.role-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600;text-transform:uppercase}.role-user{background:#f0f0f0;color:#000}.role-admin{background:#fff3e0;color:#999999999999}.role-super_admin{background:#f0f0f0;color:#000}.storage-cell{display:flex;flex-direction:column;gap:5px}.storage-bar-small{width:100px;height:4px;background:#e0e0e0;border-radius:2px;overflow:hidden}.storage-fill-small{height:100%;background:#000;transition:width .3s}.path-cell{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:12px}.status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.active,.status-badge.inactive{background:#f0f0f0;color:#000}.action-buttons{display:flex;gap:8px}.btn-edit,.btn-delete-table{padding:6px 12px;border-radius:4px;font-size:14px;transition:all .3s}.btn-edit{background:#000;color:#fff}.btn-edit:hover{background:#000}.btn-delete-table{background:#000;color:#fff}.btn-delete-table:hover{background:#000}.empty-table{text-align:center;padding:60px 20px!important;color:#999999999}.loading-state{text-align:center;padding:60px 20px;color:#999999999}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;color:#000;font-weight:500;font-size:14px}.form-group input,.form-group select{width:100%;padding:12px;border:1px solid #ddd;border-radius:6px;font-size:14px;transition:border-color .3s}.form-group input:focus,.form-group select:focus{border-color:#000}.modal-overlay{position:fixed;inset:0;background:#00000080;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:#fff;padding:30px;border-radius:10px;width:90%;max-width:500px;box-shadow:0 10px 40px #0003;max-height:90vh;overflow-y:auto}.modal h2{margin-bottom:20px;color:#000}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.btn-cancel{padding:10px 20px;background:#f8f8f8;color:#000;border-radius:6px;font-weight:500}.btn-cancel:hover{background:#e0e0e0}.btn-primary{padding:10px 20px;background:#000;color:#fff;border-radius:6px;font-weight:500}.btn-primary:hover{background:#000}@media(max-width:1024px){.admin-header{padding:15px 20px}.admin-content{padding:20px}.users-table{overflow-x:auto}table{min-width:800px}th,td{padding:12px 15px;font-size:13px}}@media(max-width:768px){.admin-header{padding:15px;flex-direction:column;gap:15px}.header-left{flex-direction:column;gap:10px;align-items:stretch}.admin-header h1{font-size:20px;text-align:center}.btn-back,.btn-add-user{width:100%;justify-content:center}.admin-content{padding:15px 10px}.users-table{overflow-x:auto;-webkit-overflow-scrolling:touch}table{min-width:700px}th,td{padding:10px 8px;font-size:12px}.role-badge{padding:3px 8px;font-size:10px}.storage-bar-small{width:80px}.path-cell{max-width:100px;font-size:11px}.status-badge{padding:3px 8px;font-size:10px}.action-buttons{gap:5px}.btn-edit,.btn-delete-table{padding:5px 10px;font-size:12px}.modal{width:95%;max-width:none;padding:20px;margin:10px}.modal h2{font-size:18px}.form-group input,.form-group select{font-size:16px}.modal-actions{flex-direction:column}.modal-actions button{width:100%}}@media(max-width:480px){.admin-header h1{font-size:18px}.btn-back,.btn-add-user{font-size:13px;padding:10px 14px}table{min-width:600px}th,td{padding:8px 6px;font-size:11px}.modal{padding:15px}.form-group label{font-size:13px}}.public-view{min-height:100vh;background:#f5f5f5;display:flex;justify-content:center;padding:40px 20px}.public-container{width:100%;max-width:800px}.public-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:80px 20px;color:#666;font-size:16px}.public-spinner{animation:public-spin 1s linear infinite}@keyframes public-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.public-error{text-align:center;padding:80px 20px}.public-error-icon{font-size:48px;color:#ccc;margin-bottom:16px}.public-error h2{font-size:24px;color:#333;margin:0 0 8px}.public-error p{font-size:16px;color:#666}.public-header{background:#fff;border-radius:12px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 4px #00000014;margin-bottom:20px;gap:16px}.public-header-info{display:flex;align-items:center;gap:16px;min-width:0;flex:1}.public-item-icon{font-size:32px;color:#555;flex-shrink:0}.public-title{font-size:20px;color:#000;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-meta{font-size:13px;color:#999;margin:4px 0 0}.public-download-btn{background:#000;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;display:flex;align-items:center;gap:8px;cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0}.public-download-btn:hover{background:#333}.public-preview{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 4px #00000014;display:flex;justify-content:center;align-items:center;min-height:300px}.public-preview-image{max-width:100%;max-height:80vh;object-fit:contain}.public-preview-video{width:100%;max-height:80vh;background:#000}.public-preview-iframe{width:100%;height:80vh;border:none}.public-preview-generic{text-align:center;padding:60px 20px;color:#666}.public-preview-icon{font-size:64px;color:#ccc;display:block;margin-bottom:16px}.public-preview-size{font-size:14px;color:#999}.public-folder{background:#fff;border-radius:12px;padding:20px;box-shadow:0 1px 4px #00000014}.public-folder-back{background:#000;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;margin-bottom:12px;transition:all .2s}.public-folder-back:hover{background:#333}.public-folder-path{font-size:14px;color:#666;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e5e5e5}.public-folder-items{display:flex;flex-direction:column;gap:6px}.public-folder-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:8px;transition:background .2s}.public-folder-item:hover{background:#f8f8f8}.public-folder-dir{cursor:pointer}.public-folder-icon{font-size:20px}.public-folder-file-icon{font-size:18px;color:#555;width:24px;display:flex;justify-content:center}.public-folder-file-info{flex:1;min-width:0}.public-folder-file-name{display:block;font-size:14px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-folder-file-size{font-size:12px;color:#999}.public-empty{text-align:center;padding:40px;color:#999}@media(max-width:768px){.public-view{padding:16px}.public-header{flex-direction:column;align-items:stretch;gap:12px;padding:16px}.public-download-btn{justify-content:center}.public-title{font-size:16px}}.App{min-height:100vh}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;font-size:1.2rem;color:#666;background:#000}.loading:before{content:"";width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@keyframes spin{to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}button{cursor:pointer;border:none;outline:none}input,textarea{outline:none}
