.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;background:#fffdfd;position:relative;overflow:hidden}.auth-container:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:float 20s ease-in-out infinite}@keyframes float{0%,to{transform:translate(0) rotate(0)}50%{transform:translate(-30px,-30px) rotate(180deg)}}.auth-card{background:#fffdfd;padding:2.5rem;border-radius:24px;box-shadow:0 8px 32px #646f891a;width:100%;max-width:420px;position:relative;z-index:1;border:1px solid rgba(100,111,137,.1)}.auth-card h1{margin-bottom:1.5rem;color:#2c2c3d;text-align:center;font-size:48px;font-weight:400}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:#2c2c3d;font-weight:500;font-size:14px}.form-group input{width:100%;padding:.75rem;border:1px solid #DFD2D5;border-radius:4px;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;transition:border-color .2s;background:#fffdfd;color:#2c2c3d}.form-group input::placeholder{color:#8090b0;font-size:14px}.form-group input:focus{outline:none;border-color:#abaac0;box-shadow:0 0 0 3px #abaac01a}.form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed}.form-group input.error{border-color:#f44336;background-color:#fffdfd}.field-error{color:#f44336;font-size:12px;font-weight:600;margin-top:.25rem;padding-left:.25rem}.submit-btn{width:100%;padding:.875rem;background:#abaac0;color:#fff;border:1px solid #DFD2D5;border-radius:4px;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;cursor:pointer;transition:all .2s;margin-top:1rem}.submit-btn:hover:not(:disabled){background:#9a99b3}.submit-btn:disabled{background-color:#ccc;cursor:not-allowed}.oauth-buttons{margin-top:1.5rem;display:flex;flex-direction:column;gap:.5rem}.oauth-btn{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:4px;font-size:1rem;cursor:pointer;transition:all .2s}.oauth-btn.google{background-color:#fff;color:#4285f4}.oauth-btn.google:hover{background-color:#f5f5f5}.oauth-btn.microsoft{background-color:#fff;color:#00a4ef}.oauth-btn.microsoft:hover{background-color:#f5f5f5}.auth-link{text-align:center;margin-top:1.5rem;color:#646f89;font-size:14px}.auth-link a{color:#abaac0;text-decoration:underline;font-weight:600;font-size:12px}.auth-link a:hover{color:#9a99b3}.dashboard{padding:2rem 0}.dashboard h1{margin-bottom:2rem;color:#2c2c3d;font-size:48px;font-weight:400}.dashboard-loading{display:flex;justify-content:center;align-items:center;height:400px;font-size:1.2rem;color:#646f89}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:3rem}.stat-card{background:#fffdfd;padding:1.5rem;border-radius:16px;box-shadow:0 2px 8px #646f8914;border:1px solid rgba(100,111,137,.1);transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #646f8926}.stat-card h3{color:#646f89;font-size:11px;font-weight:600;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:48px;font-weight:400;color:#2c2c3d;margin:0}.recent-assets{background:#fffdfd;padding:2rem;border-radius:16px;box-shadow:0 2px 8px #646f8914;border:1px solid rgba(100,111,137,.1)}.recent-assets h2{margin-bottom:1.5rem;color:#2c2c3d;font-size:20px;font-weight:500}.assets-list{display:flex;flex-direction:column;gap:1rem}.asset-item-link{text-decoration:none;color:inherit;display:block}.asset-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#fffdfd;border-radius:12px;transition:all .3s ease;cursor:pointer;border:1px solid rgba(100,111,137,.1)}.asset-item-link:hover .asset-item{background:#dfd2d5;transform:translate(4px);border-color:#646f8933}.asset-item-link:focus .asset-item{outline:2px solid #ABAAC0;outline-offset:2px}.asset-info h4{margin:0 0 .25rem;color:#2c2c3d;font-size:14px;font-weight:400}.asset-info p{margin:0;color:#646f89;font-size:14px;font-weight:400}.asset-date{color:#8090b0;font-size:12px;font-weight:600}.assets-page{padding:2rem 0;position:relative;background:transparent}.assets-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.header-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.tags-toggle-btn{background-color:#667eea;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.tags-toggle-btn:hover{background-color:#5568d3}.selected-tag-badge{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,#f0ebf8,#e8dff5);padding:.5rem 1rem;border-radius:20px;font-size:.85rem;color:#6b5b95;font-weight:500;border:1px solid rgba(155,126,222,.2);box-shadow:0 2px 4px #9b7ede1a}.clear-tag-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;color:#646f89;padding:0;line-height:1;margin-left:.25rem}.clear-tag-btn:hover{color:#c33}.tags-sidebar{position:fixed;top:0;right:-350px;width:350px;height:100vh;background:#fffdfd;box-shadow:-4px 0 24px #646f8926;z-index:1000;transition:right .3s ease-in-out;overflow-y:auto;border-left:1px solid rgba(100,111,137,.1)}.tags-sidebar.open{right:0}.sidebar-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999;transition:opacity .3s ease-in-out}.sidebar-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid rgba(100,111,137,.1);position:sticky;top:0;background:#fffdfd;z-index:1}.sidebar-header h2{margin:0;color:#2c2c3d;font-size:20px;font-weight:500}.sidebar-close-btn{background:none;border:none;font-size:2rem;cursor:pointer;color:#646f89;padding:0;line-height:1;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;transition:color .2s}.sidebar-close-btn:hover{color:#2c2c3d}.sidebar-content{padding:1rem}.tags-list-sidebar{display:flex;flex-direction:column;gap:.5rem}.tag-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fffdfd;border:1px solid #DFD2D5;border-radius:4px;cursor:pointer;transition:all .2s;text-align:left;width:100%;font-size:.9rem}.tag-item:hover{background:#f0ebf8;border-color:#b8a5e5;transform:translate(2px)}.tag-item.active{background:#abaac0;color:#fff;border-color:#abaac0;box-shadow:0 2px 8px #abaac04d}.tag-item.active .tag-count{color:#fffc}.tag-name{flex:1}.tag-count{color:#646f89;font-size:12px;font-weight:600;margin-left:.5rem}.no-tags-message{text-align:center;color:#999;padding:2rem;font-style:italic}.assets-header h1{color:#2c2c3d;font-size:48px;font-weight:400}.upload-btn{background:#abaac0;color:#fff;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;border:1px solid #DFD2D5;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;transition:all .2s}.upload-btn:hover:not(:disabled){background:#9a99b3}.upload-btn:disabled{background-color:#ccc;cursor:not-allowed}.filters-bar{display:flex;gap:1rem;margin-bottom:1rem;flex-wrap:wrap;align-items:center}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-weight:500;font-size:14px;color:#2c2c3d;white-space:nowrap}.filter-group select{min-width:200px;padding:.5rem;border:1px solid #DFD2D5;border-radius:4px;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;background:#fffdfd;color:#2c2c3d;cursor:pointer}.filter-group select:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.more-of-user-link{color:#abaac0;text-decoration:underline;padding:.5rem 1rem;border:none;border-radius:4px;font-size:12px;font-weight:600;font-family:Poppins,sans-serif;transition:all .2s;white-space:nowrap}.more-of-user-link:hover{background-color:#667eea;color:#fff;text-decoration:none}.search-bar{display:flex;gap:.5rem;margin-bottom:2rem;align-items:center;flex-wrap:wrap}.search-bar .selected-tag-badge{margin-right:auto}.search-bar input{flex:1;min-width:200px;padding:.75rem;border:1px solid #DFD2D5;border-radius:4px;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;background:#fffdfd;color:#2c2c3d}.search-bar input::placeholder{color:#8090b0;font-size:14px}.search-bar button{padding:.75rem 1.5rem;background:#abaac0;color:#fff;border:1px solid #DFD2D5;border-radius:4px;cursor:pointer;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;white-space:nowrap;transition:all .2s}.search-bar button:hover{background:#9a99b3}.search-bar .tags-toggle-btn{background:#abaac0;color:#fff;border:1px solid #DFD2D5;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;transition:all .2s;white-space:nowrap}.search-bar .tags-toggle-btn:hover{background:#9a99b3}.loading{text-align:center;padding:3rem;color:#646f89}.assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.asset-card{background:#fffdfd;padding:1.5rem;border-radius:16px;box-shadow:0 2px 8px #646f8914;display:flex;flex-direction:column;gap:1rem;transition:all .3s ease;border:1px solid rgba(100,111,137,.1)}.asset-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #646f8926;border-color:#646f8933}.asset-icon{font-size:3rem;text-align:center;display:flex;align-items:center;justify-content:center}.asset-thumbnail{width:100%;height:200px;overflow:hidden;border-radius:4px;background:#f5f5f5;display:flex;align-items:center;justify-content:center;position:relative}.asset-thumbnail img{width:100%;height:100%;object-fit:cover;display:block}.asset-thumbnail .asset-icon{position:absolute;font-size:3rem}.asset-details{flex:1}.asset-details h3{margin:0 0 .5rem;color:#2c2c3d;word-break:break-word;font-size:14px;font-weight:400}.asset-details p{margin:.25rem 0;color:#646f89;font-size:14px;font-weight:400}.asset-actions{display:flex;gap:.5rem}.asset-actions button{flex:1;padding:.5rem;border:1px solid #DFD2D5;border-radius:4px;background:#fffdfd;cursor:pointer;transition:all .2s;font-size:14px;font-weight:400;font-family:Poppins,sans-serif}.asset-actions button:hover{background:#dfd2d5}.asset-actions .delete-btn{color:#f44336;border-color:#f44336}.asset-actions .delete-btn:hover{background:#fee}.error-message{background-color:#fffdfd;color:#f44336;padding:.75rem;border-radius:4px;margin-bottom:1rem;border:1px solid #F44336;font-size:14px;font-weight:400}.asset-tags{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #eee}.tags-display{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tags-list{display:flex;flex-wrap:wrap;gap:.25rem;flex:1}.tag{display:inline-block;background:#abaac0;color:#fff;padding:.35rem .75rem;border-radius:16px;font-size:12px;font-weight:600;font-family:Poppins,sans-serif;box-shadow:0 2px 4px #abaac033}.no-tags{color:#999;font-size:.85rem;font-style:italic}.tag-edit-btn{background:none;border:none;cursor:pointer;font-size:1rem;padding:.25rem;opacity:.6;transition:opacity .2s}.tag-edit-btn:hover{opacity:1}.tags-edit{display:flex;flex-direction:column;gap:.5rem}.tag-input{width:100%;padding:.5rem;border:1px solid #ddd;border-radius:4px;font-size:.9rem}.tags-edit-actions{display:flex;gap:.5rem}.tag-save-btn,.tag-cancel-btn{padding:.4rem .8rem;border:1px solid #DFD2D5;border-radius:4px;cursor:pointer;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;transition:all .2s}.tag-save-btn{background-color:#abaac0;color:#fff}.tag-save-btn:hover{background-color:#9a99b3}.tag-cancel-btn{background-color:#fffdfd;color:#2c2c3d}.tag-cancel-btn:hover{background-color:#dfd2d5}.organizations-page{padding:2rem 0}.organizations-page h1{margin-bottom:2rem;color:#2c2c3d;font-size:48px;font-weight:400}.org-selector{margin-bottom:2rem;display:flex;align-items:center;gap:1rem}.org-selector label{font-weight:500;font-size:14px;color:#2c2c3d}.org-selector select{padding:.75rem;border:1px solid #DFD2D5;border-radius:12px;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;min-width:200px;transition:all .2s;background:#fffdfd;color:#2c2c3d}.org-selector select:focus{outline:none;border-color:#abaac0;box-shadow:0 0 0 3px #abaac01a}.org-content{display:flex;flex-direction:column;gap:2rem}.invite-section{background:#fffdfd;padding:2rem;border-radius:16px;box-shadow:0 2px 8px #646f8914;border:1px solid rgba(100,111,137,.1)}.invite-section h2{margin-bottom:1rem;color:#2c2c3d;font-size:20px;font-weight:500}.invite-form{display:flex;gap:.5rem}.invite-form input{flex:1;padding:.75rem;border:1px solid #DFD2D5;border-radius:12px;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;transition:all .2s;background:#fffdfd;color:#2c2c3d}.invite-form input::placeholder{color:#8090b0;font-size:14px}.invite-form input:focus{outline:none;border-color:#abaac0;box-shadow:0 0 0 3px #abaac01a}.invite-form button{padding:.75rem 1.5rem;background:#abaac0;color:#fff;border:1px solid #DFD2D5;border-radius:4px;cursor:pointer;font-size:14px;font-weight:400;font-family:Poppins,sans-serif;transition:all .2s}.invite-form button:hover:not(:disabled){background:#9a99b3}.invite-form button:disabled{background-color:#ccc;cursor:not-allowed}.users-section{background:#fffdfd;padding:2rem;border-radius:16px;box-shadow:0 2px 8px #646f8914;border:1px solid rgba(100,111,137,.1)}.users-section h2{margin-bottom:1.5rem;color:#2c2c3d;font-size:20px;font-weight:500}.loading{text-align:center;padding:2rem;color:#646f89}.users-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.user-card{display:flex;align-items:center;gap:1rem;padding:1rem;background:#fffdfd;border-radius:12px;border:1px solid rgba(100,111,137,.1);transition:all .3s ease}.user-card:hover{background:#dfd2d5;transform:translateY(-2px);box-shadow:0 4px 12px #646f891a;border-color:#646f8933}.user-avatar img,.avatar-placeholder{width:48px;height:48px;border-radius:50%;object-fit:cover}.avatar-placeholder{background:#abaac0;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:14px;box-shadow:0 2px 4px #abaac033}.user-info{flex:1}.user-info h3{margin:0 0 .25rem;color:#2c2c3d;font-size:14px;font-weight:400}.user-info p{margin:0;color:#646f89;font-size:14px;font-weight:400}.user-role{display:inline-block;margin-top:.25rem;padding:.35rem .75rem;background:#abaac0;color:#fff;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;box-shadow:0 2px 4px #abaac033}.error-message{background-color:#fffdfd;color:#f44336;padding:.75rem;border-radius:4px;border:1px solid #F44336;font-size:14px;font-weight:400}.layout{min-height:100vh;display:flex;flex-direction:column}.navbar{background:#646f89;color:#fff;padding:1rem 0;box-shadow:0 4px 12px #646f8926;border-bottom:1px solid rgba(255,255,255,.1)}.nav-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.nav-brand{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:600;color:#fff;text-decoration:none;transition:opacity .2s}.nav-brand:hover{opacity:.9}.logo-container{display:flex;align-items:center;justify-content:center}.logo{width:48px;height:58px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.15))}.brand-text{font-weight:600;letter-spacing:-.02em}.nav-links{display:flex;align-items:center;gap:2rem}.nav-links a{color:#fff;text-decoration:none;transition:all .2s;padding:.5rem 1rem;border-radius:8px;font-weight:500}.nav-links a:hover{background-color:#ffffff26;transform:translateY(-1px)}.nav-user{display:flex;align-items:center;gap:1rem}.avatar{width:32px;height:32px;border-radius:50%;object-fit:cover}.logout-btn{background-color:#abaac0;color:#fff;border:1px solid #DFD2D5;padding:.5rem 1rem;border-radius:4px;cursor:pointer;transition:all .2s;font-size:14px;font-weight:400;font-family:Poppins,sans-serif}.logout-btn:hover{background-color:#9a99b3}.main-content{flex:1;max-width:1400px;width:100%;margin:0 auto;padding:2rem;background-color:#fffdfd}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,-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:#fffdfd;min-height:100vh;font-size:14px;font-weight:400;color:#2c2c3d;line-height:1.5}h1,.title{font-size:48px;font-weight:400;font-family:Poppins,sans-serif}h2,.heading{font-size:20px;font-weight:500;font-family:Poppins,sans-serif}h3,.h2{font-size:14px;font-weight:600;font-family:Poppins,sans-serif}p,.text-body{font-size:14px;font-weight:400;font-family:Poppins,sans-serif}a,.link{font-size:12px;font-weight:600;font-family:Poppins,sans-serif;text-decoration:underline}.caption{font-size:12px;font-weight:600;font-family:Poppins,sans-serif}.overflow{font-size:11px;font-weight:600;font-family:Poppins,sans-serif;text-transform:uppercase}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
