:root{--bg-primary:#f4f6fb;--bg-secondary:#fff;--bg-card:#fff;--bg-elevated:#f0f2f8;--border:#e2e6ef;--border-hover:#c4c9d8;--text-primary:#1a1d2e;--text-secondary:#5a5f7a;--text-muted:#9499b5;--accent-1:#6366f1;--accent-2:#8b5cf6;--accent-3:#a855f7;--accent-gradient:linear-gradient(135deg, #6366f1, #a855f7);--success:#16a34a;--danger:#dc2626;--warning:#d97706;--radius:12px;--radius-lg:20px;--shadow:0 2px 12px #0000000f;--shadow-lg:0 8px 40px #00000014;--glass:#ffffffb3}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%236366f1' fill-opacity='0.035'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");min-height:100vh;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;position:relative}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(60% 50% at 0 20%,#6366f10a,#0000),radial-gradient(60% 50% at 100% 80%,#a855f70a,#0000);position:fixed;inset:0}#root{z-index:1;position:relative}.app{flex-direction:column;min-height:100vh;display:flex}.navbar{-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);z-index:100;background:#ffffffd9;justify-content:space-between;align-items:center;height:64px;padding:0 32px;display:flex;position:sticky;top:0}.nav-brand a{color:var(--text-primary);background:var(--accent-gradient);-webkit-text-fill-color:transparent;letter-spacing:-.5px;-webkit-background-clip:text;background-clip:text;font-size:20px;font-weight:800;text-decoration:none}.nav-center{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;gap:4px;padding:4px;display:flex}.nav-center a{color:var(--text-secondary);border-radius:8px;padding:8px 20px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s}.nav-center a:hover{color:var(--text-primary);background:var(--bg-card)}.nav-center a.active{color:#fff;background:var(--accent-gradient)}.nav-right{align-items:center;gap:16px;display:flex}.nav-user{color:var(--text-secondary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;padding:6px 12px;font-size:13px;font-weight:500}.btn-logout{color:var(--text-secondary);border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:500;transition:all .2s}.btn-logout:hover{border-color:var(--danger);color:var(--danger);background:#dc26260f}.main-content{z-index:1;flex:1;width:100%;max-width:1280px;margin:0 auto;padding:32px;position:relative}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-header h1{color:var(--text-primary);letter-spacing:-.5px;font-size:28px;font-weight:700}.page-header p{color:var(--text-secondary);margin-top:4px;font-size:14px}.filter-card{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;margin-bottom:24px;padding:16px 20px;animation:.3s fadeInUp}.filter-card-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.sort-group{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;gap:4px;padding:3px;display:flex}.sort-btn{color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:8px;padding:7px 14px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.sort-btn:hover{color:var(--text-primary);background:var(--bg-card)}.sort-btn.active{color:#fff;background:var(--accent-gradient)}.type-counts{flex-wrap:wrap;gap:6px;margin-top:16px;margin-bottom:0;display:flex}.type-count-pill{background:var(--bg-card);border:1px solid var(--border);color:var(--text-secondary);border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:12px;font-weight:500;display:inline-flex}.type-count-num{background:var(--accent-1);color:#fff;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:11px;font-weight:600;display:inline-flex}.search-bar{position:relative}.search-bar svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.search-bar input{background:var(--bg-secondary);border:1px solid var(--border);width:320px;color:var(--text-primary);border-radius:10px;outline:none;padding:10px 16px 10px 40px;font-family:inherit;font-size:14px;transition:all .2s}.search-bar input::placeholder{color:var(--text-muted)}.search-bar input:focus{border-color:var(--accent-1);box-shadow:0 0 0 3px #6366f11a}.loading{color:var(--text-secondary);justify-content:center;align-items:center;padding:80px 0;font-size:15px;display:flex}.loading:after{content:"";border:2px solid var(--border);border-top-color:var(--accent-1);border-radius:50%;width:20px;height:20px;margin-left:12px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;color:var(--text-muted);padding:80px 20px}.empty-state .empty-icon{background:var(--bg-card);border:1px solid var(--border);width:64px;height:64px;box-shadow:var(--shadow);border-radius:16px;justify-content:center;align-items:center;margin:0 auto 16px;font-size:28px;display:flex}.empty-state p{margin-bottom:4px;font-size:16px}.empty-state span{color:var(--text-muted);font-size:13px}.alert{border-radius:10px;align-items:center;gap:10px;margin-bottom:20px;padding:14px 18px;font-size:14px;font-weight:500;display:flex}.alert-error{color:var(--danger);background:#dc26260f;border:1px solid #dc262626}.alert-success{color:var(--success);background:#16a34a0f;border:1px solid #16a34a26}.btn{cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent-gradient);color:#fff}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 20px #6366f14d}.btn-primary:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.btn-sm{border-radius:8px;padding:6px 14px;font-size:12px}.btn-view{color:var(--accent-1);background:#6366f114}.btn-view:hover{background:#6366f126}.btn-download{color:var(--success);background:#16a34a14}.btn-download:hover{background:#16a34a26}.btn-delete{color:var(--danger);background:#dc262614}.btn-delete:hover{background:#dc262626}.status-badge{white-space:nowrap;border-radius:6px;align-items:center;gap:4px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-flex}.status-badge.done{color:var(--success);background:#16a34a1a}.status-badge.ongoing{color:var(--warning);background:#d977061a}.status-badge.pending{color:var(--accent-1);background:#6366f11a}.status-toggle{align-items:center;height:100%;padding-top:4px;display:flex}.toggle-label{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.toggle-label input{opacity:0;width:0;height:0;position:absolute}.toggle-track{background:var(--border);border-radius:12px;flex-shrink:0;width:44px;height:24px;transition:all .3s;position:relative}.toggle-label input:checked+.toggle-track{background:var(--success)}.toggle-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .3s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-label input:checked+.toggle-track .toggle-thumb{transform:translate(20px)}.toggle-text{color:var(--text-secondary);font-size:13px;font-weight:500}.pagination{border-top:1px solid var(--border);justify-content:center;align-items:center;gap:6px;margin-top:32px;padding-top:24px;display:flex}.pagination-btn{background:var(--bg-card);border:1px solid var(--border);min-width:36px;height:36px;color:var(--text-secondary);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 8px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s;display:inline-flex}.pagination-btn:hover:not(:disabled){border-color:var(--accent-1);color:var(--accent-1)}.pagination-btn.active{background:var(--accent-gradient);color:#fff;border-color:#0000}.pagination-btn:disabled{opacity:.35;cursor:not-allowed}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.login-page{z-index:10;background-image:url(/assets/wall-BUrr69sU.jpg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow:hidden}.login-page:before{content:"";background:radial-gradient(circle,#6366f114,#0000 70%);border-radius:50%;width:600px;height:600px;animation:8s ease-in-out infinite float;position:absolute;top:-200px;right:-200px}.login-page:after{content:"";background:radial-gradient(circle,#a855f712,#0000 70%);border-radius:50%;width:500px;height:500px;animation:10s ease-in-out infinite reverse float;position:absolute;bottom:-150px;left:-150px}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(30px,-30px)}}.login-card{background:var(--glass);-webkit-backdrop-filter:blur(24px);width:100%;max-width:420px;box-shadow:var(--shadow-lg);z-index:1;border:1px solid #fffc;border-radius:24px;padding:48px 40px;animation:.6s fadeInUp;position:relative}.login-card:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(135deg,#6366f126,#0000 40% 60%,#a855f726);border-radius:24px;position:absolute;inset:-1px}.login-brand{text-align:center;margin-bottom:8px}.login-brand .logo-icon{background:var(--accent-gradient);border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:26px;display:flex;box-shadow:0 8px 32px #6366f140}.login-card h1{color:var(--text-primary);text-align:center;letter-spacing:-.5px;font-size:24px;font-weight:700}.login-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:32px;font-size:14px}.login-form{flex-direction:column;gap:20px;display:flex}.login-form .form-group{flex-direction:column;gap:6px;display:flex}.login-form .form-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.login-form .input-wrapper{position:relative}.login-form .input-wrapper svg{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.login-form input{border:1px solid var(--border);width:100%;color:var(--text-primary);background:#fffc;border-radius:12px;outline:none;padding:12px 16px 12px 42px;font-family:inherit;font-size:14px;transition:all .2s}.login-form input::placeholder{color:var(--text-muted)}.login-form input:focus{border-color:var(--accent-1);background:#fff;box-shadow:0 0 0 3px #6366f114}.btn-login{background:var(--accent-gradient);color:#fff;cursor:pointer;border:none;border-radius:12px;width:100%;margin-top:4px;padding:14px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s}.btn-login:hover{transform:translateY(-1px);box-shadow:0 4px 24px #6366f159}.btn-login:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.login-footer{text-align:center;color:var(--text-muted);margin-top:24px;font-size:13px}.stats-bar{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:32px;animation:.4s fadeInUp;display:grid}.stat-card{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;align-items:center;gap:16px;padding:20px 24px;transition:all .2s;display:flex}.stat-card:hover{border-color:var(--border-hover);transform:translateY(-2px);box-shadow:0 4px 16px #00000014}.stat-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:flex}.stat-icon.files{color:var(--accent-1);background:#6366f114}.stat-icon.depts{color:var(--success);background:#16a34a14}.stat-icon.types{color:var(--warning);background:#d9770614}.stat-icon.size{color:var(--accent-3);background:#a855f714}.stat-value{color:var(--text-primary);letter-spacing:-.5px;font-size:24px;font-weight:700;line-height:1}.stat-label{color:var(--text-secondary);margin-top:4px;font-size:13px}.file-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.file-card{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);cursor:pointer;border-radius:16px;flex-direction:column;gap:16px;padding:24px;transition:all .25s;animation:.4s both fadeInUp;display:flex}.file-card:first-child{animation-delay:0s}.file-card:nth-child(2){animation-delay:50ms}.file-card:nth-child(3){animation-delay:.1s}.file-card:nth-child(4){animation-delay:.15s}.file-card:nth-child(5){animation-delay:.2s}.file-card:nth-child(6){animation-delay:.25s}.file-card:hover{border-color:var(--accent-1);transform:translateY(-3px);box-shadow:0 8px 24px #6366f11a}.file-card-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.file-icon-badge{width:44px;height:44px;color:var(--accent-1);background:#6366f114;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.file-type-tag{color:var(--accent-1);text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;background:#6366f114;border-radius:6px;padding:4px 10px;font-size:11px;font-weight:600}.file-info{flex:1;min-width:0}.file-info h3{color:var(--text-primary);overflow-wrap:break-word;word-break:break-word;margin-bottom:4px;font-size:16px;font-weight:600}.file-meta-row{flex-wrap:wrap;gap:16px;display:flex}.file-meta-item{color:var(--text-muted);overflow-wrap:break-word;word-break:break-word;align-items:center;gap:6px;min-width:0;font-size:12px;display:flex}.file-actions{border-top:1px solid var(--border);gap:8px;padding-top:12px;display:flex}.upload-page{max-width:720px;margin:0 auto}.upload-form{flex-direction:column;gap:24px;display:flex}.upload-card{background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:32px;animation:.5s fadeInUp}.upload-card h2{color:var(--text-primary);margin-bottom:20px;font-size:16px;font-weight:600}.drop-zone{border:2px dashed var(--border);text-align:center;cursor:pointer;background:#6366f105;border-radius:16px;padding:48px 24px;transition:all .2s;position:relative}.drop-zone:hover,.drop-zone.dragover{border-color:var(--accent-1);background:#6366f10a}.drop-zone.dragover{border-style:solid;transform:scale(1.01)}.drop-zone input{opacity:0;cursor:pointer;position:absolute;inset:0}.drop-icon{background:#6366f114;border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 16px;font-size:24px;display:flex}.drop-zone p{color:var(--text-primary);margin-bottom:4px;font-size:15px;font-weight:500}.drop-zone span{color:var(--text-muted);font-size:13px}.file-preview{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;align-items:center;gap:14px;margin-top:16px;padding:14px 18px;animation:.3s fadeIn;display:flex}.file-preview-icon{background:#6366f114;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:18px;display:flex}.file-preview-info{flex:1;min-width:0}.file-preview-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.file-preview-size{color:var(--text-muted);margin-top:2px;font-size:12px}.file-preview-remove{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px;font-size:16px;transition:all .2s}.file-preview-remove:hover{color:var(--danger);background:#dc26260f}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:13px;font-weight:600}.form-group input,.form-group select,.form-group textarea{background:var(--bg-secondary);border:1px solid var(--border);color:var(--text-primary);border-radius:10px;outline:none;padding:12px 16px;font-family:inherit;font-size:14px;transition:all .2s}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group textarea{resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent-1);background:#fff;box-shadow:0 0 0 3px #6366f114}.form-group select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%239499b5' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:36px}.form-group select option{background:var(--bg-card);color:var(--text-primary)}.btn-upload{background:var(--accent-gradient);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px 28px;font-family:inherit;font-size:15px;font-weight:600;transition:all .2s;display:flex}.btn-upload:hover{transform:translateY(-1px);box-shadow:0 4px 24px #6366f14d}.btn-upload:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:center;padding:20px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-content{background:var(--bg-card);border:1px solid var(--border);width:100%;max-width:800px;max-height:90vh;box-shadow:var(--shadow-lg);border-radius:20px;animation:.3s fadeInUp;position:relative;overflow-y:auto}.modal-close{background:var(--bg-elevated);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;z-index:1;border:none;border-radius:8px;justify-content:center;align-items:center;font-size:16px;transition:all .15s;display:flex;position:absolute;top:16px;right:16px}.modal-close:hover{color:var(--danger);background:#dc262614}.modal-header{justify-content:space-between;align-items:center;gap:16px;padding:24px 28px 0;display:flex}.modal-header h2{color:var(--text-primary);align-items:center;gap:10px;font-size:20px;font-weight:700;display:flex}.modal-edit-btn{cursor:pointer;opacity:.6;background:0 0;border:none;border-radius:6px;padding:4px;font-size:15px;transition:opacity .2s}.modal-edit-btn:hover{opacity:1;background:var(--bg-elevated)}.modal-name-edit{flex:1;align-items:center;gap:8px;display:flex}.modal-name-input{color:var(--text-primary);background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;outline:none;flex:1;min-width:0;padding:8px 12px;font-size:15px;font-weight:600}.modal-name-input:focus{border-color:var(--accent-1)}.modal-body{flex-direction:column;gap:20px;padding:20px 28px;display:flex}.modal-preview{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;justify-content:center;align-items:center;min-height:200px;display:flex;overflow:hidden}.modal-preview-stack{flex-direction:column;align-self:stretch;width:100%;display:flex}.preview-image{object-fit:contain;max-width:100%;max-height:400px}.preview-iframe{border:none;width:100%;height:500px}.preview-tabs{border-bottom:1px solid var(--border);background:var(--bg-elevated);gap:8px;padding:12px;display:flex}.preview-tab{border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:8px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .2s}.preview-tab:hover{color:var(--text-primary);border-color:var(--accent-1)}.preview-tab.active{background:var(--accent-gradient);color:#fff;border-color:#0000}.preview-tab.active:hover{color:#fff}.modal-search-bar{border:1.5px solid var(--border-hover);background:var(--bg-card);color:var(--text-muted);border-radius:10px;align-items:center;gap:8px;margin:12px;padding:10px 14px;transition:border-color .2s,box-shadow .2s;display:flex;box-shadow:0 1px 4px #0000000a}.modal-search-bar:focus-within{border-color:var(--accent-1);box-shadow:0 0 0 3px #6366f126}.modal-search-bar svg{flex-shrink:0}.modal-search-bar input{min-width:0;color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-size:13px}.modal-search-bar input::placeholder{color:var(--text-muted)}.pdf-content{text-align:left;width:100%;max-height:500px;color:var(--text-primary);padding:20px 24px;font-size:14px;line-height:1.6;overflow-y:auto}.pdf-content .pdf-page{margin-bottom:24px}.pdf-content .pdf-page h3{text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);margin:0 0 10px;font-size:12px}.pdf-content .pdf-page p{margin:0 0 12px}.pdf-content .pdf-match{background:#ffe58f;border-radius:2px;padding:0 1px}.preview-unavailable{text-align:center;color:var(--text-muted);padding:40px 20px}.preview-icon{margin-bottom:12px;font-size:48px}.preview-unavailable p{font-size:14px}.modal-details{grid-template-columns:1fr 1fr;gap:12px;display:grid}.detail-row{background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:2px;padding:10px 14px;display:flex}.detail-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.detail-value{color:var(--text-primary);word-break:break-all;font-size:14px;font-weight:500}.remarks-row .remarks-value{word-break:break-word;white-space:pre-wrap;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.remarks-edit{flex-direction:column;gap:8px;width:100%;display:flex}.remarks-input{width:100%;color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border);resize:vertical;border-radius:8px;outline:none;padding:8px 12px;font-family:inherit;font-size:14px}.remarks-input:focus{border-color:var(--accent-1)}.remarks-edit-actions{gap:8px;display:flex}.modal-footer{flex-wrap:wrap;gap:8px;padding:16px 28px 24px;display:flex}.date-range-panel{z-index:60;background:var(--bg-card);border:1px solid var(--border);box-shadow:var(--shadow-lg);border-radius:16px;width:230px;padding:12px;animation:.2s fadeIn;position:fixed;top:50%;right:20px;transform:translateY(-50%)}.date-range-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.date-range-nav{background:var(--bg-elevated);color:var(--text-primary);cursor:pointer;border:none;border-radius:6px;width:24px;height:24px;font-size:14px;line-height:1;transition:all .15s}.date-range-nav:hover{background:var(--accent-1);color:#fff}.date-range-title{color:var(--text-primary);font-size:13px;font-weight:600}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:1px;display:grid}.cal-day-header{text-align:center;color:var(--text-muted);padding:4px 0;font-size:10px;font-weight:600}.cal-day{aspect-ratio:1;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s;display:flex;position:relative}.cal-day:hover:not(.empty):not(:disabled){background:var(--bg-elevated)}.cal-day.empty{cursor:default}.cal-day:disabled{opacity:.3;cursor:not-allowed}.cal-day.in-range{background:#6366f11f;border-radius:0}.cal-day.range-start,.cal-day.range-end{background:var(--accent-gradient);color:#fff;font-weight:600}.cal-day.range-start{border-radius:8px 0 0 8px}.cal-day.range-end{border-radius:0 8px 8px 0}.cal-day.today{border:1px solid var(--accent-1)}.cal-day.has-files:not(.range-start):not(.range-end):not(.in-range){color:var(--accent-1);background:#6366f10f;font-weight:600}.cal-dot{background:var(--accent-1);border-radius:50%;width:4px;height:4px;position:absolute;bottom:3px;left:50%;transform:translate(-50%)}.cal-day.range-start .cal-dot,.cal-day.range-end .cal-dot{background:#fff}.date-range-summary{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding-top:8px;display:flex}.date-range-label{color:var(--accent-1);font-size:11px;font-weight:600}.date-range-clear{background:var(--bg-elevated);color:var(--text-secondary);cursor:pointer;border:none;border-radius:6px;padding:3px 8px;font-size:10px;font-weight:600;transition:all .15s}.date-range-clear:hover{color:var(--danger);background:#dc262614}.date-range-footer{border-top:1px solid var(--border);margin-top:10px;padding-top:8px}.cal-legend{color:var(--text-muted);font-size:11px}.active-filters{flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;margin-bottom:0;animation:.2s fadeIn;display:flex}.filter-chip{color:var(--accent-1);cursor:pointer;background:#6366f114;border:1px solid #6366f133;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .15s;display:inline-flex}.filter-chip:hover{background:#6366f126}.clear-filters{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 8px;font-family:inherit;font-size:12px;font-weight:500;transition:all .15s}.clear-filters:hover{color:var(--danger);background:#dc26260f}.status-tabs{flex-wrap:wrap;gap:6px;margin-top:16px;margin-bottom:0;display:flex}.status-tab{border:1px solid var(--border);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:8px 18px;font-family:inherit;font-size:13px;font-weight:500;transition:all .15s;display:flex}.status-tab:hover{border-color:var(--border-hover);color:var(--text-primary)}.status-tab.active{background:var(--accent-gradient);color:#fff;border-color:#0000}.type-count-pill{cursor:pointer;font-family:inherit;transition:all .15s}.type-count-pill:hover{border-color:var(--accent-1);background:#6366f10a}.type-count-pill.active{border-color:var(--accent-1);color:var(--accent-1);background:#6366f114}.status-actions{border-top:1px solid var(--border);gap:4px;padding-top:12px;display:flex}.status-btn{border:1px solid var(--border);color:var(--text-muted);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;flex:1;padding:6px 8px;font-family:inherit;font-size:11px;font-weight:500;transition:all .15s}.status-btn:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-elevated)}.status-btn.active{color:#fff;background:var(--accent-gradient);border-color:#0000}@media (width<=768px){.date-range-panel{width:100%;margin-bottom:20px;position:static;transform:none}.login-page{background-position:50% 25%;background-attachment:scroll;padding:12px}.navbar{padding:0 16px}.nav-center{gap:2px;padding:3px}.nav-center a{padding:6px 12px;font-size:12px}.nav-user{display:none}.main-content{padding:20px 16px}.page-header{flex-direction:column;align-items:stretch}.search-bar input{width:100%}.file-grid,.form-row{grid-template-columns:1fr}.stats-bar{grid-template-columns:repeat(2,1fr)}.login-card{width:100%;padding:32px 24px}.upload-card{padding:20px}.drop-zone{padding:32px 16px}}@media (width<=480px){.stats-bar{grid-template-columns:1fr 1fr;gap:10px}.stat-card{padding:14px 16px}.file-card{padding:18px}}.footer{text-align:center;color:var(--text-muted);border-top:1px solid var(--border);margin-top:auto;padding:20px 24px;font-size:13px}.footer a{color:var(--accent-1);font-weight:500;text-decoration:none}.footer a:hover{text-decoration:underline}.footer-sep{color:var(--border);margin:0 10px}.btn-ghost{border:1px solid var(--border);color:var(--text-primary);cursor:pointer;background:0 0;border-radius:8px;font-size:13px}.btn-ghost:hover{background:var(--bg-elevated);border-color:var(--accent-1);color:var(--accent-1)}
