.file-sidebar-item{padding:8px 16px;display:flex;align-items:center;cursor:pointer;border-radius:4px;margin:2px 8px;transition:background-color .2s ease}.file-sidebar-item:hover{background-color:#f8f9fa}.file-sidebar-item.active{background-color:#e7f3ff;color:#0d6efd;font-weight:500}.file-card{transition:transform .2s ease,box-shadow .2s ease;cursor:pointer}.file-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.file-card.border-primary{border-width:2px!important}.search-box .input-group{max-width:400px}.breadcrumb{background-color:transparent;padding:0;margin-bottom:0}.breadcrumb-item a{color:#6c757d;text-decoration:none}.breadcrumb-item a:hover{color:#0d6efd;text-decoration:underline}.breadcrumb-item.active{color:#212529;font-weight:500}.file-actions{opacity:0;transition:opacity .2s ease}tr:hover .file-actions,.file-card:hover .file-actions{opacity:1}.border-dashed{border-style:dashed!important}.border-dashed:hover{background-color:#f8f9fa}.modal.show{display:block}.file-loading{display:flex;align-items:center;justify-content:center;min-height:200px}.file-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:#6c757d}@media(max-width:768px){.search-box .input-group{max-width:100%}.file-card{margin-bottom:1rem}}.error-box{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background:linear-gradient(135deg,#10b981,#059669);position:relative;overflow:hidden}.error-box:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 1px,transparent 1px);background-size:50px 50px;animation:moveBackground 20s linear infinite;pointer-events:none}@keyframes moveBackground{0%{transform:translate(0)}to{transform:translate(50px,50px)}}.error-logo{margin-bottom:40px;z-index:2;animation:fadeInDown .8s ease-out}.error-wrapper{width:100%;max-width:600px;z-index:2;display:flex;justify-content:center;align-items:center}.error-page{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0000004d;padding:60px 40px;animation:fadeInUp .8s ease-out;width:100%}.error-content{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.error-icon{animation:bounceIn 1s ease-out}.error-icon i{display:inline-block;animation:pulse 2s ease-in-out infinite}.error-content h1{font-size:2.5rem;font-weight:700;color:#2d3748;margin-bottom:1rem;animation:fadeIn 1s ease-out .2s both}.error-content h4{font-size:1.25rem;font-weight:500;color:#718096;margin-bottom:1.5rem;animation:fadeIn 1s ease-out .4s both}.error-content p{color:#4a5568;line-height:1.8;animation:fadeIn 1s ease-out .6s both}.error-btn{animation:fadeIn 1s ease-out .8s both;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.error-btn .btn{min-width:180px;padding:12px 30px;font-weight:600;border-radius:50px;transition:all .3s ease;white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:8px}.error-btn .btn:hover{transform:translateY(-2px);box-shadow:0 10px 20px #00000026}.error-btn .btn-icon i{transition:transform .3s ease}.error-btn .btn:hover i{transform:translate(-3px)}.error-btn .btn-primary:hover i{transform:translate(0) scale(1.1)}.fs-80{font-size:80px!important}.fs-16{font-size:16px!important}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@media(max-width:768px){.error-page{padding:40px 30px}.error-content h1{font-size:2rem}.error-content h4{font-size:1.1rem}.error-icon i{font-size:60px!important}.error-btn{flex-direction:column}.error-btn .btn{width:100%;margin-bottom:10px}}@media(max-width:480px){.error-box{padding:20px 15px}.error-logo img{width:150px!important}.error-page{padding:30px 20px}.error-content h1{font-size:1.75rem}.error-content h4{font-size:1rem}.error-content p{font-size:14px}.error-icon i{font-size:50px!important}}@media(prefers-color-scheme:dark){.error-page{background:#1a202c}.error-content h1{color:#f7fafc}.error-content h4{color:#cbd5e0}.error-content p{color:#a0aec0}}
