body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}:root{--bg-primary:#0b0f16;--bg-secondary:#05060b;--bg-tertiary:#0a0c12;--text-primary:#ffffffeb;--text-secondary:#ffffff9e;--text-muted:#fff9;--panel:#ffffff0a;--panel-strong:#ffffff12;--border-strong:#ffffff24;--accent-primary:#5aa0ff;--accent-secondary:#8b5cf6;--danger:#ff6b6b;--warning:#ffd93d;--success:#78ff4d;--shadow-sm:0 1px 3px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 10px 35px #00000073;--shadow-xl:0 20px 60px #000c;--shadow-2xl:0 14px 50px #0000008c}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#5aa0ff66;background-clip:padding-box;border:2px solid #0000;border-radius:5px;-webkit-transition:background .2s ease;transition:background .2s ease}::-webkit-scrollbar-thumb:hover{background:#5aa0ffb3;background-clip:padding-box}::-webkit-scrollbar-thumb:active{background:#5aa0ffe6;background-clip:padding-box}*{scrollbar-color:#5aa0ff66 #0000;scrollbar-width:thin}:hover{scrollbar-color:#5aa0ffb3 #0000}.btn{border-radius:10px;color:var(--text-primary);font-size:14px;font-weight:600;transition:background .15s ease,border-color .15s ease}.btn:active{background:#ffffff24}.btn.danger{background:#ff50501a;border-color:#ff505059;color:#ffdcdc}.btn.danger:hover{background:#ff50502e;border-color:#ff505080}.btn.ghost{background:#0000;border-color:#0000}.btn.ghost:hover{background:#ffffff0f;border-color:#ffffff1a;border-color:var(--border)}.input{background:#ffffff0f;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:10px;color:#ffffffeb;color:var(--text-primary);font-size:14px;outline:none;padding:8px 12px;transition:border-color .2s ease,background .2s ease}.input:hover{background:#ffffff14;border-color:#ffffff24;border-color:var(--border-strong)}.input:focus{background:#ffffff1a;border-color:#5aa0ff;border-color:var(--accent-primary);box-shadow:0 0 0 3px #5aa0ff1a}.input::placeholder{color:#ffffff59}.card{box-shadow:0 10px 35px #00000073;box-shadow:var(--shadow-lg);overflow:hidden;padding:16px}.alert{background:#ffffff12;background:var(--panel-strong);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:12px;color:#ffffffeb;color:var(--text-primary);font-size:13px;margin-top:10px;padding:10px 12px}.alert.error{border-color:#ff6b6b;border-color:var(--danger)}.alert.success{border-color:#78ff4d;border-color:var(--success)}.card h2{font-size:18px;margin:0 0 6px}.card h2,.card h3{color:#ffffffeb;color:var(--text-primary);font-weight:700}.card h3{font-size:16px;margin:0 0 4px}.card p{color:#fff9;color:var(--text-muted);margin:0}.card p,.table{font-size:13px}.table thead{background:#ffffff0a;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border)}.table th{font-weight:700;padding:12px;text-align:left}.table td,.table th{color:#ffffffeb;color:var(--text-primary)}.table td{border-bottom:1px solid #ffffff08;padding:10px 12px}.table tr:hover{background:#ffffff05}.table td.mono{font-family:Courier New,monospace;font-size:12px;opacity:.85}.modal-overlay{animation:modalFadeIn .2s ease;background:#000000bf;z-index:9999}.modal-box{animation:modalSlideIn .25s cubic-bezier(.16,1,.3,1);box-shadow:var(--shadow-xl);max-width:500px;min-width:400px}.muted{color:#fff9;color:var(--text-muted);font-size:12px}.banner{background:#5aa0ff26;border:1px solid #5aa0ff4d;color:#ffffffd9}.banner.warning{background:#ffd93d26;border-color:#ffd93d4d}.banner.danger{background:#ff505026;border-color:#ff50504d}.banner.success{background:#78ff4d26;border-color:#78ff4d4d}.badge{background:#ffffff1a;border:1px solid #ffffff26;border-radius:6px;color:#ffffffeb;color:var(--text-primary);display:inline-block;font-size:11px;font-weight:700;padding:4px 8px}.badge.danger{background:#ff50501f;border-color:#ff505059;color:#ffdcdc}.badge.success{background:#78ff4d1f;border-color:#78ff4d59;color:#c6ffe6}.badge.warning{background:#ffd93d1f;border-color:#ffd93d59;color:#ffe0a0}@media (max-width:600px){.modal-box{margin:20px;max-width:90%;min-width:90%}.btn,.input{font-size:12px;padding:6px 10px}}.flex,.flex-col{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.p-1{padding:4px}.p-2{padding:8px}.p-3{padding:12px}.p-4{padding:16px}.m-1{margin:4px}.m-2{margin:8px}.m-3{margin:12px}.m-4{margin:16px}.version-footer{align-items:flex-start;background:#0006;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:10px;box-shadow:0 1px 3px #0000004d;box-shadow:var(--shadow-sm);color:#fff9;color:var(--text-muted);cursor:pointer;display:inline-flex;font-size:10px;gap:6px;justify-content:center;padding:4px 8px;position:static;white-space:nowrap}.version-footer.collapsed{align-items:center;gap:4px;padding:4px 6px}.version-footer.expanded{align-items:flex-start}.version-icon{align-items:center;background:#ffffff14;border:1px solid #ffffff59;border-radius:50%;color:#fff9;color:var(--text-muted);display:inline-flex;font-size:10px;font-weight:700;height:16px;justify-content:center;width:16px}.version-number{background:#5aa0ff26;border:1px solid #5aa0ff40;border-radius:3px;color:#5aa0ff;color:var(--accent-primary);font-weight:700;padding:1px 5px}.version-date{opacity:.75}.version-label{background:#ffffff14;border-radius:4px;color:#fff9;color:var(--text-muted);font-weight:600;padding:1px 4px}.version-stack{display:flex;flex-direction:column;gap:2px}.version-notes{border-bottom:1px dotted #ffffff4d;cursor:help;opacity:.65}.version-notes:hover{opacity:.9}.heartbeat-banner{align-items:center;background:#ffffff0a;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:10px;box-shadow:0 1px 3px #0000004d;box-shadow:var(--shadow-sm);color:#ffffffeb;color:var(--text-primary);display:flex;font-size:12px;gap:10px;margin:8px 0;padding:8px 12px}.heartbeat-dot{background:#ffd93d;background:var(--warning);border-radius:999px;box-shadow:0 0 12px #ffd93d99;height:10px;width:10px}.heartbeat-text{font-weight:700}.heartbeat-latency{opacity:.75}.heartbeat-time{font-size:11px;opacity:.7}.heartbeat-hint{font-size:11px;margin-left:auto;opacity:.65}.heartbeat-ok .heartbeat-dot{background:#78ff4d;background:var(--success);box-shadow:0 0 12px #78ff4d99}.heartbeat-warn .heartbeat-dot{background:#ffd93d;background:var(--warning);box-shadow:0 0 12px #ffd93d99}.heartbeat-down .heartbeat-dot{background:#ff6b6b;background:var(--danger);box-shadow:0 0 12px #ff6b6b99}.heartbeat-overlay{align-items:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#080a0fd1;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:9999}.heartbeat-overlay-card{background:#ffffff0a;background:var(--panel);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:16px;box-shadow:0 20px 60px #000c;box-shadow:var(--shadow-xl);max-width:480px;min-width:320px;padding:24px 28px;text-align:center}.heartbeat-overlay-title{font-size:18px;font-weight:800;margin-bottom:8px}.heartbeat-overlay-latency{font-size:13px;margin-bottom:8px;opacity:.75}.heartbeat-overlay-time{font-size:13px;margin-bottom:6px;opacity:.78}.heartbeat-meme{border-radius:12px;box-shadow:0 10px 30px #00000073;display:block;margin:10px auto 12px;max-width:240px;object-fit:contain;width:100%}.heartbeat-overlay-sarcasm{color:#ffffffc7;font-size:12px;margin:6px 0 10px;opacity:.85}.heartbeat-overlay-sub{font-size:12px;opacity:.7}*{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,sans-serif}.login-page{animation:pageGlow 6s ease-in-out infinite;background:radial-gradient(12px 12px at 18% 22%,#ffffff2e,#0000 60%),radial-gradient(18px 18px at 72% 35%,#ffffff24,#0000 65%),radial-gradient(10px 10px at 55% 70%,#ffffff29,#0000 60%),radial-gradient(20px 20px at 85% 78%,#ffffff1f,#0000 70%),radial-gradient(circle at 30% 15%,#ffffff0f,#0000 45%),radial-gradient(circle at 70% 85%,#c8c8c80d,#0000 50%),linear-gradient(180deg,#05060b,#0a0c12 50%,#03040a);color:#eaf0ff;display:grid;min-height:100vh;place-items:center;position:relative}@keyframes pageGlow{0%,to{filter:brightness(1)}50%{filter:brightness(1.02)}}.login-version{position:absolute;right:12px;top:12px}.login-page:before{animation:starPulse 8s ease-in-out infinite;background:radial-gradient(40px 40px at 18% 22%,#ffffff0f,#0000 70%),radial-gradient(60px 60px at 72% 35%,#ffffff0d,#0000 75%),radial-gradient(35px 35px at 55% 70%,#ffffff0d,#0000 70%),radial-gradient(70px 70px at 85% 78%,#ffffff0a,#0000 80%)}@keyframes starPulse{0%,to{opacity:.4}50%{opacity:.6}}.login-page:after{background:radial-gradient(circle at center,#ffffff08,#000000bf 70%)}.login-page:after,.login-page:before{content:"";inset:0;pointer-events:none;position:fixed}.login-page:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='a'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23a)' opacity='.25' d='M0 0h120v120H0z'/%3E%3C/svg%3E");opacity:.08}.login-card{background:linear-gradient(180deg,#14161ef2,#0a0c12f2);border:1px solid #ffffff14;box-shadow:inset 0 1px 0 #ffffff0a,0 40px 120px #000000e6}.brand-row{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:12px}.brand-logo{animation:float 3s ease-in-out infinite;filter:drop-shadow(0 4px 12px rgba(110,168,254,.2));height:32px;opacity:.95;width:auto}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.brand-title{font-size:32px;letter-spacing:.12em;line-height:1.2;margin:0;text-transform:uppercase}.brand-subtitle{display:block;font-size:12px;font-weight:600;letter-spacing:.08em;margin:12px auto 28px;opacity:.6;text-align:center}input{font-weight:500;letter-spacing:.02em}.login-btn{font-weight:700}.login-container{animation:slideUp .6s ease-out}.login-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(180deg,#14161efa,#0a0c12f5);border:1px solid #6ea8fe33;border-radius:20px;box-shadow:0 30px 80px #000000bf,inset 0 1px 0 #ffffff1a,inset 0 0 60px #6ea8fe14;padding:40px 36px 36px;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;width:420px}.login-card:hover{border-color:#6ea8fe4d;box-shadow:0 35px 100px #000000d9,inset 0 1px 0 #ffffff26,inset 0 0 60px #6ea8fe1a}.logo{font-size:34px;font-weight:800;letter-spacing:.4px;margin-bottom:4px}.logo,.subtitle{text-align:center}.subtitle{color:#eaf0ffb8;font-size:14px;margin-bottom:40px}form{display:flex;flex-direction:column;gap:0;width:100%}.form-field{margin-bottom:20px;position:relative}.floating-label{color:#eaf0ff73;display:block;font-size:12px;font-weight:700;left:16px;letter-spacing:.08em;pointer-events:none;position:absolute;text-transform:uppercase;top:16px;transition:all .3s cubic-bezier(.4,0,.2,1);z-index:1}.floating-label.active,.form-field.focused .floating-label{color:#6ea8fe;font-weight:800;letter-spacing:.1em;transform:translateY(-26px) scale(.8)}.form-input{background:#00000040;border:1.5px solid #6ea8fe40;border-radius:14px;color:#eaf0ff;font-size:15px;font-weight:500;letter-spacing:.01em;outline:none;padding:16px 16px 14px;transition:border-color .3s ease,box-shadow .3s ease,background .3s ease;width:92%}.form-input::placeholder{color:#eaf0ff33;font-size:14px}.form-input:focus{background:#00000059;border-color:#6ea8fe;box-shadow:0 0 0 4px #6ea8fe26,inset 0 1px 2px #ffffff0d}.form-input:disabled{cursor:not-allowed;opacity:.6}label{color:#eaf0ffd9;display:block;font-size:13px;font-weight:600;letter-spacing:.3px;margin-bottom:14px;text-transform:uppercase}input{background:#00000059;border:1px solid #ffffff2e;border-radius:14px;color:#eaf0ff;font-size:14px;margin-top:6px;outline:none;padding:12px 14px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease;width:100%}input::placeholder{color:#eaf0ff66}input:focus{background:#00000073;border-color:#6ea8fe;box-shadow:0 0 0 4px #6ea8fe38}input:disabled{cursor:not-allowed;opacity:.6}.password-field{position:relative;width:100%}.toggle-password{align-items:center;background:#0000;border:none;border-radius:12px;color:#000;cursor:pointer;display:flex;font-size:16px;justify-content:center;padding:8px 10px;position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:all .2s ease}.toggle-password:hover{background:#6ea8fe26;color:#000;transform:translateY(-50%) scale(1.1)}.toggle-password:active{transform:translateY(-50%) scale(.95)}.toggle-password:disabled{cursor:not-allowed;opacity:.5;transform:translateY(-50%)}.icon-eye,.icon-eye-off{stroke:currentColor;display:inline-block;height:20px;transition:transform .2s ease,stroke .2s ease;width:20px}.toggle-password:hover .icon-eye,.toggle-password:hover .icon-eye-off{stroke:#6ea8fe;transform:scale(1.15)}.show-btn{background:#ffffff14;border:1px solid #ffffff2e;border-radius:12px;color:#eaf0ffd9;cursor:pointer;font-size:12px;padding:6px 10px;position:absolute;right:8px;top:50%;transform:translateY(-50%);transition:background .15s ease,border-color .15s ease}.show-btn:hover{background:#ffffff24;border-color:#ffffff40}.show-btn:disabled{cursor:not-allowed;opacity:.5}.login-btn{align-items:center;background:linear-gradient(135deg,#6ea8fe,#8b5cf6);border:1.5px solid #6ea8fe4d;border-radius:14px;box-shadow:0 16px 40px #6ea8fe4d;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:800;gap:10px;justify-content:center;letter-spacing:.12em;margin-top:28px;padding:14px 16px;text-transform:uppercase;transition:transform .08s ease,filter .15s ease,box-shadow .15s ease,border-color .15s ease;width:100%}.login-btn:hover:not(:disabled){border-color:#6ea8fe80;box-shadow:0 18px 50px #6ea8fe66;filter:brightness(1.1);transform:translateY(-2px)}.login-btn:active:not(:disabled){box-shadow:0 12px 30px #6ea8fe4d;transform:translateY(1px)}.login-btn:disabled{box-shadow:0 14px 35px #6ea8fe40;cursor:not-allowed;opacity:.8}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:16px;width:16px}.login-error{animation:slideInError .3s ease-out;background:#ef44442e;border:1px solid #ef444473;border-radius:12px;color:#fecaca}.login-error,.login-success{font-size:13px;margin-bottom:14px;padding:10px 12px}.login-success{animation:slideInSuccess .3s ease-out;background:#22c55e2e;border:1px solid #22c55e73;border-radius:12px;color:#bbf7d0}@keyframes slideInError{0%{border-color:#ef444400;opacity:0;transform:translateX(-10px)}to{border-color:#ef444473;opacity:1;transform:translateX(0)}}@keyframes slideInSuccess{0%{border-color:#22c55e00;opacity:0;transform:translateX(-10px)}to{border-color:#22c55e73;opacity:1;transform:translateX(0)}}.login-footer{animation:fadeIn .8s ease-out .4s both}.login-footer,footer{align-items:center;color:#eaf0ff8c;display:flex;font-size:12px;justify-content:space-between;margin-top:20px}.admin-shell{background:radial-gradient(1200px 700px at 20% 10%,#ffffff0f,#0000 55%),radial-gradient(900px 700px at 85% 85%,#ffffff0a,#0000 60%),linear-gradient(180deg,#05060b,#0b0c12 55%,#04050a);box-sizing:border-box;color:#ffffffeb;display:flex;flex-direction:column;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;height:100vh}@media (max-width:1200px){.admin-grid{padding:24px 28px}}@media (max-width:600px){.admin-grid{padding:16px 20px 32px}}.admin-grid{grid-gap:0;align-items:start;display:grid;flex:1 1 auto;gap:0;grid-template-columns:1fr;overflow-x:hidden;overflow-y:auto;padding:32px 40px 24px}.admin-tabs{border-bottom:2px solid #ffffff14;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:32px;padding-bottom:16px}.tab-btn{background:#0000;border:none;border-bottom:3px solid #0000;border-radius:10px;color:#ffffff80;cursor:pointer;font-size:15px;font-weight:600;letter-spacing:.3px;margin-bottom:-19px;padding:10px 20px 13px;transition:all .25s ease}.tab-btn:hover{background:#ffffff0a;color:#ffffffb3}.tab-btn.active{background:#5aa0ff0f;border-bottom-color:#5aa0ff;color:#5aa0ff}.admin-shell>.version-footer{margin-top:auto}.overview-top-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 400px;margin-bottom:28px}@media (max-width:1200px){.overview-top-grid{grid-template-columns:1fr}}.stats-card,.system-health-card{margin-bottom:0}.stats-grid{grid-gap:16px;gap:16px;grid-template-columns:1fr;margin-top:20px}.stat-item{background:#ffffff08;border:1px solid #ffffff14;border-radius:12px;padding:24px;text-align:center;transition:all .3s ease}.stat-item:hover{background:#ffffff0d;border-color:#ffffff1f;transform:translateY(-2px)}.stat-item.primary{background:linear-gradient(135deg,#5aa0ff26,#5aa0ff14);border-color:#5aa0ff40}.stat-item.primary:hover{background:linear-gradient(135deg,#5aa0ff33,#5aa0ff1f);border-color:#5aa0ff59}.stat-value{color:#fffffff2;font-size:42px;line-height:1;margin-bottom:8px}.stat-item.primary .stat-value{color:#5aa0ff}.stat-label{color:#ffffff8c;font-size:13px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.role-select{background:#282828f2;border:1px solid #ffffff24;border-radius:12px;color:#ffffffe6;color-scheme:dark;outline:none;padding:8px 10px;width:140px}.role-select:focus{border-color:#ffffff52;box-shadow:0 0 0 3px #ffffff14}.card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffff0a;border:1px solid #ffffff14;border-radius:16px;box-shadow:0 8px 24px #0000004d;margin-bottom:24px;padding:28px;transition:all .2s ease}.joined-date-input{padding-left:8px;padding-right:.1px}.card.wide{min-height:360px}.card.compact{padding:20px 24px}.card.compact .form{gap:10px}.card.compact .field label{font-size:11px;margin-bottom:4px}.card.compact .field input,.card.compact .field select{font-size:13px;padding:9px 11px}.card.compact .btn{font-size:13px;padding:9px 14px}.users-grid{display:flex;flex-direction:column;gap:20px}.create-user-bar{padding:20px 24px}.create-user-bar .form{grid-gap:14px;align-items:end;display:grid;gap:14px;grid-template-columns:1.1fr 1.6fr .8fr;margin-top:14px}.create-user-bar .field{margin:0}.create-user-bar .field input,.create-user-bar .field select{font-size:13px;padding:10px 12px}.create-user-bar .field label{font-size:11px;margin-bottom:4px}@media (max-width:1000px){.create-user-bar .form{grid-template-columns:1fr}}.card:hover{background:#ffffff0d;border-color:#ffffff1f}.card-head{border-bottom:1px solid #ffffff0f;margin-bottom:20px;padding-bottom:16px}.card-head h2{color:#fffffff2;font-size:18px;font-weight:700;letter-spacing:.02em;margin:0}.card-head p{font-size:13px;line-height:1.4;margin:8px 0 0;opacity:.6}.banner{border:1px solid #ffffff1f;border-radius:12px;font-size:13px;font-weight:500;margin-top:16px;padding:12px 16px}.banner.error{background:#ff48481f;border-color:#ff484840;color:#ffffffeb}.banner.success{background:#78ffbe1a;border-color:#78ffbe38;color:#ffffffeb}.form{display:flex;flex-direction:column;gap:12px;margin-top:20px}.field label{display:block;font-size:12px;letter-spacing:.08em;margin-bottom:6px;opacity:.8;text-transform:uppercase}.field input,.field select{background:#00000040;border:1px solid #ffffff24;border-radius:14px;box-sizing:border-box;color:#ffffffeb;min-width:0;outline:none;padding:12px;width:100%}.field select{background:#282828f2;color-scheme:dark}.field select option{background:#282828;color:#ffffffeb}.field textarea{background:#00000040;border:1px solid #ffffff24;border-radius:14px;box-sizing:border-box;color:#ffffffeb;min-width:0;outline:none;padding:12px;width:100%}.field input:focus,.field select:focus{border-color:#ffffff59;box-shadow:0 0 0 3px #ffffff14}.row{display:flex;gap:10px}.row>input{flex:1 1;min-width:0}.row>.btn,.row>button{flex:0 0 auto;white-space:nowrap}.link{background:#0000;border:none;color:#fffc;cursor:pointer;font-size:12px;margin-top:8px;text-decoration:underline;text-underline-offset:3px}.btn{border:1px solid #ffffff24;border-radius:14px;padding:11px 14px}.btn.primary{background:linear-gradient(135deg,#ffffff38,#ffffff14);color:#ffffffeb}.icon-btn{align-items:center;background:#0003;border:1px solid #ffffff24;border-radius:10px;color:#ffffffd9;cursor:pointer;display:inline-flex;flex:0 0 auto;height:30px;justify-content:center;line-height:1;width:30px}.icon-btn:hover{background:#ffffff0f;border-color:#ffffff38}.btn.ghost{background:#ffffff0f;color:#ffffffd9}.btn:disabled{opacity:.55}.table-controls{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.search{min-width:240px}.pill{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;color:#ffffffbf;font-size:12px;margin-left:auto;padding:8px 10px}.table-wrap{background:#00000026;border:1px solid #ffffff14;border-radius:14px;margin-top:20px;max-height:calc(100vh - 450px)}.ldap-management .table-wrap,.table-wrap{min-height:400px;overflow-x:auto;overflow-y:auto}.ldap-management .table-wrap{max-height:calc(100vh - 400px)}.table{border-collapse:collapse;width:100%}.table thead th{background:#00000059;color:#ffffffa6;font-size:12px;font-weight:700;letter-spacing:.08em;padding:16px 14px;text-align:left;text-transform:uppercase;white-space:nowrap}.table tbody td{background:#0000002e;border-top:1px solid #ffffff0f;padding:16px 14px;vertical-align:middle}.table tbody tr:hover td{background:#ffffff0f}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.table-link{background:#0000;border:0;color:#ffffffe0;cursor:pointer;font:inherit;margin:0;padding:0;text-decoration:underline;text-underline-offset:3px}.table-link:hover{color:#fffffffa}.table-link.active{font-weight:900;text-decoration-thickness:2px}.table-link:disabled{cursor:not-allowed;opacity:.55;text-decoration:none}.reports-grid{grid-gap:18px;align-items:start;display:grid;gap:18px;grid-template-columns:360px 1fr}@media (max-width:980px){.reports-grid{grid-template-columns:1fr}}.reports-sidebar{position:-webkit-sticky;position:sticky;top:18px}@media (max-width:980px){.reports-sidebar{position:static}}.reports-controls{display:flex;flex-direction:column;gap:14px;margin-top:14px}.reports-control{border-top:1px solid #ffffff1a;padding-top:12px}.reports-control:first-child{border-top:0;padding-top:0}.reports-date-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.reports-date-row .input{box-sizing:border-box;min-width:0;width:100%}@media (max-width:420px){.reports-date-row{grid-template-columns:1fr}}.reports-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.reports-actions .btn{max-width:100%}@media (max-width:420px){.reports-actions{flex-direction:column}.reports-actions .btn{width:100%}}.reports-content{display:flex;flex-direction:column;gap:16px}.reports-section-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:1100px){.reports-section-grid{grid-template-columns:1fr}}.segmented{background:#0003;border:1px solid #ffffff24;border-radius:14px;display:inline-flex;overflow:hidden;width:100%}.segmented-btn{background:#0000;border:0;box-sizing:border-box;color:#ffffffd1;cursor:pointer;flex:1 1;font-weight:800;min-width:0;padding:10px 12px;text-align:center}.segmented-btn.active{background:#ffffff1a;color:#fffffff2}.chip-group{display:flex;flex-wrap:wrap;gap:10px}.chip{border:1px solid #ffffff24;box-sizing:border-box;color:#ffffffd9;cursor:pointer;font-weight:800;max-width:100%;padding:10px 12px}.chip.active{background:#ffffff1f;border-color:#ffffff38;color:#fffffff2}.kpi-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:1100px){.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.kpi-grid{grid-template-columns:1fr}}.kpi-tile{background:#0000002e;border:1px solid #ffffff1a;border-radius:16px;padding:14px}.kpi-label{font-size:12px;letter-spacing:.08em;opacity:.72;text-transform:uppercase}.kpi-value{font-size:22px;font-weight:900;margin-top:8px}.status{border:1px solid #ffffff1f;border-radius:999px;display:inline-flex;font-size:12px;padding:6px 10px}.status.warn{background:#ffc4001a;border-color:#ffc40033;color:#ffffffd9}.status.ok{background:#78ffbe14;border-color:#78ffbe2e;color:#ffffffd9}.last-login{color:#ffffffb3;display:inline-block;font-size:13px;white-space:nowrap}.empty{opacity:.75;padding:18px}.admin-footer{display:flex;font-size:12px;justify-content:space-between;margin-top:18px;opacity:.65}.table .btn.ghost{border-radius:12px;padding:8px 10px}.dash-topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000059;border-bottom:1px solid #ffffff14;justify-content:space-between;padding:18px 22px}.dash-left,.dash-topbar{align-items:center;display:flex}.dash-left{gap:12px}.dash-badge{background:linear-gradient(180deg,#ffffff26,#ffffff0d);border:1px solid #ffffff1f;border-radius:12px;display:grid;font-weight:800;height:40px;letter-spacing:.6px;place-items:center;width:40px}.dash-titles{line-height:1.1}.dash-title{color:#fff;font-size:18px;font-weight:800}.dash-subtitle{color:#d7d7d7;font-size:12px;opacity:.7}.dash-right{align-items:center;display:flex;gap:12px}.dash-user{background:#ffffff0f;border:1px solid #ffffff1a;border-radius:14px;padding:10px 12px}.dash-user-meta,.dash-user-name{align-items:center;display:flex;gap:10px}.dash-username{color:#fff;font-weight:700}.dash-role{background:#ffffff0f;border:1px solid #ffffff24;font-size:12px;font-weight:800;letter-spacing:.5px;padding:4px 10px}.role-admin{background:#ffd7001f;border-color:#ffd70040}.role-manager{background:#00b4ff1f;border-color:#00b4ff40}.role-artist{background:#aaffaa1a;border-color:#aaffaa38}.user-avatar{border:1px solid #ffffff24}.toggle-label{align-items:center;cursor:pointer;display:inline-flex;gap:8px}.toggle-switch{border-radius:12px;height:24px;position:relative;transition:background-color .18s ease,box-shadow .18s ease;width:44px}.toggle-switch.active{background-color:#22c55e;box-shadow:0 2px 4px #22c55e40}.toggle-switch.inactive{background-color:#e2e8f0;box-shadow:inset 0 0 0 1px #cbd5e1}.toggle-knob{background-color:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;height:20px;left:2px;position:absolute;top:2px;transition:transform .18s ease,box-shadow .18s ease;width:20px}.toggle-knob.active{transform:translateX(20px)}.toggle-label-text{font-size:13px;font-weight:500;min-width:34px}.toggle-label-text.active{color:#15803d}.toggle-label-text.inactive{color:#475569}.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none}.sortable-header:hover{color:#ffffffe6}.dept-list{align-items:center;display:flex;flex-wrap:wrap;gap:8px;max-width:250px}.dept-badge{align-items:center;background-color:#6496ff33;border:1px solid #6496ff66;border-radius:6px;display:inline-flex;font-size:12px;font-weight:500;gap:6px;padding:5px 10px;white-space:nowrap}.dept-remove-btn{background:#0000;border:none;color:#ff6b6b;cursor:pointer;font-size:12px;line-height:1;padding:0}.dept-no-items{opacity:.5}.dept-add-select{font-size:12px;padding:4px 6px}.action-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.action-buttons .btn{font-size:12px;padding:8px 12px;white-space:nowrap}.dept-cards{margin-top:14px}.dept-card{align-items:center;border:1px solid #ffffff1f;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:8px;padding:10px}.dept-card-name{font-weight:600}.dept-card-desc{font-size:12px;opacity:.7}.dept-card-count{font-size:12px;opacity:.6}.dept-delete-btn{color:#ff6b6b}.topbar-extras{display:flex;gap:8px}.topbar-link{text-decoration:none}.btn-error-color{color:#e74c3c;color:var(--error,#e74c3c)}.analytics-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:28px}.analytics-card{background:#ffffff0a;border:1px solid #ffffff14;border-radius:14px;color:#ffffffe6;padding:24px;transition:all .2s ease}.analytics-card:hover{background:#ffffff0d;border-color:#ffffff1f}.analytics-card h4{color:#fff9;font-size:13px;font-weight:700;letter-spacing:.08em;margin:0 0 20px;text-transform:uppercase}.stat-card{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:160px;text-align:center}.stat-large{color:#5aa0ff;font-size:48px;font-weight:800;line-height:1;margin-bottom:12px}.stat-small{align-items:center;color:#ffffff8c;display:flex;flex-wrap:wrap;font-size:12px;gap:8px;justify-content:center}.stat-active{color:#78ff4d;font-weight:600}.stat-inactive{color:#f99;font-weight:600}.stat-sep{opacity:.3}.chart-container{gap:16px}.bar-item,.chart-container{display:flex;flex-direction:column}.bar-item{gap:8px}.bar-label{align-items:center;display:flex;font-size:13px;justify-content:space-between}.bar-name{color:#fffc;font-weight:500;text-transform:capitalize}.bar-count{color:#ffffff8c;font-size:12px;font-weight:700;min-width:24px;text-align:right}.bar-bg{background:#ffffff0f;border-radius:5px;height:10px;overflow:hidden}.bar-fill{border-radius:5px;height:100%;transition:width .3s ease}.empty-chart{color:#ffffff59;font-size:13px;padding:28px 20px;text-align:center}.health-header{align-items:center;border-bottom:1px solid #ffffff0f;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.health-header h3{color:#fffffff2;font-size:18px;font-weight:700;margin:0}.btn-sm{font-size:12px;font-weight:600;padding:8px 14px}.health-summary{grid-gap:16px;border-bottom:1px solid #ffffff0f;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin-bottom:20px;padding-bottom:20px}.summary-stat{display:flex;flex-direction:column;gap:6px}.summary-label{color:#ffffff73;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.summary-value{color:#5aa0ff;font-size:24px;font-weight:800}.text-success{color:#78ff4d}.text-danger{color:#f99}.text-warning{color:#ffd93d}.health-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.health-card{align-items:center;background:#ffffff05;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:16px;padding:16px;transition:all .2s ease}.health-ok{background:#78ff4d0f;border-color:#78ff4d40}.health-issue{background:#ff6b6b0f;border-color:#ff6b6b40}.health-card:hover{background:#ffffff0a;border-color:#ffffff26}.health-icon{flex-shrink:0;font-size:28px}.health-info h4{color:#ffffffd9;font-size:14px;font-weight:600;margin:0}.health-status{align-items:center;color:#ffffff8c;display:flex;font-size:12px;font-weight:500;gap:6px;margin-top:4px}.health-dot{align-items:center;display:inline-flex;font-size:10px;justify-content:center}.health-label{font-weight:600}.health-note{border-top:1px solid #ffffff0f;color:#ffffff73;font-size:13px;font-weight:500;padding-top:12px;text-align:center}.audit-viewer{margin-bottom:24px}.audit-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.audit-input,.audit-select{background:#282828f2;border:1px solid #ffffff1f;border-radius:10px;color:#ffffffe6;color-scheme:dark;font-size:13px;font-weight:500;outline:none;padding:10px 14px;transition:all .2s ease}.audit-input:focus,.audit-select:focus{background:#282828fa;border-color:#5aa0ff80;box-shadow:0 0 0 3px #5aa0ff1a}.audit-input{flex:1 1;max-width:300px;min-width:160px}.audit-select{min-width:130px}.audit-empty{color:#ffffff59;font-size:14px;padding:48px 24px;text-align:center}.audit-table-wrap{background:#ffffff05;border:1px solid #ffffff14;border-radius:12px;max-height:600px;overflow-x:auto;overflow-y:auto}.audit-table{border-collapse:collapse;font-size:13px;width:100%}.audit-table thead{background:#ffffff0f;border-bottom:1px solid #ffffff14;position:-webkit-sticky;position:sticky;top:0;z-index:10}.audit-table th{color:#ffffffa6;font-size:11px;font-weight:700;letter-spacing:.08em;padding:14px 16px;text-align:left;text-transform:uppercase}.audit-table tbody tr{border-bottom:1px solid #ffffff0d;transition:background .15s ease}.audit-table tbody tr:hover{background:#ffffff0d}.audit-table td{color:#fffc;padding:14px 16px}.audit-table .mono{color:#ffffff80;font-family:Monaco,Courier New,monospace;font-size:12px}.audit-table .path-cell{max-width:250px}.audit-table .message-cell,.audit-table .path-cell{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audit-table .message-cell{max-width:300px}.audit-table .badge{border-radius:5px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}.badge-error{background:#ff6b6b33;border:1px solid #ff6b6b4d;color:#f99}.badge-warning{background:#ffd93d33;border:1px solid #ffd93d4d;color:#ffd93d}.badge-info{background:#5aa0ff33;border:1px solid #5aa0ff4d;color:#8bb9ff}.badge-success{background:#78ff4d33;border:1px solid #78ff4d4d;color:#a8ff99}.log-level-error td{background:#ff6b6b08}.log-level-warning td{background:#ffd93d08}.modal-overlay{animation:modalFadeIn .08s linear;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#000000d9;z-index:20000}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-box{animation:modalSlideIn .1s cubic-bezier(.2,.9,.2,1);background:#141419fa;border:1px solid #ffffff26;border-radius:16px;box-shadow:0 20px 60px #000c;max-width:1000px;min-width:min(680px,94vw);width:min(1000px,94vw)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion:reduce){.modal-box,.modal-overlay{animation:none}}.modal-header{border-bottom:1px solid #ffffff1a;padding:20px 24px 16px}.modal-header h3{color:#fffffff2;font-size:18px;font-weight:700;letter-spacing:.02em;margin:0}.modal-body{max-height:55vh;overflow:auto;padding:20px 24px}.modal-body p{color:#ffffffd9;font-size:14px;line-height:1.6;margin:0;white-space:pre;word-break:break-word}.modal-footer{border-top:1px solid #ffffff1a;display:flex;gap:10px;justify-content:flex-end;padding:16px 24px 20px}.modal-footer .btn{min-width:90px}@media (max-width:600px){.modal-box{margin:20px;max-width:90%;min-width:90%}}:root{--bg:#07080c;--panel:#ffffff0d;--panel2:#ffffff12;--border:#ffffff1a;--border2:#ffffff24;--text:#ffffffeb;--muted:#ffffff9e;--shadow:0 14px 50px #0000008c}.artist-shell{background:radial-gradient(1200px 700px at 20% 0,#6ea8fe1f,#0000 60%),radial-gradient(900px 550px at 90% 10%,#8b5cf61a,#0000 55%),#07080c;background:radial-gradient(1200px 700px at 20% 0,#6ea8fe1f,#0000 60%),radial-gradient(900px 550px at 90% 10%,#8b5cf61a,#0000 55%),var(--bg);color:#ffffffeb;color:var(--text);display:flex;flex-direction:column;font-family:Inter,system-ui,-apple-system,sans-serif;height:100vh;min-height:100vh}.artist-shell,.artist-shell.artist-shell--no-scroll{overflow:hidden}.artist-topbar.artist-topbar-v2{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000059;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);display:flex;gap:20px;height:72px;padding:0 18px 0 0;position:-webkit-sticky;position:sticky;top:0;z-index:2000}.brand{padding-left:18px}.brand .artist-title{font-size:16px;font-weight:800;letter-spacing:.2px}.brand .artist-subtitle{color:#ffffff9e;color:var(--muted);font-size:12px;margin-top:2px}.topbar-center{display:flex;flex:1 1;justify-content:center}.project-pill{color:#ffffffeb;color:var(--text);font-size:13px;padding:8px 14px}.project-pill,.role-badge{background:#ffffff0f;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:999px}.role-badge{font-size:12px;margin-left:10px;padding:2px 10px}.artist-actions{display:flex;gap:10px;justify-content:flex-end}.artist-banner{background:#ffffff0d;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:12px;margin:14px 18px 0;padding:10px 12px}.artist-banner.error{background:#ff5a5a14;border-color:#ff5a5a59}.artist-body{grid-gap:0;display:grid;flex:1 1;gap:0;grid-template-columns:280px 4px 1fr;min-height:0;overflow:hidden;padding:0}.artist-body.artist-body--wide{grid-template-columns:1fr}.artist-body.artist-body--wide .artist-divider{display:none}.sidebar{background:#00000040;border:none;border-radius:0;box-shadow:none;display:flex;flex-direction:column;height:100%;overflow:hidden}.artist-divider{background:#ffffff1a;background:var(--border);cursor:col-resize;flex-shrink:0;transition:background .15s ease;width:4px;z-index:10}.artist-divider.is-dragging,.artist-divider:hover{background:#6ea8fe99}.sidebar-search{border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);padding:12px}.sidebar-search input{border:1px solid #ffffff1a;border-radius:12px;color:#ffffffeb;outline:none}.sidebar-list{display:flex;flex:1 1;flex-direction:column;gap:8px;min-height:0;overflow-y:auto;padding:10px}.sidebar-empty{color:#ffffff9e;color:var(--muted);font-size:13px;padding:10px}.sidebar-item{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;color:#ffffffeb;color:var(--text);cursor:pointer;overflow:hidden;padding:10px 12px;text-align:left;text-overflow:ellipsis;transition:.12s ease;white-space:nowrap}.sidebar-item:hover{background:#ffffff12}.sidebar-item.active{background:#6ea8fe29;border-color:#6ea8fe59}.content{min-height:0;min-width:0;overflow-y:auto;padding:16px 18px 22px}.content-grid{grid-gap:16px;align-items:start;display:grid;gap:16px;grid-template-columns:1.7fr .8fr}.rightcol{display:flex;flex-direction:column;gap:16px}.card{background:#ffffff0d;background:var(--panel);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:18px;box-shadow:0 14px 50px #0000008c;box-shadow:var(--shadow);padding:18px}.card-main{background:linear-gradient(180deg,#ffffff12,#ffffff0a);min-height:520px}.stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));margin:10px 0 6px}.stat-card{background:#ffffff0d;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:12px;box-shadow:0 6px 18px #00000040;padding:10px 12px}.stat-label{color:#ffffff9e;color:var(--muted);font-size:11px}.stat-value{font-size:18px;font-weight:800;margin-top:4px}.task-filters{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin:10px 0 6px}.task-filters .input{background:#ffffff0f;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:12px;color:#ffffffeb;color:var(--text);min-width:200px;outline:none;padding:10px 12px}.task-filters select.input{min-width:180px}select.input{color-scheme:dark}select.input option{background:#0d1117;color:#ffffffeb;color:var(--text)}.card h2{font-size:20px;margin:0 0 8px}.muted{color:#ffffff9e;color:var(--muted)}.card-head-row{align-items:start;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.empty{background:#ffffff08;border:1px dashed #ffffff24;border-radius:14px;color:#ffffff9e;color:var(--muted);margin-top:14px;padding:14px}.empty.small{margin-top:10px;padding:10px}.task-list{display:flex;flex-direction:column;gap:10px;list-style:none;margin:10px 0 0;padding:0}.task-item{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;padding:12px}.task-name{font-weight:700;margin-bottom:6px}.task-meta{display:flex;flex-wrap:wrap;gap:8px}.chip{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;font-size:12px;padding:4px 10px}.chip.muted{color:#ffffffb3}.btn{background:#ffffff0f;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:12px;color:#ffffffeb;color:var(--text);cursor:pointer;font-weight:700;padding:8px 14px;transition:.12s ease}.btn:hover{background:#ffffff1a}.btn.ghost{background:#ffffff0d}.btn.danger{background:#ff5a5a1a;border-color:#ff5a5a59;color:#ffdcdcf2}.btn.danger:hover{background:#ff5a5a29}.btn:disabled{cursor:not-allowed;opacity:.6}.artist-shell *{scrollbar-color:#ffffff47 #ffffff14;scrollbar-width:thin}.artist-shell ::-webkit-scrollbar{height:10px;width:10px}.artist-shell ::-webkit-scrollbar-track{background:#ffffff14;border-radius:10px}.artist-shell ::-webkit-scrollbar-thumb{background:#ffffff47;border:2px solid #00000040;border-radius:10px}.artist-shell ::-webkit-scrollbar-thumb:hover{background:#ffffff61}@media (max-width:1000px){.artist-body{grid-template-columns:1fr}.artist-divider{display:none}.sidebar{max-height:40vh}.content-grid{grid-template-columns:1fr}.artist-topbar.artist-topbar-v2{gap:8px;grid-template-columns:1fr;height:auto;padding:12px 18px}.artist-actions,.topbar-center{justify-content:flex-start}.topbar-center{align-items:flex-start;flex-direction:column}}.view-toggle{background:#ffffff0a;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:8px;display:flex;gap:4px;margin-left:16px;padding:4px}.toggle-btn{background:#0000;border:none;border-radius:6px;color:#ffffff9e;color:var(--muted);cursor:pointer;font-size:13px;padding:6px 16px;transition:all .2s}.toggle-btn:hover{background:#ffffff14;color:#ffffffeb;color:var(--text)}.toggle-btn.active{background:#6ea8fe26;color:#6ea8fe;font-weight:500}.week-nav{align-items:center;display:flex;gap:8px;margin-left:16px}.week-range{background:#ffffff0d;padding:6px 10px}.week-btn,.week-range{border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:8px;color:#ffffffeb;color:var(--text);font-size:13px}.week-btn{background:#ffffff0f;cursor:pointer;padding:6px 12px;transition:.12s ease}.week-btn:hover{background:#ffffff1a}.timeline-view{grid-gap:6px;align-items:start;display:grid;gap:6px;grid-template-columns:repeat(4,minmax(300px,1fr));padding:2px 0}.timeline-day{background:#ffffff0d;background:var(--panel);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:10px;min-width:0;overflow:hidden;transition:all .2s}.timeline-day.is-today{border-color:#6ea8fe80;box-shadow:0 0 0 2px #6ea8fe26}.timeline-day.is-empty{opacity:.5}.timeline-day-header{align-items:center;background:#ffffff0a;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:4px 6px}.timeline-day.is-today .timeline-day-header{background:linear-gradient(135deg,#6ea8fe1f,#8b5cf614)}.date-info{align-items:center;display:flex;gap:6px}.date-weekday{color:#ffffff9e;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.5px;min-width:40px;text-transform:uppercase}.date-number{color:#ffffffeb;color:var(--text);font-size:18px;font-weight:700;line-height:1;min-width:24px;text-align:center}.date-month{color:#ffffff9e;color:var(--muted);font-size:13px;font-weight:500;letter-spacing:.3px;text-transform:uppercase}.today-indicator{background:#6ea8fe33;border-radius:8px;color:#6ea8fe;font-size:9px;font-weight:700;letter-spacing:.2px;padding:2px 7px;text-transform:uppercase}.timeline-slots{grid-gap:6px;background:#0000;display:grid;gap:6px;grid-template-columns:repeat(2,1fr);min-width:0;overflow:hidden;padding:6px}.full-day-row{background:#ffffff0d;background:var(--panel);border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);grid-column:1/-1;min-width:0;overflow:hidden;padding:6px 8px}.full-day-header{align-items:center;display:flex;gap:8px;margin-bottom:8px;min-width:0;overflow:hidden}.full-day-tasks{gap:3px;max-height:200px;overflow-x:hidden;overflow-y:auto}.full-day-tasks,.time-slot{display:flex;flex-direction:column;min-width:0}.time-slot{background:#ffffff0d;background:var(--panel);border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:8px;gap:4px;min-height:auto;overflow:hidden;padding:6px}.time-slot-header{align-items:center;border-bottom:1px solid #ffffff1a;border-bottom:1px solid var(--border);display:flex;gap:4px;padding-bottom:3px}.time-label{color:#ffffffeb;color:var(--text);flex:1 1;font-size:10px;font-weight:600;letter-spacing:.3px;min-width:0;overflow:hidden;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.task-count{background:#ffffff14;border-radius:6px;color:#ffffff9e;color:var(--muted);font-size:9px;font-weight:700;padding:2px 6px}.time-slot-tasks{display:flex;flex-direction:column;gap:2px;max-height:150px;overflow-x:hidden;overflow-y:auto}.time-slot-empty{color:#ffffff9e;color:var(--muted);font-size:10px;font-style:italic;opacity:.6;padding:8px 6px;text-align:center}.task-card{background:#ffffff0d;border-left:2px solid #ffffff1a;border-left:2px solid var(--border);border-radius:4px;cursor:pointer;min-width:0;overflow:hidden;padding:4px 6px;transition:all .2s}.task-card>*{margin:0}.task-card:hover{background:#ffffff14;transform:translateX(2px)}.task-card-title{color:#ffffffeb;color:var(--text);font-size:11px;font-weight:600}.task-card-folder,.task-card-title{line-height:1.3;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-card-folder{color:#ffffff9e;color:var(--muted);font-size:9px;opacity:.8}.task-card-project{color:#fff;font-size:10px;font-weight:700;line-height:1.3;margin:0}.task-card-project,.task-card-status{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-card-status{background:#ffffff0f;border:1px solid #ffffff24;border-radius:3px;color:#ffffffeb;color:var(--text);display:inline-block;font-size:9px;line-height:1.2;margin:2px 0 0;max-width:100%;padding:1px 4px;text-transform:capitalize}.task-card-meta{color:#ffffffe6;font-size:12px;line-height:1.2;margin:0;white-space:normal;word-break:break-word}.task-details{display:flex;flex-direction:column;gap:8px}.task-details-row{background:#ffffff0a;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:10px;display:flex;gap:8px;justify-content:space-between;padding:6px 8px}.task-details-row .label{color:#ffffff9e;color:var(--muted);font-size:12px;min-width:80px}.task-details-row .value{color:#ffffffeb;color:var(--text);font-size:13px;font-weight:600;text-align:right;word-break:break-word}.task-card.status-not-ready,.task-card.status-todo{background:#6ea8fe0d;border-left-color:#6ea8feb3}.task-card.status-in-progress,.task-card.status-in_progress{background:#ffc10714;border-left-color:#ffc107cc}.task-card.status-approved,.task-card.status-done{background:#4caf5014;border-left-color:#4caf50cc}.task-card.status-blocked{background:#f4433614;border-left-color:#f44336cc}.task-card.status-pending-review{background:#9c27b014;border-left-color:#9c27b0cc}.task-item.status-not-ready,.task-item.status-todo{background:#6ea8fe0f;border-color:#6ea8fe59}.task-item.status-in-progress,.task-item.status-in_progress{background:#ffc1071a;border-color:#ffc10773}.task-item.status-approved,.task-item.status-done{background:#4caf501a;border-color:#4caf5073}.task-item.status-blocked{background:#f443361f;border-color:#f443368c}.task-item.status-pending-review{background:#9c27b01f;border-color:#9c27b08c}@media (max-width:1200px){.timeline-slots{grid-template-columns:1fr}.time-slot{min-height:auto}}.user-avatar{background:#ffffff0f;border:1px solid #ffffff1a;border:1px solid var(--border);border-radius:999px;cursor:pointer;overflow:hidden}.user-avatar.is-uploading{cursor:progress;opacity:.7}.user-avatar-img{display:block;height:100%;object-fit:cover;width:100%}.user-avatar-fallback{color:#ffffffeb;color:var(--text);display:grid;font-size:12px;font-weight:900;height:100%;letter-spacing:.4px;place-items:center;width:100%}.dailies-summary-card{overflow:hidden}.dailies-summary-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.dailies-summary-header h2{font-size:15px;font-weight:700;margin:0}.dailies-toggle-group{background:#ffffff0f;border-radius:8px;display:flex;gap:4px;padding:2px}.dailies-toggle-btn{background:#0000;border:none;border-radius:6px;color:#ffffff9e;color:var(--muted,#999);cursor:pointer;font-size:11px;font-weight:600;padding:4px 10px;transition:all .2s}.dailies-toggle-btn.active{background:#4f8cff;background:var(--accent,#4f8cff);color:#fff}.dailies-toggle-btn:hover:not(.active){background:#ffffff14;color:#ffffffeb;color:var(--text,#fff)}.dailies-summary-body{max-height:220px;overflow-y:auto}.dailies-grid{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(7,1fr)}.dailies-grid--month{grid-template-columns:repeat(7,1fr)}.dailies-cell{align-items:center;background:#ffffff0a;border:1px solid #0000;border-radius:8px;display:flex;flex-direction:column;gap:2px;padding:6px 2px;transition:all .2s}.dailies-cell--today{background:#4f8cff1f;border-color:#4f8cff;border-color:var(--accent,#4f8cff)}.dailies-cell--empty{opacity:.45}.dailies-day{color:#ffffff9e;color:var(--muted,#999);font-size:10px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.dailies-date{color:#ffffffeb;color:var(--text,#fff);font-size:11px;font-weight:500}.dailies-badge{border-radius:6px;font-size:9px;font-weight:700;letter-spacing:.3px;line-height:1.3;padding:2px 6px;text-transform:uppercase;white-space:nowrap}.dailies-badge--success{background:#78ff4d26;border:1px solid #78ff4d4d;color:#78ff4d}.dailies-badge--danger{background:#ff505026;border:1px solid #ff50504d;color:#ff5050}.dailies-badge--warning{background:#ffd93d26;border:1px solid #ffd93d4d;color:#ffd93d}.dailies-badge--holiday{background:#ffaa3226;border:1px solid #ffaa3259;color:#ffaa32}.dailies-badge--overtime{background:#ffffff1a;border:1px solid #ffffff2e;color:#ffffffeb;color:var(--text,#fff)}.dailies-badge--default{background:#ffffff14;border:1px solid #ffffff1f;color:#ffffffeb;color:var(--text,#ccc)}.dailies-badge--none{background:#0000;border:none;color:#ffffff9e;color:var(--muted,#666);font-size:14px}:root{--accent:#5aa0ff}body,html{background:var(--bg);margin:0;padding:0}.manager-shell,body,html{color:var(--text);height:100vh;overflow:hidden}.manager-shell{background:radial-gradient(1000px 600px at 15% 0,#5aa0ff1f,#0000 60%),radial-gradient(800px 500px at 90% 10%,#ff78b41a,#0000 55%),var(--bg);box-sizing:border-box;display:grid;font-family:Inter,system-ui,-apple-system,sans-serif;grid-template-columns:280px 4px 1fr;max-width:100%;width:100%}.manager-shell.staging-mode{--accent:var(--warning);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--warning) 25%,#0000),0 0 0 10px color-mix(in srgb,var(--warning) 6%,#0000);outline:2px solid color-mix(in srgb,var(--warning) 45%,#0000);outline-offset:-2px}.manager-sidebar{background:#00000059;border-right:none;box-sizing:border-box;display:flex;flex-direction:column;gap:14px;height:100vh;overflow-x:hidden;overflow-y:auto;padding:16px}.manager-divider{background:var(--border);cursor:col-resize;flex-shrink:0;transition:background .15s ease;width:4px;z-index:10}.manager-divider.is-dragging,.manager-divider:hover{background:#5aa0ff;background:var(--accent)}.sidebar-brand{align-items:center;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;display:flex;gap:10px;padding:10px 10px 12px}.sidebar-logo{background:linear-gradient(135deg,#5aa0ff,#ff78b4e6);background:linear-gradient(135deg,var(--accent),#ff78b4e6);color:#0b0f16;display:grid;font-weight:900;height:44px;letter-spacing:.6px;place-items:center;width:44px}.sidebar-logo,.sidebar-logo-img{border-radius:14px;box-shadow:0 12px 30px #00000059}.sidebar-logo-img{height:44px;object-fit:contain;width:44px}.sidebar-brand-title{font-size:14px;font-weight:900;letter-spacing:.3px}.sidebar-brand-sub{color:var(--muted);font-size:12px;margin-top:2px}.sidebar-head{display:flex;flex-direction:column;gap:4px}.sidebar-title{font-size:18px;font-weight:800}.sidebar-sub{color:var(--muted);font-size:12px}.sidebar-search input{background:#ffffff0f;border:1px solid var(--border);border-radius:10px;color:var(--text);padding:10px 12px;width:100%}.sidebar-search input::placeholder{color:#ffffff59}.project-list{display:flex;flex:1 1;flex-direction:column;gap:8px;overflow-y:auto}.project-item{background:#ffffff0a;border:1px solid #ffffff14;border-radius:10px;cursor:pointer;padding:8px 12px;transition:background .15s ease}.project-item:hover{background:#ffffff12}.project-item.active{background:#5aa0ff2e;border-color:#5aa0ff59;position:relative}.project-item.active:before{background:#5aa0ff;background:var(--accent);border-radius:2px;bottom:8px;content:"";left:-6px;position:absolute;top:8px;width:3px}.project-name{font-size:14px;font-weight:600}.project-meta{color:var(--muted);font-size:11px}.manager-main{display:flex;flex-direction:column;height:100vh;min-height:0;min-width:0;overflow:hidden}.manager-topbar{align-items:center;background:#00000040;border-bottom:1px solid var(--border);display:flex;height:60px;justify-content:space-between;padding:0 18px}.manager-title{font-weight:700}.manager-actions{display:flex;gap:10px}.folder-timeline-overlay{align-items:center;background:#0000008c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:9999}.folder-timeline-modal{background:#111722;border:1px solid #ffffff14;border-radius:10px;box-shadow:0 20px 50px #00000073;display:flex;flex-direction:column;height:88vh;padding:14px;width:88vw}.folder-timeline-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.folder-timeline-title{font-size:16px;font-weight:700}.folder-timeline-path{font-size:12px;opacity:.6}.folder-filters-row{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.folder-filter-card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:10px;flex:1 1;min-width:220px;padding:8px}.folder-filter-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.folder-filter-title{color:#9fb4d0;font-size:11px;font-weight:700}.folder-filter-clear{font-size:10px;padding:3px 6px}.folder-filter-pills{display:flex;flex-wrap:wrap;gap:6px}.folder-filter-pill{align-items:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:7px;color:#e8eefc;cursor:pointer;display:flex;font-size:11px;gap:6px;padding:4px 8px;transition:all .14s ease}.folder-filter-pill input{cursor:pointer}.folder-filter-pill.is-selected{background:#5aa0ff26;border:1px solid #5aa0ff66;color:#c7e0ff}.folder-timeline-status{color:#9fc5ff}.folder-timeline-status.is-error{color:#ffb3b3}.folder-timeline-content{display:flex;flex:1 1;flex-direction:column;gap:10px;min-height:0;overflow:auto}.folder-timeline-range{color:#9fb4d0;font-size:12px}.folder-timeline-scroll{--folder-month-band-height:40px;--folder-meta-width:180px;--folder-scroll-x:0px;--folder-separator-color:#ffffff38;background:#ffffff05;border:1px solid #ffffff14;border-radius:12px;overflow-x:auto;padding:0 10px 10px;position:relative}.folder-timeline-scroll:after{background:var(--folder-separator-color);bottom:0;content:"";left:calc(14px + var(--folder-meta-width) - var(--folder-scroll-x));pointer-events:none;position:absolute;top:calc(var(--folder-month-band-height) + 44px);width:1px;z-index:0}.folder-month-bands{grid-gap:2px;align-items:center;background:#111722;box-shadow:0 6px 12px #00000026;display:grid;gap:2px;height:var(--folder-month-band-height);margin-bottom:0;padding-bottom:0;padding-left:4px;padding-top:0;position:-webkit-sticky;position:sticky;top:0;z-index:2}.folder-month-spacer{background:#111722;border-right:1px solid var(--folder-separator-color);box-shadow:inset -1px 0 0 var(--folder-separator-color);height:100%;position:relative;transform:translateX(var(--folder-scroll-x));width:100%;will-change:transform;z-index:4}.folder-days-grid{grid-gap:2px;background:#111722;box-shadow:0 6px 10px #0000001f;display:grid;gap:2px;margin-bottom:8px;padding-bottom:4px;padding-left:4px;padding-top:2px;position:-webkit-sticky;position:sticky;top:var(--folder-month-band-height);z-index:1}.folder-days-grid .folder-month-spacer{background:#111722;border-right:1px solid var(--folder-separator-color);box-shadow:inset -1px 0 0 var(--folder-separator-color);height:100%;position:relative;transform:translateX(var(--folder-scroll-x));width:100%;will-change:transform;z-index:3}.folder-day-cell{align-items:center;display:flex;flex-direction:column;gap:2px}.folder-day-box{align-items:center;background:#ffffff0a;border:1px solid #0000;border-radius:6px;color:#9fb4d0;display:flex;font-size:10px;height:20px;justify-content:center;width:24px}.folder-day-box.is-today{background:#9fc5ff;color:#0c111b}.folder-day-box.is-monday{border-color:#ffffff1f}.folder-day-weekday{color:#8aa4c4;font-size:10px;font-weight:700}.folder-day-weekday.is-today{color:#9fc5ff}.folder-card-stack{display:flex;flex-direction:column;gap:12px}.folder-card{background:#ffffff05;border:1px solid #ffffff1a;border-radius:12px;overflow:hidden}.folder-card__header{align-items:center;background:#ffffff0a;border-bottom:1px solid #ffffff14;display:flex;justify-content:space-between;padding:8px 10px;padding-left:calc(var(--folder-meta-width) + 12px);position:relative}.folder-card__title{align-items:center;background:#0f1624;border-right:1px solid var(--folder-separator-color);bottom:0;color:#e8eefc;display:flex;font-size:12px;font-weight:700;left:0;min-width:var(--folder-meta-width);padding-left:10px;position:absolute;top:0;transform:translateX(var(--folder-scroll-x));width:var(--folder-meta-width);will-change:transform;z-index:4}.folder-card__meta{color:#9fb4d0;font-size:10px}.folder-card__body{display:flex;flex-direction:column;gap:6px;padding:8px}.folder-task{grid-gap:10px;align-items:center;background:#ffffff08;border:1px solid #ffffff14;border-radius:10px;display:grid;gap:10px;grid-template-columns:var(--folder-meta-width) 1fr;padding:6px 8px}.folder-task__meta-col{background:#0f1624;border-right:1px solid var(--folder-separator-color);box-shadow:inset -1px 0 0 var(--folder-separator-color);display:flex;flex-direction:column;gap:2px;min-width:var(--folder-meta-width);position:relative;transform:translateX(var(--folder-scroll-x));width:var(--folder-meta-width);will-change:transform;z-index:4}.folder-task__name-row{align-items:center;display:flex;gap:6px;min-width:0}.folder-task__name{color:#e8eefc;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-task__dates{color:#9fb4d0;font-size:10px;white-space:nowrap}.folder-task__status{font-size:11px;font-weight:700;white-space:nowrap}.folder-task__bar-shell{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:8px;flex:1 1;height:18px;overflow:visible;position:relative}.folder-task__bar-grid{grid-gap:2px;display:grid;gap:2px;height:100%;position:relative}.folder-task__bar{align-items:center;border-radius:6px;box-shadow:0 4px 18px #00000040;color:#0c111b;display:flex;font-size:10px;font-weight:700;justify-content:center;margin:2px 0}.manager-content{grid-gap:0;display:grid;flex:1 1;gap:0;grid-auto-rows:auto;grid-template-columns:1fr .7fr;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto;padding:18px 18px 24px;perspective:none;transform:none;will-change:auto}.manager-sticky-tasks{position:-webkit-sticky;position:sticky;top:-18px;z-index:1100}.timeline-card{contain:none!important;max-height:none!important;transform:none!important;will-change:auto!important}.card-main{background:linear-gradient(180deg,#ffffff0f,#ffffff0a);height:auto;min-height:280px;overflow:visible!important;transform:none!important}.card-main,.card-side{display:flex;flex-direction:column}.card-side{height:100%;max-height:none;min-height:420px;min-width:0;overflow:hidden}.timeline-card{display:flex;flex-direction:column;margin-top:36px;min-height:auto!important;overflow:visible!important}.timeline-card .timeline-wrap{flex:1 1;min-height:0}@media (max-width:900px){.manager-shell{grid-template-columns:1fr}.manager-sidebar{border-bottom:1px solid var(--border);border-right:none;height:auto;max-height:40vh}.manager-divider{display:none}.manager-content{grid-template-columns:1fr}}.folder-tree{display:flex;flex-direction:column;gap:8px}.folder-row{align-items:center;background:#3918180a;border:1px solid #ffffff14;border-radius:12px;cursor:pointer;display:flex;gap:8px;padding:8px 10px;position:relative;transition:transform .16s ease,background .16s ease,border-color .16s ease;-webkit-user-select:none;user-select:none}.folder-row:hover{background:#ffffff12}.folder-row.active{background:#5aa0ff2e;border-color:#5aa0ff59}.folder-row{background:hsla(0,0%,100%,.035);margin-left:0;margin-left:calc(var(--depth, 0)*18px);transform:translateX(0);transform:translateX(calc(var(--depth, 0)*8px))}.folder-row[data-depth="0"]{background:#ffffff0a;transform:translateX(0)}.folder-row[data-depth="1"],.folder-row[data-depth="2"],.folder-row[data-depth="3"],.folder-row[data-depth="4"],.folder-row[data-depth="5"],.folder-row[data-depth="6"]{background:#ffffff08}.folder-row[data-depth]:not([data-depth="0"]):before{background:#ffffff1a;bottom:10px;content:"";left:-10px;position:absolute;top:10px;width:1px}.folder-expander{background:#ffffff0d;border-radius:10px;flex:0 0 auto;line-height:1;padding:4px 8px}.folder-expander.disabled{cursor:default;opacity:.25}.folder-body{cursor:pointer;flex:1 1;min-width:0;padding-right:6px}.folder-name{align-items:center;display:flex;font-size:13px;font-weight:800;gap:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.folder-name span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis}.folder-badge{background:#0003;border:1px solid #ffffff1a;border-radius:999px;flex:0 0 auto;font-size:11px;font-weight:900;opacity:.75;padding:2px 8px}.folder-path{font-size:11px;margin-top:2px;opacity:.55;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-row-wrap{-webkit-overflow-scrolling:touch;margin-top:12px;max-width:100%;overflow-x:auto;overflow-y:hidden;padding-bottom:14px;padding-top:14px}.tasks-row{align-items:stretch;display:flex;flex-wrap:nowrap;gap:10px;min-width:0}.task-card{background:#ffffff0a;border:1px solid #ffffff1a;border-radius:14px;box-shadow:0 10px 22px #00000038;flex:0 0 auto;max-width:280px;min-width:200px;padding:10px;transition:transform .14s ease,background .14s ease,border-color .14s ease}.tasks-strip{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0a0c10eb;border-bottom:1px solid #ffffff14;box-shadow:0 10px 24px #00000040;margin:0 -18px;padding:8px 16px 14px;position:relative;transition:all .3s ease;z-index:10}.tasks-strip.is-maximized{border-radius:0 0 8px 8px;max-height:calc(100vh - 200px);overflow-y:auto;padding:16px 24px 20px}.tasks-strip.is-maximized .tasks-strip-scroll{flex-wrap:wrap;gap:8px;max-height:calc(100vh - 320px);overflow-y:auto}.tasks-strip-maximize-btn{align-items:center;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:4px;color:var(--text);cursor:pointer;display:inline-flex;font-size:12px;justify-content:center;line-height:1;opacity:.7;padding:3px 8px;transition:all .15s ease;-webkit-user-select:none;user-select:none}.tasks-strip-maximize-btn:hover{background:#ffffff1a;border-color:#ffffff2e;opacity:1}.tasks-strip-head{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.tasks-strip-filter-statuses-inline{align-items:center;display:flex;gap:6px;margin-left:auto}.tasks-strip-title{align-items:center;display:flex;font-size:14px;font-weight:900;gap:8px;letter-spacing:.2px;white-space:nowrap}.tasks-strip-filter-toggle{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:4px;color:var(--text);cursor:pointer;font-size:12px;opacity:.7;padding:3px 8px;transition:all .15s ease;-webkit-user-select:none;user-select:none}.tasks-strip-filter-toggle:hover{background:#ffffff1a;border-color:#ffffff2e;opacity:1}.tasks-strip-filter-toggle.active{background:#5aa0ff29;border-color:#5aa0ff59;opacity:1}.tasks-strip-filters{align-items:center;border-bottom:1px solid #ffffff0a;display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;padding:8px 0 4px}.tasks-strip-filter-statuses{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.tasks-strip-filter-checkbox{align-items:center;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:4px;cursor:pointer;display:inline-flex;font-size:11px;font-weight:600;gap:5px;padding:4px 8px;transition:all .15s ease;-webkit-user-select:none;user-select:none}.tasks-strip-filter-checkbox:hover{background:#ffffff14;border-color:#ffffff2e}.tasks-strip-filter-checkbox input[type=checkbox]{accent-color:#5aa0ffcc;cursor:pointer;height:12px;margin:0;width:12px}.tasks-strip-filter-checkbox input[type=checkbox]:checked+span{color:#5aa0ff}.tasks-strip-filter-checkbox span{line-height:1;transition:color .15s ease}.tasks-strip-filter-input{flex:1 1;font-size:12px;min-width:120px;padding:6px 10px}.tasks-strip-filter-input,.tasks-strip-filter-input-compact{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:4px;color:var(--text);font-family:inherit;transition:all .15s ease}.tasks-strip-filter-input-compact{font-size:11px;min-width:100px;padding:4px 8px;width:140px}.tasks-strip-filter-input-compact::placeholder{color:#fff6;font-size:11px}.tasks-strip-filter-input-compact:focus{background:#ffffff0f;border-color:#5aa0ff59;box-shadow:0 0 0 2px #5aa0ff1a;outline:none}.tasks-strip-filter-input::placeholder{color:#fff6}.tasks-strip-filter-input:focus{background:#ffffff0f;border-color:#5aa0ff59;box-shadow:0 0 0 2px #5aa0ff1a;outline:none}.tasks-strip-filter-select{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:4px;color:var(--text);cursor:pointer;font-family:inherit;font-size:12px;font-weight:600;padding:6px 10px;transition:all .15s ease}.tasks-strip-filter-select:hover{background:#ffffff0f;border-color:#ffffff2e}.tasks-strip-filter-select:focus{border-color:#5aa0ff59;box-shadow:0 0 0 2px #5aa0ff1a;outline:none}.tasks-strip-filter-clear{align-items:center;background:linear-gradient(135deg,#ff505026,#ff32641f);border:1px solid #ff50504d;border-radius:4px;box-shadow:0 2px 4px #0000001a;color:#ff6b6b;cursor:pointer;display:inline-flex;font-size:14px;font-weight:900;justify-content:center;line-height:1;min-height:24px;padding:4px 10px;transition:all .15s ease;-webkit-user-select:none;user-select:none}.tasks-strip-filter-clear:hover{background:linear-gradient(135deg,#ff505040,#ff326433);border-color:#ff505080;box-shadow:0 3px 8px #ff505033;color:#f55;transform:translateY(-1px)}.tasks-strip-filter-clear:active{box-shadow:0 1px 2px #0000001a;transform:translateY(0)}.tasks-strip-sub{font-size:11px;opacity:.75;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-strip-scroll{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;margin-top:12px;overflow-x:auto;overflow-y:hidden;padding-bottom:2px}.tasks-strip-group,.tasks-strip-scroll{align-items:flex-start;display:flex;gap:0}.tasks-strip-group{flex:0 0 auto}.tasks-strip-divider{background:#ffffff1f;flex:0 0 auto;height:48px;margin:0 10px;width:3px}.tasks-strip-shot-label{align-items:center;display:flex;flex:0 0 auto;font-size:10px;font-weight:800;height:48px;letter-spacing:.5px;opacity:.65;padding:0 10px;text-transform:uppercase;white-space:nowrap}.tasks-strip-shot-tasks{display:flex;flex:0 0 auto;gap:8px}.tasks-strip-item{align-items:center;background:#ffffff0f;border:1px solid #ffffff1f;border-radius:999px;color:var(--text);cursor:grab;display:inline-flex;flex:0 0 auto;font-size:13px;font-weight:900;gap:8px;max-width:340px;padding:10px 14px;position:relative;transition:all .15s ease;-webkit-user-select:none;user-select:none}.tasks-strip-item:hover{background:#ffffff14;border-color:#ffffff2e;box-shadow:0 2px 8px #00000026;transform:translateY(-1px)}.tasks-strip-item:active{cursor:grabbing;opacity:.7;transform:translateY(0) scale(.98)}.tasks-strip-item[draggable=true]:hover:after{animation:bounceDown 1s infinite;content:"↓";font-size:16px;opacity:.5;position:absolute;right:8px;top:50%;transform:translateY(-50%)}@keyframes bounceDown{0%,to{transform:translateY(-50%)}50%{transform:translateY(-40%)}}.tasks-strip-item.is-approved,.tasks-strip-item.status-approved,.tasks-strip-item.status-done{background:#32c8641a;border-color:#32c86466}.tasks-strip-item.is-approved:hover,.tasks-strip-item.status-approved:hover,.tasks-strip-item.status-done:hover{background:#32c86424;border-color:#32c8648c}.tasks-strip-item.is-approved .tasks-strip-item-status,.tasks-strip-item.status-approved .tasks-strip-item-status,.tasks-strip-item.status-done .tasks-strip-item-status{background:#32c86433;border-color:#32c86440;color:#32c864}.tasks-strip-item.status-in-progress{background:#5aa0ff1a;border-color:#5aa0ff66}.tasks-strip-item.status-in-progress:hover{background:#5aa0ff24;border-color:#5aa0ff8c}.tasks-strip-item.status-in-progress .tasks-strip-item-status{background:#5aa0ff33;border-color:#5aa0ff40;color:#5aa0ff}.tasks-strip-item.status-pending-review{background:#ffaa321a;border-color:#ffaa3273}.tasks-strip-item.status-pending-review:hover{background:#ffaa3224;border-color:#ffaa3299}.tasks-strip-item.status-pending-review .tasks-strip-item-status{background:#ffaa3233;border-color:#ffaa3240;color:#ffaa32}.tasks-strip-item.is-selected{background:#ffd70029;border-color:#ffd700a6;box-shadow:inset 0 0 0 1px #ffd70047}.tasks-strip-item-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tasks-strip-item-status{background:#00000040;border:1px solid #ffffff1f;border-radius:999px;flex:0 0 auto;font-size:10px;font-weight:900;opacity:.9;padding:2px 8px}.task-card:hover{background:#ffffff0f;border-color:#ffffff29}.task-title{font-size:12px;font-weight:900;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.task-meta-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.task-pill{background:#00000040;border:1px solid #ffffff1a;border-radius:999px;font-size:10px;font-weight:800;opacity:.95;padding:3px 8px}.task-pill.muted{opacity:.75}.task-pill.danger{background:#ff50501f;border-color:#ff505059;color:#ffdcdc}.task-id{font-size:10px;margin-top:8px;opacity:.55;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-role{background:#ffffff14;border:1px solid #fff3;border-radius:999px;color:var(--text);font-size:10px;font-weight:900;min-width:50px;padding:4px 8px;text-align:center}.role-admin{background:#ff78b426;border-color:#ff78b480;color:#ffe0e8}.role-manager{background:#5aa0ff26;border-color:#5aa0ff80;color:#d0e4ff}.role-artist{background:#78ffb426;border-color:#78ffb480;color:#d0ffe0}.users-panel{min-height:260px}.users-head,.users-panel{display:flex;flex-direction:column}.users-head{margin-bottom:12px}.users-head h2{font-size:18px;margin:0}.users-sub{font-size:12px;opacity:.6}.users-list{display:flex;flex-direction:column;gap:10px;overflow-y:visible;padding-right:4px}.user-row{align-items:center;background:#ffffff0a;border:1px solid #ffffff14;border-radius:12px;display:flex;gap:10px;padding:8px 10px;transition:background .14s ease,transform .14s ease}.user-row:hover{background:#ffffff12;transform:translateY(-1px)}.user-avatar{background:linear-gradient(135deg,#5aa0ff,#8b5cf6);border-radius:10px;color:#000;display:grid;font-size:14px;font-weight:900;height:32px;place-items:center;width:32px}.user-body{flex:1 1;min-width:0}.user-name{font-size:13px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:11px;opacity:.6}.user-assign-btn{border-radius:10px;font-size:14px;font-weight:900;line-height:1;padding:6px 10px}.users-empty{font-size:12px;opacity:.6;padding:10px;text-align:center}.timeline-card .timeline-head{align-items:flex-end;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px}.timeline-card .timeline-controls{display:flex;flex-wrap:wrap;gap:10px}.timeline-wrap{-webkit-overflow-scrolling:touch;background:#0000002e;border:1px solid #ffffff14;border-radius:16px;max-width:100%;min-width:0;overflow-x:auto;overflow-y:visible;position:relative;transform:none;width:100%}.timeline-grid{display:grid;grid-template-columns:200px repeat(14,minmax(0,1fr))}.timeline-sticky{background:#14161efa;position:-webkit-sticky;position:sticky;top:-18px;z-index:1000}.timeline-filters{padding:12px 16px}.timeline-filters,.timeline-header{background:#0000;border-bottom:1px solid #ffffff14;margin:0}.timeline-lefthead{background:#14161efa;border-right:1px solid #ffffff14;font-weight:800;opacity:.9;padding:12px}.timeline-day{border-right:1px solid #ffffff0f;padding:10px}.timeline-dayname{font-size:12px;font-weight:900;opacity:.9}.timeline-daydate{font-size:11px;margin-top:2px;opacity:.65}.timeline-body{max-height:none;overflow:visible}.timeline-row{border-bottom:1px solid #ffffff0f}.timeline-artist{align-items:center;background:#14161efa;border-right:1px solid #ffffff14;display:flex;gap:10px;left:0;padding:10px 12px;position:-webkit-sticky;position:sticky;z-index:50}.timeline-avatar{background:linear-gradient(135deg,#5aa0ff,#8b5cf6);border-radius:12px;color:#000;display:grid;font-weight:900;height:34px;place-items:center;width:34px}.timeline-artistname{font-size:13px;font-weight:900}.timeline-artistrole{font-size:11px;margin-top:2px;opacity:.6}.timeline-cell{border-right:1px solid #ffffff0f;display:flex;flex-direction:column;gap:8px;min-height:58px;padding:10px}.timeline-cell.is-today{box-shadow:inset 0 0 0 1px #5aa0ff47}.tl-chip{align-items:center;background:#5aa0ff24;border:1px solid #ffffff1a;border-radius:12px;display:flex;gap:10px;justify-content:space-between;padding:7px 10px}.tl-chip,.tl-chip>div{min-width:0;overflow:hidden}.tl-chip.danger{background:#ff505024;border-color:#ff505040}.tl-chip.is-selected{box-shadow:inset 0 0 0 1px #ffd70040;outline:2px solid #ffd700bf;outline-offset:1px}.tl-chip-title{font-size:12px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tl-chip-min{background:#0003;border:1px solid #ffffff1f;border-radius:999px;font-size:11px;font-weight:900;opacity:.85;padding:2px 8px}.tl-note-dot{background:#4caf50f2;border:1px solid #4caf5073;border-radius:999px;box-shadow:0 0 0 1px #0000002e;flex-shrink:0;height:6px;width:6px}.tl-more{cursor:pointer;font-size:11px;font-weight:800;opacity:.65;padding-left:4px;-webkit-user-select:none;user-select:none}.tl-more:hover{opacity:.9;text-decoration:underline}.timeline-empty{font-size:12px;opacity:.7;padding:14px}.timeline-cell{box-shadow:0 1px 2px 0 #5aa0ff0a;cursor:pointer;transition:background .14s ease,outline .14s ease,box-shadow .14s ease}.timeline-cell:hover{background:#5aa0ff1a;box-shadow:0 2px 8px 0 #5aa0ff1a;outline:1.5px solid #5aa0ff2e}.timeline-cell:active{background:#5aa0ff29;outline:2px solid #5aa0ff47}@keyframes dropPulse{0%{box-shadow:0 0 0 0 #5aa0ffb3;transform:scale(1)}50%{box-shadow:0 0 0 8px #5aa0ff00;transform:scale(1.02)}to{box-shadow:0 0 0 0 #5aa0ff00;transform:scale(1)}}@keyframes waveSlide{0%{left:-30px;opacity:0}10%{opacity:1}90%{opacity:1}to{left:100%;opacity:0}}.drop-animation{animation:dropPulse .6s ease-out}.timeline-cell.is-drag-over{background:#5aa0ff40!important;border:2px dashed #5aa0ff99!important;transform:scale(1.01)}.timeline-cell-combined.cell-selected{background:#ff785014!important;outline:2px solid #ff7850b3!important;outline-offset:-2px}.timeline-cell-combined.cell-drop-preview{background:#5aa0ff1a!important;outline:2px dashed #5aa0ffbf!important;outline-offset:-2px}.overview-container{background:linear-gradient(135deg,#0000004d,#0000001a);height:100%;overflow-x:hidden;overflow-y:auto;padding:8px 12px}.overview-header{align-items:center;border-bottom:1px solid #ffffff1a;display:flex;justify-content:space-between;margin-bottom:6px;padding-bottom:6px}.overview-table-wrapper{background:#0003;border:1px solid #ffffff14;border-radius:8px;box-shadow:0 4px 24px #0000004d;overflow:hidden;overflow-y:auto}.overview-table{background:linear-gradient(180deg,#1e1e2399,#14141966);border-collapse:collapse;font-size:12px;width:100%}.overview-table th{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(135deg,#111116f2,#141419f2);border-bottom:2px solid #94a3b84d;color:#ffffffd9;font-size:17px;font-weight:700;letter-spacing:.4px;line-height:1.1;padding:4px 6px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:10}.overview-table td{border:1px solid #ffffff14;font-size:14px;line-height:1.1;padding:1px 3px}.overview-folder-row{background:linear-gradient(90deg,#94a3b81f,#64748b14);border-left:3px solid #94a3b866;cursor:pointer;font-weight:700;height:20px;letter-spacing:.3px;transition:all .15s ease}.overview-folder-row:hover{background:linear-gradient(90deg,#94a3b833,#64748b26);border-left-color:#94a3b8cc}.overview-task-row{border-left:3px solid #0000;cursor:pointer;height:22px;transition:all .15s ease}.overview-task-row:nth-child(2n){background:#ffffff05}.overview-task-row:hover{background:#ffffff0d}.overview-task-row.selected{background:#60a5fa26;border-left-color:#60a5fa}.overview-status-badge{align-items:center;border-radius:4px;display:inline-flex;font-size:12px;font-weight:700;gap:2px;letter-spacing:.15px;line-height:1.1;padding:1px 5px;text-transform:uppercase;white-space:nowrap}.overview-peers-text{color:#a78bfa;font-weight:500}.billing-shell{background:var(--bg-primary);display:flex;flex-direction:column;inset:0;overflow:hidden;position:fixed}.billing-header{flex:0 0 auto;position:-webkit-sticky;position:sticky;top:0;z-index:20}.billing-body{display:flex;flex:1 1 auto;flex-direction:column;margin:0 auto;max-width:1600px;min-height:0;overflow:hidden;padding:18px;width:100%}.billing-card{display:flex;flex:1 1 auto;flex-direction:column;gap:14px;min-height:0;overflow:hidden;width:100%}.billing-controls{align-items:flex-end;display:flex;flex-wrap:wrap;gap:10px}.billing-control{flex:1 1 220px;min-width:180px}.billing-label{font-size:12px;font-weight:700;letter-spacing:.08em;opacity:.8;text-transform:uppercase}.billing-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.billing-stat{background:var(--panel);border:1px solid var(--border);border-radius:14px;padding:12px}.billing-stat .k{color:var(--text-secondary);font-size:12px}.billing-stat .v{color:var(--text-primary);font-size:18px;font-weight:900;margin-top:4px}.billing-table-wrap{background:#ffffff05;border:1px solid var(--border);border-radius:14px;flex:1 1 auto;min-height:0;overflow:auto}.billing-table-wrap .table{border-collapse:initial;border-spacing:0;min-width:860px}.billing-table-wrap .table thead{background:var(--bg-tertiary)}.billing-table-wrap .table thead th{background:var(--bg-tertiary);border-bottom:1px solid var(--border);position:-webkit-sticky;position:sticky;top:0;z-index:10}.billing-table-wrap .table td,.billing-table-wrap .table th{white-space:nowrap}.billing-rate-input{text-align:right;width:120px}@media (max-width:560px){.billing-control{min-width:100%}}.invitations-badge{align-items:center;background:linear-gradient(135deg,gold,#ffed4e);border:none;border-radius:24px;box-shadow:0 4px 12px #ffd70066;color:#1a1a2e;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;padding:10px 20px;position:fixed;right:20px;top:20px;transition:all .2s;z-index:999}.invitations-badge:hover{box-shadow:0 6px 16px #ffd70080;transform:translateY(-2px)}.badge-count{background:#dc2626;border-radius:12px;color:#fff;font-size:12px;font-weight:700;min-width:20px;padding:2px 8px;text-align:center}.invitations-dropdown{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #ffd70033;border-radius:12px;box-shadow:0 10px 40px #00000080;display:flex;flex-direction:column;max-height:600px;position:fixed;right:20px;top:70px;width:400px;z-index:998}.invitations-header{align-items:center;border-bottom:1px solid #ffd70033;display:flex;justify-content:space-between;padding:16px 20px}.invitations-header h3{color:gold;font-size:1.1em;font-weight:600;margin:0}.invitations-header button{align-items:center;background:#0000;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:28px;justify-content:center;padding:0;transition:background .2s;width:28px}.invitations-header button:hover{background:#ffffff1a}.invitations-list{max-height:520px;overflow-y:auto}.invitation-item{border-bottom:1px solid #ffffff1a;display:flex;flex-direction:column;gap:12px;padding:16px 20px}.invitation-item:last-child{border-bottom:none}.invitation-info{display:flex;flex-direction:column;gap:6px}.invitation-room{color:gold;font-size:16px;font-weight:600}.invitation-from{color:#fffc;font-size:13px}.invitation-from strong{color:#fff}.invitation-message{background:#0003;border-left:2px solid #ffd7004d;border-radius:6px;color:#ffffffb3;font-size:13px;font-style:italic;padding:8px 12px}.invitation-time{color:#ffffff80;font-size:11px}.invitation-actions{display:flex;gap:8px}.invitation-actions button{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:13px;font-weight:600;padding:8px 16px;transition:all .2s}.btn-accept{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-accept:hover:not(:disabled){box-shadow:0 4px 12px #10b98166;transform:translateY(-1px)}.btn-decline{background:#ffffff1a;color:#fff}.btn-decline:hover:not(:disabled){background:#dc26264d}.invitation-actions button:disabled{cursor:not-allowed;opacity:.5}.invitations-list::-webkit-scrollbar{width:6px}.invitations-list::-webkit-scrollbar-track{background:#0003}.invitations-list::-webkit-scrollbar-thumb{background:#ffd7004d;border-radius:3px}.invitations-list::-webkit-scrollbar-thumb:hover{background:#ffd70080}@media (max-width:768px){.invitations-badge{font-size:14px;padding:8px 16px;right:10px;top:10px}.invitations-dropdown{left:10px;right:10px;top:60px;width:auto}}.room-list-container{background:linear-gradient(135deg,#0a0e27,#1a1f3a 50%,#0f1419);min-height:100vh;overflow:hidden;padding:2rem;position:relative}.room-list-container:before{animation:pulse 8s ease-in-out infinite;background:radial-gradient(circle at 20% 30%,#6ea8fe26 0,#0000 50%),radial-gradient(circle at 80% 70%,#8b5cf626 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.brand-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0e2799;border:1px solid #6ea8fe4d;border-radius:16px;box-shadow:0 8px 32px #6ea8fe1a,inset 0 1px 0 #ffffff1a;margin-bottom:2rem;padding:1.25rem 1.5rem;position:relative;z-index:1}.brand-logo-section{align-items:center;display:flex;gap:1rem}.brand-logo-img{border-radius:12px;box-shadow:0 0 20px #6ea8fe99;filter:drop-shadow(0 0 10px rgba(110,168,254,.4));height:48px;object-fit:contain;width:48px}.brand-text{display:flex;flex-direction:column}.brand-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6ea8fe,#8b5cf6);-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:900;letter-spacing:1px}.brand-subtitle{color:#fff9;font-size:.85rem;font-weight:500;letter-spacing:2px;text-transform:uppercase}.brand-footer{border-top:1px solid #6ea8fe33;color:#ffffff80;font-size:.8rem;margin-top:3rem;padding-top:2rem;position:relative;text-align:center;z-index:1}.brand-footer-sub{font-size:.7rem;margin-top:.5rem;opacity:.7}.room-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem;position:relative;z-index:1}.room-list-header h1{color:#fff;font-size:2.5rem;font-weight:900;letter-spacing:1px;margin:0;text-shadow:0 0 30px #6ea8fe80}.filter-tabs{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0e2799;border:1px solid #6ea8fe33;border-radius:12px;display:flex;gap:.5rem;margin-bottom:2rem;padding:.5rem;position:relative;z-index:1}.filter-tabs button{background:#0000;border:none;border-radius:8px;color:#fff9;cursor:pointer;font-size:.85rem;font-weight:600;letter-spacing:.5px;padding:.6rem 1.2rem;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.filter-tabs button:hover{background:#6ea8fe1a;color:#fff}.filter-tabs button.active{background:linear-gradient(135deg,#6ea8fe4d,#8b5cf64d);box-shadow:0 0 20px #6ea8fe66;color:#fff}.rooms-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));position:relative;z-index:1}.room-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f1428b3;border:1px solid #6ea8fe33;border-radius:12px;display:flex;flex-direction:column;overflow:hidden;padding:1.25rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.room-card:before{background:linear-gradient(90deg,#0000,#6ea8fe80,#0000);content:"";height:2px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .3s}.room-card:hover{border-color:#6ea8fe80;box-shadow:0 8px 32px #6ea8fe33,inset 0 1px 0 #ffffff1a;transform:translateY(-4px)}.room-card:hover:before{opacity:1}.room-card-header{align-items:start;display:flex;gap:.75rem;justify-content:space-between;margin-bottom:.75rem}.room-card-header h3{color:#fff;flex:1 1;font-size:1.1rem;font-weight:700;line-height:1.3;margin:0}.room-type-badge{border-radius:6px;font-size:.65rem;font-weight:700;letter-spacing:.5px;padding:.25rem .6rem;text-transform:uppercase;white-space:nowrap}.room-type-badge.project{background:#1e90ff33;border:1px solid #1e90ff4d;color:#6ea8fe}.room-type-badge.task{background:#8b5cf633;border:1px solid #8b5cf64d;color:#a78bfa}.room-type-badge.department{background:#10b98133;border:1px solid #10b9814d;color:#34d399}.room-type-badge.adhoc{background:#fb923c33;border:1px solid #fb923c4d;color:#fb923c}.room-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#fff9;display:-webkit-box;font-size:.85rem;line-height:1.4;margin-bottom:.75rem;overflow:hidden}.room-stats{background:#0000004d;border:1px solid #6ea8fe1a;border-radius:8px;gap:.75rem;margin-bottom:.75rem;padding:.6rem}.room-stats,.stat{align-items:center;display:flex}.stat{color:#fffc;font-size:.85rem;font-weight:600;gap:.4rem}.stat-icon{font-size:1rem}.lock-icon{font-size:.9rem;margin-left:auto}.locked-badge{background:#ef444433;border:1px solid #ef44444d;border-radius:4px;color:#ef4444;font-size:.7rem;font-weight:700;letter-spacing:.5px;padding:.2rem .5rem;text-transform:uppercase}.room-creator{align-items:center;background:#6ea8fe1a;border:1px solid #6ea8fe33;border-radius:6px;display:flex;font-size:.8rem;gap:.5rem;margin-bottom:.75rem;padding:.5rem}.creator-icon{font-size:.9rem}.creator-name{color:#6ea8fe;font-weight:600}.room-features{display:flex;gap:.5rem;margin-bottom:1rem}.feature-badge{cursor:help;filter:grayscale(.2);font-size:1.1rem;transition:all .2s}.feature-badge:hover{filter:grayscale(0);transform:scale(1.1)}.room-actions{display:flex;gap:.5rem;margin-top:auto}.btn-join{background:linear-gradient(135deg,#6ea8fe,#8b5cf6);border:none;border-radius:8px;box-shadow:0 4px 12px #6ea8fe4d;color:#fff;cursor:pointer;flex:1 1;font-size:.9rem;font-weight:700;letter-spacing:.5px;padding:.7rem;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-join:hover:not(:disabled){box-shadow:0 6px 20px #6ea8fe80;transform:translateY(-2px)}.btn-join:disabled{background:#6464644d;box-shadow:none;cursor:not-allowed}.btn-delete{align-items:center;background:#ef444433;border:1px solid #ef44444d;border-radius:8px;color:#ef4444;cursor:pointer;display:flex;font-size:1.1rem;justify-content:center;min-width:42px;padding:.7rem;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-delete:hover:not(:disabled){background:#ef44444d;border-color:#ef444480;box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.btn-delete:disabled{background:#64646433;border-color:#64646433;cursor:not-allowed;transform:none}.btn-primary{background:linear-gradient(135deg,#6ea8fe,#8b5cf6);border:none;border-radius:10px;box-shadow:0 4px 20px #6ea8fe66;color:#fff;cursor:pointer;font-size:1rem;font-weight:700;letter-spacing:1px;padding:.75rem 1.75rem;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-primary:hover{box-shadow:0 6px 30px #6ea8fe99;transform:translateY(-2px)}.btn-secondary{background:#6c757d4d;border:1px solid #6c757d66;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s}.btn-secondary:hover{background:#6c757d80;border-color:#6c757d99}.no-rooms{color:#ffffff80;font-size:1.1rem;grid-column:1/-1;padding:4rem 2rem;text-align:center}.loading{color:#ffffffb3;font-size:1.2rem;padding:4rem;text-align:center}.modal-overlay{animation:fadeIn .3s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000c}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{animation:slideUp .3s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(135deg,#0f1428f2,#0a0e27f2);border:1px solid #6ea8fe4d;border-radius:16px;box-shadow:0 20px 60px #00000080,0 0 100px #6ea8fe33;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #6ea8fe33;display:flex;justify-content:space-between;padding:1.5rem}.modal-header h2{color:#fff;font-size:1.5rem;font-weight:700;margin:0}.close-btn{font-size:2rem;height:2rem;line-height:1;padding:0;transition:all .2s;width:2rem}.close-btn:hover{transform:rotate(90deg)}.modal-content form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{color:#ffffffe6;display:block;font-size:.9rem;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{background:#0000004d;border:1px solid #6ea8fe4d;border-radius:8px;color:#fff;font-family:inherit;font-size:.95rem;padding:.75rem;transition:all .3s;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#0006;border-color:#6ea8fe;box-shadow:0 0 0 3px #6ea8fe33;outline:none}.form-group-checkbox{margin-bottom:.75rem}.form-group-checkbox label{align-items:center;color:#fffc;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.form-group-checkbox input[type=checkbox]{accent-color:#6ea8fe;cursor:pointer;width:auto}.modal-actions{border-top:1px solid #6ea8fe33;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.invite-modal{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #ffd70033;border-radius:12px;box-shadow:0 10px 40px #00000080;display:flex;flex-direction:column;max-height:85vh;max-width:600px;width:90%}.invite-modal-header{align-items:center;border-bottom:1px solid #ffd70033;display:flex;justify-content:space-between;padding:20px 24px}.invite-modal-header h2{color:gold;font-size:1.4em;font-weight:600;margin:0}.invite-modal-header .close-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;padding:0;transition:background .2s;width:32px}.invite-modal-header .close-btn:hover{background:#ffffff1a}.invite-modal-content{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:20px 24px}.search-box{margin-bottom:8px}.search-input{background:#0000004d;border:1px solid #ffd7004d;border-radius:8px;color:#fff;font-size:14px;padding:12px 16px;transition:border-color .2s;width:100%}.search-input:focus{border-color:gold;outline:none}.search-input::placeholder{color:#ffffff80}.error-message{background:#dc262633;border:1px solid #dc262680;border-radius:8px;color:#ff6b6b;font-size:14px;padding:12px 16px}.users-list{background:#0003;border:1px solid #ffd70033;border-radius:8px;flex:1 1;max-height:300px;overflow-y:auto}.no-users{color:#ffffff80;font-size:14px;padding:40px 20px;text-align:center}.user-item{align-items:center;border-bottom:1px solid #ffffff1a;cursor:pointer;display:flex;gap:12px;padding:12px 16px;transition:background .2s}.user-item:last-child{border-bottom:none}.user-item:hover{background:#ffd7001a}.user-item.selected{background:#ffd70026;border-left:3px solid gold}.user-item input[type=checkbox]{accent-color:gold;cursor:pointer;height:18px;width:18px}.user-info{display:flex;flex:1 1;flex-direction:column;gap:2px}.user-name{color:#fff;font-size:14px;font-weight:500}.user-username{color:#fff9;font-size:12px}.user-department{color:#ffd700b3;font-size:11px;letter-spacing:.5px;text-transform:uppercase}.message-box{display:flex;flex-direction:column;gap:8px}.message-box label{color:#fffc;font-size:14px;font-weight:500}.message-box textarea{background:#0000004d;border:1px solid #ffd7004d;border-radius:8px;color:#fff;font-family:inherit;font-size:14px;padding:12px 16px;resize:vertical;transition:border-color .2s;width:100%}.message-box textarea:focus{border-color:gold;outline:none}.message-box textarea::placeholder{color:#fff6}.char-count{color:#ffffff80;font-size:12px;text-align:right}.selected-count{background:#ffd70026;border-radius:6px;color:gold;font-size:13px;font-weight:500;padding:8px 12px;text-align:center}.invite-modal-footer{border-top:1px solid #ffd70033;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.invite-modal-footer button{border:none;border-radius:8px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 24px;transition:all .2s}.btn-cancel{background:#ffffff1a;color:#fff}.btn-cancel:hover:not(:disabled){background:#ffffff26}.btn-invite{background:linear-gradient(135deg,gold,#ffed4e);color:#1a1a2e;font-weight:600}.btn-invite:hover:not(:disabled){box-shadow:0 4px 12px #ffd70066;transform:translateY(-1px)}.btn-cancel:disabled,.btn-invite:disabled{cursor:not-allowed;opacity:.5}.invite-modal-content::-webkit-scrollbar,.users-list::-webkit-scrollbar{width:8px}.invite-modal-content::-webkit-scrollbar-track,.users-list::-webkit-scrollbar-track{background:#0003}.invite-modal-content::-webkit-scrollbar-thumb,.users-list::-webkit-scrollbar-thumb{background:#ffd7004d;border-radius:4px}.invite-modal-content::-webkit-scrollbar-thumb:hover,.users-list::-webkit-scrollbar-thumb:hover{background:#ffd70080}.video-room-container{background:linear-gradient(135deg,#0a0e27,#1a1f3a 50%,#0f1419);color:#fff;display:flex;flex-direction:column;height:100vh;overflow:hidden;position:relative}.video-room-container:before{background:radial-gradient(circle at 20% 30%,#6ea8fe1a 0,#0000 50%),radial-gradient(circle at 80% 70%,#8b5cf61a 0,#0000 50%);bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.room-brand-header{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0e27cc;border-bottom:1px solid #6ea8fe4d;box-shadow:0 4px 20px #0000004d;padding:.75rem 1.5rem;position:relative;z-index:10}.room-brand-section{align-items:center;display:flex;gap:.75rem}.room-brand-logo{border-radius:8px;box-shadow:0 0 15px #6ea8fe80;filter:drop-shadow(0 0 8px rgba(110,168,254,.3));height:36px;object-fit:contain;width:36px}.room-brand-text{align-items:center;display:flex;font-size:.85rem;gap:.5rem}.room-brand-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#6ea8fe,#8b5cf6);-webkit-background-clip:text;background-clip:text;font-weight:800;letter-spacing:.5px}.room-brand-separator{color:#ffffff80;opacity:.5}.room-brand-subtitle{color:#ffffffb3;font-size:.8rem;letter-spacing:1px;opacity:.7;text-transform:uppercase}.video-room-header{align-items:center;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f1428b3;border-bottom:1px solid #6ea8fe33;display:flex;justify-content:space-between;padding:1rem 1.5rem;position:relative;z-index:10}.video-room-header h2{color:#fff;font-size:1.4rem;font-weight:700;margin:0;text-shadow:0 0 20px #6ea8fe4d}.leave-btn{background:#ef444433;border:1px solid #ef44444d;border-radius:8px;color:#ef4444;cursor:pointer;font-size:.85rem;font-weight:700;letter-spacing:.5px;padding:.6rem 1.2rem;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.leave-btn:hover{background:#ef44444d;border-color:#ef444480;box-shadow:0 4px 12px #ef444466;transform:translateY(-2px)}.video-room-content{display:flex;flex:1 1;overflow:hidden;position:relative;z-index:1}.video-grid-container{display:flex;flex:1 1;flex-direction:column;position:relative}.video-grid{grid-gap:.75rem;background:#0000;display:grid;flex:1 1;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));overflow-y:auto;padding:1rem}.video-tile{aspect-ratio:16/9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#00000080;border:1px solid #6ea8fe33;border-radius:12px;box-shadow:0 4px 20px #00000080;cursor:pointer;overflow:hidden;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.video-tile:hover{border-color:#6ea8fe66;box-shadow:0 6px 30px #6ea8fe4d;transform:translateY(-2px)}.video-tile video{height:100%;object-fit:cover;width:100%}.video-tile.local{border:2px solid #6ea8fe99;box-shadow:0 0 20px #6ea8fe4d}.video-tile.pinned{background:#000000e6;border-color:#8b5cf68c;box-shadow:0 10px 45px #8b5cf640;grid-column:1/-1;min-height:min(70vh,720px)}.video-tile.pinned video{object-fit:contain!important}.tile-actions{display:flex;gap:.4rem;opacity:0;position:absolute;right:.6rem;top:.6rem;transition:opacity .2s ease;z-index:5}.video-tile:hover .tile-actions{opacity:1}.tile-action-btn{align-items:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0a0e27bf;border:1px solid #6ea8fe40;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;height:36px;justify-content:center;transition:all .2s ease;width:36px}.tile-action-btn:hover{border-color:#6ea8fe73;transform:translateY(-1px)}.tile-action-btn.active{border-color:#8b5cf6b3;box-shadow:0 0 0 2px #8b5cf633}.video-modal-backdrop{align-items:center;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000bf;display:flex;inset:0;justify-content:center;padding:1.25rem;position:fixed;z-index:1000}.video-modal{background:#0a0e27f2;border:1px solid #6ea8fe40;border-radius:16px;box-shadow:0 20px 80px #0009;display:flex;flex-direction:column;height:min(80vh,720px);overflow:hidden;width:min(1200px,96vw)}.video-modal-header{align-items:center;border-bottom:1px solid #6ea8fe33;display:flex;justify-content:space-between;padding:.75rem .9rem}.video-modal-title{font-weight:800;letter-spacing:.3px}.video-modal-actions{display:flex;gap:.5rem}.video-modal-body{background:#000;flex:1 1;position:relative}.video-modal-overlay{bottom:.75rem;display:flex;gap:.5rem;position:absolute;right:.75rem;z-index:2}.video-overlay{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(0deg,#0a0e27f2,#0000);bottom:0;display:flex;justify-content:space-between;left:0;padding:.75rem;position:absolute;right:0}.participant-name{font-size:.85rem;font-weight:700;letter-spacing:.3px;text-shadow:0 2px 4px #00000080}.muted-icon,.screen-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.5));font-size:1.1rem}.controls-bar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0a0e27e6;border:1px solid #6ea8fe4d;border-radius:16px;bottom:1.5rem;box-shadow:0 8px 32px #00000080;display:flex;gap:.75rem;left:50%;padding:.75rem 1rem;position:absolute;transform:translateX(-50%);z-index:100}.control-btn{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#1e283ccc;border:1px solid #6ea8fe33;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-size:1.4rem;height:48px;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);width:48px}.control-btn:hover{background:#6ea8fe33;border-color:#6ea8fe80;box-shadow:0 4px 12px #6ea8fe4d;transform:translateY(-2px)}.control-btn.active{background:#ef444433;border-color:#ef444466;box-shadow:0 0 20px #ef44444d;color:#ef4444}.control-btn.recording{animation:recording-pulse 1.5s ease-in-out infinite;background:#ef44444d;border-color:#ef444499;box-shadow:0 0 20px #ef444480;color:red;position:relative}@keyframes recording-pulse{0%,to{box-shadow:0 0 20px #ef444480}50%{box-shadow:0 0 30px #ef4444cc}}.recording-time{background:#000c;border-radius:3px;bottom:2px;color:red;font-size:.6rem;font-weight:700;padding:2px 4px;position:absolute;right:2px;white-space:nowrap}.control-btn.leave{background:#ef444433;border-color:#ef44444d;color:#ef4444}.control-btn.leave:hover{background:#ef44444d;border-color:#ef444480;box-shadow:0 4px 12px #ef444466}.chat-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f1428f2;border-left:1px solid #6ea8fe33;display:flex;flex-direction:column;width:350px}.chat-messages{flex:1 1;gap:.75rem;overflow-y:auto;padding:1rem}.chat-message,.chat-messages{display:flex;flex-direction:column}.chat-message{background:#0a0e2799;border:1px solid #6ea8fe1a;border-radius:8px;gap:.25rem;padding:.75rem}.message-author{color:#6ea8fe;font-size:.8rem;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.message-text{word-wrap:break-word;color:#ffffffe6;font-size:.9rem;line-height:1.5}.chat-input-form{background:#0a0e2799;border-top:1px solid #6ea8fe33;display:flex;gap:.5rem;padding:1rem}.chat-input-form input{background:#0000004d;border:1px solid #6ea8fe4d;border-radius:8px;color:#fff;flex:1 1;font-size:.9rem;padding:.75rem;transition:all .3s}.chat-input-form input:focus{background:#0006;border-color:#6ea8fe;box-shadow:0 0 0 3px #6ea8fe33;outline:none}.chat-input-form input::placeholder{color:#fff6}.chat-input-form button{background:linear-gradient(135deg,#6ea8fe,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:700;letter-spacing:.5px;padding:.75rem 1.25rem;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)}.chat-input-form button:hover{box-shadow:0 4px 12px #6ea8fe66;transform:translateY(-2px)}.participants-panel{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f1428f2;border-left:1px solid #6ea8fe33;display:flex;flex-direction:column;width:300px}.panel-header{align-items:center;background:#0a0e2799;border-bottom:1px solid #6ea8fe33;display:flex;justify-content:space-between;padding:1rem}.panel-header h3{color:#fff;font-size:1rem;font-weight:700;letter-spacing:1px;margin:0;text-transform:uppercase}.close-btn{background:none;border:none;border-radius:6px;color:#ffffff80;cursor:pointer;font-size:1.2rem;padding:.25rem .5rem;transition:all .3s}.close-btn:hover{background:#6ea8fe1a;color:#fff}.participants-list{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:.5rem 0}.participant-item{align-items:center;border-bottom:1px solid #6ea8fe1a;display:flex;gap:.75rem;padding:.75rem 1rem;transition:all .3s}.participant-item:hover{background:#6ea8fe1a}.participant-item.local{background:#6ea8fe26;border-left:3px solid #6ea8fe;font-weight:700}.participant-avatar{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));font-size:1.5rem;min-width:30px;text-align:center}.participant-info{display:flex;flex:1 1;flex-direction:column;gap:.25rem;min-width:0}.participant-name{color:#fffffff2;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.participant-status{color:#ffffff80;font-size:.75rem;letter-spacing:.5px;text-transform:uppercase}.error-screen,.loading-screen,.video-room-error,.video-room-loading{align-items:center;background:linear-gradient(135deg,#0a0e27,#1a1f3a 50%,#0f1419);color:#fff;display:flex;flex-direction:column;gap:1rem;height:100vh;justify-content:center}.loading-screen .spinner,.video-room-loading .spinner{animation:spin 1s linear infinite;border:4px solid #6ea8fe33;border-radius:50%;border-top-color:#6ea8fe;height:60px;width:60px}@keyframes spin{to{transform:rotate(1turn)}}.error-screen p,.loading-screen p{color:#ffffffb3;font-size:1.1rem}.error-screen h2{color:#ef4444;font-size:1.8rem;margin:0}.error-screen button{background:linear-gradient(135deg,#6ea8fe,#8b5cf6);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;letter-spacing:.5px;margin-top:1rem;padding:.75rem 1.5rem;text-transform:uppercase;transition:all .3s}.error-screen button:hover{box-shadow:0 4px 12px #6ea8fe66;transform:translateY(-2px)}.video-room-error{padding:2rem;text-align:center}.video-room-error h2{color:#dc3545;margin-bottom:1rem}.video-room-error button{background:#007bff;border:none;border-radius:4px;color:#fff;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 1.5rem}@media (max-width:1024px){.video-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.chat-panel,.participants-panel{width:300px}}@media (max-width:768px){.video-room-content{flex-direction:column}.chat-panel,.participants-panel{height:200px;width:100%}.video-grid{grid-template-columns:1fr}.controls-bar{bottom:1rem;gap:.5rem}.control-btn{font-size:1.3rem;height:45px;width:45px}}
/*# sourceMappingURL=main.7df581bf.css.map*/