*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#f3f3f3;--secondary-color:#000;--text-primary:#000;--text-secondary:#666;--border-color:#e5e5e5;--shadow-light:#0000000d;--shadow-medium:#0000001a;--shadow-heavy:#00000026;--transition-speed:.3s;--transition-smooth:cubic-bezier(.4, 0, .2, 1);--border-radius:12px}body{background:var(--primary-color);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-bottom:env(safe-area-inset-bottom);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6;overflow-x:hidden}.login-page{background:linear-gradient(135deg,#f9f9f9 0%,#f3f3f3 100%);justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex;position:relative}.login-page:before{content:"";background:radial-gradient(circle,#00000005 0%,#0000 70%);width:100%;height:100%;animation:20s ease-in-out infinite float;position:absolute;top:-50%;right:-50%}@keyframes float{0%,to{transform:translate(0)rotate(0)}33%{transform:translate(30px,-30px)rotate(120deg)}66%{transform:translate(-20px,20px)rotate(240deg)}}.login-container{width:100%;max-width:420px;animation:slideUp .6s var(--transition-smooth);z-index:1;position:relative}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.login-box{box-shadow:0 10px 40px var(--shadow-light), 0 2px 8px var(--shadow-medium);transition:transform var(--transition-speed) var(--transition-smooth), box-shadow var(--transition-speed) var(--transition-smooth);background:#fff;border-radius:20px;padding:48px 40px}.login-box:hover{box-shadow:0 20px 60px var(--shadow-medium), 0 4px 12px var(--shadow-heavy);transform:translateY(-2px)}.login-header{text-align:center;margin-bottom:40px}.login-logo{filter:brightness(0);max-width:200px;height:auto;transition:transform var(--transition-speed) var(--transition-smooth);margin:0 auto 24px;animation:2s ease-in-out infinite pulse;display:block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.login-box:hover .login-logo{transform:scale(1.08)}.login-header p{color:var(--text-secondary);font-size:15px;font-weight:400}.login-form{margin-bottom:32px}.form-group label{color:var(--text-primary);letter-spacing:-.2px;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-group input[type=email],.form-group input[type=password],.form-group input[type=text]{border:1.5px solid var(--border-color);border-radius:var(--border-radius);width:100%;color:var(--text-primary);transition:all var(--transition-speed) var(--transition-smooth);background:#fff;outline:none;padding:14px 16px;font-family:inherit;font-size:15px}.form-group input::placeholder{color:#aaa}.form-group input:hover{border-color:#ccc}.form-group input:focus{border-color:var(--secondary-color);transform:translateY(-1px);box-shadow:0 0 0 4px #0000000d}.form-options{margin-bottom:24px}.checkbox-container{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;display:flex;position:relative}.checkbox-container input[type=checkbox]{opacity:0;cursor:pointer;position:absolute}.checkmark{border:1.5px solid var(--border-color);width:20px;height:20px;transition:all var(--transition-speed) var(--transition-smooth);background-color:#fff;border-radius:6px;margin-right:10px;position:relative}.checkbox-container:hover .checkmark{border-color:var(--secondary-color)}.checkbox-container input:checked~.checkmark{background-color:var(--secondary-color);border-color:var(--secondary-color)}.checkmark:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;display:none;position:absolute;top:2px;left:6px;transform:rotate(45deg)}.checkbox-container input:checked~.checkmark:after{animation:checkAnim .3s var(--transition-smooth);display:block}@keyframes checkAnim{0%{transform:rotate(45deg)scale(0)}to{transform:rotate(45deg)scale(1)}}.checkbox-label{color:var(--text-secondary);font-size:14px}.btn-primary{background:var(--secondary-color);color:#fff;border-radius:var(--border-radius);cursor:pointer;width:100%;transition:all var(--transition-speed) var(--transition-smooth);letter-spacing:-.2px;border:none;justify-content:center;align-items:center;gap:8px;padding:15px 24px;font-family:inherit;font-size:15px;font-weight:600;display:flex;box-shadow:0 4px 12px #00000026}.btn-primary svg{transition:transform var(--transition-speed) var(--transition-smooth)}.btn-primary:hover svg{transform:translate(4px)}.error-message{color:#c53030;border-radius:var(--border-radius);text-align:center;background:#fff5f5;border:1.5px solid #feb2b2;margin-bottom:20px;padding:12px 16px;font-size:14px}.success-message{color:#2f855a;border-radius:var(--border-radius);text-align:center;background:#f0fff4;border:1.5px solid #9ae6b4;margin-bottom:20px;padding:12px 16px;font-size:14px}.fade-in{animation:fadeIn .3s var(--transition-smooth)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.login-footer{text-align:center;border-top:1px solid var(--border-color);padding-top:24px}.login-footer p{color:var(--text-secondary);font-size:13px}.download-app-section{margin-bottom:20px}.download-text{color:var(--text-secondary);margin-bottom:12px;font-size:14px;font-weight:500}.btn-download-mac{color:#fff;transition:all .3s var(--transition-smooth);background:linear-gradient(135deg,#000 0%,#1a1a1a 100%);border-radius:12px;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #00000026}.btn-download-mac:before{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.btn-download-mac:hover:before{left:100%}.btn-download-mac:hover{background:linear-gradient(135deg,#1a1a1a 0%,#2a2a2a 100%);transform:translateY(-2px);box-shadow:0 6px 20px #00000040}.btn-download-mac:active{transform:translateY(0);box-shadow:0 2px 8px #0003}.btn-download-mac svg{flex-shrink:0}.btn-download-mac .download-icon{transition:transform .3s var(--transition-smooth);margin-left:4px}.btn-download-mac:hover .download-icon{animation:.6s ease-in-out bounce-download;transform:translateY(2px)}@keyframes bounce-download{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}.copyright-text{color:var(--text-secondary);margin-top:16px;font-size:13px}.dashboard{background:var(--primary-color);min-height:100vh;display:flex}.sidebar{border-right:1px solid var(--border-color);width:260px;height:100vh;height:calc(100vh - env(safe-area-inset-bottom));height:100dvh;padding:32px 0;padding-bottom:env(safe-area-inset-bottom);transition:transform var(--transition-speed) var(--transition-smooth);z-index:100;background:#fff;flex-direction:column;display:flex;position:fixed;top:0;left:0;overflow:hidden}.sidebar-header{border-bottom:1px solid var(--border-color);z-index:2;background:#fff;margin-bottom:24px;padding:0 24px 24px;position:sticky;top:0}.sidebar-logo{justify-content:center;align-items:center;padding:8px 0;display:flex}.sidebar-logo-img{object-fit:contain;width:100%;max-width:160px;height:auto}.sidebar-nav{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow-y:auto}.nav-section{margin-bottom:32px}.nav-section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;padding:0 24px;font-size:12px;font-weight:600}.nav-item{color:var(--text-secondary);transition:all var(--transition-speed) var(--transition-smooth);align-items:center;gap:12px;padding:12px 24px;font-size:15px;font-weight:500;text-decoration:none;display:flex;position:relative}.nav-item:before{content:"";background:var(--secondary-color);width:3px;height:0;transition:height var(--transition-speed) var(--transition-smooth);border-radius:0 3px 3px 0;position:absolute;top:50%;left:0;transform:translateY(-50%)}.nav-item:hover{color:var(--text-primary);background:#00000008}.nav-item:hover:before{height:100%}.nav-item.active{color:var(--text-primary);background:#0000000d;font-weight:600}.nav-item.active:before{height:100%}.nav-icon{width:20px;height:20px}.sidebar-user{padding:24px;padding-bottom:calc(24px + env(safe-area-inset-bottom));border-top:1px solid var(--border-color);background:#fff;margin-top:auto}.user-info{align-items:center;gap:12px;display:flex}.user-avatar{background:var(--secondary-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:600;display:flex}.user-details{flex:1}.user-name{color:var(--text-primary);margin-bottom:2px;font-size:14px;font-weight:600}.user-role{color:var(--text-secondary);font-size:12px}.main-content{padding:32px 40px;padding-bottom:calc(32px + env(safe-area-inset-bottom));flex:1;margin-left:260px}.content-header h1{letter-spacing:-.8px;margin-bottom:8px;font-size:32px;font-weight:700}.content-header p{color:var(--text-secondary);font-size:16px}.cards-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-bottom:32px;display:grid}.card{box-shadow:0 2px 8px var(--shadow-light);transition:all var(--transition-speed) var(--transition-smooth);background:#fff;border-radius:16px;padding:24px}.card:hover{box-shadow:0 8px 24px var(--shadow-medium);transform:translateY(-4px)}.card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:14px;font-weight:600}.card-icon{width:24px;height:24px;color:var(--text-secondary)}.card-value{letter-spacing:-1px;color:var(--text-primary);margin-bottom:8px;font-size:36px;font-weight:700}.card-change{color:#48bb78;font-size:14px;font-weight:500}.card-change.negative{color:#f56565}.mobile-menu-toggle{z-index:1001;cursor:pointer;background:#000;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;transition:all .3s;display:none;position:fixed;top:20px;left:20px;box-shadow:0 4px 12px #0000004d}.mobile-menu-toggle:hover{transform:scale(1.05);box-shadow:0 6px 16px #0006}.mobile-menu-toggle:active{transform:scale(.95)}.mobile-menu-toggle.open{gap:0}.hamburger-line{background:#fff;border-radius:2px;width:22px;height:2px;transition:all .3s;display:block}.mobile-menu-toggle.open .hamburger-line:first-child{transform:translateY(2px)rotate(45deg)}.mobile-menu-toggle.open .hamburger-line:nth-child(2){opacity:0;transform:translate(-10px)}.mobile-menu-toggle.open .hamburger-line:nth-child(3){transform:translateY(-2px)rotate(-45deg)}.mobile-overlay{z-index:999;opacity:0;pointer-events:none;background:#00000080;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.mobile-overlay.active{opacity:1;pointer-events:auto}.mobile-close-btn{cursor:pointer;z-index:10;background:#ffffff1a;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .3s;display:none;position:absolute;top:16px;right:16px}.mobile-close-btn:hover{background:#fff3;transform:rotate(90deg)}.mobile-close-btn svg{color:#fff;width:20px;height:20px}@media (max-width:768px){.login-box{padding:40px 32px}.mobile-menu-toggle{display:flex}.mobile-overlay{display:block}.mobile-close-btn{display:flex}.sidebar{height:100vh;height:calc(100vh - env(safe-area-inset-bottom));height:100dvh;padding-bottom:env(safe-area-inset-bottom);z-index:1000;transition:transform .3s;position:fixed;top:0;left:0;transform:translate(-100%);box-shadow:4px 0 12px #0000001a}.sidebar.open{transform:translate(0)}.sidebar-header{flex-direction:column;align-items:center;padding-top:60px;padding-bottom:20px;display:flex}.sidebar-logo{justify-content:center;align-items:center;width:100%;display:flex}.main-content{padding:80px 20px calc(24px + env(safe-area-inset-bottom)) 20px;margin-left:0}.cards-grid{grid-template-columns:1fr}.profile-modal{max-width:calc(100% - 20px);max-height:85vh;margin:10px}.profile-modal-body{padding:16px}.profile-picture-preview{width:100px;height:100px}.profile-picture-placeholder{font-size:40px}.profile-picture-actions{flex-direction:column;width:100%}.btn-upload,.btn-delete-picture{justify-content:center;width:100%}.profile-modal-actions{flex-direction:column}.btn-secondary,.btn-primary{width:100%}}@media (max-height:600px){.profile-modal{max-height:95vh;margin:10px}.profile-modal-body{padding:12px 16px}.profile-picture-preview{width:80px;height:80px}.profile-picture-placeholder{font-size:32px}.profile-picture-container{gap:12px}.profile-modal-separator{margin:12px 0 8px}.form-group{margin-bottom:12px}.confirm-modal-content{width:95%;max-width:360px}.confirm-modal-icon{width:48px;height:48px;margin:24px auto 16px}.confirm-modal-icon svg{width:24px;height:24px}.confirm-modal-body{padding:0 24px 24px}.confirm-modal-title{font-size:18px}.confirm-modal-message{margin-bottom:20px;font-size:14px}.confirm-modal-actions{flex-direction:column;gap:8px}.confirm-modal-actions button{padding:12px 16px}}.text-center{text-align:center}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.hidden{display:none}.profile-modal-overlay{z-index:1100;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.profile-modal-overlay.open{display:flex}.profile-modal-backdrop{z-index:-1;background:#00000080;position:fixed;inset:0}.profile-modal{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:520px;max-height:90vh;margin:20px;display:flex;overflow:hidden;box-shadow:0 20px 60px #0003}.profile-modal-header{border-bottom:1px solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.profile-modal-close{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;font-size:24px;line-height:1}.profile-modal-body{flex:1;padding:20px;overflow-y:auto}.profile-picture-section{margin-bottom:20px}.profile-picture-container{flex-direction:column;align-items:center;gap:16px;display:flex}.profile-picture-preview{background:var(--border-color);border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;display:flex;overflow:hidden}.profile-picture-preview img{object-fit:cover;width:100%;height:100%}.profile-picture-placeholder{background:var(--secondary-color);color:#fff;justify-content:center;align-items:center;width:100%;height:100%;font-size:48px;font-weight:600;display:flex}.profile-picture-actions{align-items:center;gap:10px;display:flex}.profile-picture-hint{text-align:center;color:var(--text-secondary);margin-top:-8px;font-size:12px;display:block}.btn-upload{background:var(--secondary-color);color:#fff;border-radius:var(--border-radius);cursor:pointer;border:none;align-items:center;gap:8px;padding:10px 16px;font-size:14px;transition:all .2s;display:inline-flex}.btn-upload:hover{background:#333}.btn-delete-picture{color:#991b1b;border-radius:var(--border-radius);cursor:pointer;background:#fee2e2;border:1px solid #fecaca;padding:10px 16px;font-size:14px;transition:all .2s}.btn-delete-picture:hover{background:#fef2f2}.profile-info{gap:8px;margin-bottom:12px;display:grid}.profile-row .label{color:var(--text-secondary);margin-right:8px}.profile-modal-separator{border:none;border-top:1px solid var(--border-color);margin:16px 0 12px}.profile-form-message{border-radius:10px;padding:10px 12px;font-size:14px}.profile-form-message.success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.profile-form-message.error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.profile-modal-actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.btn-secondary{color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;background:#f5f5f5;padding:12px 16px;transition:all .2s}@keyframes confirmSlideUp{0%{opacity:0;transform:translateY(20px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes iconPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media (max-width:480px){.login-box{padding:32px 24px}.btn-download-mac{justify-content:center;width:100%;padding:14px 20px;font-size:13px}.download-text{font-size:13px}.btn-download-mac svg:first-child{width:18px;height:18px}.btn-download-mac .download-icon{width:14px;height:14px}}@media (min-width:481px) and (max-width:768px){.btn-download-mac{padding:13px 22px}}.dashboard-welcome{background:#000;border:1px solid #1a1a1a;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:2rem 2.5rem;display:flex;box-shadow:0 2px 8px #0000001a}.welcome-left{flex:1}.welcome-badge{color:#888;text-transform:capitalize;background:#1a1a1a;border:1px solid #2a2a2a;border-radius:6px;margin-bottom:1rem;padding:.4rem 1rem;font-size:.8rem;font-weight:600;display:inline-block}.welcome-title{color:#fff;margin:0 0 1rem;font-size:2rem;font-weight:700;line-height:1.2}.welcome-meta{flex-wrap:wrap;gap:2rem;display:flex}.meta-item{color:#999;align-items:center;gap:.5rem;font-size:.9rem;font-weight:500;display:flex}.meta-item svg{opacity:.8;stroke:#999;flex-shrink:0}.welcome-right{align-items:center;display:flex}.welcome-avatar{justify-content:center;align-items:center;display:flex;position:relative}.avatar-circle{background:#1a1a1a;border:2px solid #2a2a2a;border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;display:flex;position:relative}.avatar-initials{color:#fff;text-transform:uppercase;font-size:1.8rem;font-weight:700}.avatar-status{background:#10b981;border:2px solid #000;border-radius:50%;width:14px;height:14px;position:absolute;bottom:2px;right:2px}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;display:grid}.widget{background:var(--card-bg);box-shadow:var(--shadow-sm);transition:all var(--transition-speed) var(--transition-smooth);border-radius:12px;padding:24px}.widget:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.widget-header{border-bottom:2px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.widget-title{color:var(--text-primary);align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;display:flex}.widget-title svg{color:var(--secondary-color)}.widget-link{color:var(--secondary-color);transition:color var(--transition-speed);font-size:13px;font-weight:500;text-decoration:none}.widget-link:hover{color:var(--accent-color)}.clock-widget{grid-column:span 1}.clock-container{flex-direction:column;align-items:center;gap:20px;display:flex}.analog-clock{width:220px;height:220px;position:relative}.clock-face{border:8px solid var(--secondary-color);background:linear-gradient(145deg,#fff,#f5f5f5);border-radius:50%;width:100%;height:100%;position:relative;box-shadow:inset 0 0 20px #0000000d,0 10px 30px #0000001a}.hour-marker{color:var(--text-primary);z-index:2;font-size:18px;font-weight:700;position:absolute}.hour-12{top:12px;left:50%;transform:translate(-50%)}.hour-3{top:50%;right:15px;transform:translateY(-50%)}.hour-6{bottom:15px;left:50%;transform:translate(-50%)}.hour-9{top:50%;left:15px;transform:translateY(-50%)}.clock-logo{z-index:2;width:35px;height:35px;position:absolute;top:35px;left:50%;transform:translate(-50%)}.clock-logo img{object-fit:contain;filter:drop-shadow(0 2px 4px #0000001a);width:100%;height:100%}.hour-dots{width:100%;height:100%;position:absolute;top:0;left:0}.dot{justify-content:center;width:100%;height:100%;display:flex;position:absolute}.dot:before{content:"";background:var(--secondary-color);border-radius:50%;width:6px;height:6px;margin-top:12px}.hand{transform-origin:bottom;background:var(--text-primary);border-radius:10px;transition:transform .3s cubic-bezier(.4,0,.2,1);position:absolute;bottom:50%;left:50%}.hour-hand{background:var(--text-primary);z-index:3;width:6px;height:50px;margin-left:-3px}.minute-hand{background:var(--secondary-color);z-index:4;width:4px;height:70px;margin-left:-2px}.second-hand{background:var(--accent-color);z-index:5;width:2px;height:80px;margin-left:-1px;transition:none}.clock-center{background:var(--secondary-color);z-index:6;border:3px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 8px #0003}.digital-time{color:var(--text-primary);letter-spacing:2px;background:var(--primary-color);border-radius:8px;padding:12px 24px;font-family:Courier New,monospace;font-size:28px;font-weight:700;box-shadow:inset 0 2px 4px #0000000d}.tasks-widget{grid-column:span 1}.tasks-content{text-align:center;padding:20px 0}.task-stat{color:var(--secondary-color);justify-content:center;align-items:center;gap:12px;margin-bottom:12px;font-size:48px;font-weight:700;display:flex}.task-stat.warning{color:#f59e0b}.task-stat.danger{color:#ef4444}.task-stat.success{color:#10b981}.task-message{color:var(--text-secondary);margin:0;font-size:14px}.loader-small{border:3px solid var(--border-color);border-top-color:var(--secondary-color);border-radius:50%;width:24px;height:24px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.actions-widget{grid-column:span 1}.quick-actions{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;display:grid}.action-btn{background:var(--primary-color);color:var(--text-primary);transition:all var(--transition-speed);border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:20px;text-decoration:none;display:flex}.action-btn:hover{background:var(--secondary-color);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #673ab733}.action-btn svg{color:var(--secondary-color);transition:color var(--transition-speed)}.action-btn:hover svg{color:#fff}.action-btn span{font-size:13px;font-weight:500}.status-widget{grid-column:span 1}.status-items{flex-direction:column;gap:12px;display:flex}.status-item{background:var(--primary-color);color:var(--text-primary);border-radius:8px;align-items:center;gap:12px;padding:12px;font-size:14px;display:flex}.status-indicator{background:#10b981;border-radius:50%;width:10px;height:10px;animation:2s infinite pulse;box-shadow:0 0 0 3px #10b98133}.status-indicator.warning{background:#f59e0b;box-shadow:0 0 0 3px #f59e0b33}.status-indicator.error{background:#ef4444;box-shadow:0 0 0 3px #ef444433}@media (max-width:1200px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.dashboard-welcome{text-align:center;flex-direction:column;padding:1.5rem}.welcome-left{flex-direction:column;align-items:center;display:flex}.welcome-badge{margin-bottom:.75rem}.welcome-title{margin-bottom:1rem;font-size:1.75rem}.welcome-meta{justify-content:center;gap:1.5rem}.welcome-right{margin-top:1.5rem}.avatar-circle{width:60px;height:60px}.avatar-initials{font-size:1.5rem}.avatar-status{width:12px;height:12px}.dashboard-grid{grid-template-columns:1fr;gap:16px}.widget{padding:20px}.analog-clock{width:180px;height:180px}.digital-time{padding:10px 20px;font-size:24px}.task-stat{font-size:40px}.quick-actions{grid-template-columns:1fr}}@media (max-width:480px){.dashboard-welcome{padding:1.25rem}.welcome-title{font-size:1.5rem}.welcome-badge{padding:.3rem .8rem;font-size:.75rem}.meta-item{font-size:.85rem}.avatar-circle{width:55px;height:55px}.avatar-initials{font-size:1.4rem}.avatar-status{width:10px;height:10px}.analog-clock{width:160px;height:160px}.hour-marker span{font-size:12px}.digital-time{padding:8px 16px;font-size:20px}}.content-header{margin-bottom:32px}.table-header-with-actions{justify-content:space-between;align-items:center;gap:16px;display:flex;border-bottom:1px solid var(--border-color)!important;padding:20px 24px!important}.table-actions{align-items:center;gap:12px;display:flex}.search-input{border:1.5px solid var(--border-color);width:250px;transition:border-color var(--transition-speed) var(--transition-smooth);border-radius:8px;padding:8px 12px;font-size:14px}.search-input:focus{border-color:var(--secondary-color);outline:none}.table-actions .btn-primary{white-space:nowrap;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;display:flex}.table-actions .btn-primary svg{width:16px;height:16px}.table-container{overflow-x:auto}.users-table{border-collapse:collapse;width:100%}.users-table thead{background:var(--primary-color)}.users-table th{text-align:left;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-color);padding:16px 24px;font-size:13px;font-weight:600}.users-table td{border-bottom:1px solid var(--border-color);color:var(--text-primary);padding:20px 24px;font-size:14px}.users-table tbody tr{transition:background-color var(--transition-speed) var(--transition-smooth)}.users-table tbody tr:hover{background:#00000005}.users-table tbody tr:last-child td{border-bottom:none}.user-info-cell{align-items:center;gap:12px;display:flex}.user-avatar-table{background:var(--secondary-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:14px;font-weight:600;display:flex}.user-details-table{flex-direction:column;display:flex}.user-name-table{color:var(--text-primary);margin-bottom:2px;font-weight:600}.user-email-small{color:var(--text-secondary);font-size:12px}.role-badge{text-transform:capitalize;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-block}.role-badge.admin{color:var(--text-primary);background:#0000001a}.role-badge.project_manager{color:#2563eb;background:#3b82f61a}.role-badge.empleado{color:#4b5563;background:#6b72801a}.status-badge{border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.status-dot{background:currentColor;border-radius:50%;width:6px;height:6px}.action-buttons{gap:8px;display:flex}.btn-icon{cursor:pointer;transition:all var(--transition-speed) var(--transition-smooth);color:var(--text-secondary);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:8px;display:flex}.btn-icon.delete:hover{color:#f56565;background:#f565651a}.btn-icon.warning:hover{color:#f59e0b;background:#fbbf241a}.btn-icon.success:hover{color:#48bb78;background:#48bb781a}.modal.show{display:flex}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);width:100%;height:100%;animation:fadeIn .3s var(--transition-smooth);background:#00000080;position:absolute;top:0;left:0}.modal-content{width:90%;max-width:500px;max-height:90vh;animation:slideUp .3s var(--transition-smooth);z-index:1;background:#fff;border-radius:20px;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{justify-content:space-between;align-items:center;margin-bottom:24px;padding:24px 24px 0;display:flex}.modal-header h2{letter-spacing:-.5px;font-size:24px;font-weight:700}.modal-close{cursor:pointer;color:var(--text-secondary);transition:color var(--transition-speed) var(--transition-smooth);background:0 0;border:none;border-radius:8px;padding:8px}.modal form{padding:0 24px 24px}.form-hint{color:var(--text-secondary);margin-top:6px;font-size:12px;display:block}.users-cards-grid{grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px;display:grid}.user-card-tile{border:1px solid var(--border-color);transition:transform var(--transition-speed) var(--transition-smooth), box-shadow var(--transition-speed) var(--transition-smooth);background:#fff;border-radius:14px;flex-direction:column;gap:14px;padding:16px;display:flex}.user-card-tile:hover{transform:translateY(-2px);box-shadow:0 12px 28px #00000014}.user-card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.user-card-avatar-wrap{flex-shrink:0;width:52px;height:52px}.user-card-avatar,.user-card-avatar-fallback{border-radius:50%;width:52px;height:52px}.user-card-avatar{object-fit:cover;border:2px solid var(--border-color)}.user-card-avatar-fallback{background:var(--secondary-color);color:#fff;letter-spacing:.5px;justify-content:center;align-items:center;font-weight:700;display:flex}.user-card-body{min-width:0}.user-card-name{color:var(--text-primary);margin:0;font-size:17px;line-height:1.25}.user-card-email{color:var(--text-secondary);word-break:break-word;margin:4px 0 0;font-size:13px}.user-card-meta{flex-direction:column;gap:8px;display:flex}.user-card-date{color:var(--text-secondary);font-size:12px}.form-hint.hidden{display:none}.modal-footer{border-top:1px solid var(--border-color);justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;display:flex}.btn-secondary{color:var(--text-secondary);border:1.5px solid var(--border-color);cursor:pointer;transition:all var(--transition-speed) var(--transition-smooth);background:0 0;border-radius:12px;padding:12px 20px;font-family:inherit;font-size:15px;font-weight:600}.toast{opacity:0;transition:all .3s var(--transition-smooth);z-index:2000;background:#fff;border-radius:12px;align-items:center;gap:12px;min-width:300px;padding:16px 20px;display:flex;position:fixed;bottom:32px;right:32px;transform:translateY(100px);box-shadow:0 10px 40px #0003}.loading-cell{text-align:center;padding:60px 20px!important}.loader{border:3px solid var(--border-color);border-top-color:var(--secondary-color);border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.8s linear infinite spin}.loading-cell span{color:var(--text-secondary);font-size:14px}.empty-state{text-align:center;padding:60px 20px}.empty-state svg{opacity:.2;margin-bottom:20px}.confirm-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:100%;height:100%;animation:fadeIn .2s var(--transition-smooth);background:#0006;position:absolute;top:0;left:0}.confirm-modal-content{width:90%;max-width:420px;animation:confirmSlideUp .3s var(--transition-smooth);z-index:1;background:#fff;border-radius:16px;position:relative;overflow:hidden;box-shadow:0 20px 60px #0000004d}.confirm-modal-icon{width:56px;height:56px;animation:iconPulse .6s var(--transition-smooth);border-radius:50%;justify-content:center;align-items:center;margin:32px auto 20px;display:flex}.confirm-modal-actions button{cursor:pointer;transition:all var(--transition-speed) var(--transition-smooth);border:none;border-radius:10px;flex:1;padding:12px 20px;font-family:inherit;font-size:15px;font-weight:600}.btn-confirm-cancel{background:var(--primary-color);color:var(--text-secondary);border:1.5px solid var(--border-color)}.btn-confirm-cancel:hover{border-color:var(--secondary-color);color:var(--text-primary);background:#00000008}.btn-confirm-action.danger:hover{background:#e53e3e}.btn-confirm-action.warning:hover{background:#d97706}.btn-confirm-action.success:hover{background:#38a169}.permissions-modal-content{max-width:600px;max-height:85vh;overflow-y:auto}.permissions-user-info{background:linear-gradient(135deg, var(--secondary-color), var(--accent-color));border-bottom:1px solid var(--border-color);padding:24px 32px}.user-info-header{align-items:center;gap:16px;display:flex}.user-avatar-large{width:56px;height:56px;color:var(--secondary-color);background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:flex;box-shadow:0 4px 12px #00000026}.user-info-header h3{color:#fff;margin:0 0 4px;font-size:18px;font-weight:600}.user-role-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;background:#fff3;border:1px solid #ffffff4d;border-radius:12px;padding:4px 12px;font-size:12px;font-weight:500;display:inline-block}.permissions-info{color:var(--text-secondary);background:#ffc1071a;border:1px solid #ffc10733;border-radius:8px;align-items:center;gap:10px;margin:24px 32px;padding:16px 32px;font-size:13px;display:flex}.permissions-info svg{color:#ffc107cc;flex-shrink:0}.permissions-sections{padding:0 32px 24px}.permission-section{margin-bottom:28px}.permission-section:last-child{margin-bottom:0}.permission-section-title{color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-color);margin:0 0 16px;padding-bottom:8px;font-size:14px;font-weight:600}.permission-items{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;display:grid}.permission-item{background:var(--card-bg);border:1.5px solid var(--border-color);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;transition:all .2s;display:flex}.permission-item:hover{border-color:var(--secondary-color);background:#673ab70d;transform:translateY(-1px);box-shadow:0 4px 8px #00000014}.permission-item input[type=checkbox]{appearance:none;border:2px solid var(--border-color);cursor:pointer;border-radius:6px;flex-shrink:0;width:20px;height:20px;transition:all .2s;position:relative}.permission-item input[type=checkbox]:checked{background:var(--secondary-color);border-color:var(--secondary-color)}.permission-item input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:2px;left:6px;transform:rotate(45deg)}.permission-item:has(input:checked){border-color:var(--secondary-color);background:#673ab714}.permission-icon{background:#673ab71a;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.permission-item:has(input:checked) .permission-icon{background:var(--secondary-color)}.permission-icon svg{color:var(--secondary-color)}.permission-item:has(input:checked) .permission-icon svg{color:#fff}.permission-label{color:var(--text-primary);flex:1;font-size:13px;font-weight:500}@media (max-width:768px){.content-header{flex-direction:column;align-items:flex-start;gap:16px}.content-header .btn-primary{justify-content:center;width:100%}.users-table{font-size:13px}.users-table th,.users-table td{padding:12px 16px}.action-buttons{flex-direction:column}.toast{min-width:auto;bottom:16px;left:16px;right:16px}.confirm-modal-content{max-width:90%}.confirm-modal-body{padding:0 24px 24px}.confirm-modal-actions{flex-direction:column}.permissions-modal-content{max-width:95%;max-height:90vh}.permissions-user-info{padding:20px 24px}.user-avatar-large{width:48px;height:48px;font-size:18px}.user-info-header h3{font-size:16px}.permissions-info{margin:20px 24px;padding:12px 16px;font-size:12px}.permissions-sections{padding:0 24px 20px}.permission-items{grid-template-columns:1fr}.permission-item{padding:10px 12px}}.view-controls{justify-content:space-between;align-items:center;gap:20px;display:flex}.clients-toolbar-right{flex:1;justify-content:flex-end;align-items:center;gap:14px;min-width:0;display:flex}.view-toggle{background:#fff;border:1px solid #e5e5e5;border-radius:8px;gap:8px;padding:4px;display:flex}.view-toggle-btn{cursor:pointer;color:#666;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:8px 12px;transition:all .2s;display:flex}.view-toggle-btn:hover{color:#000;background:#f9f9f9}.view-toggle-btn.active{color:#fff;background:#000}.view-toggle-btn svg{width:20px;height:20px}.client-search-wrapper{flex:1;max-width:500px;position:relative}.clients-create-btn{color:#fff;letter-spacing:.01em;cursor:pointer;background:linear-gradient(#151515 0%,#050505 100%);border:1px solid #0f172a1f;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;gap:10px;height:48px;padding:0 18px;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s;display:inline-flex;box-shadow:0 10px 22px #0f172a29}.clients-create-btn:hover{background:linear-gradient(#1f1f1f 0%,#090909 100%);transform:translateY(-1px);box-shadow:0 14px 28px #0f172a33}.clients-create-btn svg{width:16px;height:16px}.client-search-wrapper .search-icon{color:#0006;pointer-events:none;z-index:1;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.client-search-input{color:#000;box-sizing:border-box;background:#00000008;border:2px solid #0000;border-radius:12px;width:100%;padding:14px 48px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;transition:all .2s cubic-bezier(.4,0,.2,1)}.client-search-input:hover{background:#0000000d}.client-search-input:focus{background:#fffffff2;border-color:#00000026;outline:none;box-shadow:0 0 0 4px #0000000a,0 4px 12px #00000014}.client-search-input::placeholder{color:#0006;font-size:14px}.search-clear-btn{cursor:pointer;color:#00000080;background:#0000000f;border:none;border-radius:6px;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.search-clear-btn:hover{color:#000c;background:#0000001a}.search-clear-btn:active{transform:translateY(-50%)scale(.95)}.clients-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;margin-bottom:24px;display:grid}.client-card{cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:24px;transition:all .3s;position:relative;box-shadow:0 1px 3px #0000000d}.client-card:hover{border-color:#000;transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.client-card-header{align-items:center;gap:16px;margin-bottom:16px;display:flex}.client-avatar{color:#fff;background:linear-gradient(135deg,#000,#333);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:64px;height:64px;font-size:24px;font-weight:600;display:flex}.client-info{flex:1;min-width:0}.client-name{color:#000;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-size:18px;font-weight:600;overflow:hidden}.client-email{color:#666;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.client-status-badge{border-radius:12px;padding:4px 12px;font-size:12px;font-weight:500;position:absolute;top:16px;right:16px}.client-status-badge.active{color:#155724;background:#d4edda}.client-status-badge.inactive{color:#721c24;background:#f8d7da}.client-card-body{margin-bottom:16px}.client-detail-row{color:#666;align-items:center;gap:8px;margin-bottom:12px;font-size:14px;display:flex}.client-detail-row svg{color:#999;flex-shrink:0;width:16px;height:16px}.client-detail-row span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.client-card-stats{border-top:1px solid #e5e5e5;gap:16px;padding-top:16px;display:flex}.client-stat{text-align:center;flex:1}.client-stat-value{color:#000;margin-bottom:4px;font-size:24px;font-weight:600}.client-stat-label{color:#666;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.client-card-footer{gap:8px;padding-top:16px;display:flex}.client-action-btn{color:#666;cursor:pointer;background:#f9f9f9;border:1px solid #e5e5e5;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px;font-size:14px;font-weight:500;transition:all .2s;display:flex}.client-action-btn:hover{color:#000;background:#fff;border-color:#000}.client-action-btn svg{width:16px;height:16px}.client-action-btn.danger:hover{color:#dc3545;background:#fee;border-color:#dc3545}.clients-list-container{display:none}.clients-table{border-collapse:collapse;width:100%}.clients-table thead{background:#f9f9f9;border-bottom:2px solid #e5e5e5}.clients-table th{text-align:left;color:#666;text-transform:uppercase;letter-spacing:.5px;padding:16px;font-size:13px;font-weight:600}.clients-table tbody tr{border-bottom:1px solid #e5e5e5;transition:background-color .2s}.clients-table tbody tr:hover{background:#f9f9f9}.clients-table td{color:#000;padding:16px}.client-cell{align-items:center;gap:12px;display:flex}.client-cell-avatar{color:#fff;background:linear-gradient(135deg,#000,#333);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-weight:600;display:flex}.client-cell-info{flex-direction:column;gap:2px;display:flex}.client-cell-name{color:#000;font-weight:500}.client-cell-company{color:#666;font-size:13px}.status-badge{border-radius:12px;align-items:center;padding:4px 12px;font-size:12px;font-weight:500;display:inline-flex}.status-badge.active{color:#155724;background:#d4edda}.status-badge.inactive{color:#721c24;background:#f8d7da}.projects-count{color:#000;background:#f9f9f9;border-radius:12px;align-items:center;gap:6px;padding:4px 12px;font-weight:500;display:inline-flex}.table-actions-cell{gap:8px;display:flex}.table-action-btn{cursor:pointer;color:#666;background:0 0;border:1px solid #e5e5e5;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.table-action-btn:hover{color:#000;background:#f9f9f9;border-color:#000}.table-action-btn.danger:hover{color:#dc3545;background:#fee;border-color:#dc3545}.table-action-btn svg{width:16px;height:16px}.loading-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:64px 24px;display:flex}.loading-state .loader{margin-bottom:16px}.loading-state span{color:#666;font-size:14px}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:64px 24px;display:flex}.empty-state-icon{color:#999;width:80px;height:80px;margin-bottom:24px}.empty-state p{color:#666;max-width:400px;margin-bottom:24px;font-size:14px}.modal-large{max-width:1000px;max-height:90vh}.modal-large .modal-body{max-height:calc(90vh - 180px);overflow-y:auto;padding:0!important}.form-container{background:#f9f9f9;padding:32px}.form-section{background:#fff;border-radius:12px;margin-bottom:24px;padding:24px;box-shadow:0 1px 3px #0000000d}.form-section-title{color:#000;align-items:center;gap:8px;margin-bottom:20px;font-size:16px;font-weight:600;display:flex}.form-section-title svg{stroke-width:2.5px;width:20px;height:20px}.form-row-single{grid-template-columns:1fr;gap:20px;margin-bottom:0;display:grid}.form-group{flex-direction:column;margin-bottom:20px;display:flex}.form-group label{color:#333;align-items:center;gap:4px;margin-bottom:8px;font-size:13px;font-weight:600;display:flex}.form-group label .required{color:#ef4444}.form-group input,.form-group select,.form-group textarea{color:#000;background:#fff;border:2px solid #e5e5e5;border-radius:10px;padding:12px 14px;font-family:inherit;font-size:14px;transition:all .2s}.form-group input:hover,.form-group select:hover,.form-group textarea:hover{border-color:#d4d4d4}.form-group input::placeholder,.form-group textarea::placeholder{color:#999}.clients-form-tabs{scrollbar-width:none;background:linear-gradient(#fcfcfa 0%,#f1f3f6 100%);border-bottom:1px solid #0f172a14;gap:8px;padding:10px 12px;display:flex;overflow-x:auto}.clients-form-tabs::-webkit-scrollbar{display:none}.clients-form-tab{color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:8px;padding:12px 18px;font-size:14px;font-weight:600;transition:background .2s,color .2s,box-shadow .2s,border-color .2s;display:flex}.clients-form-tab svg{stroke-width:2px;width:18px;height:18px}.clients-form-tab:hover{color:#0f172a;background:#ffffffd9}.clients-form-tab.active{color:#fff;background:linear-gradient(#111827 0%,#020617 100%);border-color:#0f172a1f;box-shadow:0 12px 24px #0f172a2e}.clients-form-tab.active svg{stroke:#fff}.clients-form-tab-panel{min-height:100%;animation:.2s clientTabFade;display:none}.clients-form-tab-panel.active{display:block}@keyframes clientTabFade{0%{opacity:0}to{opacity:1}}.modal-footer{background:#fff;border-top:1px solid #e5e5e5;border-radius:0 0 16px 16px;justify-content:flex-end;gap:12px;padding:24px 32px;display:flex;position:sticky;bottom:0}.btn-primary,.btn-secondary{cursor:pointer;border:none;border-radius:10px;align-items:center;gap:8px;padding:14px 28px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.btn-primary:disabled{cursor:not-allowed;box-shadow:none;background:#999;transform:none}.form-help{color:#999;align-items:flex-start;gap:4px;margin-top:6px;font-size:12px;line-height:1.4;display:flex}.form-help svg{flex-shrink:0;width:14px;height:14px;margin-top:1px}.modal-large .modal-header{color:#fff;background:linear-gradient(135deg,#000 0%,#333 100%);border-radius:16px 16px 0 0;padding:24px 32px}.modal-large .modal-header h2{color:#fff;font-size:24px;font-weight:600}.modal-large .modal-close{color:#fff;background:#ffffff1a;border-radius:8px;width:36px;height:36px;transition:all .2s}.modal-large .modal-close:hover{background:#fff3;transform:rotate(90deg)}.modal-body::-webkit-scrollbar-track{background:#f9f9f9}.form-section{transition:all .2s}.form-section:hover{box-shadow:0 2px 8px #00000014}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{color:#999;cursor:not-allowed;background:#f9f9f9}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#ef4444}.form-group input.success,.form-group select.success,.form-group textarea.success{border-color:#10b981}@media (max-width:768px){.modal-large{max-width:95%;margin:20px}.form-row{grid-template-columns:1fr}.clients-form-tabs{overflow-x:auto}.clients-form-tab svg{display:none}.form-container{padding:20px}.modal-footer{flex-direction:column-reverse;padding:16px 20px}.modal-footer button{justify-content:center;width:100%}}.modal-body{padding:24px}.clients-form-shell{flex-direction:column;flex:1;min-height:0;display:flex}.clients-form-body{background:#f7f7f3;flex:1;min-height:560px}.client-details-grid{grid-template-columns:280px 1fr;gap:24px;margin-bottom:24px;display:grid}.client-details-sidebar{flex-direction:column;gap:24px;display:flex}.client-details-profile{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;align-items:center;padding:24px;display:flex}.client-details-avatar{color:#fff;background:linear-gradient(135deg,#000,#333);border-radius:50%;justify-content:center;align-items:center;width:120px;height:120px;margin-bottom:16px;font-size:48px;font-weight:600;display:flex}.client-details-name{color:#000;text-align:center;margin-bottom:4px;font-size:20px;font-weight:600}.client-details-email{color:#666;text-align:center;margin-bottom:16px;font-size:14px}.client-details-status{text-align:center;width:100%}.client-details-info{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px;padding:24px}.client-details-info h3{color:#666;text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px;font-size:14px;font-weight:600}.client-info-row{border-bottom:1px solid #e5e5e5;align-items:center;gap:12px;padding:12px 0;display:flex}.client-info-row:last-child{border-bottom:none}.client-info-icon{color:#666;background:#fff;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.client-info-icon svg{width:18px;height:18px}.client-info-content{flex:1;min-width:0}.client-info-label{color:#666;margin-bottom:2px;font-size:12px}.client-info-value{color:#000;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:500;overflow:hidden}.client-details-main{flex-direction:column;gap:24px;display:flex}.client-details-section{background:#f9f9f9;border:1px solid #e5e5e5;border-radius:12px;padding:24px}.client-details-section h3{color:#000;align-items:center;gap:8px;margin-bottom:16px;font-size:16px;font-weight:600;display:flex}.client-details-section h3 svg{color:#000;width:20px;height:20px}.client-stats-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.client-stat-box{text-align:center;background:#fff;border-radius:8px;padding:16px}.client-stat-box-value{color:#000;margin-bottom:4px;font-size:28px;font-weight:600}.client-stat-box-label{color:#666;text-transform:uppercase;letter-spacing:.5px;font-size:12px}.projects-list{flex-direction:column;gap:12px;display:flex}.project-item{background:#fff;border:1px solid #e5e5e5;border-radius:8px;justify-content:space-between;align-items:center;padding:12px;display:flex}.project-item-info{flex:1;min-width:0}.project-item-name{color:#000;margin-bottom:4px;font-weight:500}.project-item-meta{color:#666;font-size:12px}.project-item-status{border-radius:12px;padding:4px 12px;font-size:12px;font-weight:500}.project-item-status.in-progress{color:#856404;background:#fff3cd}.project-item-status.completed{color:#155724;background:#d4edda}.project-item-status.on-hold{color:#721c24;background:#f8d7da}.activity-timeline{flex-direction:column;gap:16px;display:flex}.activity-item{gap:12px;display:flex}.activity-item-icon{color:#000;background:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.activity-item-icon svg{width:18px;height:18px}.activity-item-content{border-bottom:1px solid #e5e5e5;flex:1;padding-bottom:16px}.activity-item:last-child .activity-item-content{border-bottom:none;padding-bottom:0}.activity-item-title{color:#000;margin-bottom:4px;font-weight:500}.activity-item-time{color:#666;font-size:12px}.modal{z-index:9999;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.modal.active{display:flex}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1;background:#00000080;position:fixed;inset:0}.modal-content{z-index:2;background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;animation:.3s ease-out modalSlideIn;position:relative;overflow-y:auto;box-shadow:0 20px 60px #0000004d}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-header h2{color:#000;margin:0;font-size:20px;font-weight:600}.modal-close{cursor:pointer;color:#666;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;transition:all .2s;display:flex}.modal-close:hover{color:#000;background:#f9f9f9}.modal-close svg{width:20px;height:20px}.confirm-modal{z-index:10000;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.confirm-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1;background:#00000080;position:fixed;inset:0}.confirm-modal-content{z-index:2;background:#fff;border-radius:16px;width:100%;max-width:450px;animation:.3s ease-out modalSlideIn;position:relative;box-shadow:0 20px 60px #0000004d}.confirm-modal-icon svg{color:#dc3545;width:32px;height:32px}.btn-confirm-cancel,.btn-confirm-action{cursor:pointer;border:none;border-radius:8px;flex:1;padding:12px 24px;font-size:14px;font-weight:500;transition:all .2s}.btn-confirm-cancel{color:#000;background:#f9f9f9}.btn-confirm-action:hover{background:#c82333}.toast{z-index:10001;background:#fff;border-radius:12px;align-items:center;gap:12px;min-width:300px;padding:16px 24px;transition:bottom .3s;display:flex;position:fixed;bottom:-100px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000026}.toast.show{bottom:32px}.toast.success{border-left:4px solid #4caf50}.toast.error{border-left:4px solid #dc3545}.toast.warning{border-left:4px solid #ff9800}.toast.info{border-left:4px solid #2196f3}.toast-icon{flex-shrink:0;width:24px;height:24px}.toast.success .toast-icon{color:#4caf50}.toast.error .toast-icon{color:#dc3545}.toast.warning .toast-icon{color:#ff9800}.toast.info .toast-icon{color:#2196f3}@media (max-width:768px){.clients-grid{grid-template-columns:1fr}.view-controls{flex-direction:column;align-items:stretch}.client-search-wrapper{max-width:100%}.clients-toolbar-right{flex-direction:column;align-items:stretch;width:100%}.clients-create-btn{width:100%}.client-search-input{font-size:16px}.view-toggle{justify-content:center;width:100%}.client-details-grid,.client-stats-grid{grid-template-columns:1fr}.modal-content{border-radius:0;max-width:100%;max-height:100vh}}.clients-modal{z-index:12000;justify-content:center;align-items:center;padding:28px;display:none;position:fixed;inset:0}.clients-modal.active{display:flex}.clients-modal-overlay{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:radial-gradient(circle at top,#ffffff1f,#0000 36%),#080f1a94;position:absolute;inset:0}.clients-modal-panel{z-index:1;background:#f7f7f3;border:1px solid #ffffff8c;border-radius:28px;flex-direction:column;width:min(760px,100vw - 56px);max-height:min(88vh,980px);display:flex;position:relative;overflow:hidden;box-shadow:0 40px 80px #0f172a3d,0 12px 28px #0f172a24}.clients-modal-panel-wide{width:min(1120px,100vw - 56px)}.clients-modal-header{justify-content:space-between;align-items:center;gap:16px;padding:24px 28px;display:flex}.clients-modal-header-dark{color:#fff;background:linear-gradient(135deg,#0b1220fa 0%,#222e46f5 100%)}.clients-modal-header h2{color:inherit;margin:0;font-size:24px;font-weight:700;line-height:1.1}.clients-modal-close{width:40px;height:40px;color:inherit;cursor:pointer;background:#ffffff1f;border:0;border-radius:12px;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:inline-flex}.clients-modal-close:hover{background:#fff3;transform:rotate(90deg)}.clients-modal-close svg{width:18px;height:18px}.clients-modal-body{min-height:0;padding:28px}.clients-modal-scroll{scrollbar-width:thin;scrollbar-color:#64748b59 transparent;overflow-y:auto}.clients-modal-footer{background:linear-gradient(#f7f7f399 0%,#f7f7f3 100%);border-top:1px solid #0f172a14;justify-content:flex-end;align-items:center;gap:12px;padding:20px 28px 28px;display:flex}.clients-confirm-modal{z-index:12100;justify-content:center;align-items:center;padding:24px;display:none;position:fixed;inset:0}.clients-confirm-modal.active{display:flex}.clients-confirm-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#080f1a94;position:absolute;inset:0}.clients-confirm-panel{z-index:1;background:#fff;border-radius:24px;width:min(460px,100vw - 40px);position:relative;overflow:hidden;box-shadow:0 34px 60px #0f172a42}.clients-confirm-icon{color:#dc2626;background:linear-gradient(135deg,#fff1f2 0%,#ffe4e6 100%);border-radius:999px;justify-content:center;align-items:center;width:72px;height:72px;margin:30px auto 22px;display:flex}.clients-confirm-icon svg{width:32px;height:32px}.clients-confirm-body{text-align:center;padding:0 30px 30px}.clients-confirm-title{color:#0f172a;margin:0 0 10px;font-size:22px;font-weight:700}.clients-confirm-message{color:#475569;margin:0 0 24px;line-height:1.55}.clients-confirm-actions{gap:12px;display:flex}.clients-confirm-cancel,.clients-confirm-action{cursor:pointer;border:0;border-radius:14px;flex:1;padding:13px 18px;font-size:14px;font-weight:600;transition:transform .2s,box-shadow .2s,background .2s}.clients-confirm-cancel{color:#0f172a;background:#eef2f7}.clients-confirm-cancel:hover{background:#e2e8f0}.clients-confirm-action{color:#fff;background:linear-gradient(#dc2626 0%,#b91c1c 100%);box-shadow:0 10px 20px #b91c1c3d}.clients-confirm-action:hover{transform:translateY(-1px);box-shadow:0 14px 24px #b91c1c47}@media (max-width:768px){.clients-modal{align-items:flex-end;padding:12px}.clients-modal-panel,.clients-modal-panel-wide{border-radius:24px 24px 0 0;width:100%;max-height:min(92vh,920px)}.clients-modal-header,.clients-modal-body,.clients-modal-footer{padding-left:20px;padding-right:20px}.clients-modal-footer{flex-direction:column-reverse;align-items:stretch}.clients-modal-footer .btn-primary,.clients-modal-footer .btn-secondary{justify-content:center;width:100%}.clients-form-body{min-height:420px}.clients-confirm-actions{flex-direction:column}}@media (max-width:480px){.client-search-input::placeholder{font-size:13px}}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.page-header h1{color:#1a1a1a;align-items:center;gap:.75rem;margin:0;font-size:2rem;display:flex}.header-actions{gap:1rem;display:flex}.tabs{border-bottom:2px solid #e5e7eb;gap:.5rem;margin-bottom:2rem;display:flex}.tab-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-2px;padding:.75rem 1.5rem;font-size:.95rem;transition:all .3s}.tab-btn:hover{color:#000}.tab-btn.active{color:#000;border-bottom-color:#000;font-weight:600}.tab-content{display:none}.tab-content.active{display:block}.filters-bar{flex-wrap:wrap;gap:1rem;margin-bottom:2rem;display:flex}.search-box{flex:1;min-width:250px;position:relative}.search-box i{color:#9ca3af;position:absolute;top:50%;left:1rem;transform:translateY(-50%)}.search-box input{border:1px solid #d1d5db;border-radius:8px;width:100%;padding:.75rem 1rem .75rem 2.75rem;font-size:.95rem}.filter-select{border:1px solid #d1d5db;border-radius:8px;min-width:200px;padding:.75rem 1rem;font-size:.95rem}.contracts-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;display:grid}.contract-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .3s}.contract-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000001a}.contract-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.contract-header h3{color:#1a1a1a;flex:1;margin:0;font-size:1.2rem}.status-badge{white-space:nowrap;border-radius:20px;padding:.25rem .75rem;font-size:.8rem;font-weight:600}.status-draft{color:#92400e;background:#fef3c7}.status-pending_signature{color:#1e40af;background:#dbeafe}.status-signed{color:#065f46;background:#d1fae5}.status-cancelled{color:#991b1b;background:#fee2e2}.contract-info{flex-direction:column;gap:.5rem;margin-bottom:1rem;display:flex}.info-item{color:#6b7280;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.info-item i{color:#9ca3af;width:16px}.contract-actions{border-top:1px solid #e5e7eb;gap:.5rem;padding-top:1rem;display:flex}.templates-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;display:grid}.templates-header{justify-content:flex-end;margin-bottom:2rem;display:flex}.template-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .3s}.template-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000001a}.template-header h3{color:#1a1a1a;margin:0 0 1rem;font-size:1.2rem}.template-description{margin-bottom:1rem}.template-description p{color:#6b7280;margin:0;font-size:.9rem;line-height:1.5}.template-meta{color:#9ca3af;gap:1rem;margin-bottom:1rem;font-size:.85rem;display:flex}.template-meta span{align-items:center;gap:.25rem;display:flex}.template-actions{border-top:1px solid #e5e7eb;gap:.5rem;padding-top:1rem;display:flex}.empty-state{text-align:center;background:#f9fafb;border-radius:12px;grid-column:1/-1;padding:4rem 2rem}.empty-state i{color:#d1d5db;margin-bottom:1rem;font-size:4rem}.empty-state h3{color:#6b7280;margin:0 0 .5rem}.empty-state p{color:#9ca3af;margin:0 0 1.5rem}.modal{z-index:1000;background-color:#00000080;width:100%;height:100%;animation:.3s fadeIn;display:none;position:fixed;top:0;left:0;overflow:auto}.modal-content{background-color:#fff;border-radius:16px;flex-direction:column;width:90%;max-width:600px;max-height:calc(100vh - 4rem);margin:2rem auto;animation:.3s slideUp;display:flex}.modal-large{max-width:900px}.modal-header h2{color:#1a1a1a;margin:0;font-size:1.5rem}.close{color:#9ca3af;cursor:pointer;font-size:1.75rem;font-weight:300;line-height:1;transition:color .3s}.close:hover{color:#1a1a1a}.form-group input[type=text],.form-group input[type=email],.form-group input[type=date],.form-group select,.form-group textarea{border:1px solid #d1d5db;border-radius:8px;width:100%;padding:.75rem;font-size:.95rem;transition:all .3s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#000;outline:none;box-shadow:0 0 0 3px #0000001a}.form-actions>div{gap:1rem;display:flex}.variables-container{background:#f9fafb;border-radius:8px;margin-top:1.5rem;padding:1.5rem}.variables-container h3{color:#1a1a1a;margin:0 0 1rem;font-size:1.1rem}.variables-list{flex-direction:column;gap:1rem;margin-bottom:1rem;display:flex}.variable-item{background:#fff;border:1px solid #e5e7eb;border-radius:8px;align-items:flex-start;gap:.5rem;padding:1rem;display:flex}.variable-fields{flex:1;grid-template-columns:1fr 1fr auto auto;align-items:center;gap:.5rem;display:grid}.variable-fields input,.variable-fields select{border:1px solid #d1d5db;border-radius:6px;padding:.5rem;font-size:.9rem}.checkbox-label{color:#6b7280;cursor:pointer;white-space:nowrap;align-items:center;gap:.5rem;font-size:.9rem;display:flex}.checkbox-label input[type=checkbox]{width:auto;margin:0}.editor-help{color:#92400e;background:#fef3c7;border-left:3px solid #f59e0b;border-radius:4px;margin-bottom:.5rem;padding:.75rem;font-size:.85rem}.editor-help code{background:#fde68a;border-radius:3px;padding:.2rem .4rem;font-family:Courier New,monospace}.contract-preview{background:#fff;border:1px solid #e5e7eb;border-radius:8px;max-height:60vh;padding:2rem;overflow-y:auto}.contract-preview pre{white-space:pre-wrap;word-wrap:break-word;color:#1a1a1a;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.95rem;line-height:1.8}.contract-detail-header{border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;display:flex}.contract-detail-header h3{margin:0;font-size:1.5rem}.contract-meta{background:#f9fafb;border-radius:8px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:2rem;padding:1rem;display:grid}.meta-item{font-size:.9rem}.meta-item strong{color:#6b7280;margin-bottom:.25rem;display:block}.signature-link{grid-column:1/-1}.link-container{gap:.5rem;margin-top:.5rem;display:flex}.link-container input{background:#fff;border:1px solid #d1d5db;border-radius:6px;flex:1;padding:.5rem;font-size:.85rem}.contract-content{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:2rem;padding:2rem}.contract-content pre{white-space:pre-wrap;word-wrap:break-word;color:#1a1a1a;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.95rem;line-height:1.8}.signature-section{background:#f9fafb;border-radius:8px;padding:1.5rem}.signature-section h4{color:#1a1a1a;margin:0 0 1rem}.signature-image{background:#fff;border:1px solid #e5e7eb;border-radius:8px;max-width:300px;height:auto;padding:1rem}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 10px 25px #00000040}.btn-outline{color:#374151;background:#fff;border:1px solid #d1d5db}.btn-outline:hover{background:#f9fafb}.btn-sm{padding:.5rem 1rem;font-size:.85rem}.btn-icon{color:#6b7280;cursor:pointer;background:#f3f4f6;border:none;border-radius:6px;justify-content:center;align-items:center;width:36px;height:36px;padding:.5rem;transition:all .3s;display:inline-flex}.btn-danger{color:#dc2626}.notification{z-index:2000;opacity:0;background:#fff;border-radius:8px;align-items:center;gap:1rem;min-width:300px;padding:1rem 1.5rem;transition:all .3s;display:flex;position:fixed;top:2rem;right:2rem;transform:translate(400px);box-shadow:0 10px 40px #00000026}.notification.show{opacity:1;transform:translate(0)}.notification i{font-size:1.5rem}.notification-success{border-left:4px solid #10b981}.notification-success i{color:#10b981}.notification-error{border-left:4px solid #ef4444}.notification-error i{color:#ef4444}.notification-warning{border-left:4px solid #f59e0b}.notification-warning i{color:#f59e0b}.notification-info{border-left:4px solid #3b82f6}.notification-info i{color:#3b82f6}.contracts-react-shell{flex-direction:column;gap:1rem;display:flex}.contracts-react-header{margin-bottom:0}.contracts-react-header p{color:#6b7280;margin:.4rem 0 0}.contracts-react-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;display:grid}.contracts-react-stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;gap:.4rem;padding:.9rem 1rem;display:flex}.contracts-react-stat-card span{color:#6b7280;text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;font-weight:600}.contracts-react-stat-card strong{color:#111827;font-size:1.55rem;font-weight:700;line-height:1}.contracts-react-list{padding:1.1rem}.contracts-react-list-header h2{color:#111827;margin:0;font-size:1.25rem}.contracts-react-list-header p{color:#6b7280;margin:.45rem 0 0;font-size:.92rem}.contracts-react-form{gap:.85rem;margin-top:1rem;display:grid}.mode-switch{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:.2rem;padding:.2rem;display:grid}.mode-pill{color:#4b5563;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.55rem .6rem;font-size:.88rem;font-weight:600;transition:all .2s}.mode-pill.active{color:#111827;background:#fff;box-shadow:0 2px 8px #00000014}.contracts-react-error{color:#991b1b;background:#fee2e2;border:1px solid #fecaca;border-radius:8px;padding:.65rem .8rem;font-size:.9rem}.contracts-react-list-header{justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1rem;display:flex}.contracts-new-btn{color:#fff;white-space:nowrap;cursor:pointer;background:#111827;border:1px solid #111827;border-radius:8px;justify-content:center;align-self:flex-start;align-items:center;gap:.3rem;height:28px;padding:0 8px;font-size:.76rem;font-weight:600;line-height:1;transition:all .2s;display:inline-flex}.contracts-new-btn:hover{background:#000;border-color:#000}.contracts-new-btn i{font-size:.68rem}.contracts-react-list .filters-bar{margin-bottom:1rem}.contracts-react-list .contracts-grid{grid-template-columns:repeat(auto-fill,minmax(290px,1fr))}.contracts-create-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:12000;background:#00000080;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.contracts-create-dialog{border-radius:14px;width:min(560px,100%);max-height:calc(100vh - 40px);padding:1.1rem;overflow-y:auto}.contracts-create-header{justify-content:space-between;align-items:center;margin-bottom:.9rem;display:flex}.contracts-create-header h2{color:#111827;margin:0;font-size:1.2rem}.contracts-create-close{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:8px;width:34px;height:34px;font-size:24px;line-height:1}.contracts-create-close:hover{color:#111827;background:#f3f4f6}.contracts-create-actions{justify-content:flex-end;gap:.65rem;display:flex}@media (max-width:768px){.contracts-grid,.templates-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:flex-start}.header-actions{flex-direction:column;width:100%}.header-actions .btn{justify-content:center;width:100%}.filters-bar{flex-direction:column}.search-box,.filter-select{width:100%}.form-row,.variable-fields{grid-template-columns:1fr}.modal-content{width:95%;max-height:calc(100vh - 2rem);margin:1rem auto}.contract-actions,.template-actions{flex-wrap:wrap}.notification{min-width:auto;left:1rem;right:1rem}.contracts-new-btn{justify-content:flex-start;width:auto}}@media (max-width:1240px){.contracts-react-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}.sign-page-shell{background:linear-gradient(#eef2f7 0%,#e9eef5 100%);min-height:100vh;padding:30px 16px 48px}.sign-doc-sheet{background:#fff;border:1px solid #e5e7eb;border-radius:14px;width:min(980px,100%);margin:0 auto;padding:28px 32px;position:relative;box-shadow:0 24px 48px #11182714}.sign-doc-sheet:before{content:"";pointer-events:none;border:1px solid #e9eef5;border-radius:10px;position:absolute;inset:10px}.sign-doc-header{border-bottom:2px solid #f1f5f9;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:18px;display:flex}.sign-doc-kicker{letter-spacing:.08em;text-transform:uppercase;color:#64748b;margin:0 0 .45rem;font-size:.78rem;font-weight:700}.sign-doc-header h1{color:#0f172a;letter-spacing:-.02em;margin:0;font-size:clamp(1.3rem,2.8vw,1.85rem)}.sign-doc-logo{object-fit:contain;filter:none;opacity:1;align-self:center;width:190px;max-width:40vw;height:auto;margin-left:auto;display:block}.sign-doc-body{white-space:pre-wrap;color:#1f2937;text-align:justify;background:#fdfefe;border:1px solid #e2e8f0;border-radius:12px;margin-top:20px;padding:24px 24px 20px;font-family:Times New Roman,Georgia,serif;font-size:1rem;line-height:1.78}.sign-doc-body strong{color:#0f172a;font-weight:700}.sign-doc-form{gap:18px;margin-top:24px;display:grid}.sepa-fields-grid{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:16px;display:grid}.sepa-field-wide{grid-column:1/-1}.signatures-grid{background:#fff;border:2px solid #0f172a;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid;position:relative;overflow:hidden}.signatures-grid:before{content:"";pointer-events:none;background:#0f172a;width:1px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-.5px)}.signature-card{background:0 0;border:0;border-radius:0;flex-direction:column;justify-content:flex-start;min-height:280px;padding:18px 18px 16px;display:flex}.signature-card h3{color:#0f172a;text-transform:uppercase;letter-spacing:.1em;background:0 0;border:0;margin:0 0 12px;padding:0;font-size:.78rem;font-weight:700;display:block}.signature-line-wrapper{flex-direction:column;justify-content:flex-end;min-height:214px;display:flex}.agency-signature-image{object-fit:contain;width:100%;max-width:250px;height:auto;margin:0 auto 14px}.signature-line{border-bottom:1.5px solid #0f172a;margin-bottom:8px}.signature-line-wrapper p{color:#1f2937;text-align:center;margin:0;font-size:.83rem}.agency-signer-name{color:#111827;font-weight:700}.agency-signer-role{text-transform:uppercase;letter-spacing:.06em;color:#64748b!important;margin-top:2px!important;font-size:.8rem!important}.signature-name-field{gap:7px;margin-bottom:12px;display:grid}.signature-name-field span{color:#374151;font-size:.84rem;font-weight:600}.signature-name-field input,.signature-name-field textarea{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:100%;padding:9px 10px;font-size:.94rem}.signature-name-field input:focus,.signature-name-field textarea:focus{border-color:#111827;outline:none;box-shadow:0 0 0 3px #11182714}.signature-canvas-field{flex-direction:column;flex:1;gap:8px;display:flex}.signature-canvas-label{color:#334155;letter-spacing:.01em;font-size:.8rem;font-weight:600}.signature-canvas{touch-action:none;width:100%;height:auto;box-shadow:none;background:#fff;border:1.5px solid #0f172a;border-radius:8px}.signature-canvas-clear{color:#111827;cursor:pointer;background:#fff;border:1px solid #d1d5db;border-radius:8px;width:fit-content;height:30px;margin-left:auto;padding:0 10px;font-size:.82rem}.signature-canvas-clear:hover{background:#f8fafc}.sign-status-message{color:#1f2937;background:#f8fafc;border:1px solid #d1d5db;border-radius:8px;margin:0;padding:10px 12px;font-size:.9rem}.sign-doc-actions{justify-content:flex-end;display:flex}.sign-doc-actions-inline{flex-wrap:wrap;justify-content:flex-start;gap:10px}.sign-submit-btn{color:#fff;cursor:pointer;background:#111827;border:none;border-radius:10px;min-width:180px;height:40px;font-size:.9rem;font-weight:700;transition:all .2s}.sign-submit-btn:hover:not(:disabled){background:#000}.sign-submit-btn i{margin-right:8px}.sign-submit-btn:disabled{opacity:.6;cursor:not-allowed}.sign-page-shell-confirm{background:radial-gradient(circle at 15% 20%,#94a3b842,#0000 45%),radial-gradient(circle at 80% 90%,#3b82f624,#0000 40%),linear-gradient(#e9eef6 0%,#dfe7f2 100%);justify-content:center;align-items:center;padding:24px 16px;display:flex}.sign-confirm-modal{background:#fff;border:1px solid #dbe4f0;border-radius:20px;width:min(680px,100%);padding:28px;box-shadow:0 24px 60px #0f172a2e,0 10px 24px #0f172a1a}.sign-confirm-header{justify-content:space-between;align-items:center;gap:14px;display:flex}.sign-confirm-logo{width:170px;height:auto;display:block}.sign-confirm-badge{color:#047857;text-transform:uppercase;letter-spacing:.08em;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:999px;justify-content:center;align-items:center;padding:7px 14px;font-size:12px;font-weight:700;display:inline-flex}.sign-confirm-icon{color:#fff;background:linear-gradient(140deg,#10b981 0%,#059669 100%);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin:20px auto 16px;display:flex;box-shadow:0 10px 24px #05966959}.sign-confirm-icon i{font-size:28px}.sign-confirm-body h1{text-align:center;color:#0f172a;letter-spacing:-.02em;margin:0;font-size:clamp(1.42rem,3vw,1.85rem)}.sign-confirm-description{text-align:center;color:#475569;max-width:560px;margin:12px auto 0;font-size:.97rem;line-height:1.6}.sign-confirm-description strong{color:#0f172a}.sign-confirm-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.sign-confirm-meta-item{background:#f8fbff;border:1px solid #d8e3f1;border-radius:12px;gap:4px;padding:11px 12px;display:grid}.sign-confirm-meta-label{color:#64748b;letter-spacing:.06em;text-transform:uppercase;font-size:.74rem;font-weight:700}.sign-confirm-meta-value{color:#0f172a;font-size:.92rem;font-weight:700;line-height:1.3}.sign-confirm-actions{justify-content:center;margin-top:18px;display:flex}.sign-confirm-download-btn{color:#fff;letter-spacing:.01em;cursor:pointer;background:linear-gradient(135deg,#0f172a 0%,#1e293b 54%,#334155 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;min-width:290px;height:48px;padding:0 24px;font-size:.95rem;font-weight:700;transition:transform .18s,box-shadow .18s,filter .18s;display:inline-flex;box-shadow:0 10px 20px #0f172a42}.sign-confirm-download-btn:hover:not(:disabled){filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 14px 28px #0f172a4d}.sign-confirm-download-btn:disabled{opacity:.7;cursor:not-allowed}.sign-status-message-error{color:#991b1b;background:#fef2f2;border-color:#fecaca}@media (max-width:860px){.sign-doc-sheet{padding:20px 16px}.signatures-grid,.sepa-fields-grid{grid-template-columns:1fr}.signatures-grid:before{display:none}.sign-confirm-modal{border-radius:16px;padding:20px 16px}.sign-confirm-header{flex-direction:column}.sign-confirm-meta{grid-template-columns:1fr}.sign-confirm-download-btn{width:100%;min-width:100%}}:root{--calendar-primary:#f3f3f3;--calendar-secondary:#000;--calendar-text:#000;--calendar-text-light:#666;--calendar-border:#e5e5e5;--calendar-white:#fff;--calendar-hover:#f9f9f9;--calendar-shadow:#0000000d;--calendar-shadow-md:#0000001a;--calendar-shadow-lg:#00000026;--calendar-success:#10b981;--calendar-error:#ef4444;--calendar-warning:#f59e0b;--calendar-info:#3b82f6;--transition:.3s cubic-bezier(.4, 0, .2, 1)}.calendar-container{background:var(--calendar-primary);min-height:100vh;padding-left:0;display:flex;overflow-x:hidden}.calendars-sidebar{background:var(--calendar-white);width:200px;box-shadow:0 2px 12px var(--calendar-shadow);border-radius:12px;flex-shrink:0;max-width:100%;max-height:calc(100vh - 40px);margin:20px 8px 20px 20px;padding:12px;position:sticky;top:20px;overflow-y:auto}.calendar-page .calendars-sidebar{margin-top:152px}.calendars-header{border-bottom:2px solid var(--calendar-border);flex-direction:column;gap:8px;margin-bottom:12px;padding-bottom:10px;display:flex}.calendars-header h3{color:var(--calendar-text);letter-spacing:-.3px;justify-content:center;align-items:center;gap:0;margin:0;font-size:14px;font-weight:700;display:flex}.calendars-header h3:before{content:none}.add-calendar-btn{background:var(--calendar-secondary);width:100%;color:var(--calendar-white);cursor:pointer;transition:all var(--transition);border:none;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:12px;font-weight:600;display:flex}.add-calendar-btn:hover{box-shadow:0 2px 8px var(--calendar-shadow-md);background:#1a1a1a;transform:translateY(-1px)}.add-calendar-btn svg{width:14px;height:14px}.calendars-list{flex-wrap:wrap;place-content:flex-start center;gap:8px;display:flex}.calendar-loading{text-align:center;color:var(--calendar-text-light);padding:30px 20px}.calendar-loading .loader{border:2px solid var(--calendar-border);border-top-color:var(--calendar-secondary);border-radius:50%;width:24px;height:24px;margin:0 auto 10px;animation:1s linear infinite spin}.calendar-loading p{margin:0;font-size:12px}.calendar-item{background:var(--calendar-hover);border:1px solid var(--calendar-border);cursor:pointer;transition:background var(--transition), color var(--transition), border-color var(--transition), box-shadow var(--transition);border-radius:999px;align-items:center;gap:10px;max-width:100%;min-height:32px;padding:6px 10px;display:inline-flex}.calendar-item:hover{background:var(--calendar-primary);border-color:var(--calendar-secondary)}.calendar-item.active{box-shadow:0 4px 12px var(--calendar-shadow-md);border-color:#000}.calendar-item.active .calendar-name{color:var(--calendar-white);font-weight:600}.calendar-color{width:9px;height:9px;box-shadow:0 1px 4px var(--calendar-shadow);border-radius:50%;flex-shrink:0}.calendar-name{min-width:0;color:var(--calendar-text);text-overflow:ellipsis;white-space:nowrap;text-align:center;flex:auto;max-width:100%;font-size:13px;font-weight:600;overflow:hidden}.calendar-page .main-content{flex:auto;min-width:0;max-width:1600px;padding:32px 24px 32px 16px;margin-left:0!important}.page-header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.calendar-page .page-header{margin-left:-228px;padding-left:20px}.calendar-react-shell{background:var(--calendar-primary);width:100%;min-height:100dvh;padding-left:0}.calendar-react-shell .page-header{margin-left:0;padding-left:0}.calendar-route-main{background:var(--calendar-primary);min-height:100dvh;padding:0}.calendar-route-main .calendar-page{background:var(--calendar-primary);width:100%;min-height:100%}.header-left{flex:1}.page-title{letter-spacing:-.8px;color:var(--calendar-text);align-items:center;gap:12px;margin:0 0 8px;font-size:32px;font-weight:700;display:flex}.page-title svg{color:var(--calendar-secondary)}.page-subtitle{color:var(--calendar-text-light);margin:0;font-size:16px}.header-right{align-items:center;gap:12px;display:flex}.btn{cursor:pointer;transition:all var(--transition);letter-spacing:-.2px;border:none;border-radius:10px;outline:none;align-items:center;gap:8px;padding:12px 20px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Roboto,sans-serif;font-size:14px;font-weight:600;display:inline-flex}.btn-primary:hover{box-shadow:0 6px 20px var(--calendar-shadow-lg);background:#1a1a1a;transform:translateY(-2px)}.btn-secondary{background:var(--calendar-white);color:var(--calendar-text);border:1.5px solid var(--calendar-border)}.btn-secondary:hover{background:var(--calendar-hover);border-color:#ccc}.btn-large{padding:16px 32px;font-size:16px}.alert{animation:slideIn .4s var(--transition);border-radius:12px;align-items:center;gap:12px;margin-bottom:24px;padding:16px 20px;font-size:14px;font-weight:500;display:flex}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-success{color:#15803d;background:#f0fdf4;border:1.5px solid #86efac}.alert-error{color:#b91c1c;background:#fef2f2;border:1.5px solid #fca5a5}.alert svg{flex-shrink:0}.connection-status{background:var(--calendar-white);text-align:center;box-shadow:0 2px 12px var(--calendar-shadow);border-radius:16px;padding:60px 40px}.connection-status .loader{border:4px solid var(--calendar-border);border-top-color:var(--calendar-secondary);border-radius:50%;width:50px;height:50px;margin:0 auto 20px;animation:1s linear infinite spin}.connection-status p{color:var(--calendar-text-light);margin:0;font-size:16px}.empty-state{background:var(--calendar-white);text-align:center;box-shadow:0 2px 12px var(--calendar-shadow);border-radius:16px;padding:80px 60px}.empty-icon{opacity:.3;margin-bottom:24px}.empty-icon svg{color:var(--calendar-secondary)}.empty-state h2{color:var(--calendar-text);letter-spacing:-.5px;margin:0 0 12px;font-size:28px;font-weight:700}.empty-state>p{color:var(--calendar-text-light);max-width:600px;margin:0 auto 24px;font-size:16px}.feature-list{max-width:500px;margin:0 auto 32px;padding:0;list-style:none}.feature-list li{color:var(--calendar-text);text-align:left;align-items:center;gap:12px;padding:12px;font-size:15px;display:flex}.feature-list svg{color:var(--calendar-success);flex-shrink:0}.admin-controls{background:var(--calendar-white);box-shadow:0 2px 8px var(--calendar-shadow);border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:24px;padding:20px 24px;display:flex}.view-selector{background:var(--calendar-primary);border-radius:10px;gap:8px;padding:4px;display:flex}.view-btn{color:var(--calendar-text-light);cursor:pointer;transition:all var(--transition);background:0 0;border:none;border-radius:8px;padding:10px 20px;font-family:inherit;font-size:14px;font-weight:600}.view-btn.active{background:var(--calendar-white);color:var(--calendar-text);box-shadow:0 2px 6px var(--calendar-shadow)}.view-btn:hover:not(.active){color:var(--calendar-text)}.user-selector{align-items:center;gap:12px;display:flex}.user-selector label{color:var(--calendar-text);white-space:nowrap;font-size:14px;font-weight:600}.form-select{border:1.5px solid var(--calendar-border);color:var(--calendar-text);background:var(--calendar-white);cursor:pointer;transition:all var(--transition);border-radius:8px;min-width:200px;padding:10px 16px;font-family:inherit;font-size:14px}.form-select:hover{border-color:#ccc}.form-select:focus{border-color:var(--calendar-secondary);outline:none;box-shadow:0 0 0 4px #0000000d}.calendar-nav{background:var(--calendar-white);box-shadow:0 2px 8px var(--calendar-shadow);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:20px 24px;display:flex}.calendar-view-selector{flex-shrink:0}.current-month{color:var(--calendar-text);letter-spacing:-.5px;text-align:center;flex:1;margin:0;font-size:24px;font-weight:700}.nav-btn{background:var(--calendar-primary);width:40px;height:40px;color:var(--calendar-text);cursor:pointer;transition:all var(--transition);border:none;border-radius:10px;justify-content:center;align-items:center;display:flex}.nav-btn:hover{background:var(--calendar-secondary);color:var(--calendar-white);transform:scale(1.05)}.nav-btn:active{transform:scale(.95)}.calendar-grid{background:var(--calendar-white);box-shadow:0 2px 12px var(--calendar-shadow);border-radius:16px;margin-bottom:32px;padding:24px}.calendar-header{border-bottom:2px solid var(--calendar-border);grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-bottom:16px;padding-bottom:16px;display:grid}.day-name{text-align:center;color:var(--calendar-text-light);text-transform:uppercase;letter-spacing:.5px;padding:8px;font-size:13px;font-weight:700}.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-grid.week-view .calendar-days{grid-template-rows:minmax(200px,auto)}.calendar-day{aspect-ratio:1;background:var(--calendar-hover);cursor:pointer;transition:all var(--transition);border:2px solid #0000;border-radius:12px;flex-direction:column;padding:12px;display:flex;position:relative}.calendar-grid.week-view .calendar-day{aspect-ratio:auto;min-height:200px}.calendar-day:hover{background:var(--calendar-primary);border-color:var(--calendar-border);box-shadow:0 4px 12px var(--calendar-shadow);transform:translateY(-2px)}.calendar-day.other-month{opacity:.3}.calendar-day.today{background:var(--calendar-secondary);color:var(--calendar-white);border-color:var(--calendar-secondary)}.calendar-day.today .day-number{color:var(--calendar-white)}.day-number{color:var(--calendar-text);margin-bottom:4px;font-size:16px;font-weight:600}.day-events{color:var(--calendar-text-light);flex-direction:column;gap:4px;margin-top:auto;font-size:11px;display:flex}.event-preview{transition:all var(--transition);cursor:pointer;background:#0000000d;border-radius:6px;align-items:center;gap:6px;padding:4px 6px;font-size:10px;font-weight:500;display:flex}.event-preview:hover{background:#0000001a;transform:translate(2px)}.calendar-day.today .event-preview{background:#fff3}.calendar-day.today .event-preview:hover{background:#ffffff4d}.event-preview span{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.event-dot{background:var(--calendar-info);border-radius:50%;flex-shrink:0;width:6px;height:6px}.calendar-day.today .event-dot{background:var(--calendar-white)}.event-preview.more-events{opacity:.7;justify-content:center;font-style:italic}.event-preview.more-events:hover{opacity:1}.calendar-day.today .day-events{color:#ffffffe6}.events-section{background:var(--calendar-white);box-shadow:0 2px 12px var(--calendar-shadow);border-radius:16px;padding:28px}.section-title{color:var(--calendar-text);letter-spacing:-.3px;align-items:center;gap:10px;margin:0 0 20px;font-size:20px;font-weight:700;display:flex}.section-title:before{content:"";background:var(--calendar-secondary);border-radius:2px;width:4px;height:24px}.events-list{flex-direction:column;gap:12px;display:flex}.events-list .loader{border:3px solid var(--calendar-border);border-top-color:var(--calendar-secondary);border-radius:50%;width:40px;height:40px;margin:40px auto;animation:1s linear infinite spin}.event-item{background:var(--calendar-hover);border:1.5px solid var(--calendar-border);transition:all var(--transition);cursor:pointer;border-radius:12px;padding:20px}.event-item:hover{background:var(--calendar-white);border-color:var(--calendar-secondary);box-shadow:0 4px 12px var(--calendar-shadow);transform:translate(4px)}.event-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.event-title{color:var(--calendar-text);letter-spacing:-.2px;margin:0;font-size:16px;font-weight:600}.event-time{color:var(--calendar-text-light);white-space:nowrap;align-items:center;gap:6px;font-size:13px;font-weight:500;display:flex}.event-time svg{width:14px;height:14px}.event-description{color:var(--calendar-text-light);margin:0;font-size:14px;line-height:1.5}.event-actions{align-items:center;gap:8px;display:flex}.event-actions .icon-btn{width:32px;height:32px}.event-actions .icon-btn svg{width:16px;height:16px}.event-meta{border-top:1px solid var(--calendar-border);color:var(--calendar-text-light);align-items:center;gap:16px;margin-top:12px;padding-top:12px;font-size:12px;display:flex}.event-creator{align-items:center;gap:6px;display:flex}.creator-avatar{background:var(--calendar-secondary);width:24px;height:24px;color:var(--calendar-white);border-radius:50%;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:flex}.empty-events{text-align:center;color:var(--calendar-text-light);padding:40px 20px}.empty-events svg{opacity:.2;margin-bottom:16px}.empty-events p{margin:0;font-size:15px}.modal{-webkit-backdrop-filter:blur();backdrop-filter:blur();z-index:1000;width:100%;height:100%;transition:background .2s var(--transition), backdrop-filter .2s var(--transition);background:0 0;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;top:0;left:0;overflow-y:auto}.modal.show{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000080;display:flex}.modal-content{background:var(--calendar-white);opacity:0;width:100%;max-width:600px;transition:opacity .3s var(--transition), transform .3s var(--transition);border-radius:20px;transform:translateY(30px)scale(.95);box-shadow:0 20px 60px #0000004d}.modal.show .modal-content{opacity:1;transform:translateY(0)scale(1)}.modal-title-wrapper{flex:1;align-items:center;gap:16px;display:flex}.event-color-badge{width:32px;height:32px;box-shadow:0 2px 8px var(--calendar-shadow-md);border-radius:50%;flex-shrink:0}.icon-btn{background:var(--calendar-hover);width:36px;height:36px;color:var(--calendar-text);cursor:pointer;transition:all var(--transition);border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;display:flex}.icon-btn:hover{background:var(--calendar-secondary);color:var(--calendar-white);transform:translateY(-2px)}.icon-btn.delete-btn:hover{background:var(--calendar-error);color:var(--calendar-white)}.modal-close{background:var(--calendar-hover);width:36px;height:36px;color:var(--calendar-text);cursor:pointer;transition:all var(--transition);border:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.modal-close:hover{background:var(--calendar-secondary);color:var(--calendar-white);transform:rotate(90deg)}.modal-body{max-height:calc(90vh - 200px);padding:32px;overflow-y:auto}.modal-body::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track{background:var(--calendar-hover);border-radius:4px}.modal-body::-webkit-scrollbar-thumb{background:var(--calendar-border);border-radius:4px}.modal-body::-webkit-scrollbar-thumb:hover{background:var(--calendar-text-light)}.event-view-content{flex-direction:column;gap:24px;display:flex}.event-view-actions{border-top:2px solid var(--calendar-border);justify-content:flex-end;margin-top:24px;padding-top:20px;display:flex}.event-detail-section{flex-direction:column;gap:8px;display:flex}.event-detail-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.event-detail-label{color:var(--calendar-text-light);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.event-detail-label svg{width:16px;height:16px;color:var(--calendar-secondary)}.event-detail-value{color:var(--calendar-text);background:var(--calendar-hover);border-radius:8px;padding:12px 16px;font-size:16px;line-height:1.6}.event-detail-value:empty:before{content:"No especificado";color:var(--calendar-text-light);opacity:.6;font-style:italic}.form-group label svg{width:16px;height:16px;color:var(--calendar-text-light)}.form-input{border:1.5px solid var(--calendar-border);background:var(--calendar-white);width:100%;color:var(--calendar-text);transition:all var(--transition);border-radius:10px;outline:none;padding:14px 16px;font-family:inherit;font-size:15px}.form-input::placeholder{color:#aaa}.form-input:hover{border-color:#ccc}.form-input:focus{border-color:var(--calendar-secondary);box-shadow:0 0 0 4px #0000000d}textarea.form-input{resize:vertical;min-height:100px}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.checkbox-group{margin-bottom:20px}.checkbox-label{cursor:pointer;background:var(--calendar-hover);transition:all var(--transition);border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex;font-weight:500!important}.checkbox-label:hover{background:var(--calendar-primary)}.checkbox-label input[type=checkbox]{display:none}.checkbox-custom{border:2px solid var(--calendar-border);background:var(--calendar-white);width:20px;height:20px;transition:all var(--transition);border-radius:6px;position:relative}.checkbox-label input[type=checkbox]:checked+.checkbox-custom{background:var(--calendar-secondary);border-color:var(--calendar-secondary)}.checkbox-label input[type=checkbox]:checked+.checkbox-custom:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:10px;position:absolute;top:2px;left:6px;transform:rotate(45deg)}.color-picker{flex-wrap:wrap;gap:12px;display:flex}.color-option{cursor:pointer;position:relative}.color-option input[type=radio]{opacity:0;position:absolute}.color-circle{width:36px;height:36px;transition:all var(--transition);border:2px solid #0000;border-radius:50%;display:block}.color-option input[type=radio]:checked+.color-circle{border-color:var(--calendar-secondary);box-shadow:0 0 0 2px var(--calendar-white), 0 0 0 4px var(--calendar-secondary);transform:scale(1.1)}.color-option:hover .color-circle{transform:scale(1.1)}.form-actions{border-top:2px solid var(--calendar-border);justify-content:flex-end;gap:12px;margin-top:32px;padding-top:24px;display:flex}.btn-delete-event{margin-right:auto}.calendar-targets-help{color:var(--calendar-text-light);margin:0 0 10px;font-size:13px}.calendar-targets-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;display:grid}.calendar-target-btn{border:1.5px solid var(--calendar-border);background:var(--calendar-white);color:var(--calendar-text);cursor:pointer;transition:all var(--transition);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.calendar-target-btn:hover{background:var(--calendar-hover);border-color:#b8b8b8}.calendar-target-btn.active{color:#fff;background:#111;border-color:#111}.calendar-target-dot{border-radius:999px;flex-shrink:0;width:12px;height:12px}.calendar-target-text{text-align:left;line-height:1.2}@media (max-width:1200px){.calendars-sidebar{width:140px;margin:20px 6px 20px 20px}.calendar-page .calendars-sidebar{margin-top:136px}.calendar-page .main-content{min-width:0;padding:24px 20px}.calendar-page .page-header{margin-left:-166px;padding-left:20px}}@media (max-width:768px){.calendar-container{flex-direction:column;padding-left:0;overflow-x:hidden}.calendars-sidebar{border-radius:12px;width:100%;height:auto;margin:20px;position:relative;top:0}.calendar-page .main-content{width:100%;min-width:0}.calendar-page .page-header{margin-left:0;padding-left:0}.page-header{flex-direction:column;align-items:flex-start}.header-right{flex-wrap:wrap;width:100%}.header-right .btn{flex:1;justify-content:center;min-width:140px}.admin-controls{flex-direction:column;align-items:stretch}.view-selector{width:100%}.view-btn{flex:1}.user-selector{flex-direction:column;align-items:stretch;width:100%}.calendar-grid{padding:16px}.calendar-header{gap:4px}.day-name{padding:6px 4px;font-size:11px}.calendar-days{gap:4px}.calendar-day{border-radius:8px;padding:6px}.calendar-grid.week-view .calendar-day{min-height:88px}.day-number{font-size:13px}.day-events{display:none}.events-section{padding:20px}.event-item{padding:16px}.event-header{flex-direction:column;gap:8px}.modal-content{border-radius:16px;max-width:100%}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.form-actions .btn{justify-content:center;width:100%}.event-detail-row{grid-template-columns:1fr}.modal-title-wrapper h2{font-size:18px}.event-color-badge{width:24px;height:24px}.modal-header-actions .icon-btn,.modal-header-actions .modal-close{width:32px;height:32px}.modal-header-actions svg{width:16px;height:16px}.empty-state{padding:60px 30px}}.page-header{justify-content:space-between;align-items:flex-start;margin-bottom:32px;display:flex}.page-header h1{color:var(--text-primary);letter-spacing:-.8px;margin-bottom:8px;font-size:32px;font-weight:700}.page-header h1 i{color:var(--text-secondary);margin-right:10px}.subtitle{color:var(--text-secondary);font-size:16px}.folders-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:24px;display:grid}.folder-card{box-shadow:0 2px 8px var(--shadow-light);transition:all var(--transition-speed) var(--transition-smooth);background:#fff;border-radius:16px;overflow:hidden}.folder-card:hover{box-shadow:0 8px 24px var(--shadow-medium);transform:translateY(-4px)}.folder-header{background:var(--primary-color);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px;display:flex}.company-logo{object-fit:contain;border:1px solid var(--border-color);background:#fff;border-radius:12px;width:60px;height:60px;padding:8px}.company-logo-placeholder{background:var(--secondary-color);border-radius:12px;justify-content:center;align-items:center;width:60px;height:60px;display:flex}.company-logo-placeholder i{color:#fff;font-size:24px}.folder-actions{gap:6px;display:flex}.folder-actions .btn-icon{border:1px solid var(--border-color);color:#1f2937;background:#fff;width:34px;height:34px;box-shadow:0 1px 4px #00000014}.folder-actions .btn-icon i{font-size:14px}.folder-actions .btn-icon:hover{color:#fff;background:#111827;border-color:#111827;transform:translateY(-1px)}.folder-actions .btn-icon.btn-danger{color:#b42318}.folder-actions .btn-icon.btn-danger:hover{color:#fff;background:#b42318;border-color:#b42318}.btn-icon{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-speed) var(--transition-smooth);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;display:flex}.btn-icon.btn-danger:hover{color:#f56565;background:#f565651a}.folder-body{cursor:pointer;padding:20px}.folder-body h3{color:var(--text-primary);letter-spacing:-.3px;margin-bottom:6px;font-size:18px;font-weight:600}.company-name{color:var(--text-secondary);margin-bottom:8px;font-size:14px}.folder-description{color:var(--text-secondary);margin-top:8px;font-size:13px;line-height:1.5}.folder-footer{background:var(--primary-color);border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.file-count{color:var(--text-secondary);font-size:13px;font-weight:600}.file-count i{margin-right:6px}.folder-password{background:var(--secondary-color);color:#fff;letter-spacing:1px;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:600}.folder-password i{margin-right:6px}.empty-state{text-align:center;color:var(--text-secondary);grid-column:1/-1;padding:80px 20px}.empty-state i{opacity:.2;margin-bottom:20px;font-size:64px}.empty-state h3{color:var(--text-primary);margin-bottom:8px;font-size:20px;font-weight:600}.empty-state p{color:var(--text-secondary);font-size:15px}.gallery-modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#00000080;justify-content:center;align-items:flex-start;width:100%;height:100%;padding:40px 20px;display:none;position:fixed;top:0;left:0;overflow-y:auto}.gallery-modal.active{display:flex}.gallery-modal .modal-content{width:100%;max-width:600px;animation:slideUp .3s var(--transition-smooth);background:#fff;border-radius:16px;margin:auto;overflow:hidden;box-shadow:0 20px 60px #0000004d}.gallery-modal .modal-content.modal-large{max-width:1200px}.gallery-modal .modal-header{border-bottom:1px solid var(--border-color);background:#fff;justify-content:space-between;align-items:center;padding:24px 32px;display:flex}.gallery-modal .modal-header h2{color:var(--text-primary);letter-spacing:-.5px;flex:1;margin:0;font-size:20px;font-weight:700}.gallery-modal .modal-header-actions{align-items:center;gap:12px;display:flex}.total-downloads-badge{background:var(--primary-color);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:flex}.total-downloads-badge svg{width:16px;height:16px;stroke:var(--text-secondary)}.total-downloads-badge span{color:var(--text-primary)}.gallery-modal .modal-header-actions .btn-icon{color:#fff;background:#000}.gallery-modal .modal-header-actions .btn-icon:hover{color:#000;background:#fff;border:1px solid #000;transform:scale(1.05)}.gallery-modal .modal-header-actions .btn-icon svg{width:20px;height:20px}.gallery-modal .modal-header .close{cursor:pointer;width:36px;height:36px;color:var(--text-secondary);transition:all var(--transition-speed) var(--transition-smooth);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:0;font-size:24px;display:flex}.gallery-modal .modal-header .close:hover{color:var(--text-primary);background:#0000000d}.gallery-modal .modal-body{max-height:60vh;padding:32px;overflow-y:auto}.gallery-modal .modal-content form{flex-direction:column;display:flex}.gallery-modal .modal-content form .modal-body{flex:1;overflow-y:auto}.gallery-modal .modal-footer{border-top:1px solid var(--border-color);background:var(--primary-color);justify-content:flex-end;gap:12px;padding:20px 32px;display:flex}#passwordDisplay .password-box{background:var(--primary-color);border:2px solid var(--secondary-color);text-align:center;border-radius:12px;padding:20px;box-shadow:0 4px 12px #0000001a}#passwordDisplay .password-value{letter-spacing:6px;color:var(--secondary-color);margin-bottom:12px;font-family:Monaco,Courier New,monospace;font-size:36px;font-weight:700}#passwordDisplay .password-hint{color:var(--text-secondary);justify-content:center;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}#passwordDisplay .password-hint svg{stroke:#f59e0b;width:16px;height:16px}.form-group label i{color:var(--text-secondary);margin-right:6px}.form-group input[type=text],.form-group input[type=file],.form-group textarea{border:1.5px solid var(--border-color);border-radius:var(--border-radius);width:100%;color:var(--text-primary);transition:all var(--transition-speed) var(--transition-smooth);background:#fff;padding:14px 16px;font-family:inherit;font-size:15px}.form-group input[type=text]:hover,.form-group textarea:hover{border-color:#ccc}.form-group input[type=text]:focus,.form-group textarea:focus{border-color:var(--secondary-color);outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #0000000d}.form-group textarea{resize:vertical;font-family:inherit}.form-group small{color:var(--text-secondary);margin-top:6px;font-size:13px;display:block}.logo-preview{text-align:center;margin-top:16px}.logo-preview img{border:1px solid var(--border-color);max-width:200px;max-height:200px;box-shadow:0 2px 8px var(--shadow-light);border-radius:12px}.files-toolbar{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.files-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;display:grid}.file-item{aspect-ratio:1;cursor:pointer;transition:all var(--transition-speed) var(--transition-smooth);background:var(--primary-color);border:1px solid var(--border-color);border-radius:12px;position:relative;overflow:hidden}.file-item:hover{box-shadow:0 8px 24px var(--shadow-medium);transform:translateY(-4px)}.file-item img,.file-item video{object-fit:cover;width:100%;height:100%}.file-item .file-checkbox{cursor:pointer;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #0000001a;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;transition:all .2s;display:flex;position:absolute;top:12px;left:12px}.file-item .file-checkbox:hover{background:#fff;border-color:#000;transform:scale(1.1)}.file-item .file-checkbox input{display:none}.file-item .file-checkbox.checked{background:#000;border-color:#000}.file-item .file-checkbox svg{stroke:#fff;width:16px;height:16px;display:none}.file-item .file-checkbox.checked svg{display:block}.file-item.selected{opacity:.8;transform:scale(.95)}.file-item .file-download-badge{color:#fff;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000d9;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;display:flex;position:absolute;bottom:12px;left:12px;box-shadow:0 2px 8px #0003}.file-item .file-download-badge svg{stroke:#fff;width:12px;height:12px}.file-item .file-actions{opacity:0;transition:opacity var(--transition-speed) var(--transition-smooth);gap:6px;display:flex;position:absolute;top:8px;right:8px}.file-item:hover .file-actions{opacity:1}.file-action-btn{color:#111827;cursor:pointer;width:36px;height:36px;transition:all var(--transition-speed) var(--transition-smooth);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:none;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;display:flex;box-shadow:0 2px 8px #00000026}.file-action-btn:hover{color:#fff;background:#111827;transform:scale(1.1)}.file-action-btn i{font-size:14px}.file-action-btn.file-action-btn-danger{color:#b42318}.file-action-btn.file-action-btn-danger:hover{color:#fff;background:#b42318}.file-item .play-icon{width:48px;height:48px;color:var(--secondary-color);background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 12px #00000026}.upload-progress{margin:20px 0}.progress-bar{background:var(--border-color);border-radius:10px;width:100%;height:6px;margin-bottom:12px;overflow:hidden}.progress-fill{background:var(--secondary-color);height:100%;transition:width .3s var(--transition-smooth);border-radius:10px}#uploadStatus{text-align:center;color:var(--text-secondary);font-size:14px;font-weight:500}.files-selection-toolbar{-webkit-backdrop-filter:blur(20px);z-index:1001;opacity:0;pointer-events:none;background:#000000f2;border-radius:24px;align-items:center;gap:16px;padding:16px 24px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:32px;left:50%;transform:translate(-50%)translateY(20px);box-shadow:0 12px 40px #0000004d}.files-selection-toolbar.active{opacity:1;pointer-events:all;animation:.3s cubic-bezier(.4,0,.2,1) forwards slideUpFilesToolbar;transform:translate(-50%)translateY(0)}@keyframes slideUpFilesToolbar{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.files-selection-toolbar-info{color:#fff;font-size:15px;font-weight:500}.files-selection-toolbar-btn{color:#000;cursor:pointer;background:#fff;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.files-selection-toolbar-btn:hover{background:#e5e5e5;transform:scale(1.05)}.files-selection-toolbar-btn svg{width:18px;height:18px}.files-selection-toolbar-btn-secondary{color:#fff;background:0 0;border:1.5px solid #ffffff4d}.files-selection-toolbar-btn-secondary:hover{background:#ffffff1a;border-color:#ffffff80}.files-selection-toolbar-btn-danger{color:#fff;background:#f56565}.files-selection-toolbar-btn-danger:hover{background:#e53e3e}.btn{border-radius:var(--border-radius);cursor:pointer;transition:all var(--transition-speed) var(--transition-smooth);border:none;align-items:center;gap:8px;padding:12px 20px;font-family:inherit;font-size:15px;font-weight:600;display:inline-flex}.btn-primary{background:var(--secondary-color);color:#fff;box-shadow:0 4px 12px #00000026}.btn-primary:active{transform:translateY(0)}.btn-secondary{color:var(--text-secondary);border:1.5px solid var(--border-color);background:0 0}.btn-secondary:hover{border-color:var(--secondary-color);color:var(--text-primary)}@media (max-width:768px){.folders-grid{grid-template-columns:1fr;gap:16px}.page-header{flex-direction:column;gap:16px}.page-header .btn-primary{justify-content:center;width:100%}.gallery-modal{padding:20px 10px}.gallery-modal .modal-content{border-radius:16px;width:100%;max-width:100%}.gallery-modal .modal-header{padding:20px}.gallery-modal .modal-header h2{font-size:18px}.gallery-modal .modal-body{max-height:50vh;padding:20px}.gallery-modal .modal-footer{flex-direction:column-reverse;gap:8px;padding:16px 20px}.gallery-modal .modal-footer .btn{justify-content:center;width:100%;margin:0}.ew-gallery-overlay{padding:20px 10px}.ew-gallery-dialog{border-radius:16px;width:100%;max-width:100%}.ew-gallery-header{padding:20px}.ew-gallery-header h2{font-size:18px}.ew-gallery-body{max-height:50vh;padding:20px}.ew-gallery-footer{flex-direction:column-reverse;gap:8px;padding:16px 20px}.ew-gallery-footer .btn{justify-content:center;width:100%;margin:0}.files-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.folder-header,.folder-body{padding:16px}.folder-footer{padding:12px 16px}}.confirm-modal{-webkit-backdrop-filter:blur(10px);z-index:10000;opacity:0;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.ew-gallery-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:12000;background:#00000080;justify-content:center;align-items:flex-start;padding:40px 20px;display:flex;position:fixed;inset:0;overflow-y:auto}.ew-gallery-dialog{background:#fff;border-radius:16px;width:100%;max-width:600px;margin:auto;overflow:hidden;box-shadow:0 20px 60px #0000004d}.ew-gallery-dialog.ew-gallery-dialog-large{max-width:1200px}.ew-gallery-header{border-bottom:1px solid var(--border-color);background:#fff;justify-content:space-between;align-items:center;padding:24px 32px;display:flex}.ew-gallery-header h2{color:var(--text-primary);letter-spacing:-.5px;flex:1;margin:0;font-size:20px;font-weight:700}.ew-gallery-header-actions{align-items:center;gap:12px;display:flex}.ew-gallery-upload-btn{color:#fff;cursor:pointer;height:40px;transition:all var(--transition-speed) var(--transition-smooth);background:#111827;border:none;border-radius:10px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:600;display:inline-flex}.ew-gallery-upload-btn i{font-size:14px}.ew-gallery-upload-btn:hover:not(:disabled){background:#000;transform:translateY(-1px)}.ew-gallery-upload-btn:disabled{opacity:.65;cursor:not-allowed}.ew-gallery-close{cursor:pointer;width:36px;height:36px;color:var(--text-secondary);transition:all var(--transition-speed) var(--transition-smooth);background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;margin:0;padding:0;font-size:24px;display:flex}.ew-gallery-close:hover{color:var(--text-primary);background:#0000000d}.ew-gallery-body{max-height:60vh;padding:32px;overflow-y:auto}.ew-gallery-dialog form{flex-direction:column;display:flex}.ew-gallery-dialog form .ew-gallery-body{flex:1;overflow-y:auto}.ew-gallery-footer{border-top:1px solid var(--border-color);background:var(--primary-color);justify-content:flex-end;gap:12px;padding:20px 32px;display:flex}.confirm-modal.active{opacity:1;display:flex}.confirm-modal-content{text-align:center;background:#fff;border-radius:20px;width:90%;max-width:400px;padding:40px;transition:transform .3s cubic-bezier(.4,0,.2,1);transform:scale(.9);box-shadow:0 20px 60px #0000004d}.confirm-modal.active .confirm-modal-content{transform:scale(1)}.confirm-modal-icon{background:#fee2e2;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 24px;display:flex}.confirm-modal-icon svg{color:#ef4444;stroke-width:2px;width:32px;height:32px}.confirm-modal h3{color:#000;margin:0 0 12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:22px;font-weight:600}.confirm-modal p{color:#666;margin:0 0 32px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}.confirm-modal-buttons{gap:12px;display:flex}.confirm-modal-btn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:14px 24px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;font-weight:600;transition:all .2s}.confirm-modal-btn-cancel{color:#000;background:#f5f5f5}.confirm-modal-btn-cancel:hover{background:#e5e5e5}.confirm-modal-btn-confirm{color:#fff;background:#ef4444}.confirm-modal-btn-confirm:hover{background:#dc2626}.confirm-modal-large{max-width:520px}.confirm-modal-icon-danger{background:#fef2f2}.confirm-modal-icon-danger svg{color:#dc2626}.confirm-modal p strong{color:#dc2626;font-weight:700}.confirm-input-group{text-align:left;margin:24px 0}.confirm-input-group label{color:#000;margin-bottom:12px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;font-weight:600;display:block}.confirm-folder-name-display{color:#dc2626;text-align:center;background:#f5f5f5;border:1px solid #e5e5e5;border-radius:8px;margin-bottom:12px;padding:10px 14px;font-family:Monaco,Courier New,monospace;font-size:15px;font-weight:600}.confirm-input{box-sizing:border-box;border:2px solid #e5e5e5;border-radius:10px;width:100%;padding:12px 16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;transition:all .2s;text-align:center!important}.confirm-input:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a;text-align:center!important}.confirm-input.error{border-color:#dc2626;text-align:center!important}.confirm-input.error:focus{box-shadow:0 0 0 3px #dc26261a;text-align:center!important}.confirm-input.success{border-color:#10b981;text-align:center!important}.confirm-input-hint{color:#666;margin-top:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:12px;display:block}.confirm-modal-btn-danger{color:#fff;background:#dc2626}.confirm-modal-btn-danger:hover:not(:disabled){background:#b91c1c}.confirm-modal-btn-danger:disabled{color:#999;cursor:not-allowed;opacity:.6;background:#e5e5e5}.upload-drop-zone{border:2px dashed var(--border-color);text-align:center;cursor:pointer;background:#fafafa;border-radius:16px;padding:60px 40px;transition:all .3s}.upload-drop-zone.dragover{border-color:var(--primary-color);background:#3b82f60d;transform:scale(1.02)}.upload-icon{background:#000;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 24px;display:flex}.upload-icon svg{color:#fff;stroke-width:2px;width:40px;height:40px}.upload-drop-zone h3{color:var(--text-primary);margin:0 0 12px;font-size:20px;font-weight:600}.upload-drop-zone p{color:var(--text-secondary);margin:0 0 20px;font-size:16px}.upload-drop-zone small{color:var(--text-secondary);margin-top:16px;font-size:13px;display:block}.btn-select-files{color:#fff;cursor:pointer;background:#000;border:1px solid #000;border-radius:12px;padding:14px 32px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:15px;font-weight:600;transition:all .2s}.btn-select-files:hover{color:#000;background:#fff;border:1px solid #000;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.selected-files-list{max-height:200px;margin-top:24px;overflow-y:auto}.selected-file-item{border:1px solid var(--border-color);background:#fff;border-radius:8px;align-items:center;gap:12px;margin-bottom:8px;padding:12px;display:flex}.selected-file-icon{background:#3b82f61a;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.selected-file-icon svg{width:20px;height:20px;color:var(--primary-color)}.selected-file-info{flex:1;min-width:0}.selected-file-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:500;overflow:hidden}.selected-file-size{color:var(--text-secondary);margin-top:2px;font-size:12px}.selected-file-remove{cursor:pointer;width:32px;height:32px;color:var(--text-secondary);background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .2s;display:flex}.selected-file-remove:hover{color:#f56565;background:#f565651a}.upload-progress-modal{-webkit-backdrop-filter:blur(10px);z-index:10001;opacity:0;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.upload-progress-modal.active{opacity:1;display:flex}.upload-progress-content{text-align:center;background:#fff;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;width:400px;min-width:400px;min-height:380px;padding:48px;display:flex;box-shadow:0 20px 60px #0000004d}.progress-circle-container{width:160px;height:160px;margin:0 auto 32px;position:relative}.progress-circle{transform:rotate(-90deg)}.progress-circle-bg{fill:none;stroke:#f0f0f0;stroke-width:8px}.progress-circle-fill{fill:none;stroke:#000;stroke-width:8px;stroke-linecap:round;transition:stroke-dashoffset .3s}.progress-text{color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:32px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.progress-label{color:var(--text-primary);height:28px;margin-bottom:8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:18px;font-weight:600}.progress-sublabel{color:var(--text-secondary);height:22px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.kanban-main-content{height:100dvh;min-height:100vh;overflow:hidden;padding:0!important}.kanban-page{background:radial-gradient(circle at 8% 10%,#fffffff2 0%,#f1f5f9d9 36%,#0000 58%),radial-gradient(circle at 92% 90%,#e5ecf4eb 0%,#0000 46%),linear-gradient(160deg,#eef2f7 0%,#f7f9fc 44%,#eef3f8 100%);flex-direction:column;min-width:0;height:100%;min-height:100%;display:flex;overflow:hidden}.kanban-header{z-index:30;-webkit-backdrop-filter:blur(18px)saturate(130%);background:linear-gradient(#ffffffe6 0%,#f8fafcd1 100%);border-bottom:1px solid #0f172a17;flex-shrink:0;padding:16px 24px;position:sticky;top:0;box-shadow:0 10px 30px #0f172a14,inset 0 1px #ffffffa6}.kanban-header-content{background:linear-gradient(135deg,#ffffffbd 0%,#f8fafca6 100%);border:1px solid #ffffffbf;border-radius:18px;justify-content:space-between;align-items:center;max-width:100%;padding:8px 10px;display:flex}.kanban-header-left{flex:1;align-items:center;gap:16px;display:flex}.board-icon{background:linear-gradient(140deg,#0f172a 0%,#111827 45%,#334155 100%);border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 4px 12px #00000026,0 0 0 1px #0000001a}.board-icon svg{color:#fff;filter:drop-shadow(0 1px 2px #0000004d)}.board-info{flex:1;align-items:center;min-width:0;display:flex}.board-title-static{color:#0f172a;letter-spacing:-.8px;background:0 0;border-radius:10px;margin:0;padding:6px 12px;font-size:22px;font-weight:700;line-height:1.2;transition:all .2s cubic-bezier(.4,0,.2,1)}.kanban-header-right{align-items:center;gap:10px;display:flex}.btn-header{cursor:pointer;letter-spacing:-.2px;border:none;border-radius:10px;align-items:center;gap:8px;padding:11px 18px;font-size:14px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.btn-header:active{transform:scale(.96)}.btn-header svg{flex-shrink:0}.board-menu-wrapper{position:relative}.btn-header.btn-board-switch{color:#0f172a;background:linear-gradient(145deg,#fffffff7 0%,#f1f5f9eb 100%);border:1px solid #94a3b857;justify-content:space-between;gap:10px;min-width:240px;padding:11px 14px;box-shadow:0 10px 20px #0f172a1c}.btn-header.btn-board-switch:hover{border-color:#0f172a57;transform:translateY(-1px);box-shadow:0 14px 24px #0f172a24}.btn-header.btn-board-switch svg{color:#475569;transition:transform .2s}.btn-header.btn-board-switch.open svg{transform:rotate(180deg)}.btn-header.btn-board-switch span{text-overflow:ellipsis;white-space:nowrap;text-align:left;max-width:320px;overflow:hidden}.board-menu-list{z-index:60;background:linear-gradient(160deg,#fffffffa 0%,#f7fafcf2 100%);border:1px solid #94a3b857;border-radius:14px;width:min(340px,100vw - 32px);max-height:340px;padding:8px;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 20px 38px #0f172a2e}.board-menu-item{cursor:pointer;background:0 0;border:1px solid #0000;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;transition:all .18s;display:flex}.board-menu-item:hover{background:#f1f5f9c2;border-color:#94a3b85c}.board-menu-item.active{background:#e2e8f0a3;border-color:#0f172a38}.board-menu-item-title{color:#0f172a;font-size:14px;font-weight:700}.board-menu-item-meta{color:#64748b;font-size:12px}.board-menu-empty{color:#64748b;background:#f1f5f9b8;border-radius:10px;padding:12px;font-size:13px}.kanban-container{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x pan-y;scrollbar-width:thin;flex:1;padding:22px 24px 28px;position:relative;overflow:auto hidden}.kanban-container:before{content:"";pointer-events:none;background:linear-gradient(145deg,#ffffff8f 0%,#fff3 100%);border:1px solid #94a3b838;border-radius:26px;position:absolute;inset:12px;box-shadow:inset 0 18px 40px #94a3b829}.kanban-board{gap:18px;width:max-content;min-width:100%;height:100%;padding:6px 6px 20px;display:flex;overflow:auto hidden}.kanban-board::-webkit-scrollbar{height:8px}.kanban-board::-webkit-scrollbar-track{background:#f5f5f7;border-radius:4px}.kanban-board::-webkit-scrollbar-thumb{background:#d2d2d7;border-radius:4px}.kanban-board::-webkit-scrollbar-thumb:hover{background:#b4b4b9}.kanban-column{-webkit-backdrop-filter:blur(12px)saturate(125%);background:linear-gradient(175deg,#fffffff0 0%,#fafbfdeb 100%);border:1px solid #94a3b84d;border-radius:20px;flex-direction:column;flex-shrink:0;width:340px;min-width:340px;max-height:calc(100vh - 220px);transition:transform .24s cubic-bezier(.4,0,.2,1),box-shadow .24s cubic-bezier(.4,0,.2,1);animation:.36s cubic-bezier(.22,1,.36,1) both kanbanColumnIn;display:flex;box-shadow:0 18px 40px #0f172a1a}.column-header{border-bottom:1px solid #94a3b833;justify-content:space-between;align-items:center;padding:16px 16px 14px;display:flex}.column-title-wrapper{align-items:center;gap:12px;display:flex}.column-color{border-radius:2px;flex-shrink:0;width:4px;height:24px}.column-title{color:#111827;letter-spacing:-.2px;margin:0;font-size:15px;font-weight:700}.column-actions{opacity:.68;align-items:center;gap:4px;transition:opacity .2s;display:flex}.kanban-column:hover .column-actions{opacity:1}.column-actions .status-badge{color:#fff;background:#111827;border:none;border-radius:999px;justify-content:center;align-self:center;align-items:center;min-width:22px;height:22px;padding:0 8px;font-size:11px;font-weight:700;display:inline-flex;box-shadow:0 6px 14px #0f172a33}.column-actions .btn-icon{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;transition:background .2s;display:flex}.column-actions .btn-icon:hover{background:#f5f5f7}.column-actions .btn-icon svg{color:#86868b;width:18px;height:18px}.column-content{flex-direction:column;flex:1;gap:10px;padding:12px 12px 6px;display:flex;overflow-y:auto}.column-content::-webkit-scrollbar{width:6px}.column-content::-webkit-scrollbar-track{background:0 0}.column-content::-webkit-scrollbar-thumb{background:#e5e5ea;border-radius:3px}.column-content::-webkit-scrollbar-thumb:hover{background:#d2d2d7}.add-column-button{flex-shrink:0;justify-content:center;align-items:center;width:70px;min-height:100%;display:flex}.btn-add-column{cursor:pointer;background:linear-gradient(145deg,#ffffffd1 0%,#f1f5f9d1 100%);border:1px solid #64748b40;border-radius:19px;justify-content:center;align-items:center;width:62px;height:62px;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.btn-add-column:hover{background:linear-gradient(145deg,#fffffffa 0%,#f8fafce6 100%);border-color:#0f172a59;transform:translateY(-2px)scale(1.03);box-shadow:0 14px 26px #64748b38}.btn-add-column:active{transform:scale(.98)}.btn-add-column svg{color:#86868b;width:24px;height:24px;transition:color .2s}.btn-add-column:hover svg{color:#000}.add-task-btn{color:#475569;cursor:pointer;background:linear-gradient(145deg,#ffffffe6 0%,#f8fafcb8 100%);border:1px dashed #64748b59;border-radius:13px;justify-content:center;align-items:center;gap:8px;margin:8px 12px 12px;padding:11px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.add-task-btn:hover{color:#0f172a;background:#fff;border-color:#0f172a57;transform:translateY(-1px)}.add-task-btn svg{width:16px;height:16px}.kanban-card{cursor:pointer;background:linear-gradient(160deg,#fffffff5 0%,#f9fbfdeb 100%);border:1px solid #94a3b83d;border-radius:14px;flex-shrink:0;padding:16px;transition:all .2s cubic-bezier(.4,0,.2,1);animation:.3s cubic-bezier(.22,1,.36,1) both kanbanCardIn;position:relative;overflow:hidden}.kanban-card.dragging,.kanban-card.drag-origin-hidden{opacity:0;cursor:grabbing;box-shadow:none}.kanban-card.drag-origin-hidden{overflow:hidden;border-width:0!important;height:0!important;min-height:0!important;margin-top:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}.kanban-card.drag-origin-hidden .card-content,.kanban-card.drag-origin-hidden .card-priority{display:none}.column-content .kanban-card{transition:transform .2s,opacity .2s,height .15s,padding .15s,margin .15s,border-width .15s}.card-priority{border-radius:12px 0 0 12px;width:4px;height:100%;position:absolute;top:0;left:0}.card-priority.priority-high{background:#ff3b30}.card-priority.priority-medium{background:#ff9500}.card-priority.priority-low{background:#34c759}.card-content{box-sizing:border-box;width:100%;padding-left:8px}.card-title{color:#0f172a;letter-spacing:-.2px;word-wrap:break-word;overflow-wrap:break-word;margin:0 0 12px;font-size:15px;font-weight:650;line-height:1.4}.card-footer{flex-wrap:wrap;gap:8px;width:100%;margin-top:12px;display:flex}.card-assigned,.card-subtasks,.card-due-date{color:#475569;white-space:nowrap;background:#f1f5f9eb;border:1px solid #94a3b83d;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;padding:6px 9px;font-size:11px;display:flex}.card-assigned svg,.card-subtasks svg,.card-due-date svg{width:14px;height:14px}.card-due-date.overdue{color:#ff3b30;background:#ffebeb}.kanban-card.completed{opacity:.76;background:linear-gradient(160deg,#f1f5f9cc 0%,#f8fafcbd 100%)}.kanban-card.completed .card-title{color:#86868b;text-decoration:line-through}.kanban-card.completed:hover{opacity:.85}.completion-badge{z-index:1;background:linear-gradient(135deg,#34c759 0%,#30d158 100%);border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:flex;position:absolute;top:12px;right:12px;box-shadow:0 2px 8px #34c7594d}.completion-badge svg{color:#fff;width:14px;height:14px}.kanban-empty-state{text-align:center;background:#ffffff9e;border:1px dashed #94a3b84d;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:42px;display:flex}@keyframes kanbanColumnIn{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes kanbanCardIn{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.kanban-column,.kanban-card{animation:none}}.kanban-empty-state svg{color:#d2d2d7;margin-bottom:24px}.kanban-empty-state h3{color:#1d1d1f;margin:0 0 8px;font-size:20px;font-weight:700}.kanban-empty-state p{color:#86868b;margin:0 0 24px;font-size:14px}.task-detail-panel{-webkit-backdrop-filter:blur(34px)saturate(135%);z-index:9999;background:linear-gradient(165deg,#fffffffa 0%,#f7f8fafa 100%);border-left:1px solid #00000014;flex-direction:column;width:520px;height:100vh;transition:right .35s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;right:-560px;overflow-y:auto;box-shadow:-14px 0 42px #00000026}.task-detail-panel.show{right:0}.task-detail-panel::-webkit-scrollbar{width:4px}.task-detail-panel::-webkit-scrollbar-track{background:0 0}.task-detail-panel::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px}.task-detail-header{z-index:10;-webkit-backdrop-filter:blur(16px)saturate(130%);background:#ffffffbf;border-bottom:1px solid #00000014;justify-content:space-between;align-items:flex-start;padding:28px 26px 20px;display:flex;position:sticky;top:0}.task-detail-heading{flex-direction:column;gap:6px;display:flex}.task-detail-header h3{color:#111;letter-spacing:-.8px;margin:0;font-size:26px;font-weight:700;line-height:1.15}.task-detail-subtitle{color:#6b7280;letter-spacing:.1px;margin:0;font-size:13px;font-weight:500}.task-detail-header h3.task-title-editable{outline:none}.task-title-wrapper{align-items:center;gap:12px;display:flex}.completion-tick{color:#d1d1d6;cursor:pointer;border-radius:6px;width:28px;min-width:28px;height:28px;min-height:28px;padding:4px;transition:all .2s}.completion-tick:hover{color:#a1a1a6;background:#0000000d}.completion-tick.completed{color:#34c759}.completion-tick.completed:hover{color:#30d158}.task-title-text{cursor:text;border-radius:8px;outline:none;flex:1;margin:-8px -12px;padding:8px 12px;transition:all .2s}.task-title-text:hover{background:#00000008}.task-title-text:focus{background:#0000000d;box-shadow:0 0 0 3px #0000000d}.task-detail-actions{align-items:center;gap:10px;display:flex}.btn-icon{cursor:pointer;background:#fff;border:1px solid #00000014;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.btn-icon:hover{background:#f8fafc;transform:translateY(-1px);box-shadow:0 10px 20px #00000014}.btn-icon:active{transform:scale(.95)}.btn-icon svg{color:#111827}.btn-icon-danger{background:#fff5f5;border-color:#ff3b3038}.btn-icon-danger:hover{background:#ff3b30}.btn-icon-danger:hover svg{color:#fff}.btn-icon-danger svg{color:#ff3b30}.task-detail-body{background:radial-gradient(circle at 0 0,#00000008 0%,#0000 45%),radial-gradient(circle at 100% 100%,#0000000a 0%,#0000 42%);flex:1;padding:22px}.task-detail-loading{color:#6b7280;justify-content:center;align-items:center;min-height:300px;font-size:14px;font-weight:600;display:flex}.task-detail-form .form-group{background:#ffffffd1;border:1px solid #0000000f;border-radius:14px;margin-bottom:14px;padding:16px;box-shadow:0 6px 14px #0000000a}.task-detail-form .form-group label{text-transform:uppercase;letter-spacing:.6px;color:#111827a6;margin-bottom:10px;font-size:12px;font-weight:700;display:block}.task-detail-form input[type=text],.task-detail-form textarea,.task-detail-form select,.task-detail-form input[type=date]{color:#111827;box-sizing:border-box;background:#f9fafbd9;border:1px solid #1118271f;border-radius:11px;width:100%;padding:13px 14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;transition:all .2s cubic-bezier(.4,0,.2,1)}.task-detail-form input[type=text]:focus,.task-detail-form textarea:focus,.task-detail-form select:focus,.task-detail-form input[type=date]:focus{background:#fff;border-color:#11182747;outline:none;box-shadow:0 0 0 3px #1118270f,0 6px 16px #00000014}.task-detail-form textarea{resize:vertical;min-height:120px;line-height:1.6}.add-subtask-form{align-items:stretch;gap:8px;margin-top:12px;display:flex}.task-detail-form .add-subtask-form input[type=text]{flex:1;box-sizing:border-box!important;width:auto!important;height:auto!important;min-height:auto!important;padding:12px 14px!important;font-size:14px!important}.empty-subtasks-message{color:#9ca3af;margin:0;font-size:13px;font-weight:500}.task-detail-meta-line{color:#6b7280;letter-spacing:.1px;background:#fff9;border:1px dashed #6b72805c;border-radius:10px;margin:4px 0 0;padding:12px 14px;font-size:12px;line-height:1.6}.task-detail-submit-row{margin-top:8px;padding:0}.task-detail-submit-row .btn-primary{letter-spacing:.2px;border-radius:12px;width:100%;height:46px;font-size:14px}.btn-add-subtask{cursor:pointer;background:#000;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;min-height:40px;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 8px #00000026}.btn-add-subtask:hover{background:#1a1a1a;transform:scale(1.05);box-shadow:0 4px 12px #00000040}.btn-add-subtask:active{transform:scale(.95)}.btn-add-subtask svg{color:#fff}.subtask-item{background:0 0;border:1px solid #0000000f;border-radius:10px;align-items:center;gap:10px;margin-bottom:6px;padding:10px 12px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.subtask-item:hover{background:#00000005;border-color:#0000001a;transform:translate(2px)}.subtask-check-container{cursor:pointer;flex-shrink:0;display:inline-block;position:relative}.subtask-checkbox{opacity:0;cursor:pointer;width:20px;height:20px;position:absolute}.subtask-checkmark{background:#fff;border:1.5px solid #d9d9d9;border-radius:6px;justify-content:center;align-items:center;width:20px;height:20px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.subtask-checkmark svg{opacity:0;transition:all .2s cubic-bezier(.4,0,.2,1);transform:scale(0)}.subtask-check-container:hover .subtask-checkmark{border-color:#52c41a}.subtask-checkbox:checked~.subtask-checkmark{background:#f6ffed;border-color:#52c41a}.subtask-checkbox:checked~.subtask-checkmark svg{opacity:1;transform:scale(1)}.subtask-text{cursor:pointer;color:#1d1d1f;-webkit-user-select:none;user-select:none;letter-spacing:-.2px;flex:1;font-size:14px;font-weight:400;line-height:1.5;transition:all .25s cubic-bezier(.4,0,.2,1)}.subtask-item.completed .subtask-text{color:#1d1d1f66;-webkit-text-decoration:line-through #1d1d1f40;text-decoration:line-through #1d1d1f40;text-decoration-thickness:1px}.subtask-item.completed{background:#52c41a05;border-color:#52c41a1a}.subtask-item.completed:hover{background:#52c41a0a}.subtask-item.completed .subtask-checkmark{background:#f6ffed;border-color:#52c41a}.subtask-item.completed .subtask-checkmark svg{opacity:1;transform:scale(1)}.subtask-delete-btn{color:#86868b;cursor:pointer;opacity:0;background:0 0;border:none;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.subtask-item:hover .subtask-delete-btn{opacity:1}.subtask-delete-btn:hover{color:#ff3b30;background:#ff3b301a;transform:scale(1.1)}.subtask-delete-btn:active{transform:scale(.95)}#detail-assigned-users{flex-direction:column;gap:16px;display:flex}.user-search-wrapper{width:100%;position:relative}.user-search-input-wrapper{position:relative}.user-search-input-wrapper .search-icon{color:#0006;pointer-events:none;z-index:1;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.user-search-input{color:#000;box-sizing:border-box;background:#00000008;border:1px solid #0000;border-radius:10px;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;transition:all .2s cubic-bezier(.4,0,.2,1);padding:12px 16px 12px 44px!important}.user-search-input:focus{background:#ffffffe6;border-color:#0003;outline:none;box-shadow:0 0 0 3px #0000000d,0 2px 8px #00000014}.user-search-input::placeholder{color:#0006}.user-search-results{z-index:100;background:#fff;border-radius:12px;max-height:280px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 0 0 1px #0000000a,0 8px 24px #0000001f}.user-search-result{cursor:pointer;border-bottom:1px solid #0000000a;align-items:center;gap:12px;padding:12px 16px;transition:background .15s;display:flex}.user-search-result:last-child{border-bottom:none}.user-search-result:hover{background:#00000008}.user-search-result:active{background:#0000000f}.assigned-users-list{z-index:30;flex-wrap:wrap;gap:10px;display:flex;position:relative;overflow:visible}.no-users-assigned{color:#0006;margin:0;font-size:14px;font-style:italic}.user-pill{z-index:1;background:linear-gradient(135deg,#fff 0%,#f8f9fa 100%);border:1.5px solid #00000014;border-radius:14px;flex-wrap:wrap;align-items:center;gap:12px;padding:8px 12px 8px 8px;font-size:13px;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:visible;box-shadow:0 2px 4px #0000000a,inset 0 0 0 1px #ffffff80}.user-pill.menu-open{z-index:120}.user-pill:before{content:"";opacity:0;background:linear-gradient(90deg,#0000 0%,#0000000d 50%,#0000 100%);height:2px;transition:opacity .25s;position:absolute;top:0;left:0;right:0}.user-pill:hover{background:linear-gradient(135deg,#fff 0%,#f0f1f3 100%);border-color:#0000001f;transform:translateY(-2px);box-shadow:0 4px 12px #00000014,0 2px 4px #0000000f,inset 0 0 0 1px #fffc}.user-pill:hover:before{opacity:1}.user-avatar{color:#fff;letter-spacing:.5px;background:linear-gradient(135deg,#000 0%,#1a1a1a 50%,#2d2d2d 100%);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 6px #0003,0 1px 2px #00000026,inset 0 0 0 2px #ffffff1a}.user-pill:hover .user-avatar{transform:scale(1.05)rotate(-2deg);box-shadow:0 3px 10px #00000040,0 2px 4px #0003,inset 0 0 0 2px #ffffff26}.user-info-compact{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.user-pill .user-name{color:#1d1d1f;letter-spacing:-.3px;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;line-height:1.2;overflow:hidden}.user-column{color:#1d1d1f;cursor:pointer;letter-spacing:.3px;text-transform:uppercase;background:linear-gradient(135deg,#0000000a 0%,#0000000f 100%);border:1px solid #00000014;border-radius:7px;align-items:center;gap:5px;max-width:fit-content;padding:4px 8px;font-size:11px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex;position:relative;overflow:hidden}.user-column:before{content:"";opacity:.4;background:currentColor;width:3px;height:100%;transition:all .2s;position:absolute;top:0;left:0}.user-column:hover{color:#000;background:linear-gradient(135deg,#00000014 0%,#0000001a 100%);transform:translate(2px);box-shadow:0 2px 6px #00000014,inset 0 0 0 1px #0000000d}.user-column:hover:before{opacity:.6;width:4px}.user-column:active{transform:translate(1px)scale(.97)}.user-column svg{opacity:.7;flex-shrink:0;transition:opacity .2s}.user-column[type=button]{cursor:pointer;border:1px solid #00000014;font-family:inherit}.user-column:hover svg{opacity:1}.user-pill .remove-user-btn{cursor:pointer;background:#0000000d;border:1px solid #00000014;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden}.user-pill .remove-user-btn:before{content:"";opacity:0;background:linear-gradient(135deg,#ff3b30 0%,#ff2d1f 100%);transition:opacity .2s;position:absolute;inset:0}.user-pill .remove-user-btn:hover{border-color:#0000;transform:scale(1.1)rotate(90deg);box-shadow:0 2px 8px #ff3b304d,0 0 0 2px #ff3b301a}.user-pill .remove-user-btn:hover:before{opacity:1}.user-pill .remove-user-btn:active{transform:scale(1)rotate(90deg)}.user-pill .remove-user-btn svg{color:#00000080;z-index:1;transition:all .2s;position:relative}.user-pill .remove-user-btn:hover svg{color:#fff;transform:scale(1.1)}.assignee-column-dropdown{z-index:999;background:#fff;border:1px solid #0f172a24;border-radius:12px;min-width:230px;max-width:min(320px,85vw);max-height:240px;padding:10px;position:absolute;top:calc(100% + 8px);left:0;overflow:auto;box-shadow:0 2px 8px #0f172a14,0 16px 30px #0f172a29}.assignee-column-empty{color:#64748b;padding:6px 4px;font-size:13px;font-weight:500}.assignee-column-list{flex-direction:column;gap:4px;display:flex}.assignee-column-item{color:#0f172a;text-align:left;cursor:pointer;background:#f8fafc;border:0;border-radius:8px;width:100%;padding:8px 10px;font-size:13px;font-weight:600;line-height:1.2;transition:background-color .12s,color .12s}.assignee-column-item:hover{background:#e2e8f0}.assignee-column-item.active{color:#fff;background:#0f172a}.column-selector-dropdown{-webkit-backdrop-filter:blur(20px);z-index:10000;background:#fffffffa;border-radius:14px;min-width:220px;max-height:340px;padding:8px;animation:.25s cubic-bezier(.4,0,.2,1) dropdownSlideIn;position:fixed;overflow:hidden;box-shadow:0 0 0 1px #0000000f,0 12px 32px #0000002e,0 4px 12px #0000001f}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}.column-selector-dropdown:before{content:"Mover a columna";color:#86868b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #0000000f;margin:0 -8px 6px;padding:8px 12px 6px;font-size:11px;font-weight:700;display:block}.column-selector-dropdown>div{max-height:280px;overflow-y:auto}.column-selector-dropdown::-webkit-scrollbar{width:6px}.column-selector-dropdown::-webkit-scrollbar-track{background:0 0;margin:8px 0}.column-selector-dropdown::-webkit-scrollbar-thumb{background:#00000026;border-radius:3px}.column-selector-dropdown::-webkit-scrollbar-thumb:hover{background:#00000040}.column-option{cursor:pointer;color:#1d1d1f;letter-spacing:-.1px;border-radius:8px;align-items:center;gap:10px;margin-bottom:3px;padding:10px 12px;font-size:13px;font-weight:600;transition:all .15s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.column-option:last-child{margin-bottom:0}.column-option:before{content:"";background:currentColor;border-radius:0 2px 2px 0;width:3px;height:0;transition:height .2s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;left:0;transform:translateY(-50%)}.column-option:hover{background:linear-gradient(135deg,#0000000d 0%,#00000012 100%);padding-left:16px;transform:translate(4px)}.column-option:hover:before{height:60%}.column-option:active{transform:translate(2px)scale(.98)}.column-option.active{color:#000;background:linear-gradient(135deg,#00000014 0%,#0000001a 100%);font-weight:700}.column-option.active:after{content:"✓";color:#000;margin-left:auto;font-size:14px;font-weight:900}.column-option svg{color:currentColor;opacity:.7;flex-shrink:0;width:14px;height:14px;transition:opacity .15s}.column-option:hover svg{opacity:1}.column-option .column-name{text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:13px;overflow:hidden}.user-info{flex:1;min-width:0}.user-info .user-name{color:#000;margin-bottom:2px;font-size:15px;font-weight:600}.user-info .user-email{color:#00000080;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.column-content.drag-over{background:#00000005;border-radius:12px;box-shadow:inset 0 0 0 2px #0000001a}.drop-position-indicator{pointer-events:none;height:16px;margin:2px 0 6px;position:relative}.drop-position-indicator:before{content:"";background:linear-gradient(90deg,#0f172a 0%,#334155 50%,#0f172a 100%);border-radius:999px;height:3px;position:absolute;top:50%;left:12px;right:12px;transform:translateY(-50%);box-shadow:0 0 0 3px #0f172a1f}.kanban-modal{z-index:12000;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.kanban-modal.active{display:flex}.kanban-modal-overlay{-webkit-backdrop-filter:blur(20px);z-index:0;background:#0003;width:100%;height:100%;position:absolute;top:0;left:0}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.96)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.kanban-modal-content{z-index:1;background:#fffffffa;border-radius:20px;flex-direction:column;width:90%;max-width:480px;max-height:90vh;animation:.25s cubic-bezier(.4,0,.2,1) modalFadeIn;display:flex;position:relative;overflow:hidden;box-shadow:0 0 0 1px #0000000a,0 20px 60px #00000026,0 5px 15px #00000014}.kanban-modal-content.kanban-modal-large{max-width:680px}.kanban-modal-header{background:0 0;border-bottom:none;flex-shrink:0;justify-content:space-between;align-items:center;padding:32px 32px 24px;display:flex}.kanban-modal-header h2{color:#000;letter-spacing:-.8px;margin:0;font-size:28px;font-weight:700;line-height:1.2}.kanban-modal-close{cursor:pointer;background:#0000000f;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;margin-left:16px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.kanban-modal-close:hover{background:#0000001a;transform:scale(1.1)}.kanban-modal-close:active{transform:scale(.95)}.kanban-modal-close svg{color:#000;width:18px;height:18px}.kanban-modal-body{flex:1;padding:0 32px 32px;overflow-y:auto}.kanban-modal-body::-webkit-scrollbar{width:4px}.kanban-modal-body::-webkit-scrollbar-track{background:0 0}.kanban-modal-body::-webkit-scrollbar-thumb{background:#0000001a;border-radius:2px}.kanban-modal-body::-webkit-scrollbar-thumb:hover{background:#00000026}.kanban-modal-footer{background:0 0;border-top:none;flex-shrink:0;justify-content:flex-end;gap:12px;padding:24px 32px 32px;display:flex}.form-group label{color:#000;letter-spacing:-.2px;text-transform:uppercase;opacity:.6;margin-bottom:8px;font-size:13px;font-weight:600;display:block}.form-group input[type=text],.form-group input[type=email],.form-group input[type=date],.form-group input[type=color],.form-group select,.form-group textarea{color:#000;box-sizing:border-box;background:#00000008;border:1px solid #0000;border-radius:10px;width:100%;padding:16px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;transition:all .2s cubic-bezier(.4,0,.2,1)}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group input[type=date]:focus,.form-group select:focus,.form-group textarea:focus{background:#ffffffe6;border-color:#0003;outline:none;box-shadow:0 0 0 3px #0000000d,0 2px 8px #00000014}.form-group input[type=text]:hover:not(:focus),.form-group input[type=email]:hover:not(:focus),.form-group input[type=date]:hover:not(:focus),.form-group select:hover:not(:focus),.form-group textarea:hover:not(:focus){background:#0000000d;border-color:#00000014}.form-group textarea{resize:vertical;min-height:120px;line-height:1.5}.form-group input[type=color]{cursor:pointer;height:48px;padding:4px}.form-group input[type=color]::-webkit-color-swatch-wrapper{padding:0}.form-group input[type=color]::-webkit-color-swatch{border:none;border-radius:8px}.form-group select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%231d1d1f' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;padding-right:44px}.btn{cursor:pointer;letter-spacing:-.3px;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-width:100px;padding:12px 24px;font-size:15px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:active{transform:scale(.96)}.btn-primary{color:#fff;background:#000;box-shadow:0 2px 8px #00000026}.btn-primary:hover{background:#1a1a1a;transform:translateY(-1px);box-shadow:0 4px 12px #00000040}.btn-primary:active{transform:scale(.96);box-shadow:0 1px 4px #0003}.btn-secondary{color:#000;background:#0000000f;border:none}.btn-secondary:active{background:#00000026}.btn-danger{color:#fff;background:#ff3b30;box-shadow:0 2px 8px #ff3b3040}.btn-danger:hover{background:#ff2d1f;transform:translateY(-1px);box-shadow:0 4px 12px #ff3b3059}.btn-danger:active{transform:scale(.96);box-shadow:0 1px 4px #ff3b304d}.btn-small{min-width:80px;padding:8px 16px;font-size:14px}.kanban-modal-footer .btn{min-width:110px;height:44px}.boards-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-top:20px;display:grid}.board-card{background:#f5f5f7;border:1px solid #e5e5ea;border-radius:12px;padding:20px;transition:all .2s}.board-card:hover{background:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.board-card h4{color:#1d1d1f;margin:0 0 8px;font-size:16px;font-weight:700}.board-card p{color:#86868b;margin:0 0 16px;font-size:13px;line-height:1.5}.board-card-actions{gap:8px;display:flex}.kanban-modal-content.kanban-modal-column{max-width:520px;animation:.35s cubic-bezier(.4,0,.2,1) modalSlideUp}.kanban-modal-content.kanban-modal-confirm{max-width:460px}.kanban-confirm-body{padding-bottom:8px}.kanban-confirm-message{color:#1d1d1f;margin:0;font-size:15px;line-height:1.5}@keyframes modalSlideUp{0%{opacity:0;transform:scale(.94)translateY(30px)}to{opacity:1;transform:scale(1)translateY(0)}}.kanban-modal-header-content{flex:1}.kanban-modal-subtitle{color:#86868b;letter-spacing:0;margin:6px 0 0;font-size:14px;font-weight:400;animation:.4s cubic-bezier(.4,0,.2,1) .1s both fadeInUp}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.column-preview-card{background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border-radius:16px;margin-bottom:28px;padding:20px;transition:all .3s cubic-bezier(.4,0,.2,1);animation:.4s cubic-bezier(.4,0,.2,1) .15s both fadeInUp;box-shadow:0 0 0 1px #0000000f,0 8px 24px #00000014}.column-preview-header{border-bottom:1px solid #0000000f;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.column-preview-color{background:#3498db;border-radius:2px;width:4px;height:32px;transition:background-color .3s;box-shadow:0 2px 8px #3498db4d}.column-preview-title{color:#1d1d1f;letter-spacing:-.3px;flex:1;font-size:17px;font-weight:700;transition:color .3s}.column-preview-body{flex-direction:column;gap:10px;display:flex}.preview-task-card{background:#fff;border-radius:10px;height:60px;position:relative;overflow:hidden;box-shadow:0 0 0 1px #0000000a,0 2px 6px #0000000f}.preview-task-card:before{content:"";background:linear-gradient(90deg,#00000014 0%,#00000008 100%);border-radius:4px;width:60%;height:12px;position:absolute;top:12px;left:12px}.preview-task-card:after{content:"";background:linear-gradient(90deg,#0000000d 0%,#00000005 100%);border-radius:4px;width:40%;height:10px;position:absolute;top:32px;left:12px}.kanban-modal-column .form-group{animation:.4s cubic-bezier(.4,0,.2,1) both fadeInUp}.kanban-modal-column .form-group:nth-child(2){animation-delay:.2s}.kanban-modal-column .form-group:nth-child(3){animation-delay:.25s}.kanban-modal-column .form-group label{color:#1d1d1f;letter-spacing:-.1px;text-transform:none;opacity:.85;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.kanban-modal-column .form-group label svg{opacity:.6;width:16px;height:16px}.input-hint{color:#86868b;margin-top:8px;font-size:12px;line-height:1.4}.color-picker-wrapper{flex-direction:column;gap:16px;display:flex}.color-picker-wrapper input[type=color]{cursor:pointer;background:#00000008;border:2px solid #00000014;border-radius:12px;height:56px;padding:6px;transition:all .2s}.color-picker-wrapper input[type=color]:hover{background:#0000000d;border-color:#00000026;transform:translateY(-1px);box-shadow:0 4px 12px #00000014}.color-picker-wrapper input[type=color]:focus{border-color:#000;outline:none;box-shadow:0 0 0 4px #0000000f}.color-picker-wrapper input[type=color]::-webkit-color-swatch-wrapper{border-radius:8px;padding:0}.color-picker-wrapper input[type=color]::-webkit-color-swatch{border:none;border-radius:8px;box-shadow:inset 0 0 0 1px #0000001a}.color-presets{grid-template-columns:repeat(8,1fr);gap:10px;display:grid}.color-preset{aspect-ratio:1;cursor:pointer;border:2px solid #0000;border-radius:10px;width:100%;transition:all .2s cubic-bezier(.4,0,.2,1);position:relative;box-shadow:0 0 0 1px #00000014,0 2px 6px #00000014}.color-preset:hover{z-index:1;transform:scale(1.15)translateY(-2px);box-shadow:0 0 0 2px #00000026,0 6px 16px #00000026}.color-preset:active{transform:scale(1.05)}.color-preset[data-color=\#3498db]{background:#3498db}.color-preset[data-color=\#2ecc71]{background:#2ecc71}.color-preset[data-color=\#e74c3c]{background:#e74c3c}.color-preset[data-color=\#f39c12]{background:#f39c12}.color-preset[data-color=\#9b59b6]{background:#9b59b6}.color-preset[data-color=\#1abc9c]{background:#1abc9c}.color-preset[data-color=\#34495e]{background:#34495e}.color-preset[data-color=\#e91e63]{background:#e91e63}.color-preset.selected{border-color:#000;box-shadow:0 0 0 3px #0000001a,0 4px 12px #00000026}.color-preset.selected:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 4px #0003}.color-preset.selected:before{content:"✓";color:#000;z-index:1;font-size:11px;font-weight:900;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.kanban-modal-column .kanban-modal-footer{animation:.4s cubic-bezier(.4,0,.2,1) .3s both fadeInUp}.kanban-modal-column .kanban-modal-footer .btn{border-radius:12px;align-items:center;gap:8px;height:48px;padding:0 28px;font-size:15px;font-weight:600;display:flex}.kanban-modal-column .kanban-modal-footer .btn svg{flex-shrink:0;width:16px;height:16px}.kanban-modal-column input[type=text]{border-radius:12px;padding:16px 18px;font-size:17px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.kanban-modal-column input[type=text]:focus{background:#fff;transform:translateY(-1px);box-shadow:0 0 0 3px #0000000f,0 4px 16px #00000014}@media (max-width:1024px){.btn-header.btn-board-switch{min-width:210px}}@media (max-width:768px){.kanban-main-content{height:calc(100dvh - env(safe-area-inset-bottom));min-height:calc(100vh - env(safe-area-inset-bottom))}.kanban-header{padding:12px 14px}.kanban-header-content{border-radius:14px;flex-direction:column;align-items:stretch;gap:16px;padding:8px}.kanban-header-left{width:100%}.kanban-header-right{justify-content:flex-end;width:100%}.board-icon{border-radius:12px;width:48px;height:48px}.board-icon svg{width:28px;height:28px}.btn-header.btn-board-switch{width:100%;min-width:0;max-width:none}.board-menu-wrapper{width:100%}.kanban-container{padding:12px}.kanban-container:before{border-radius:16px;inset:8px}.kanban-column{width:292px;min-width:292px}.task-detail-panel{border-left:none;width:100%;right:-100%}.task-detail-header{padding:22px 18px 16px}.task-detail-header h3{font-size:22px}.task-detail-subtitle{font-size:12px}.task-detail-body{padding:14px}.task-detail-form .form-group{margin-bottom:12px;padding:14px}.kanban-modal-content.kanban-modal-column{max-width:92%;margin:0 auto}.color-presets{grid-template-columns:repeat(4,1fr);gap:12px}}@media (max-width:480px){.board-icon{width:44px;height:44px}.board-icon svg{width:24px;height:24px}.board-selector{padding:6px 36px 6px 10px;font-size:16px}.kanban-board{gap:12px}.kanban-column{width:min(87vw,280px);min-width:min(87vw,280px)}.task-detail-header{gap:10px}.task-detail-actions{gap:8px}.btn-icon{width:34px;height:34px}}.cc-references-list{flex-direction:column;gap:8px;display:flex}.no-references{color:#86868b;font-size:14px;font-style:italic}.cc-reference-pill{background:#f5f5f7;border-left:3px solid #3b82f6;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;transition:all .2s;display:flex;position:relative}.cc-reference-pill:hover{background:#e8e8ed;transform:translate(2px)}.pill-icon{flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:20px;display:flex}.pill-content{cursor:pointer;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.pill-name{color:#1d1d1f;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.pill-type{color:#86868b;font-size:12px}.pill-remove{cursor:pointer;opacity:0;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:6px;transition:all .2s;display:flex}.cc-reference-pill:hover .pill-remove{opacity:1}.pill-remove:hover{background:#ef44441a}.pill-remove svg{stroke:#ef4444}.add-cc-reference-form{position:relative}#cc-reference-search{background:#fff;border:1.5px solid #d2d2d7;border-radius:8px;width:100%;padding:10px 12px;font-size:14px;transition:all .2s}#cc-reference-search:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.cc-reference-results{z-index:1000;background:#fff;border:1px solid #e5e5ea;border-radius:10px;max-height:300px;margin-top:4px;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 12px #00000014,0 2px 4px #0000000a}.cc-search-result{cursor:pointer;border-bottom:1px solid #f5f5f7;align-items:center;gap:12px;padding:12px 14px;transition:all .15s;display:flex}.cc-search-result:last-child{border-bottom:none}.cc-search-result:hover{background:#f5f5f7}.result-icon{background:#3b82f61a;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:24px;display:flex}.result-info{flex:1;min-width:0}.result-name{color:#1d1d1f;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.result-type{color:#86868b;margin-top:2px;font-size:12px}.no-results{text-align:center;color:#86868b;padding:20px;font-size:14px}@media (max-width:768px){.cc-reference-pill{padding:8px 10px}.pill-icon{width:28px;height:28px;font-size:18px}.pill-name{font-size:13px}.pill-type{font-size:11px}}.column-header[draggable=true]{cursor:grab;transition:all .2s cubic-bezier(.4,0,.2,1)}.column-header[draggable=true]:active{cursor:grabbing!important}.kanban-column.dragging-column{opacity:.5;transform:scale(.98);box-shadow:0 8px 24px #00000026}.kanban-column.drag-over-column{border:2px solid #007aff80;box-shadow:0 0 0 4px #007aff1a}.kanban-column.drop-indicator-before{position:relative}.kanban-column.drop-indicator-before:before{content:"";z-index:100;background:linear-gradient(#0000 0%,#007affcc 10%,#007aff 50%,#007affcc 90%,#0000 100%);border-radius:2px;width:4px;animation:1.5s ease-in-out infinite pulseGlow;position:absolute;top:0;bottom:0;left:-14px;box-shadow:0 0 12px #007aff99,0 0 24px #007aff4d}.kanban-column.drop-indicator-after{position:relative}.kanban-column.drop-indicator-after:after{content:"";z-index:100;background:linear-gradient(#0000 0%,#007affcc 10%,#007aff 50%,#007affcc 90%,#0000 100%);border-radius:2px;width:4px;animation:1.5s ease-in-out infinite pulseGlow;position:absolute;top:0;bottom:0;right:-14px;box-shadow:0 0 12px #007aff99,0 0 24px #007aff4d}@keyframes pulseGlow{0%,to{opacity:.8;transform:scaleY(.98)}50%{opacity:1;transform:scaleY(1)}}:root{--kanban-bg:#f3f6fb;--kanban-surface:#fff;--kanban-surface-soft:#f8fafc;--kanban-border:#d9e2ec;--kanban-border-strong:#c8d3e1;--kanban-text:#0f172a;--kanban-muted:#52627a;--kanban-shadow-sm:0 6px 16px #0f172a0f;--kanban-shadow-md:0 14px 34px #0f172a1a}.kanban-page{background:radial-gradient(circle at 0% 0%, #e3eaf373 0%, transparent 38%), radial-gradient(circle at 100% 100%, #d8e2ee6b 0%, transparent 36%), linear-gradient(170deg, #eef2f8 0%, var(--kanban-bg) 48%, #edf2f7 100%)}.kanban-header{border-bottom:1px solid var(--kanban-border);background:#ffffffe0;box-shadow:0 8px 20px #0f172a0f}.kanban-header-content{background:#ffffffd1;border:1px solid #c8d3e1b3;border-radius:14px;box-shadow:inset 0 1px #ffffffe6}.board-icon{background:linear-gradient(145deg,#0f172a 0%,#1f2937 100%);border-radius:12px;width:46px;height:46px;box-shadow:0 8px 18px #0f172a33}.board-icon:hover{transform:translateY(-1px);box-shadow:0 10px 22px #0f172a3d}.board-title-static{color:var(--kanban-text);font-size:20px;font-weight:700}.btn-header.btn-board-switch{background:var(--kanban-surface);border:1px solid var(--kanban-border-strong);box-shadow:var(--kanban-shadow-sm)}.btn-header.btn-board-switch:hover{border-color:#9fb2c8;box-shadow:0 10px 22px #0f172a1a}.board-menu-list{border-color:var(--kanban-border-strong);background:var(--kanban-surface);box-shadow:0 24px 40px #0f172a29}.kanban-container{padding:18px 22px 24px}.kanban-container:before{content:none}.kanban-board{align-items:stretch;gap:16px;width:100%;min-width:100%;padding:4px 4px 18px}.kanban-column{border:1px solid var(--kanban-border);width:auto;min-width:300px;box-shadow:var(--kanban-shadow-md);background:linear-gradient(#fff 0%,#fbfdff 100%);border-radius:16px;flex:320px}.kanban-column:hover{transform:translateY(-1px);box-shadow:0 18px 38px #0f172a21}.column-header{border-bottom:1px solid #e3ebf4;padding:14px 14px 12px}.column-title{letter-spacing:-.1px;color:#10233f;font-size:14px}.column-actions{opacity:1;align-items:center;gap:6px}.column-actions .btn-icon{border:1px solid #0000;border-radius:9px;width:30px;height:30px}.column-actions .btn-icon:hover{background:#f2f6fb;border-color:#d6e0ec}.column-actions .status-badge{color:#f8fafc;box-shadow:none;background:#1e293b;align-self:center}.column-content{gap:8px;padding:10px 10px 6px}.kanban-card{background:linear-gradient(#fff 0%,#f9fbfe 100%);border:1px solid #dbe5f0;border-radius:12px;padding:14px;box-shadow:0 6px 14px #0f172a0f}.kanban-card:hover{border-color:#becddd;transform:translateY(-1px);box-shadow:0 12px 22px #0f172a1a}.card-title{color:#14243d;margin-bottom:10px;font-size:14px;line-height:1.45}.card-footer{gap:6px;margin-top:10px}.card-assigned,.card-subtasks,.card-due-date{color:var(--kanban-muted);background:#eef3f9;border:1px solid #dae4ef;padding:5px 8px;font-size:11px}.kanban-card.completed{opacity:.72;background:#f4f7fb;border-color:#d8e1eb}.add-task-btn{color:#2f445f;background:#f8fbff;border:1px dashed #b8c7d8;border-radius:11px;margin:8px 10px 10px}.add-task-btn:hover{color:#19324f;background:#fff;border-color:#8aa2bb}.btn-add-column{background:#f8fbff;border:1px solid #c9d8e8;border-radius:16px;width:58px;height:58px;box-shadow:0 10px 18px #33415524}.btn-add-column:hover{background:#fff;border-color:#94a8bd;transform:translateY(-1px)}.task-detail-panel{background:linear-gradient(#fff 0%,#f7f9fc 100%);border-left:1px solid #d9e2ec;width:min(46vw,760px);max-width:760px;right:-46vw;box-shadow:-12px 0 34px #0f172a24}.task-detail-header{background:#ffffffeb;border-bottom:1px solid #dde6f1}.task-detail-heading{flex:1;min-width:0;max-width:100%}.task-detail-actions{flex-shrink:0;margin-left:12px}.task-detail-header h3{color:#10233f;font-size:23px}.task-detail-title-input{color:#10233f;letter-spacing:-.3px;background:0 0;border:1px solid #0000;border-radius:10px;width:100%;max-width:100%;margin:0;padding:6px 8px;font-size:23px;font-weight:700;line-height:1.2;transition:border-color .2s,background-color .2s;display:block}.task-detail-title-input:hover{background:#0f172a0a}.task-detail-title-input:focus{background:#fff;border-color:#9ab0c6;outline:none}.task-detail-subtitle{color:#5f7088}.task-detail-form .form-group{background:#fff;border:1px solid #dbe5f0;border-radius:12px;box-shadow:0 3px 8px #0f172a0a}.task-detail-inline-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:14px;display:grid}.task-detail-inline-row .form-group{margin-bottom:0}.task-detail-form .form-group label{color:#495b73}.task-detail-form input[type=text],.task-detail-form textarea,.task-detail-form select,.task-detail-form input[type=date]{background:#f8fbff;border:1px solid #d6e1ee}.task-detail-form input[type=text]:focus,.task-detail-form textarea:focus,.task-detail-form select:focus,.task-detail-form input[type=date]:focus{border-color:#8fa7bf;box-shadow:0 0 0 3px #59738f24}.task-detail-form textarea.task-detail-description-input{resize:none;overflow-y:hidden}.btn-primary:focus-visible,.btn-secondary:focus-visible,.btn-icon:focus-visible,.btn-add-column:focus-visible,.add-task-btn:focus-visible{outline-offset:2px;outline:2px solid #2c4f7a}.card-footer{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.card-chip{color:#475569;white-space:nowrap;font-variant-numeric:tabular-nums;background:#eef3f9;border:1px solid #dae4ef;border-radius:999px;align-items:center;gap:6px;min-height:24px;padding:4px 8px;font-size:11px;font-weight:600;line-height:1;display:inline-flex}.card-chip svg{opacity:.92;flex-shrink:0;width:12px;height:12px}.card-assigned{justify-content:center;min-width:46px}.card-subtasks{letter-spacing:.1px}.card-due-date{transition:color .15s,background-color .15s,border-color .15s}.card-due-date.overdue{color:#b42318;background:#fee4e2;border-color:#fecdc8}.card-progress{background:#e7edf5;border:1px solid #d7e2ee;border-radius:999px;width:100%;height:6px;margin-top:8px;overflow:hidden}.card-progress-fill{border-radius:inherit;background:linear-gradient(90deg,#1d4ed8 0%,#0284c7 100%);width:0;height:100%;transition:width .25s}.kanban-card.completed .card-progress-fill{background:linear-gradient(90deg,#16a34a 0%,#059669 100%)}@media (max-width:768px){.kanban-column{width:286px;min-width:286px}.kanban-container{padding:10px}.task-detail-panel{border-left:none}.task-detail-inline-row{grid-template-columns:1fr;gap:10px;margin-bottom:12px}}.btn-secondary{color:#374151;cursor:pointer;letter-spacing:.02em;background:#fff;border:2px solid #e5e7eb;border-radius:8px;align-items:center;gap:10px;padding:12px 24px;font-size:14px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn-secondary:hover{background:#f9fafb;border-color:#d1d5db;transform:translateY(-1px)}.modal-footer .btn-primary{color:#fff!important;letter-spacing:.02em!important;background:linear-gradient(135deg,#000 0%,#1a1a1a 100%)!important;border:none!important;border-radius:8px!important;padding:12px 32px!important;font-size:14px!important;font-weight:600!important;box-shadow:0 4px 14px #00000040!important}.modal-footer .btn-primary:hover{background:linear-gradient(135deg,#1a1a1a 0%,#333 100%)!important;transform:translateY(-2px)!important;box-shadow:0 8px 24px #00000059!important}.briefings-controls{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;display:flex}.search-wrapper{flex:1;min-width:280px;position:relative}.search-icon{color:var(--text-secondary);pointer-events:none;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.search-input{background:#fff;border:2px solid #e5e7eb;border-radius:10px;width:100%;padding:12px 16px 12px 44px;font-size:14px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.search-input:focus{border-color:#111827;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #00000014}.filter-group{gap:12px;display:flex}.filter-select{cursor:pointer;color:#111827;background:#fff;border:2px solid #e5e7eb;border-radius:10px;min-width:180px;padding:12px 16px;font-size:14px;font-weight:600;transition:all .2s cubic-bezier(.4,0,.2,1)}.filter-select:hover{border-color:#d1d5db;transform:translateY(-1px)}.filter-select:focus{border-color:#111827;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #00000014}.briefings-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px;margin-bottom:32px;display:grid}.briefings-grid.is-empty{justify-content:center;align-items:center;min-height:360px;display:flex}.briefing-card{cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:28px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 1px 3px #0000000d}.briefing-card:before{content:"";background:linear-gradient(90deg,#000 0%,#1a1a1a 100%);width:100%;height:4px;transition:transform .3s;position:absolute;top:0;left:0;transform:scaleX(0)}.briefing-card:hover{border-color:#d1d5db;transform:translateY(-4px);box-shadow:0 10px 40px #0000001f}.briefing-card:hover:before{transform:scaleX(1)}.briefing-card-header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.briefing-card-title{color:#111827;letter-spacing:-.02em;flex:1;margin:0;font-size:18px;font-weight:700;line-height:1.4}.briefing-card-status{white-space:nowrap;text-transform:uppercase;letter-spacing:.08em;border-radius:20px;padding:6px 14px;font-size:11px;font-weight:700;box-shadow:0 2px 8px #0000001a}.briefing-card-status.borrador{color:#374151;background:linear-gradient(135deg,#f3f4f6 0%,#e5e7eb 100%)}.briefing-card-status.en_proceso{color:#fff;background:linear-gradient(135deg,#000 0%,#1a1a1a 100%)}.briefing-card-status.completado{color:#111827;background:linear-gradient(135deg,#fff 0%,#f9fafb 100%);border:2px solid #111827;box-shadow:0 2px 8px #00000026}.briefing-card-client{color:#6b7280;align-items:center;gap:8px;margin-bottom:12px;font-size:13px;display:flex}.briefing-card-client svg{width:15px;height:15px}.briefing-card-meta{color:#9ca3af;border-top:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding-top:16px;font-size:12px;display:flex}.briefing-card-date{align-items:center;gap:6px;display:flex}.briefing-card-date svg{width:14px;height:14px}.briefing-card-actions{gap:8px;display:flex}.briefing-card-action-btn{cursor:pointer;color:#6b7280;background:#fff;border:2px solid #e5e7eb;border-radius:8px;justify-content:center;align-items:center;padding:8px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.briefing-card-action-btn:hover{color:#fff;background:linear-gradient(135deg,#000 0%,#1a1a1a 100%);border-color:#000;transform:translateY(-2px);box-shadow:0 4px 12px #0003}.briefing-card-action-btn svg{width:16px;height:16px}.modal{z-index:9999;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.modal.active{animation:.3s ease-out fadeIn;display:flex}.modal-overlay{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#000000bf;width:100%;height:100%;animation:.3s ease-out fadeIn;position:absolute;top:0;left:0}.modal-content{z-index:10000;background:#fff;border:1px solid #0000001a;border-radius:16px;animation:.4s cubic-bezier(.16,1,.3,1) slideUp;position:relative;box-shadow:0 25px 80px #0006}.modal-header{background:linear-gradient(#fafafa 0%,#fff 100%);border-bottom:1px solid #e5e7eb;border-radius:16px 16px 0 0;justify-content:space-between;align-items:flex-start;padding:36px 40px 28px;display:flex}.modal-header h2{color:#111827;letter-spacing:-.03em;margin:0;font-size:28px;font-weight:700}.modal-close{cursor:pointer;color:#6b7280;background:#fff;border:2px solid #e5e7eb;border-radius:10px;justify-content:center;align-items:center;margin-left:20px;padding:10px;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex}.modal-close:hover{color:#fff;background:#111827;border-color:#111827;transform:rotate(90deg)}.modal-footer{background:linear-gradient(#fff 0%,#fafafa 100%);border-top:1px solid #e5e7eb;border-radius:0 0 16px 16px;justify-content:flex-end;gap:16px;padding:28px 40px;display:flex}.modal-briefing{flex-direction:column;width:min(92vw,980px);max-width:980px;max-height:90vh;display:flex;overflow:hidden}.modal-subtitle{color:#6b7280;margin:8px 0 0;font-size:14px;font-weight:400;line-height:1.5}#briefingModalBody,#briefingViewBody{box-sizing:border-box;background:#f8f9fa;flex:1;overflow-y:auto;padding:32px 48px!important}.briefing-header-section{background:linear-gradient(135deg,#fff 0%,#f9fafb 100%);border:2px solid #e5e7eb;border-radius:12px;margin-bottom:28px;padding:32px;box-shadow:0 2px 8px #0000000a}.briefing-header-section .form-group label{color:#111827;text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px;font-size:12px;font-weight:600}.briefing-title-input{color:#111827;letter-spacing:-.02em;background:#fff;border:2px solid #e5e7eb;border-radius:10px;width:100%;padding:14px 18px;font-size:20px;font-weight:700;transition:all .2s cubic-bezier(.4,0,.2,1)}.briefing-title-input:focus{border-color:#111827;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #00000014}.briefing-header-section .select-input{background:#fff;border:2px solid #e5e7eb;border-radius:10px;padding:12px 16px;font-weight:600}.briefing-header-section .select-input:focus{border-color:#111827;box-shadow:0 0 0 4px #00000014}.briefing-sections{flex-direction:column;gap:20px;display:flex}.briefing-section{background:#fff;border:2px solid #e5e7eb;border-radius:12px;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden;box-shadow:0 1px 3px #0000000d}.briefing-section:hover{border-color:#d1d5db;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.briefing-section .section-header{cursor:pointer;background:linear-gradient(135deg,#fafafa 0%,#fff 100%);border-bottom:2px solid #e5e7eb;justify-content:space-between;align-items:center;padding:20px 28px;transition:all .2s;display:flex}.briefing-section .section-header:hover{background:linear-gradient(135deg,#f3f4f6 0%,#fafafa 100%)}.briefing-section .section-header h3{color:#111827;letter-spacing:-.01em;margin:0;font-size:15px;font-weight:700}.briefing-section .section-content{box-sizing:border-box;background:#fff;padding:32px 48px!important}.view-field{border-bottom:1px dashed #e5e7eb;grid-template-columns:260px 1fr;gap:16px;padding:10px 0;display:grid}.view-field:last-child{border-bottom:none}.view-field-label{color:#6b7280;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}.view-field-value{color:#111827;white-space:pre-wrap;font-size:14px;line-height:1.6}.form-group:last-child{margin-bottom:0}.form-group label{color:#374151;letter-spacing:.01em;align-items:center;gap:8px;margin-bottom:10px;font-size:13px;font-weight:600;display:flex}.form-input,.form-textarea,.select-input{color:#111827;background:#fff;border:2px solid #e5e7eb;border-radius:8px;width:100%;padding:12px 16px;font-family:inherit;font-size:14px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1)}.form-input:focus,.form-textarea:focus,.select-input:focus{border-color:#111827;outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #00000014}.form-textarea{resize:vertical;min-height:100px;line-height:1.6}.form-row{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-bottom:24px;display:grid}.form-row:last-child{margin-bottom:0}.required{color:#ef4444;font-weight:600}.info-tooltip{cursor:help;color:#9ca3af;align-items:center;transition:color .15s;display:inline-flex;position:relative}.info-tooltip:hover{color:#111827}.info-tooltip svg{width:15px;height:15px}.info-tooltip:after{content:attr(data-tooltip);color:#fff;white-space:normal;opacity:0;visibility:hidden;pointer-events:none;z-index:1000;background:#111827;border-radius:2px;width:260px;max-width:90vw;padding:8px 12px;font-size:11px;font-weight:400;line-height:1.5;transition:all .15s;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000004d}.info-tooltip:before{content:"";opacity:0;visibility:hidden;z-index:1000;border:5px solid #0000;border-top-color:#111827;transition:all .15s;position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%)}.info-tooltip:hover:after,.info-tooltip:hover:before{opacity:1;visibility:visible}.form-group:first-child .info-tooltip:after{left:0;transform:translate(0)}.form-group:first-child .info-tooltip:before{left:20px;transform:translate(0)}.loading-state{color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 20px;font-size:14px;display:flex}.loader{border:3px solid var(--border-color);border-top-color:var(--secondary-color);border-radius:50%;width:40px;height:40px;animation:.8s linear infinite spin}.empty-state{text-align:center;flex-direction:column;justify-content:center;align-items:center;width:100%;max-width:520px;padding:60px 20px;display:flex}.empty-state-icon{width:80px;height:80px;color:var(--text-secondary);opacity:.3;margin:0 auto 20px}.empty-state h3{color:var(--text-primary);margin-bottom:8px;font-size:18px}.empty-state p{color:var(--text-secondary);margin-bottom:24px;font-size:14px}@media (max-width:768px){.briefings-grid{grid-template-columns:1fr}.briefings-controls{flex-direction:column;align-items:stretch}.search-wrapper{width:100%;min-width:auto}.filter-group,.filter-select{width:100%}.modal-briefing{border-radius:0;width:100vw;max-height:100vh}.briefing-header-section,#briefingModalBody,#briefingViewBody{padding:16px}.briefing-section .section-header{padding:12px 16px}.briefing-section .section-content{background:#fff;padding:20px 24px}.form-row{grid-template-columns:1fr}.view-field{grid-template-columns:1fr;gap:8px}.briefing-card-header{flex-direction:column;align-items:flex-start}.briefing-card-status{align-self:flex-start}.info-tooltip:after{width:240px;left:0;transform:translate(0)}.info-tooltip:before{left:20px;transform:translate(0)}}@media (max-width:480px){.briefing-card{padding:16px}.briefing-card-title{font-size:16px}.briefing-card-meta{flex-direction:column;align-items:flex-start;gap:8px}.briefing-title-input{padding:12px 16px;font-size:18px}.section-header h3{font-size:16px}}.confirm-modal.active{display:flex}.confirm-modal-content{z-index:10001;text-align:center;background:#fff;border-radius:16px;width:90vw;max-width:420px;padding:32px;animation:.3s ease-out slideUp;position:relative;box-shadow:0 20px 60px #0000004d}.confirm-modal-icon{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;font-size:32px;display:flex}.confirm-modal-icon.danger{background:var(--danger-light);color:var(--danger-color)}.confirm-modal-title{color:var(--text-primary);margin:0 0 12px;font-size:20px;font-weight:600}.confirm-modal-message{color:var(--text-secondary);margin:0 0 24px;font-size:14px;line-height:1.5}.confirm-modal-actions{justify-content:center;gap:12px;display:flex}.btn-confirm-cancel,.btn-confirm-action{cursor:pointer;transition:all var(--transition-speed);border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 24px;font-size:14px;font-weight:500;display:inline-flex}.btn-confirm-cancel{background:var(--border-color);color:var(--text-primary)}.btn-confirm-cancel:hover{background:#d1d5db}.btn-confirm-action{background:var(--danger-color);color:#fff}.toast{z-index:10002;background:#fff;border-radius:12px;align-items:center;gap:12px;min-width:300px;padding:16px 20px;animation:.3s ease-out slideInRight;display:none;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #00000026}.toast.show{display:flex}.toast-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;font-size:14px;display:flex}.toast-icon.success{background:var(--success-light);color:var(--success-color)}.toast-icon.error{background:var(--danger-light);color:var(--danger-color)}.toast-icon.warning{background:var(--warning-light);color:var(--warning-color)}#toastMessage{color:var(--text-primary);font-size:14px;font-weight:500}@keyframes slideInRight{0%{opacity:0;transform:translate(100px)}to{opacity:1;transform:translate(0)}}@media print{.modal-header,.modal-footer,.briefing-card-actions,.info-tooltip{display:none}.briefing-section{page-break-inside:avoid;box-shadow:none;border:1px solid #ddd}.briefing-header-section{color:#000;background:#fff;border:2px solid #ddd}}.cc-container{background:#f5f5f7;height:100vh;display:flex;position:relative;overflow:hidden}.cc-sidebar{background:#fff;border-right:1px solid #e5e5e5;flex-direction:column;width:280px;display:flex;overflow:hidden}.cc-sidebar-header{border-bottom:1px solid #e5e5e5;padding:20px}.cc-sidebar-header h2{color:#1d1d1f;align-items:center;gap:10px;margin:0;font-size:18px;font-weight:600;display:flex}.cc-sidebar-header h2 svg{width:20px;height:20px}.cc-quick-access{border-bottom:1px solid #e5e5e5;padding:15px 10px}.cc-section-title{color:#86868b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px;padding:5px 10px;font-size:11px;font-weight:600}.cc-menu-item{cursor:pointer;color:#1d1d1f;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;transition:all .2s;display:flex}.cc-menu-item svg{flex-shrink:0;width:18px;height:18px}.cc-menu-item span{font-size:13px;font-weight:400}.cc-menu-item:hover{background:#f5f5f7}.cc-menu-item.active{color:#fff;background:#007aff}.cc-folder-tree{flex:1;padding:15px 10px;overflow-y:auto}.cc-tree{margin:0;padding:0}.cc-tree-item{margin-bottom:2px;position:relative}.cc-tree-folder{cursor:pointer;color:#1d1d1f;-webkit-user-select:none;user-select:none;border-radius:6px;align-items:center;gap:6px;padding:6px 8px;transition:all .2s;display:flex}.cc-tree-folder svg{flex-shrink:0;width:16px;height:16px}.folder-toggle{cursor:pointer;color:#86868b;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;transition:all .2s;display:flex}.folder-toggle svg{transition:transform .3s;transform:rotate(0)}.folder-toggle.expanded svg{transform:rotate(90deg)}.folder-toggle:hover{color:#1d1d1f}.folder-toggle-spacer{flex-shrink:0;width:16px;height:16px}.cc-tree-folder .folder-icon{align-items:center;display:flex}.cc-tree-folder .folder-name{white-space:nowrap;text-overflow:ellipsis;flex:1;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:400;overflow:hidden}.cc-tree-folder .folder-count{color:#86868b;background:#f5f5f7;border-radius:10px;padding:2px 6px;font-size:11px}.cc-tree-folder.protected .folder-icon svg{color:#007aff}.cc-tree-folder:hover{background:#f5f5f7}.cc-tree-folder.active{color:#fff;background:#007aff}.cc-tree-folder.active .folder-toggle{color:#fff}.cc-tree-folder.active .folder-icon{color:#fff!important}.cc-tree-folder.active .folder-icon svg{stroke:#fff;color:#fff!important}.cc-tree-folder.active .folder-count{color:#fff;background:#fff3}.cc-tree-children{opacity:1;max-height:5000px;margin-left:20px;padding-left:0;transition:max-height .3s,opacity .2s;overflow:hidden}.cc-tree-item.collapsed>.cc-tree-children{opacity:0;max-height:0}.cc-sidebar-footer{border-top:1px solid #e5e5e5;padding:15px}.cc-sidebar-footer .btn{justify-content:center;align-items:center;gap:8px;font-size:14px;display:flex}.cc-main{flex-direction:column;flex:1;display:flex;overflow:hidden}.cc-toolbar{background:#fff;border-bottom:1px solid #e5e5e5;align-items:center;gap:20px;padding:12px 20px;display:flex}.cc-toolbar-left{flex:none}.cc-toolbar-center{flex:1;justify-content:center;display:flex}.cc-toolbar-right{flex:none;align-items:center;gap:10px;display:flex}.cc-new-resource-dropdown{position:relative}.btn-new-resource{color:#fff;cursor:pointer;background:linear-gradient(135deg,#007aff 0%,#0051d5 100%);border:none;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:flex;box-shadow:0 2px 8px #007aff4d}.btn-new-resource:hover{transform:translateY(-2px);box-shadow:0 4px 16px #007aff66}.btn-new-resource:active{transform:translateY(0)}.btn-new-resource svg{width:20px;height:20px}.new-resource-menu{opacity:0;visibility:hidden;z-index:1000;background:#fff;border:1px solid #e5e5e7;border-radius:12px;min-width:180px;transition:all .2s;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;transform:translateY(-10px);box-shadow:0 8px 24px #0000001f}.new-resource-menu.show{opacity:1;visibility:visible;transform:translateY(0)}.new-resource-item{cursor:pointer;color:#1d1d1f;align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.new-resource-item:hover{background:#f5f5f7}.new-resource-item:active{background:#e5e5e7}.new-resource-item svg{color:#007aff;width:18px;height:18px}.new-resource-item:not(:last-child){border-bottom:1px solid #f5f5f7}.cc-breadcrumb{align-items:center;gap:8px;font-size:13px;display:flex}.cc-breadcrumb-item{cursor:pointer;color:#1d1d1f;border-radius:4px;align-items:center;gap:6px;padding:4px 8px;transition:all .2s;display:flex}.cc-breadcrumb-item svg{width:16px;height:16px}.cc-breadcrumb-item:hover{background:#f5f5f7}.cc-breadcrumb-separator{color:#86868b}.cc-search{width:100%;max-width:400px;position:relative}.cc-search svg{color:#86868b;pointer-events:none;width:16px;height:16px;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.cc-search input{background:#f5f5f7;border:1px solid #d2d2d7;border-radius:8px;width:100%;padding:8px 12px 8px 36px;font-size:14px;transition:all .2s}.cc-search input:focus{background:#fff;border-color:#007aff;outline:none;box-shadow:0 0 0 3px #007aff1a}.cc-view-toggle{background:#f5f5f7;border-radius:8px;gap:4px;padding:4px;display:flex}.cc-view-btn{cursor:pointer;color:#86868b;background:0 0;border:none;border-radius:6px;padding:6px 10px;transition:all .2s}.cc-view-btn svg{width:18px;height:18px}.cc-view-btn:hover{color:#1d1d1f}.cc-view-btn.active{color:#007aff;background:#fff;box-shadow:0 1px 3px #0000001a}.cc-content{flex:1;padding:20px;overflow-y:auto}.cc-content-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;display:grid}.cc-content-list{flex-direction:column;gap:8px;display:flex}.cc-folder-item{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;align-items:center;padding:16px;transition:all .2s;display:flex;position:relative}.cc-folder-item:hover{border-color:#d2d2d7;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.cc-folder-item.protected:before{content:"🔒";font-size:12px;position:absolute;top:8px;right:8px}.cc-folder-icon{border-radius:12px;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:8px;font-size:32px;display:flex}.cc-folder-icon svg{width:40px;height:40px}.cc-folder-name{color:#1d1d1f;text-align:center;word-break:break-word;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:500;line-height:1.4}.cc-folder-meta{color:#86868b;margin-top:4px;font-size:11px}.cc-file-item{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;padding:16px;transition:all .2s;display:flex;position:relative}.cc-file-item:hover{border-color:#d2d2d7;transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.cc-file-icon{aspect-ratio:1;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;justify-content:center;align-items:center;width:100%;margin-bottom:12px;font-size:32px;display:flex}.cc-file-icon.type-idea{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%)}.cc-file-icon.type-hook{background:linear-gradient(135deg,#4facfe 0%,#00f2fe 100%)}.cc-file-icon.type-script{background:linear-gradient(135deg,#43e97b 0%,#38f9d7 100%)}.cc-file-icon.type-image{background:linear-gradient(135deg,#fa709a 0%,#fee140 100%)}.cc-file-icon.type-video{background:linear-gradient(135deg,#30cfd0 0%,#330867 100%)}.cc-file-icon.type-document{background:linear-gradient(135deg,#a8edea 0%,#fed6e3 100%)}.cc-file-icon.type-link{background:linear-gradient(135deg,#ff9a9e 0%,#fecfef 100%)}.cc-file-icon svg{color:#fff;width:32px;height:32px}.cc-video-preview{aspect-ratio:1;background:#000;border-radius:8px;width:100%;margin-bottom:12px;position:relative;overflow:hidden}.cc-video-preview iframe{object-fit:cover;pointer-events:none;width:100%;height:100%}.cc-video-overlay{opacity:0;pointer-events:none;background:#0000004d;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .2s;display:flex;position:absolute;top:0;left:0}.cc-file-item:hover .cc-video-overlay{opacity:1}.cc-video-overlay svg{color:#fff;filter:drop-shadow(0 2px 8px #0000004d);width:48px;height:48px}.cc-file-item.video-item{padding:0;overflow:hidden}.cc-file-item.video-item .cc-video-preview{border-radius:12px 12px 0 0;margin-bottom:0}.cc-file-item.video-item .cc-file-name,.cc-file-item.video-item .cc-file-type,.cc-file-item.video-item .cc-file-tags{padding:0 16px}.cc-file-item.video-item .cc-file-name{margin-top:12px}.cc-file-item.video-item .cc-file-tags{padding-bottom:12px}.cc-file-item.video-item .cc-file-favorite{z-index:10}.cc-file-name{color:#1d1d1f;text-overflow:ellipsis;white-space:nowrap;margin-bottom:4px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:500;overflow:hidden}.cc-file-type{color:#86868b;margin-bottom:8px;font-size:11px}.cc-file-tags{flex-wrap:wrap;gap:4px;display:flex}.cc-file-tag{color:#86868b;background:#f5f5f7;border-radius:4px;padding:2px 6px;font-size:10px}.cc-file-favorite{cursor:pointer;color:#86868b;background:0 0;border:none;padding:4px;transition:all .2s;position:absolute;top:8px;right:8px}.cc-file-favorite:hover{color:#f59e0b;transform:scale(1.1)}.cc-file-favorite.active{color:#f59e0b}.cc-file-favorite svg{width:16px;height:16px}.cc-content-list .cc-folder-item,.cc-content-list .cc-file-item{flex-direction:row;align-items:center;gap:12px;padding:12px 16px}.cc-content-list .cc-folder-icon,.cc-content-list .cc-file-icon{width:40px;height:40px;margin:0;font-size:20px}.cc-content-list .cc-folder-icon svg,.cc-content-list .cc-file-icon svg{width:24px;height:24px}.cc-content-list .cc-folder-name,.cc-content-list .cc-file-name{text-align:left;flex:1}.cc-content-list .cc-file-tags{margin-left:auto}.cc-empty-state{text-align:center;color:#86868b;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;padding:60px 20px;display:flex}.cc-empty-state svg{opacity:.3;width:80px;height:80px;margin-bottom:20px}.cc-empty-state h3{color:#1d1d1f;margin-bottom:8px;font-size:20px;font-weight:600}.cc-empty-state p{max-width:400px;font-size:14px}.modal{z-index:10000;background-color:#00000080;width:100%;height:100%;animation:.2s fadeIn;display:none;position:fixed;top:0;left:0}.modal.show{justify-content:center;align-items:center;display:flex}.modal-dialog{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;animation:.3s slideUp;overflow:hidden;box-shadow:0 20px 60px #0000004d}.modal-dialog.modal-lg{max-width:800px}.modal-dialog.modal-view-file{width:min(96vw,1180px);max-width:1180px;box-shadow:none;background:0 0;border-radius:0;overflow:visible}#modalViewFile .modal-content{border-radius:14px;overflow:hidden;box-shadow:0 20px 60px #0000004d}#modalViewFile .document-content{background:0 0;border:0;border-radius:0;margin:0 0 20px;padding:0}#modalViewFile #viewFileContent{padding:24px}.modal-content{flex-direction:column;max-height:90vh;display:flex}.modal-header{border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h5,.modal-title{color:#1d1d1f;align-items:center;gap:10px;margin:0;font-size:20px;font-weight:600;display:flex}.modal-header h5 svg,.modal-title svg{width:24px;height:24px}.modal-header .close{color:#86868b;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;line-height:1;transition:all .2s;display:flex}.modal-header .close:hover{color:#1d1d1f;background:#f5f5f7}.modal-header-actions{align-items:center;gap:8px;display:flex}.btn-icon{cursor:pointer;color:#86868b;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;padding:0;transition:all .2s;display:flex}.btn-icon svg{width:18px;height:18px}.btn-icon:hover{color:#1d1d1f;background:#f5f5f7}.btn-icon-danger{color:#86868b}.btn-icon-danger:hover{color:#dc3545;background:#fee}.modal-body{flex:1;padding:24px;overflow-y:auto}.modal-footer{border-top:1px solid #e5e5e5;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.modal-overlay{z-index:1;background:#00000080;width:100%;height:100%;position:fixed;top:0;left:0}.modal-container{z-index:2;background:#fff;border-radius:16px;flex-direction:column;max-height:90vh;margin:20px;display:flex;position:relative;box-shadow:0 20px 60px #0000004d}.modal-container .modal-header{background:#fff;border-bottom:1px solid #e5e5e5;border-radius:16px 16px 0 0;padding:20px 24px}.modal-container .modal-body{background:#fff;flex:1;overflow-y:auto}.modal-container .modal-footer{background:#fff;border-top:1px solid #e5e5e5;border-radius:0 0 16px 16px;padding:16px 24px}.modal-container.modal-lg{width:95%;max-width:800px}.modal-document{z-index:2;background:#fff;border-radius:16px;flex-direction:column;width:95%;max-width:1200px;max-height:90vh;display:flex;position:relative;box-shadow:0 20px 60px #0000004d}.modal-document .modal-header{background:#fff;border-bottom:1px solid #e5e5e5;border-radius:16px 16px 0 0;padding:16px 24px}.document-title-input{color:#1d1d1f;border:none;outline:none;flex:1;padding:8px 0;font-size:24px;font-weight:600}.document-title-input::placeholder{color:#86868b}.modal-body-editor{background:#fff;flex-direction:column;flex:1;display:flex;overflow:hidden;padding:0!important}#documentEditor{background:#fff;flex-direction:column;flex:1;display:flex;overflow:hidden}#documentEditor .ql-toolbar{background:#f5f5f7;border:none;border-bottom:1px solid #e5e5e5;padding:12px 24px}#documentEditor .ql-container{background:#fff;border:none;flex:1;font-size:15px;line-height:1.7;overflow-y:auto}#documentEditor .ql-editor{background:#fff;min-height:400px;padding:24px}#documentEditor .ql-editor.ql-blank:before{color:#86868b;font-style:normal;left:24px}.ql-snow .ql-stroke{stroke:#1d1d1f}.ql-snow .ql-fill{fill:#1d1d1f}.ql-snow .ql-picker-label{color:#1d1d1f}.ql-toolbar button:hover,.ql-toolbar button:focus,.ql-toolbar button.ql-active{color:#2997ff!important}.ql-toolbar button:hover .ql-stroke,.ql-toolbar button.ql-active .ql-stroke{stroke:#2997ff!important}.ql-toolbar button:hover .ql-fill,.ql-toolbar button.ql-active .ql-fill{fill:#2997ff!important}.form-group{margin-bottom:20px}.form-group label{color:#1d1d1f;margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-control{border:1px solid #d2d2d7;border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;transition:all .2s}.form-control:focus{border-color:#007aff;outline:none;box-shadow:0 0 0 3px #007aff1a}.form-control:disabled{cursor:not-allowed;background:#f5f5f7}textarea.form-control{resize:vertical;min-height:100px}select.form-control{cursor:pointer}.form-text{color:#86868b;margin-top:4px;font-size:12px;display:block}.row{gap:16px;margin:0 -8px;display:flex}.col-md-6{flex:1;padding:0 8px}.col-md-4{flex:0 0 33.333%;padding:0 8px}.col-md-8{flex:0 0 66.666%;padding:0 8px}.btn{cursor:pointer;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:500;transition:all .2s;display:inline-flex}.btn svg{width:18px;height:18px}.btn-primary{color:#fff;background:#007aff}.btn-primary:hover{background:#0056b3}.btn-success{color:#fff;background:#10b981}.btn-success:hover{background:#059669}.btn-danger{color:#fff;background:#ef4444}.btn-danger:hover{background:#dc2626}.btn-secondary{color:#1d1d1f;background:#f5f5f7}.btn-info{color:#fff;background:#3b82f6;align-items:center;gap:6px;display:inline-flex}.btn-info:hover{background:#2563eb}.btn-secondary:hover{background:#e5e5e5}.btn-block{justify-content:center;width:100%}#viewFileContent{padding:20px 0}.file-view-header{border-bottom:1px solid #e5e5e5;align-items:start;gap:20px;margin-bottom:20px;padding-bottom:20px;display:flex}.file-view-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:80px;height:80px;font-size:40px;display:flex}.file-view-info{flex:1}.file-view-info h3{color:#1d1d1f;margin-bottom:8px;font-size:24px;font-weight:600}.file-view-meta{color:#86868b;flex-wrap:wrap;gap:16px;margin-bottom:12px;font-size:13px;display:flex}.file-view-meta-item{align-items:center;gap:6px;display:flex}.file-view-meta-item svg{width:14px;height:14px}.file-view-content{margin-bottom:20px}.file-view-content h4{color:#1d1d1f;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:14px;font-weight:600}.file-view-content p{color:#1d1d1f;white-space:pre-wrap;font-size:14px;line-height:1.6}.file-view-url{margin-bottom:20px}.file-view-url a{color:#007aff;align-items:center;gap:6px;font-size:14px;text-decoration:none;display:inline-flex}.file-view-url a:hover{text-decoration:underline}.file-view-url svg{width:14px;height:14px}.cc-context-menu{z-index:9999;background:#fff;border:1px solid #e5e5e5;border-radius:8px;min-width:180px;padding:6px;position:fixed;box-shadow:0 8px 24px #00000026}.cc-context-item{cursor:pointer;color:#1d1d1f;border-radius:6px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;transition:all .2s;display:flex}.cc-context-item svg{width:16px;height:16px}.cc-context-item:hover{background:#f5f5f7}.cc-context-item.danger{color:#ef4444}.cc-context-separator{background:#e5e5e5;height:1px;margin:6px 0}@media (max-width:768px){.cc-sidebar{z-index:1000;height:calc(100vh - 60px);transition:left .3s;position:fixed;top:60px;left:-280px}.cc-sidebar.mobile-open{left:0}.cc-content-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}.cc-toolbar{flex-wrap:wrap;gap:10px}.cc-toolbar-center{flex:100%;order:3}}.cc-folder-item,.cc-file-item{animation:.3s fadeIn}.cc-folder-tree::-webkit-scrollbar{width:8px}.cc-content::-webkit-scrollbar{width:8px}.cc-folder-tree::-webkit-scrollbar-track{background:0 0}.cc-content::-webkit-scrollbar-track{background:0 0}.cc-folder-tree::-webkit-scrollbar-thumb{background:#d2d2d7;border-radius:4px}.cc-content::-webkit-scrollbar-thumb{background:#d2d2d7;border-radius:4px}.cc-folder-tree::-webkit-scrollbar-thumb:hover{background:#a1a1a6}.cc-content::-webkit-scrollbar-thumb:hover{background:#a1a1a6}.video-link-container{text-align:center;background:#fff;border:2px solid #e5e5e5;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;margin-bottom:24px;padding:48px 32px;display:flex}.video-link-icon{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:50%;justify-content:center;align-items:center;width:96px;height:96px;margin-bottom:24px;display:flex}.video-link-icon svg{color:#fff;width:48px;height:48px}.video-platform-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:4px;padding:2px 6px;font-size:9px;font-weight:600;position:absolute;bottom:4px;right:4px}.script-badge{color:#fff;text-transform:uppercase;letter-spacing:.5px;background:linear-gradient(135deg,#ff9500 0%,#ff6500 100%);border-radius:4px;padding:2px 6px;font-size:9px;font-weight:600;position:absolute;bottom:4px;right:4px}.type-script{color:#fff;background:linear-gradient(135deg,#ff9500 0%,#ff6500 100%)}.script-item .cc-file-icon{background:linear-gradient(135deg,#ff9500 0%,#ff6500 100%)}.document-content{background:#fff;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:24px;padding:24px}.document-text{color:#1d1d1f;word-wrap:break-word;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.75}.document-text.ql-editor{white-space:normal;min-height:0;padding:0}.document-text.ql-editor p,.document-text.ql-editor li,.document-text.ql-editor blockquote{color:#1d1d1f;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.document-text.ql-editor h1,.document-text.ql-editor h2,.document-text.ql-editor h3,.document-text.ql-editor h4,.document-text.ql-editor h5,.document-text.ql-editor h6{color:#111;letter-spacing:-.02em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.document-text.ql-editor h1{font-size:2rem}.document-text.ql-editor h2{font-size:1.65rem}.document-text.ql-editor h3{font-size:1.35rem}.document-text.ql-editor .ql-size-small{font-size:.875rem}.document-text.ql-editor .ql-size-large{font-size:1.25rem}.document-text.ql-editor .ql-size-huge{font-size:1.75rem}.document-text.ql-editor blockquote{color:#4b5563;border-left:3px solid #d1d5db;margin:1.2rem 0;padding-left:1rem;font-style:italic}.document-text.ql-editor pre.ql-syntax{color:#f8fafc;background:#111827;border-radius:10px;padding:16px 18px;overflow-x:auto}.document-text.ql-editor a{color:#2563eb;text-decoration:underline}.document-text.ql-editor img{border-radius:10px;max-width:100%;height:auto}.toast{opacity:0;z-index:3000;background:#fff;border-radius:12px;align-items:center;gap:12px;min-width:300px;max-width:500px;padding:16px 20px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;bottom:32px;right:32px;transform:translateY(100px);box-shadow:0 10px 40px #0003}.toast.show{opacity:1;transform:translateY(0)}.toast-icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;display:flex}.toast-icon.success{color:#48bb78;background:#48bb7833}.toast-icon.error{color:#f56565;background:#f5656533}.toast-icon.info{color:#3b82f6;background:#3b82f633}.toast-icon.warning{color:#f59e0b;background:#fbbf2433}.toast-icon svg{width:16px;height:16px}.toast span{color:#1d1d1f;font-size:14px;font-weight:500}.confirm-modal{z-index:30000;justify-content:center;align-items:center;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.confirm-modal.show{display:flex}.confirm-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0006;width:100%;height:100%;animation:.2s cubic-bezier(.4,0,.2,1) fadeIn;position:absolute;top:0;left:0}.confirm-modal-content{z-index:30001;background:#fff;border-radius:16px;width:90%;max-width:420px;animation:.3s cubic-bezier(.4,0,.2,1) confirmSlideUp;position:relative;overflow:hidden;box-shadow:0 20px 60px #0000004d}.confirm-modal-icon{border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:32px auto 20px;animation:.6s cubic-bezier(.4,0,.2,1) iconPulse;display:flex}.confirm-modal-icon.warning{color:#f59e0b;background:#fbbf2426}.confirm-modal-icon.danger{color:#f56565;background:#f5656526}.confirm-modal-icon.success{color:#48bb78;background:#48bb7826}.confirm-modal-icon svg{width:28px;height:28px}.confirm-modal-body{text-align:center;padding:0 32px 32px}.confirm-modal-title{color:#1d1d1f;letter-spacing:-.5px;margin-bottom:12px;font-size:20px;font-weight:700}.confirm-modal-message{color:#86868b;margin-bottom:24px;font-size:15px;line-height:1.6}.confirm-modal-actions{gap:12px;display:flex}.confirm-modal-actions button{cursor:pointer;border:none;border-radius:10px;flex:1;padding:12px 20px;font-family:inherit;font-size:15px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-confirm-cancel{color:#1d1d1f;background:#f5f5f7;border:1.5px solid #e5e5e5}.btn-confirm-cancel:hover{background:#e8e8ed;border-color:#d2d2d7;transform:translateY(-1px)}.btn-confirm-action{color:#fff;background:#2997ff}.btn-confirm-action:hover{background:#147ce5;transform:translateY(-1px);box-shadow:0 4px 12px #2997ff4d}.btn-confirm-action.danger{background:#f56565}.btn-confirm-action.danger:hover{background:#e53e3e;box-shadow:0 4px 12px #f565654d}.btn-confirm-action.warning{background:#f59e0b}.btn-confirm-action.warning:hover{background:#d97706;box-shadow:0 4px 12px #f59e0b4d}.btn-confirm-action.success{background:#48bb78}.btn-confirm-action.success:hover{background:#38a169;box-shadow:0 4px 12px #48bb784d}.modal-video-player{width:min(1040px,94vw);margin:0;max-width:1040px!important}.modal-video-player .modal-content{background:#fff;border:1px solid #e6e8ed;border-radius:20px;flex-direction:column;min-height:min(82vh,760px);display:flex;overflow:hidden;box-shadow:0 28px 70px #0a122047,0 3px 12px #0a122024}.modal-video-player .modal-header{background:#fff;border-bottom:1px solid #ebedf2;padding:18px 22px}.modal-video-player .modal-title{color:#0f172a;letter-spacing:-.02em;align-items:center;gap:12px;min-width:0;font-size:18px;font-weight:700;display:flex}.modal-video-player .modal-title span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.modal-video-player .modal-title svg{color:#64748b;width:19px;height:19px}.modal-video-player .close{cursor:pointer;color:#475569;background:#f2f4f8;border:1px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:22px;line-height:1;transition:all .18s;display:flex}.modal-video-player .close:hover{color:#0f172a;background:#e8edf5;transform:translateY(-1px)}.modal-body-video{background:#fff;flex:1;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);min-height:0;display:grid;padding:0!important}.video-player-stage{background:linear-gradient(#f6f9ff 0%,#edf3fc 100%);justify-content:center;align-items:stretch;min-height:0;padding:18px;display:flex}.video-player-container{aspect-ratio:16/9;background:#020617;border:1px solid #94a3b84d;border-radius:14px;width:100%;height:100%;min-height:420px;position:relative;overflow:hidden;box-shadow:0 18px 40px #0f172a2e}.modal-video-player.platform-pinterest .video-player-container,.video-player-container.platform-pinterest{aspect-ratio:4/5;max-height:min(70vh,620px)}.video-player-container iframe{border:none;width:100%;height:100%}.video-player-info{background:#fcfdff;border-left:1px solid #ebedf2;flex-direction:column;gap:16px;padding:20px 22px;display:flex}.video-description{margin:0;padding:0}.video-description h6{letter-spacing:.1em;text-transform:uppercase;color:#64748b;margin:0 0 8px;font-size:11px;font-weight:700}.video-description p{color:#334155;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.55}.video-description-modal{background:#f5f5f7;border:1px solid #e5e5e7;border-radius:12px;margin-bottom:20px;padding:20px 24px}.video-description-modal p{color:#1d1d1f;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.6}.video-player-meta{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:10px;margin-top:auto;display:flex}.video-player-meta.meta-compact{justify-content:space-between;margin-top:0}.video-platform-tag{color:#334155;text-transform:uppercase;letter-spacing:.08em;background:#eef2f7;border:1px solid #dbe3ec;border-radius:999px;align-items:center;padding:7px 12px;font-size:10px;font-weight:700;display:inline-flex}.video-platform-tag.tiktok{color:#fff;background:linear-gradient(140deg,#0f0f10 0%,#ee1d52 100%);border:none}.video-platform-tag.instagram{color:#fff;background:linear-gradient(135deg,#f09433 0%,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888 100%);border:none}.video-platform-tag.pinterest{color:#fff;background:#e60023;border:none}.video-player-info .btn-sm{color:#0f172a;background:#fff;border:1px solid #d3dce8;border-radius:10px;align-items:center;gap:6px;padding:9px 14px;font-size:13px;font-weight:600;transition:all .18s;display:inline-flex;box-shadow:0 1px 2px #0f172a0f}.video-player-info .btn-sm:hover{background:#f8fbff;border-color:#b8c6da}.video-player-info .btn-sm svg{width:14px;height:14px}.modal-body-video.video-body-compact{grid-template-rows:1fr auto;grid-template-columns:1fr}.modal-body-video.video-body-compact .video-player-info{background:#fff;border-top:1px solid #ebedf2;border-left:none;padding:14px 18px}@media (max-width:980px){.modal-video-player{width:min(94vw,760px)}.modal-video-player .modal-content{min-height:min(90vh,820px)}.modal-body-video{grid-template-rows:auto auto;grid-template-columns:1fr}.video-player-info{border-top:1px solid #ebedf2;border-left:none}.video-player-container{min-height:320px}.modal-video-player.platform-pinterest .video-player-container,.video-player-container.platform-pinterest{min-height:360px;max-height:min(62vh,560px)}}@media (max-width:640px){.modal-video-player{width:96vw}.modal-video-player .modal-header{padding:14px}.modal-video-player .modal-title{font-size:16px}.modal-video-player .close{width:30px;height:30px;font-size:20px}.video-player-stage{padding:12px}.video-player-container{min-height:260px}.video-player-info{padding:12px 14px}.video-player-meta{width:100%}.video-player-info .btn-sm{justify-content:center;width:100%}}.btn-sm{color:#1d1d1f;background:#f5f5f7;border:1px solid #e5e5e7;border-radius:8px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;transition:all .2s;display:inline-flex}.btn-sm:hover{background:#e5e5e7;border-color:#d1d1d6}.btn-sm svg{width:14px;height:14px}.video-embed-container{background:#000;border-radius:12px;width:100%;margin-bottom:20px;padding-bottom:177.78%;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.video-embed-container iframe{border:none;width:100%;height:100%;position:absolute;top:0;left:0}.video-url-info{background:#f5f5f7;border:1px solid #e5e5e7;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;padding:16px 20px;display:flex}.modal-script{background:#fff;border-radius:24px;width:95vw;overflow:hidden;box-shadow:0 24px 64px #0000001f;max-width:1000px!important}.script-modal-header{z-index:10;background:#fff;border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;padding:20px 24px;display:flex;position:sticky;top:0}.script-modal-title-section{align-items:center;gap:10px;display:flex}.script-modal-icon{justify-content:center;align-items:center;display:flex}.script-modal-icon svg{color:#1d1d1f;width:24px;height:24px}.script-modal-title{color:#1d1d1f;letter-spacing:-.2px;margin:0;font-size:20px;font-weight:600}.script-modal-close{color:#86868b;cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;width:32px;height:32px;transition:all .2s;display:flex}.script-modal-close:hover{color:#1d1d1f;background:#f5f5f7}.script-modal-close svg{width:20px;height:20px}.modal-body-script{background:#fff;max-height:75vh;overflow-y:auto;padding:24px!important}.modal-body-script::-webkit-scrollbar{width:8px}.modal-body-script::-webkit-scrollbar-track{background:0 0}.modal-body-script::-webkit-scrollbar-thumb{background:#d1d1d6;border-radius:10px}.modal-body-script::-webkit-scrollbar-thumb:hover{background:#a1a1a6}.modal-body-script .form-group{margin-bottom:20px}.modal-body-script label{color:#1d1d1f;margin-bottom:8px;font-size:13px;font-weight:600;display:block}.modal-body-script .form-control{background:#fff;border:1px solid #d0d0d0;border-radius:8px;padding:10px 14px;font-size:14px;font-weight:400;transition:all .2s}.modal-body-script .form-control:focus{background:#fff;border-color:#1d1d1f;outline:none;box-shadow:0 0 0 3px #1d1d1f1a}.modal-body-script select.form-control{cursor:pointer}.modal-body-script textarea.form-control{resize:vertical;min-height:80px}.modal-body-script .form-text{color:#86868b;margin-top:6px;font-size:12px;font-weight:400}.script-header{background:#f5f5f7;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:20px;padding:20px}.script-header .form-control-lg{letter-spacing:-.2px;background:#fff;border:1px solid #d0d0d0;border-radius:8px;padding:12px 16px;font-size:18px;font-weight:600;transition:all .2s}.script-header .form-control-lg:focus{background:#fff;border-color:#1d1d1f;box-shadow:0 0 0 3px #1d1d1f1a}.script-section{background:#f5f5f7;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:16px;padding:20px;transition:all .2s}.script-section:hover{border-color:#d0d0d0}.script-section:last-child{margin-bottom:0}.script-section-header{border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.script-section-header h6{color:#1d1d1f;letter-spacing:-.2px;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:600;display:flex}.script-section-header h6 svg{color:#86868b;width:18px;height:18px}.scenes-container{flex-direction:column;gap:12px;display:flex}.script-scenes-section{background:#f5f5f7;border:1px solid #e5e5e5;border-radius:12px;margin-bottom:16px;padding:16px}.script-scenes-header{margin-bottom:12px}.script-scenes-total{background:#fff;border:1px solid #d0d0d0;border-radius:999px;align-items:center;gap:8px;padding:6px 12px;display:inline-flex}.script-scenes-total-label{color:#86868b;font-size:12px;font-weight:500}.script-scenes-total-value{color:#1d1d1f;font-size:13px;font-weight:700}.script-scenes-total-separator{color:#b0b0b0;font-size:12px}.script-scenes-total-count{color:#515154;font-size:12px;font-weight:600}.scene-item{background:#fff;border:1px solid #d0d0d0;border-radius:12px;padding:0;transition:all .2s;position:relative;overflow:hidden}.scene-item:hover{border-color:#86868b;box-shadow:0 2px 8px #00000014}.scene-item .col-md-12{width:100%!important;padding-left:16px!important;padding-right:16px!important}.scene-item .col-md-4,.scene-item .col-md-5,.scene-item .col-md-2{padding-left:8px!important;padding-right:8px!important}.scene-item-header{background:#f5f5f7;border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.scene-header-left{align-items:center;gap:10px;display:inline-flex}.scene-number{color:#fff;background:#1d1d1f;border-radius:8px;justify-content:center;align-items:center;min-width:32px;height:32px;padding:0 12px;font-size:14px;font-weight:600;display:inline-flex}.scene-title{color:#1d1d1f;font-size:14px;font-weight:600}.scene-actions{gap:8px;display:flex}.btn-scene-action{color:#1d1d1f;cursor:pointer;background:#fff;border:1px solid #d0d0d0;border-radius:6px;align-items:center;gap:4px;padding:6px 12px;font-size:12px;font-weight:500;transition:all .2s;display:inline-flex}.btn-scene-action:hover{background:#f5f5f7;border-color:#86868b}.btn-scene-action.danger{color:#dc3545;border-color:#dc3545}.btn-scene-action.danger:hover{background:#fee;border-color:#dc3545}.btn-scene-action svg{width:14px;height:14px}.scene-item .row{width:100%;margin-bottom:0;padding:16px 20px;margin-left:0!important;margin-right:0!important}.scene-main-row{border-bottom:1px solid #f0f0f0}.scene-details-row{background:#fcfcfc}.scene-item .row:not(:last-child){border-bottom:none}.scene-item .row:last-child{margin-bottom:0}.scene-item .form-group{width:100%;margin-bottom:16px}.scene-item label{color:#1d1d1f;margin-bottom:8px;font-size:13px;font-weight:600;display:block}.scene-item .scene-description{color:#1d1d1f;resize:vertical;background:#fff;border:1px solid #d0d0d0;border-radius:8px;min-height:70px;padding:10px 14px;font-size:14px;font-weight:400;transition:all .2s;box-sizing:border-box!important;width:100%!important;min-width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;display:block!important}.scene-item .scene-description:focus{background:#fff;border-color:#1d1d1f;outline:none;box-shadow:0 0 0 3px #1d1d1f1a}.scene-item input,.scene-item select{background:#fff;border:1px solid #d0d0d0;border-radius:8px;width:100%;padding:10px 14px;font-size:14px;font-weight:400;transition:all .2s}.scene-item input:focus,.scene-item select:focus{background:#fff;border-color:#1d1d1f;outline:none;box-shadow:0 0 0 3px #1d1d1f1a}.scene-item .scene-notes{resize:vertical;background:#fff;border:1px solid #d0d0d0;border-radius:8px;min-height:70px;padding:10px 14px;font-size:14px;transition:all .2s;box-sizing:border-box!important;width:100%!important;min-width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;display:block!important}.scene-item .scene-notes:focus{background:#fff;border-color:#1d1d1f;outline:none;box-shadow:0 0 0 3px #1d1d1f1a}.scene-item .scene-notes::placeholder{color:#86868b;font-style:italic}.scene-duration-group .scene-duration{text-align:center;min-width:0;font-weight:600}.scenes-add-button-container{justify-content:center;margin-top:12px;padding:12px 0;display:flex}.btn-add-scene{color:#fff;cursor:pointer;background:#1d1d1f;border:none;border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-add-scene:hover{background:#000;box-shadow:0 2px 8px #00000026}.btn-add-scene:active{transform:scale(.98)}.btn-add-scene svg{width:20px;height:20px}.modal-script .modal-footer{z-index:10;background:#fff;border-top:1px solid #e5e5e5;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex;position:sticky;bottom:0}.modal-script .modal-footer .btn{border-radius:8px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.modal-script .modal-footer .btn-secondary{color:#1d1d1f;background:#f5f5f7;border:1px solid #e5e5e5}.modal-script .modal-footer .btn-secondary:hover{background:#e5e5e5;border-color:#d0d0d0}.modal-script .modal-footer .btn-primary{color:#fff;background:#1d1d1f;border:none}.modal-script .modal-footer .btn-primary:hover{background:#000;box-shadow:0 2px 8px #00000026}.modal-script .modal-footer .btn svg{width:16px;height:16px}@media (max-width:768px){.script-scenes-header{flex-direction:column;align-items:flex-start;gap:10px}.script-scenes-total{justify-content:center;width:100%}.scene-item-header{flex-direction:column;align-items:flex-start;gap:10px}.scene-actions{flex-wrap:wrap;justify-content:flex-start;width:100%}}.modal-view-file.modal-view-script{width:92vw!important;max-width:980px!important;max-height:90vh!important;box-shadow:none!important;background:0 0!important;border-radius:12px!important;margin:auto!important}.modal-view-file.modal-view-script .modal-content{border-radius:12px;max-height:90vh;background:#fff!important;border:none!important}.modal-view-file.modal-view-script .modal-header{border-bottom:1px solid #e7e9ee;background:0 0!important}.modal-view-file.modal-view-script .modal-body{background:0 0!important;padding:0!important}.modal-view-file.modal-view-script #viewFileContent{border-radius:0;min-height:100%;background:0 0!important;margin:0!important;padding:0 0 12px!important}.script-view-hero{color:#1d1d1f;box-shadow:none;background:0 0;border-bottom:1px solid #e7e9ee;border-radius:0;margin-bottom:0;padding:18px 24px}.script-view-hero-top{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.script-view-hero-kicker{letter-spacing:.12em;text-transform:uppercase;color:#6a7284;font-size:11px;font-weight:600}.script-view-title{color:#1d1d1f;letter-spacing:-.3px;margin:0 0 14px;font-size:24px;font-weight:700;line-height:1.25}.script-view-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.script-view-stat{background:0 0;border:1px solid #e1e4ea;border-radius:10px;min-width:0;padding:10px 12px}.script-view-stat-label{color:#6a7284;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:11px;display:block}.script-view-stat-value{color:#1d1d1f;white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;display:block;overflow:hidden}.script-view-section{background:0 0;border:none;border-bottom:1px solid #e7e9ee;border-radius:0;margin:0;padding:18px 24px}.script-view-section h4{color:#1d1d1f;letter-spacing:-.2px;align-items:center;gap:9px;margin-bottom:14px;font-size:16px;font-weight:700;display:flex}.script-view-section h4 svg{color:#86868b;width:18px;height:18px}.script-view-section p{color:#1d1d1f;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.6}.script-scenes-grid{gap:12px;display:grid}.script-scene-card{background:0 0;border:1px solid #e3e7ef;border-radius:12px;padding:14px;transition:all .2s,transform .2s}.script-scene-card:hover{border-color:#c9d2e2;transform:translateY(-1px);box-shadow:0 4px 14px #19233714}.script-scene-card-header{align-items:center;gap:12px;margin-bottom:10px;display:flex}.script-scene-card-number{color:#fff;background:#111318;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.script-scene-card-heading{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.script-scene-card-heading h5{color:#16181d;letter-spacing:-.1px;margin:0;font-size:15px;font-weight:700}.script-scene-duration{color:#303542;background:#fff;border:1px solid #ccd3df;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.script-scene-block{margin-bottom:10px}.script-scene-block p{color:#212633;margin:0}.script-scene-block-label{color:#6a7284;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px;font-size:11px;font-weight:700;display:inline-block}.script-scene-chip-row{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.script-scene-chip{color:#273042;background:#fff;border:1px solid #d9deea;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:12px;font-weight:600;display:inline-flex}.script-scene-chip svg{color:#5e6a7f;width:13px;height:13px}.script-scene-notes{border-top:1px dashed #d8deea;padding-top:9px}.script-scene-notes p{color:#2e3442;margin:0}.script-type-badge{text-transform:none;letter-spacing:0;border-radius:999px;align-items:center;padding:5px 11px;font-size:12px;font-weight:700;display:inline-flex}.script-type-badge.reel,.script-type-badge.video,.script-type-badge.foto,.script-type-badge.stories,.script-type-badge.carrusel,.script-type-badge.custom{color:#fff;background:#1d1d1f;border:none}.script-references-list{flex-direction:column;gap:9px;display:flex}.script-reference-link{color:#1a1f2b;background:0 0;border:1px solid #e1e6ee;border-radius:10px;align-items:center;gap:10px;padding:12px 13px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.script-reference-link:hover{background:0 0;border-color:#c8d2e2;transform:translate(3px);box-shadow:0 4px 12px #19233714}.script-reference-link-disabled{opacity:.8;cursor:default}.script-reference-link svg{color:#586174;flex-shrink:0;width:16px;height:16px}.script-reference-link span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.script-tech-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.script-tech-card{background:0 0;border:1px solid #dfe4ed;border-radius:10px;padding:12px}.script-tech-card-header{color:#2b3447;text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:7px;margin-bottom:8px;font-size:12px;font-weight:700;display:inline-flex}.script-tech-card-header svg{color:#637089;width:14px;height:14px}.script-tech-card p{color:#2a2f3c;margin:0;font-size:13px;line-height:1.5}.script-view-notes-panel{background:0 0;border-left:3px solid #2d3442;border-radius:8px;padding:10px 12px}.script-view-notes-panel p{margin:0}.script-view-empty{text-align:center;color:#6a7385;background:#fbfcfe;border:1px dashed #d7dce7;border-radius:12px;padding:28px 16px}.script-view-empty svg{width:26px;height:26px;margin-bottom:8px}.script-view-empty h4{color:#252b38;margin:0 0 6px;font-size:15px}.script-view-empty p{margin:0;font-size:13px}@media (max-width:860px){.modal-view-file.modal-view-script{width:96vw!important;max-width:96vw!important;max-height:90vh!important;margin:auto!important}.script-view-hero{padding:18px}.script-view-section{padding:16px 18px}.script-view-stats,.script-tech-grid{grid-template-columns:1fr}}.scenes-empty{text-align:center;color:#86868b;padding:40px 20px}.scenes-empty svg{opacity:.5;width:48px;height:48px;margin-bottom:12px}.scenes-empty p{margin:0;font-size:14px}.cc-loading-indicator{color:#86868b;grid-column:1/-1;justify-content:center;align-items:center;gap:12px;padding:30px;font-size:14px;display:flex}.cc-loading-indicator .spinner{border:2px solid #e5e5e5;border-top-color:#007aff;border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}.spinner-small{border:2px solid #e5e5e5;border-top-color:#007aff;border-radius:50%;width:14px;height:14px;margin:0 auto;animation:.6s linear infinite spin}.tree-loading{justify-content:center;align-items:center;padding:8px;display:flex}.tree-error{color:#ff3b30;text-align:center;padding:8px 12px;font-size:12px}#contentGrid{scroll-behavior:smooth}.cc-file-item,.cc-folder-item{will-change:transform}.cc-file-item{animation:.3s ease-out fadeInUp}.cc-content-grid:after{content:"";grid-column:1/-1;height:1px}.cc-folder-item[draggable=true],.cc-file-item[draggable=true]{cursor:default}.cc-folder-item[draggable=true]:active,.cc-file-item[draggable=true]:active{cursor:grabbing!important;cursor:-webkit-grabbing!important}.cc-folder-item.drag-over,.cc-tree-folder.drag-over{transition:all .2s;transform:scale(1.02);background:#007aff1a!important;border-color:#007aff!important;box-shadow:0 0 0 2px #007aff4d!important}.cc-tree-folder.drag-over{border-radius:8px;background:#007aff26!important}.analytics-page{background:var(--primary-color);min-height:100vh}.analytics-main{padding:32px 40px}.analytics-kpi-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-bottom:24px;display:grid}.analytics-kpi-card{border:1px solid var(--border-color);border-radius:16px;padding:22px}.analytics-kpi-label{letter-spacing:.6px;text-transform:uppercase;color:var(--text-secondary);margin:0 0 10px;font-size:12px;font-weight:600}.analytics-kpi-value{letter-spacing:-1px;margin:0;font-size:36px;line-height:1}.analytics-kpi-value span{color:var(--text-secondary);font-size:18px;font-weight:500}.analytics-kpi-meta{color:var(--text-secondary);margin:10px 0 0;font-size:14px}.analytics-panels-grid{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:20px;display:grid}.analytics-panel{border:1px solid var(--border-color);border-radius:16px;padding:24px}.analytics-panel-header{margin-bottom:18px}.analytics-panel-header h3{margin:0 0 6px;font-size:20px}.analytics-panel-header p{color:var(--text-secondary);margin:0;font-size:14px}.analytics-chart{grid-template-columns:repeat(6,minmax(0,1fr));align-items:end;gap:12px;min-height:180px;display:grid}.analytics-chart-col{flex-direction:column;align-items:center;gap:8px;display:flex}.analytics-chart-bars{justify-content:center;align-items:end;gap:6px;width:100%;min-height:150px;display:flex}.analytics-chart-bars span{border-radius:8px 8px 2px 2px;width:38%;min-height:6px;transition:opacity .2s;display:block}.analytics-chart-bars .bar-tasks{background:#111}.analytics-chart-bars .bar-assets{background:#7a7a7a}.analytics-chart-bars span:hover{opacity:.8}.analytics-chart-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:12px}.analytics-module-list{flex-direction:column;gap:16px;display:flex}.analytics-module-item{gap:8px;display:grid}.analytics-module-meta{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.analytics-module-meta strong{font-size:14px}.analytics-module-meta span{color:var(--text-secondary);font-size:13px}.analytics-module-track{background:#f0f0f0;border-radius:999px;height:8px;overflow:hidden}.analytics-module-track span{background:linear-gradient(90deg,#000 0%,#4a4a4a 100%);height:100%;display:block}.analytics-module-item small{color:var(--text-secondary);font-size:12px}@media (max-width:1280px){.analytics-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-panels-grid{grid-template-columns:1fr}}@media (max-width:768px){.analytics-main{padding:24px}.analytics-kpi-grid{grid-template-columns:1fr;gap:14px}.analytics-panel{padding:18px}.analytics-chart{gap:6px}.analytics-chart-label{font-size:10px}.analytics-kpi-value{font-size:30px}}.public-gallery-page{background:#fafafa;justify-content:center;align-items:center;min-height:100vh;padding:20px;display:flex}.public-gallery-page *{box-sizing:border-box}.public-gallery-page button,.public-gallery-page input{font:inherit}.public-gallery-page .container{width:100%;max-width:1400px}.public-gallery-page .logo-link{width:fit-content;margin:0 auto 32px;display:block}.public-gallery-page .password-container{text-align:center;background:#fff;border-radius:24px;max-width:480px;margin:0 auto;padding:60px 50px;box-shadow:0 8px 32px #00000014}.public-gallery-page .public-gallery-status-container{flex-direction:column;justify-content:center;align-items:center;gap:20px;min-height:320px;display:flex}.public-gallery-page .euphoria-logo{border-radius:16px;width:300px;height:auto;margin:0 auto;padding:20px;display:block}.public-gallery-page .company-logo{object-fit:contain;border-radius:20px;width:100px;height:100px;margin:0 auto 24px;display:block}.public-gallery-page .company-logo-placeholder,.public-gallery-page .logo-placeholder{background:#f3f3f3;border:2px solid #e5e5e5;justify-content:center;align-items:center;display:flex}.public-gallery-page .company-logo-placeholder{border-radius:20px;width:100px;height:100px;margin:0 auto 24px}.public-gallery-page .company-logo-placeholder svg{stroke:#86868b;width:44px;height:44px}.public-gallery-page h1{color:#1d1d1f;letter-spacing:-.5px;margin:0 0 8px;font-size:32px;font-weight:700}.public-gallery-page .company-name{color:#86868b;margin:0 0 12px;font-size:17px;font-weight:400}.public-gallery-page .description{color:#6e6e73;margin:0 0 32px;font-size:15px;line-height:1.5}.public-gallery-page .password-form{margin-top:40px}.public-gallery-page .form-label{color:#1d1d1f;margin-bottom:20px;font-size:15px;font-weight:600;display:block}.public-gallery-page .digit-inputs{justify-content:center;gap:12px;margin-bottom:32px;display:flex}.public-gallery-page .digit-input{text-align:center;color:#1d1d1f;background:#fff;border:2px solid #d2d2d7;border-radius:12px;width:56px;height:64px;font-size:32px;font-weight:600;transition:all .2s}.public-gallery-page .digit-input:focus{border-color:#000;outline:none;box-shadow:0 0 0 4px #0000000d}.public-gallery-page .digit-input.is-filled{background:#f5f5f7;border-color:#000}.public-gallery-page .digit-input.is-error{border-color:#ff3b30;animation:.4s public-gallery-shake}.public-gallery-page .btn{color:#fff;cursor:pointer;letter-spacing:-.2px;background:#000;border:none;border-radius:12px;width:100%;padding:16px;font-size:17px;font-weight:600;transition:all .2s}.public-gallery-page .btn:hover{background:#1d1d1f}.public-gallery-page .btn:active{transform:scale(.98)}.public-gallery-page .btn:disabled{opacity:.4;cursor:not-allowed}.public-gallery-page .error-box{color:#ff3b30;background:#fff4f4;border:1px solid #ffe5e5;border-radius:12px;margin-bottom:24px;padding:16px 20px;font-size:15px;font-weight:500}.public-gallery-page .divider{background:#e5e5e5;height:1px;margin:32px 0}.public-gallery-page .gallery-container{background:#fff;border-radius:24px;padding:48px;box-shadow:0 8px 32px #00000014}.public-gallery-page .gallery-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.public-gallery-page .gallery-info{align-items:center;gap:20px;display:flex}.public-gallery-page .gallery-info img{object-fit:contain;border-radius:16px;width:72px;height:72px}.public-gallery-page .logo-placeholder{border-radius:16px;width:72px;height:72px}.public-gallery-page .logo-placeholder svg{stroke:#86868b;width:32px;height:32px}.public-gallery-page .gallery-title h1{margin-bottom:4px;font-size:28px}.public-gallery-page .gallery-title .company{color:#86868b;margin:0;font-size:15px}.public-gallery-page .file-count{color:#fff;letter-spacing:-.2px;background:#000;border-radius:20px;padding:10px 20px;font-size:15px;font-weight:600}.public-gallery-page .gallery-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.public-gallery-page .gallery-item{aspect-ratio:1;background:#f5f5f7;border:1px solid #e5e5e5;border-radius:16px;transition:all .2s;position:relative;overflow:hidden}.public-gallery-page .gallery-item:hover{transform:scale(1.02);box-shadow:0 8px 24px #0000001f}.public-gallery-page .gallery-item.is-selected{opacity:.8;transform:scale(.95)}.public-gallery-page .gallery-click-surface{cursor:pointer;background:0 0;border:none;width:100%;height:100%;padding:0;display:block;position:relative}.public-gallery-page .gallery-item img,.public-gallery-page .gallery-item video{object-fit:cover;width:100%;height:100%}.public-gallery-page .gallery-item .gallery-media{object-fit:cover}.public-gallery-page .play-icon{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 4px 12px #00000026}.public-gallery-page .play-icon svg{fill:#1d1d1f;width:20px;height:20px;margin-left:3px}.public-gallery-page .empty-gallery{text-align:center;color:#86868b;padding:80px 20px}.public-gallery-page .empty-gallery svg{stroke:#d2d2d7;width:72px;height:72px;margin-bottom:20px}.public-gallery-page .empty-gallery h3{color:#1d1d1f;letter-spacing:-.3px;margin:0 0 8px;font-size:22px;font-weight:600}.public-gallery-page .empty-gallery p{color:#86868b;margin:0;font-size:15px}.public-gallery-page .download-toolbar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1000;opacity:0;background:#000000f2;border-radius:16px;align-items:center;gap:16px;padding:16px 24px;display:none;position:fixed;bottom:32px;left:50%;transform:translate(-50%)translateY(20px);box-shadow:0 12px 48px #0000004d}.public-gallery-page .download-toolbar.is-active{animation:.3s ease-out forwards public-gallery-slide-up;display:flex}.public-gallery-page .download-toolbar-info{color:#fff;font-size:15px;font-weight:500}.public-gallery-page .download-btn{color:#000;cursor:pointer;background:#fff;border:none;border-radius:10px;align-items:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:600;transition:all .2s;display:flex}.public-gallery-page .download-btn:hover{background:#e5e5e5;transform:scale(1.05)}.public-gallery-page .download-btn svg{width:18px;height:18px}.public-gallery-page .download-btn-secondary{color:#fff;background:0 0;border:1.5px solid #ffffff4d}.public-gallery-page .download-btn-secondary:hover{background:#ffffff1a;border-color:#ffffff80}.public-gallery-page .gallery-item-checkbox{cursor:pointer;z-index:10;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:2px solid #0000001a;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:all .2s;display:flex;position:absolute;top:12px;left:12px}.public-gallery-page .gallery-item-checkbox:hover{background:#fff;border-color:#000;transform:scale(1.1)}.public-gallery-page .gallery-item-checkbox.is-checked{background:#000;border-color:#000}.public-gallery-page .gallery-item-checkbox svg{stroke:#fff;width:16px;height:16px;display:none}.public-gallery-page .gallery-item-checkbox.is-checked svg{display:block}.public-gallery-page .lightbox{z-index:9999;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#000000f5;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.public-gallery-page .lightbox.is-active{display:flex}.public-gallery-page .lightbox-content{max-width:90%;max-height:90%;position:relative}.public-gallery-page .lightbox-content img,.public-gallery-page .lightbox-content video{border-radius:12px;max-width:100%;max-height:90vh;box-shadow:0 20px 60px #00000080}.public-gallery-page .lightbox-content .lightbox-media{border-radius:12px;width:auto;max-width:100%;height:auto;max-height:90vh;box-shadow:0 20px 60px #00000080}.public-gallery-page .lightbox-toolbar{z-index:10000;align-items:center;gap:12px;display:flex;position:absolute;top:24px;right:24px}.public-gallery-page .lightbox-download,.public-gallery-page .lightbox-close,.public-gallery-page .lightbox-nav{cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;transition:all .2s;display:flex}.public-gallery-page .lightbox-download svg,.public-gallery-page .lightbox-close svg{stroke:#1d1d1f;width:20px;height:20px}.public-gallery-page .lightbox-download:hover,.public-gallery-page .lightbox-close:hover,.public-gallery-page .lightbox-nav:hover{background:#fff;transform:scale(1.1)}.public-gallery-page .lightbox-nav{z-index:10000;position:absolute;top:50%;transform:translateY(-50%)}.public-gallery-page .lightbox-nav svg{stroke:#1d1d1f;stroke-width:2.5px;width:18px;height:18px}.public-gallery-page .lightbox-prev{left:24px}.public-gallery-page .lightbox-next{right:24px}.public-gallery-page .download-progress-modal,.public-gallery-page .confirm-modal{justify-content:center;align-items:center;display:none;position:fixed;inset:0}.public-gallery-page .download-progress-modal{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10000;background:#000000d9}.public-gallery-page .download-progress-modal.is-active,.public-gallery-page .confirm-modal.is-active{display:flex}.public-gallery-page .download-progress-content{text-align:center;background:#fff;border-radius:24px;flex-direction:column;justify-content:center;width:400px;min-height:380px;padding:48px 40px;display:flex;box-shadow:0 20px 60px #0000004d}.public-gallery-page .progress-circle-container{width:160px;height:160px;margin:0 auto 32px;position:relative}.public-gallery-page .progress-circle{transform:rotate(-90deg)}.public-gallery-page .progress-circle-bg{fill:none;stroke:#e5e5e5;stroke-width:8px}.public-gallery-page .progress-circle-fill{fill:none;stroke:#000;stroke-width:8px;stroke-linecap:round;transition:stroke-dashoffset .3s}.public-gallery-page .progress-text{color:#000;font-size:36px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.public-gallery-page .progress-label{color:#1d1d1f;justify-content:center;align-items:center;min-height:27px;margin-bottom:8px;font-size:18px;font-weight:600;display:flex}.public-gallery-page .progress-sublabel{color:#86868b;justify-content:center;align-items:center;min-height:21px;font-size:14px;display:flex}.public-gallery-page .confirm-modal{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:9999;background:#00000080}.public-gallery-page .confirm-modal-content{background:#fff;border-radius:20px;width:90%;max-width:400px;padding:32px;box-shadow:0 12px 40px #0003}.public-gallery-page .confirm-modal-icon{background:#f3f3f3;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin:0 auto 20px;display:flex}.public-gallery-page .confirm-modal-icon svg{stroke:#1d1d1f;width:28px;height:28px}.public-gallery-page .confirm-modal h3{color:#1d1d1f;text-align:center;letter-spacing:-.3px;margin:0 0 8px;font-size:22px;font-weight:700}.public-gallery-page .confirm-modal p{color:#86868b;text-align:center;white-space:pre-line;margin:0 0 28px;font-size:15px;line-height:1.5}.public-gallery-page .confirm-modal-buttons{flex-wrap:wrap;gap:12px;display:flex}.public-gallery-page .confirm-modal-btn{cursor:pointer;border:none;border-radius:12px;flex:1;padding:14px 24px;font-size:15px;font-weight:600;transition:all .2s}.public-gallery-page .confirm-modal-btn-cancel{color:#1d1d1f;background:#f3f3f3}.public-gallery-page .confirm-modal-btn-cancel:hover{background:#e5e5e5}.public-gallery-page .confirm-modal-btn-confirm{color:#fff;background:#000}.public-gallery-page .confirm-modal-btn-confirm:hover{background:#2d2d2d}.public-gallery-page .loading-more{grid-column:1/-1;justify-content:center;align-items:center;gap:16px;padding:40px 20px;display:flex}.public-gallery-page .loading-spinner{border:3px solid #e5e5e5;border-top-color:#000;border-radius:50%;width:32px;height:32px;animation:.8s linear infinite public-gallery-spin}.public-gallery-page .loading-more-text{color:#86868b;letter-spacing:-.2px;font-size:15px;font-weight:500}.public-gallery-page .load-more-trigger{grid-column:1/-1;height:20px;min-height:20px}@keyframes public-gallery-shake{0%,to{transform:translate(0)}25%{transform:translate(-10px)}75%{transform:translate(10px)}}@keyframes public-gallery-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes public-gallery-slide-up{0%{opacity:0;transform:translate(-50%)translateY(20px)}to{opacity:1;transform:translate(-50%)translateY(0)}}@media (max-width:768px){.public-gallery-page .password-container{padding:40px 30px}.public-gallery-page .digit-inputs{gap:8px}.public-gallery-page .digit-input{width:48px;height:56px;font-size:28px}.public-gallery-page .gallery-container{padding:32px 24px}.public-gallery-page .gallery-header{text-align:center;flex-direction:column;gap:20px}.public-gallery-page .gallery-info{flex-direction:column}.public-gallery-page .gallery-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.public-gallery-page .download-toolbar{flex-wrap:wrap;max-width:calc(100% - 32px);padding:12px 16px;bottom:16px}.public-gallery-page .download-btn{padding:8px 16px;font-size:13px}.public-gallery-page .lightbox-toolbar{top:16px;right:16px}.public-gallery-page .lightbox-nav{width:40px;height:40px}.public-gallery-page .lightbox-prev{left:16px}.public-gallery-page .lightbox-next{right:16px}}:root{--background:#fff;--foreground:#171717}body{background:var(--background);color:var(--foreground)}.app-layout{min-height:100vh;display:flex}.content-area{flex:1;min-width:0}.main-content{padding:24px}.btn-logout{cursor:pointer;width:36px;height:36px;color:var(--text-secondary);transition:color var(--transition-speed) var(--transition-smooth);background:0 0;border:none;border-radius:10px;justify-content:center;align-items:center;padding:0;display:inline-flex}.btn-logout svg{width:20px;height:20px}.btn-logout:hover{color:#dc2626}.dashboard-card{background:#fff;border:1px solid #e5e5e5;border-radius:12px}.toast,#toast,.toast.show,.notification,.notification.show{visibility:hidden!important;opacity:0!important;pointer-events:none!important;display:none!important}
