@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap";:root[data-accent=blue],:root{--accent:#2563eb;--accent-light:#dbeafe;--accent-muted:#93c5fd;--accent-dark:#1d4ed8}:root[data-accent=gray]{--accent:#64748b;--accent-light:#f1f5f9;--accent-muted:#94a3b8;--accent-dark:#475569}:root[data-accent=purple]{--accent:#7c3aed;--accent-light:#ede9fe;--accent-muted:#a78bfa;--accent-dark:#6d28d9}:root[data-accent=red]{--accent:#dc2626;--accent-light:#fee2e2;--accent-muted:#fca5a5;--accent-dark:#b91c1c}:root{--bg:#fff;--bg-secondary:#f8f9fa;--bg-hover:#f1f3f5;--bg-active:#e9ecef;--bg-overlay:#0006;--border:#e5e7eb;--border-strong:#d1d5db;--border-color:#e5e7eb;--ink:#111827;--ink-2:#374151;--ink-3:#6b7280;--ink-4:#9ca3af;--text-primary:#111827;--text-secondary:#374151;--text-muted:#6b7280;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 1px 3px #00000014, 0 1px 2px #0000000a;--shadow-md:0 4px 6px #00000012, 0 2px 4px #0000000d;--shadow-lg:0 10px 15px #00000014, 0 4px 6px #0000000a;--radius-sm:4px;--radius:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--sidebar-w:240px;--topbar-h:56px;--font:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--color-pending:#f59e0b;--color-progress:#f97316;--color-review:#8b5cf6;--color-done:#10b981;--color-returned:#ef4444;--color-sent:#94a3b8;--color-completed:#6b7280;--color-low:#10b981;--color-medium:#f59e0b;--color-high:#ef4444;--color-urgent:#7c3aed;--bg-primary:#fff;--bg-card:#fff;--laite-indigo:var(--accent);--laite-periwinkle:var(--accent);--laite-periwinkle-light:var(--accent-light);--color-celeste:var(--accent);--panel:var(--bg-secondary);--priority-high:#e11d48;--priority-medium:#f59e0b;--priority-low:#10b981}:root[data-theme=dark]{--bg:#111827;--bg-secondary:#1f2937;--bg-hover:#374151;--bg-active:#4b5563;--bg-overlay:#0009;--border:#374151;--border-strong:#4b5563;--border-color:#374151;--ink:#f9fafb;--ink-2:#e5e7eb;--ink-3:#9ca3af;--ink-4:#6b7280;--text-primary:#f9fafb;--text-secondary:#e5e7eb;--text-muted:#9ca3af;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 6px #0006;--shadow-lg:0 10px 15px #00000080;--bg-primary:#111827;--bg-card:#1f2937}:root[data-theme=dark][data-accent=blue],:root[data-theme=dark]{--accent-light:#2563eb26}:root[data-theme=dark][data-accent=gray]{--accent-light:#64748b26}:root[data-theme=dark][data-accent=purple]{--accent-light:#7c3aed26}:root[data-theme=dark][data-accent=red]{--accent-light:#dc262626}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;font-size:16px}body{font-family:var(--font);color:var(--ink);background:var(--bg);min-height:100vh;font-size:.9rem;line-height:1.6}.app-shell{height:100vh;display:flex;overflow:hidden}.sidebar{width:var(--sidebar-w);background:var(--bg-secondary);border-right:1px solid var(--border);flex-direction:column;flex-shrink:0;height:100vh;transition:width .2s;display:flex;overflow:hidden auto}.sidebar>*{flex-shrink:0}.sidebar>.nav-item{margin:1px 8px;padding:8px 10px}.sidebar-brand,.brand{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:16px 16px 12px;display:flex}.sidebar-brand img,.brand img{border-radius:var(--radius);flex-shrink:0;width:28px;height:28px}.brand img.brand-wordmark,.brand-wordmark{object-fit:contain;border-radius:0;width:auto}img.brand-wordmark.brand-wordmark-light{display:block}img.brand-wordmark.brand-wordmark-dark,:root[data-theme=dark] img.brand-wordmark.brand-wordmark-light{display:none}:root[data-theme=dark] img.brand-wordmark.brand-wordmark-dark{display:block}.sidebar-brand span,.brand span{color:var(--ink);letter-spacing:-.01em;font-size:.95rem;font-weight:600}.sidebar-section{padding:12px 8px 4px}.sidebar-section-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-4);margin-bottom:2px;padding:0 8px;font-size:.7rem;font-weight:600}.nav-item{border-radius:var(--radius);color:var(--ink-2);cursor:pointer;white-space:nowrap;text-align:left;background:0 0;border:none;align-items:center;gap:8px;width:100%;margin:1px 0;padding:7px 10px;font-size:.875rem;font-weight:500;text-decoration:none;transition:background .12s,color .12s;display:flex;overflow:hidden}.nav-item svg{opacity:.85;flex-shrink:0;width:16px;height:16px}.nav-item:hover{background:var(--bg-hover);color:var(--ink)}.nav-item:hover svg{opacity:1}.nav-item.active{background:var(--accent-light);color:var(--accent);font-weight:500}.nav-item.active svg{opacity:1;color:var(--accent)}.sidebar-bottom{border-top:1px solid var(--border);margin-top:auto;padding:12px 8px}.sidebar-user{border-radius:var(--radius);cursor:pointer;align-items:center;gap:10px;padding:8px 10px;transition:background .12s;display:flex}.sidebar-user:hover{background:var(--bg-hover)}.sidebar-user-avatar{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:600;display:flex;overflow:hidden}.sidebar-user-avatar img{object-fit:cover;width:100%;height:100%}.sidebar-user-info{flex:1;min-width:0}.sidebar-user-name{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:500;overflow:hidden}.sidebar-user-role{color:var(--ink-4);font-size:.7rem}.main-content,.content-area{flex-direction:column;flex:1;display:flex;overflow:hidden}.topbar{height:var(--topbar-h);background:var(--bg);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:12px;padding:0 20px;display:flex}.topbar-title{color:var(--ink);flex:1;font-size:.95rem;font-weight:600}.topbar-actions{align-items:center;gap:8px;display:flex}.page-wrapper,.panel{flex:1;padding:24px 28px;overflow-y:auto}h1,h2,h3,h4,h5,h6{font-family:var(--font);color:var(--ink);letter-spacing:-.015em;font-weight:600;line-height:1.3}h1{font-size:1.5rem}h2{font-size:1.2rem}h3{font-size:1.05rem}h4{font-size:.95rem}p{color:var(--ink-2);line-height:1.7}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code,pre{font-family:var(--font-mono);background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.85em}code{padding:1px 5px}pre{padding:12px 16px;overflow-x:auto}.btn{border-radius:var(--radius-md);font-family:var(--font);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:6px;padding:7px 14px;font-size:.85rem;font-weight:500;line-height:1;text-decoration:none;transition:background .12s,color .12s,border-color .12s,box-shadow .12s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn:disabled{opacity:.45;pointer-events:none}.btn svg{flex-shrink:0;width:15px;height:15px}.btn.primary,.btn-primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn.primary:hover,.btn-primary:hover{background:var(--accent-dark);border-color:var(--accent-dark)}.btn-secondary,.btn.secondary{background:var(--bg);color:var(--ink-2);border-color:var(--border-strong)}.btn-secondary:hover,.btn.secondary:hover{background:var(--bg-hover);border-color:var(--border-strong)}.btn-ghost,.btn.ghost{color:var(--ink-3);background:0 0;border-color:#0000}.btn-ghost:hover,.btn.ghost:hover{background:var(--bg-hover);color:var(--ink)}.btn-danger,.btn.danger{background:var(--color-returned);color:#fff;border-color:var(--color-returned)}.btn-danger:hover,.btn.danger:hover{opacity:.88}.btn-sm{padding:5px 10px;font-size:.8rem}.btn-lg{padding:10px 20px;font-size:.95rem}.btn-icon{border-radius:var(--radius-md);padding:7px}.form-group{flex-direction:column;gap:5px;margin-bottom:16px;display:flex}label,.form-label{color:var(--ink-2);font-size:.8rem;font-weight:500}.form-control,input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=month],input[type=search],textarea,select{background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-md);width:100%;font-family:var(--font);color:var(--ink);appearance:none;outline:none;padding:8px 11px;font-size:.875rem;transition:border-color .12s,box-shadow .12s}.form-control::placeholder,input::placeholder,textarea::placeholder{color:var(--ink-4)}.form-control:focus,input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent)}select{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236B7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}textarea{resize:vertical;min-height:80px;line-height:1.6}.form-error{color:var(--color-returned);font-size:.75rem}.card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;transition:box-shadow .15s}.card:hover{box-shadow:var(--shadow-sm)}.card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.card-title{color:var(--ink);font-size:.9rem;font-weight:600}.metric-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px 20px}.metric-value{color:var(--ink);letter-spacing:-.03em;font-size:1.8rem;font-weight:700;line-height:1}.metric-label{color:var(--ink-4);margin-top:4px;font-size:.78rem;font-weight:500}.metric-sub{color:var(--ink-4);margin-top:6px;font-size:.78rem}.task-card{background:var(--bg);border:1px solid var(--border);cursor:pointer;border-radius:0;padding:12px 14px;transition:box-shadow .15s,border-color .15s;position:relative}.task-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.task-card h4{color:var(--ink);margin-bottom:4px;font-size:.875rem;font-weight:500}.status-badge{letter-spacing:.02em;border-radius:20px;align-items:center;gap:4px;padding:2px 8px;font-size:.72rem;font-weight:600;display:inline-flex}.status-badge.pending,.status-badge.Pendiente{color:#92400e;background:#fef3c7}.status-badge.in_progress,.status-badge.En\ Proceso{color:#1e40af;background:#dbeafe}.status-badge.completed,.status-badge.Completado{color:#065f46;background:#d1fae5}.status-badge.returned,.status-badge.Devuelto{color:#991b1b;background:#fee2e2}.status-badge.sent{color:#92400e;background:#fef3c7}.status-badge.approved{color:#065f46;background:#d1fae5}.status-badge.published{color:#0c4a6e;background:#e0f2fe}:root[data-theme=dark] .status-badge.pending{color:#fcd34d;background:#f59e0b2e}:root[data-theme=dark] .status-badge.in_progress{color:#93c5fd;background:#3b82f62e}:root[data-theme=dark] .status-badge.completed{color:#6ee7b7;background:#10b9812e}:root[data-theme=dark] .status-badge.returned{color:#fca5a5;background:#ef44442e}:root[data-theme=dark] .status-badge.sent{color:#fcd34d;background:#f59e0b2e}:root[data-theme=dark] .status-badge.approved{color:#6ee7b7;background:#10b9812e}:root[data-theme=dark] .status-badge.published{color:#7dd3fc;background:#0ea5e92e}.status-badge.review{color:#5b21b6;background:#ede9fe}:root[data-theme=dark] .status-badge.review{color:#c4b5fd;background:#8b5cf633}.modal-content>form{flex-direction:column;flex:1;min-height:0;display:flex}.modal-body{min-height:0}.task-detail-grid{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.form-hint{color:var(--ink-4);font-size:.72rem}@media (width<=560px){.task-detail-grid{grid-template-columns:1fr}}.task-modal-title{-webkit-line-clamp:2;word-break:break-word;-webkit-box-orient:vertical;margin-bottom:4px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.task-modal-subtitle{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:.8rem;display:flex}.task-meta-grid{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.task-meta-item{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-md);min-width:0;padding:10px 12px}.task-meta-wide{grid-column:1/-1}.task-meta-label{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-4);margin-bottom:6px;font-size:.68rem;font-weight:700}.task-meta-value{color:var(--ink);font-size:.9rem;font-weight:500}.task-status-select{height:auto;padding:4px 8px;font-size:.85rem}.priority-pill{color:var(--pill-color);align-items:center;gap:6px;font-size:.8rem;font-weight:600;display:inline-flex}.priority-pill:before{content:"";background:var(--pill-color);border-radius:50%;width:8px;height:8px}.task-section{border-top:1px solid var(--border);margin-top:20px;padding-top:16px}.task-description{color:var(--ink-2);white-space:pre-wrap;word-break:break-word;font-size:.92rem;line-height:1.6}.task-description.empty{color:var(--ink-4);font-style:italic}@media (width<=560px){.task-meta-grid{grid-template-columns:1fr 1fr}}:root{--overdue-text:#b91c1c;--overdue-bg:#fee2e2}:root[data-theme=dark]{--overdue-text:#fca5a5;--overdue-bg:#ef44442e}.pending-task-row{flex-wrap:wrap;gap:8px 12px}.pending-task-row>div:first-child{flex:200px;min-width:0}.pending-task-title{flex-wrap:wrap}.status-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.status-dot.pending{background:var(--color-pending)}.status-dot.in_progress{background:var(--color-progress)}.status-dot.completed{background:var(--color-done)}.status-dot.returned{background:var(--color-returned)}.priority-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.priority-dot.low{background:var(--color-low)}.priority-dot.medium{background:var(--color-medium)}.priority-dot.high{background:var(--color-high)}.priority-dot.urgent{background:var(--color-urgent)}.table-wrapper{border:1px solid var(--border);border-radius:var(--radius-lg);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.85rem}thead th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-4);background:var(--bg-secondary);border-bottom:1px solid var(--border);white-space:nowrap;padding:10px 14px;font-size:.75rem;font-weight:600}tbody td{border-bottom:1px solid var(--border);color:var(--ink-2);vertical-align:middle;padding:11px 14px}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--bg-hover)}.modal-overlay{background:var(--bg-overlay);z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;padding:20px;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.modal,.modal-content{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:560px;max-height:90vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.18s slideUp;display:flex}.modal-lg{max-width:760px}.modal-xl{max-width:960px}.modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 22px 16px;display:flex}.modal-header h3,.modal-header h2,.modal-title{color:var(--ink);align-items:center;gap:8px;font-size:1rem;font-weight:600;display:flex}.modal-body{flex:1;padding:20px 22px;overflow-y:auto}.modal-footer{border-top:1px solid var(--border);flex-shrink:0;justify-content:flex-end;align-items:center;gap:10px;padding:16px 22px;display:flex}.kanban-board{align-items:stretch;gap:14px;height:100%;padding-bottom:16px;display:flex;overflow-x:auto}.kanban-column{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;flex:0 0 260px;gap:8px;min-height:60vh;max-height:calc(100vh - 140px);padding-bottom:8px;display:flex;overflow-y:auto}.kanban-column .task-card{-webkit-user-select:none;user-select:none;border-radius:var(--radius-md);flex-shrink:0;margin:0 8px}.kanban-column .task-card:hover{transform:none}.kanban-column-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 14px 10px;display:flex}.kanban-column-title{color:var(--ink-2);align-items:center;gap:7px;font-size:.8rem;font-weight:600;display:flex}.kanban-column-count{color:var(--ink-4);background:var(--bg-hover);border-radius:20px;padding:1px 7px;font-size:.75rem;font-weight:500}.kanban-column-body{flex-direction:column;flex:1;gap:8px;padding:10px;display:flex;overflow-y:auto}.kanban-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);cursor:pointer;padding:10px 12px;transition:box-shadow .12s,transform .1s,border-color .12s}.kanban-card:hover{box-shadow:var(--shadow-sm);border-color:var(--border-strong);transform:translateY(-1px)}.kanban-card-title{color:var(--ink);margin-bottom:6px;font-size:.82rem;font-weight:500;line-height:1.4}.kanban-card-meta{justify-content:space-between;align-items:center;gap:8px;display:flex}.task-bar.priority-low,.kanban-card.priority-low{border-left:3px solid var(--color-low)}.task-bar.priority-medium,.kanban-card.priority-medium{border-left:3px solid var(--color-medium)}.task-bar.priority-high,.kanban-card.priority-high{border-left:3px solid var(--color-high)}.task-bar.priority-urgent,.kanban-card.priority-urgent{border-left:3px solid var(--color-urgent)}.calendar-wrapper{flex-direction:column;height:100%;animation:.3s fadeIn;display:flex}.calendar-header{flex-shrink:0;justify-content:space-between;align-items:center;padding:0 0 16px;display:flex}.calendar-title{color:var(--ink);align-items:center;gap:8px;font-size:.95rem;font-weight:600;display:flex}.calendar-nav{align-items:center;gap:6px;display:flex}.calendar-grid{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--border);flex:1;grid-template-columns:repeat(7,1fr);gap:1px;display:grid;overflow:hidden}.calendar-weekday{background:var(--bg-secondary);text-align:center;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-4);padding:8px 10px;font-size:.72rem;font-weight:600}.calendar-day{background:var(--bg);min-height:90px;padding:8px;position:relative;overflow:hidden}.calendar-day.other-month{background:var(--bg-secondary)}.calendar-day.other-month .day-number{color:var(--ink-4)}.calendar-day.today .day-number{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.day-number{color:var(--ink-3);margin-bottom:4px;font-size:.78rem;font-weight:500;display:block}.task-bar{border-radius:var(--radius-sm);color:var(--ink);background:var(--bg-hover);cursor:pointer;white-space:nowrap;align-items:center;gap:4px;margin-bottom:2px;padding:2px 5px;font-size:.7rem;transition:background .1s;display:flex;overflow:hidden}.task-bar:hover{background:var(--accent-light);color:var(--accent)}.toast-container{z-index:9999;pointer-events:none;flex-direction:column-reverse;gap:8px;display:flex;position:fixed;bottom:24px;right:24px}.toast{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);color:var(--ink);pointer-events:auto;align-items:flex-start;gap:10px;max-width:340px;padding:12px 16px;font-size:.85rem;animation:.2s slideInRight;display:flex}.toast-success{border-left:3px solid var(--color-done)}.toast-error{border-left:3px solid var(--color-returned)}.toast-info{border-left:3px solid var(--accent)}.toast-warning{border-left:3px solid var(--color-pending)}.loading-spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin}.skeleton{background:linear-gradient(90deg, var(--bg-secondary) 25%, var(--bg-hover) 50%, var(--bg-secondary) 75%);border-radius:var(--radius);background-size:200% 100%;animation:1.2s infinite shimmer}.dropdown{display:inline-block;position:relative}.dropdown-menu{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);z-index:100;min-width:180px;animation:.12s fadeIn;position:absolute;top:calc(100% + 4px);right:0;overflow:hidden}.dropdown-item{color:var(--ink-2);cursor:pointer;align-items:center;gap:8px;padding:9px 14px;font-size:.85rem;transition:background .1s;display:flex}.dropdown-item:hover{background:var(--bg-hover);color:var(--ink)}.dropdown-item.danger{color:var(--color-returned)}.dropdown-item.danger:hover{background:#fee2e2}.dropdown-divider{background:var(--border);height:1px;margin:4px 0}.search-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:var(--ink-4);pointer-events:none;width:15px;height:15px;position:absolute;left:10px}.search-input{padding-left:34px!important}.avatar{object-fit:cover;color:#fff;background:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:600;display:flex}.avatar-xs{width:20px;height:20px;font-size:.65rem}.avatar-sm{width:28px;height:28px;font-size:.75rem}.avatar-md{width:36px;height:36px;font-size:.85rem}.avatar-lg{width:48px;height:48px;font-size:1rem}.avatar-group{display:flex}.avatar-group .avatar{border:2px solid var(--bg);margin-left:-6px}.avatar-group .avatar:first-child{margin-left:0}.tabs{border-bottom:1px solid var(--border);gap:2px;margin-bottom:20px;display:flex}.tab{color:var(--ink-3);cursor:pointer;border-radius:var(--radius) var(--radius) 0 0;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 16px;font-size:.85rem;font-weight:500;transition:color .12s,border-color .12s}.tab:hover{color:var(--ink);background:var(--bg-hover)}.tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.progress-bar{background:var(--bg-hover);border-radius:20px;height:6px;overflow:hidden}.progress-fill{background:var(--accent);border-radius:20px;height:100%;transition:width .4s}.progress-fill.success{background:var(--color-done)}.progress-fill.warning{background:var(--color-pending)}.progress-fill.danger{background:var(--color-returned)}.pagination{justify-content:center;align-items:center;gap:4px;padding:16px 0 4px;display:flex}.page-btn{border-radius:var(--radius-md);width:32px;height:32px;color:var(--ink-3);cursor:pointer;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-size:.82rem;font-weight:500;transition:background .12s,color .12s;display:flex}.page-btn:hover{background:var(--bg-hover);color:var(--ink)}.page-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}.page-btn:disabled{opacity:.35;pointer-events:none}.empty-state{text-align:center;color:var(--ink-4);border:1px dashed var(--border-strong);border-radius:var(--radius-lg);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:48px 24px;display:flex}.empty-state svg{opacity:.4;width:36px;height:36px}.empty-state p{font-size:.88rem;line-height:1.6}.tag{border-radius:var(--radius-sm);background:var(--bg-hover);color:var(--ink-2);border:1px solid var(--border);align-items:center;gap:4px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-flex}.tag-accent{background:var(--accent-light);color:var(--accent);border-color:var(--accent-muted)}.divider{background:var(--border);height:1px;margin:16px 0}.section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-title{color:var(--ink);font-size:.88rem;font-weight:600}.editable{cursor:text;border-radius:var(--radius-sm);padding:2px 4px;transition:background .1s}.editable:hover{background:var(--bg-hover)}.editable:focus{background:var(--bg-hover);box-shadow:0 0 0 2px var(--accent);outline:none}.stats-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:14px;margin-bottom:24px;display:grid}.content-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;display:grid}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{background-position:-200% 0}}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:20px}::-webkit-scrollbar-thumb:hover{background:var(--ink-4)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.mt-1{margin-top:4px}.mt-2{margin-top:8px}.mt-3{margin-top:12px}.mt-4{margin-top:16px}.mb-2{margin-bottom:8px}.mb-4{margin-bottom:16px}.text-sm{font-size:.8rem}.text-xs{font-size:.72rem}.text-muted{color:var(--ink-4)}.text-accent{color:var(--accent)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.w-full{width:100%}.sr-only{clip:rect(0,0,0,0);border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.accent-picker{flex-wrap:wrap;gap:8px;display:flex}.accent-swatch{cursor:pointer;border:3px solid #0000;border-radius:50%;width:28px;height:28px;transition:border-color .12s,transform .12s}.accent-swatch:hover{transform:scale(1.15)}.accent-swatch.active{border-color:var(--ink)}.accent-swatch[data-color=blue]{background:#2563eb}.accent-swatch[data-color=gray]{background:#64748b}.accent-swatch[data-color=purple]{background:#7c3aed}.accent-swatch[data-color=red]{background:#dc2626}.auth-screen{background:var(--bg-secondary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-lg);padding:36px 40px}.auth-logo{text-align:center;margin-bottom:28px}.auth-logo img{border-radius:var(--radius-lg);width:48px;height:48px}.auth-logo h1{letter-spacing:-.02em;margin-top:12px;font-size:1.4rem;font-weight:700}:root{--cyan:var(--accent);--cyan-bright:var(--accent);--cyan-chip:var(--accent-muted);--red:#e11d48;--green:#10b981;--amber:#f59e0b;--color-blue-accent:var(--accent);--color-celeste:var(--accent);--color-celeste-light:var(--accent-light);--color-blue-dark:var(--accent-dark);--color-completed:#6b7280;--color-progress:#f97316;--color-returned:#ef4444;--color-review:#8b5cf6;--bg-panel:var(--bg-secondary);--bg-input:var(--bg);--ink-dim:var(--ink-3);--ink-faint:var(--ink-4);--panel-soft:var(--bg-hover);--border-subtle:var(--border);--border-soft:var(--border);--border-radius-md:var(--radius-md);--laite-indigo:var(--accent);--laite-periwinkle:var(--accent)}.general-dashboard{flex-direction:column;gap:0;display:flex}.stats-row{grid-template-columns:repeat(6,1fr);gap:12px;margin-bottom:24px;display:grid}.stat{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:16px;transition:box-shadow .15s;display:flex}.stat:hover{box-shadow:var(--shadow-sm)}.stat-icon{color:var(--stat-color,var(--accent));margin-bottom:4px;font-size:1.2rem;display:flex}.stat-icon svg{width:22px;height:22px}.stat-value{color:var(--ink);letter-spacing:-.03em;font-size:1.8rem;font-weight:700;line-height:1}.stat-label{color:var(--ink-4);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:500}.lower-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:8px;display:grid}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.card-head .card-title{color:var(--ink);align-items:center;gap:7px;font-size:.9rem;font-weight:600;display:flex}.card-head .card-title svg{opacity:.7;width:16px;height:16px}.work-table{border-collapse:collapse;font-size:.85rem}.work-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-4);border-bottom:1px solid var(--border);padding:8px 12px;font-size:.72rem;font-weight:600}.work-table td{border-bottom:1px solid var(--border);color:var(--ink-2);vertical-align:middle;padding:10px 12px}.work-table tbody tr:last-child td{border-bottom:none}.work-table tbody tr:hover td{background:var(--bg-hover)}.member-cell{align-items:center;gap:10px;display:flex}.member-name{color:var(--ink);font-size:.85rem;font-weight:500}.gauge-wrap{align-items:center;gap:8px;display:flex}.gauge{background:var(--bg-hover);border-radius:20px;flex:1;height:6px;overflow:hidden}.gauge-fill{background:var(--accent);border-radius:20px;min-width:4px;height:100%;transition:width .4s}.gauge-total{color:var(--ink-3);text-align:right;min-width:20px;font-size:.8rem;font-weight:600}.correction-card{border:1px solid var(--border);border-left:3px solid var(--color-returned);border-radius:var(--radius-md);background:var(--bg);margin-bottom:10px;padding:12px 14px;transition:box-shadow .12s}.correction-card:hover{box-shadow:var(--shadow-xs)}.correction-card:last-child{margin-bottom:0}.stamp{text-transform:uppercase;letter-spacing:.08em;color:var(--color-returned);border-radius:var(--radius-sm);background:#fee2e2;margin-bottom:6px;padding:1px 6px;font-size:.65rem;font-weight:700;display:inline-block}:root[data-theme=dark] .stamp{background:#ef444426}.correction-title{color:var(--ink);margin-bottom:5px;font-size:.88rem;font-weight:500}.correction-meta{color:var(--ink-4);align-items:center;gap:6px;font-size:.78rem;display:flex}.correction-meta .dot{background:var(--ink-4);border-radius:50%;flex-shrink:0;width:3px;height:3px}.correction-quote{color:var(--ink-3);background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:2px solid var(--border-strong);margin-top:8px;padding:6px 10px;font-size:.8rem;font-style:italic}.empty-note{text-align:center;color:var(--ink-4);padding:28px 16px;font-size:.85rem}.app{background:var(--bg);height:100vh;display:flex;overflow:hidden}.sidebar-header{border-bottom:1px solid var(--border);flex-shrink:0}.nav-label{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-3);padding:14px 18px 4px;font-size:.68rem;font-weight:700}.clients-menu-list{flex-direction:column;gap:1px;padding:4px 8px;display:flex}.client-row{border-radius:var(--radius);cursor:pointer;color:var(--ink);align-items:center;gap:9px;padding:6px 8px;font-size:.82rem;font-weight:500;transition:background .12s;display:flex;overflow:hidden}.client-row:hover{background:var(--bg-hover)}.client-row.active{background:var(--accent-light);color:var(--accent);font-weight:500}.client-chip{border-radius:var(--radius-sm);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.6rem;font-weight:700;display:flex;overflow:hidden}.add-client{color:var(--ink-4);cursor:pointer;text-align:left;border-radius:var(--radius);background:0 0;border:none;align-items:center;gap:6px;width:100%;margin:2px 0;padding:6px 18px;font-size:.8rem;transition:color .12s,background .12s;display:flex}.add-client:hover{color:var(--accent);background:var(--accent-light)}.sidebar-spacer{flex:1}.pm-card{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);align-items:center;gap:10px;padding:10px 12px;transition:box-shadow .12s,border-color .12s;display:flex}.pm-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-xs)}.pm-name{color:var(--ink);font-size:.82rem;font-weight:600}.pm-handle{color:var(--ink-4);margin-top:1px;font-size:.75rem}.pm-role{letter-spacing:.05em;color:var(--accent);background:var(--accent-light);border-radius:var(--radius-sm);padding:1px 5px;font-size:.65rem;font-weight:700}.search-bar{flex:1;align-items:center;padding:0 4px;display:flex}.search-bar h1{color:var(--ink);letter-spacing:-.01em;margin:0;font-size:1.1rem;font-weight:600}.eyebrow{color:var(--ink-4);text-transform:uppercase;letter-spacing:.05em;font-size:.7rem;font-weight:500}.icon-btn{border-radius:var(--radius-md);width:34px;height:34px;color:var(--ink-3);cursor:pointer;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex;position:relative}.icon-btn:hover{background:var(--bg-hover);color:var(--ink)}.view-container{flex:1;padding:24px 28px;overflow-y:auto}.client-tabs-container{border-bottom:1px solid var(--border);flex-shrink:0;gap:4px;margin-bottom:0;padding:0 28px;display:flex;overflow-x:auto}.client-tabs-container .btn{border-radius:var(--radius) var(--radius) 0 0;color:var(--ink-3);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:500}.client-tabs-container .btn:hover{background:var(--bg-hover);color:var(--ink)}.client-tabs-container .btn.primary{color:var(--accent);border-bottom-color:var(--accent);background:0 0;font-weight:600}.mobile-menu-btn{cursor:pointer;color:var(--ink-2);border-radius:var(--radius);background:0 0;border:none;padding:4px;display:none}.mobile-menu-btn:hover{background:var(--bg-hover)}.mobile-menu-close{cursor:pointer;color:var(--ink-3);background:0 0;border:none;padding:4px;display:none}.mobile-overlay{background:var(--bg-overlay);z-index:40;display:none;position:fixed;inset:0}.dashboard-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.kpi-row{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px;display:grid}.kpi-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-lg);text-align:center;padding:14px 16px}.kpi-value{color:var(--ink);letter-spacing:-.03em;margin-bottom:4px;font-size:1.6rem;font-weight:700;line-height:1}.kpi-label{color:var(--ink-4);text-transform:uppercase;letter-spacing:.04em;font-size:.72rem;font-weight:500}.notes-container{flex-direction:column;gap:10px;display:flex}.note-bubble{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 14px}.note-meta{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.note-author{color:var(--ink-3);font-size:.75rem;font-weight:600}.note-content{color:var(--ink-2);white-space:pre-wrap;font-size:.85rem;line-height:1.6}.note-form{gap:8px;margin-top:10px;display:flex}.resources-container{flex-direction:column;gap:12px;display:flex}.resources-list{flex-direction:column;gap:6px;display:flex}.input-field{background:var(--bg);border:1px solid var(--border-strong);border-radius:var(--radius-md);width:100%;font-family:var(--font);color:var(--ink);outline:none;padding:8px 11px;font-size:.875rem}.input-field:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 15%, transparent)}.login-page{background:var(--bg);min-height:100vh;display:flex}.login-left{background:var(--bg-secondary);border-right:1px solid var(--border);flex-direction:column;flex:1;justify-content:center;padding:60px 64px;display:flex}.login-brand{align-items:center;gap:12px;margin-bottom:48px;display:flex}.brand-mark{background:var(--accent);border-radius:var(--radius-lg);color:#fff;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.1rem;font-weight:700;display:flex}.login-tagline{color:var(--ink);letter-spacing:-.03em;margin-bottom:12px;font-size:2rem;font-weight:700;line-height:1.2}.login-subtitle{color:var(--ink-3);margin-bottom:40px;font-size:1rem;line-height:1.6}.login-features{flex-direction:column;gap:14px;display:flex}.login-feature{color:var(--ink-2);align-items:center;gap:12px;font-size:.88rem;display:flex}.login-feature-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:8px;height:8px}.login-right{flex:1;justify-content:center;align-items:center;padding:40px;display:flex}.login-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:420px;box-shadow:var(--shadow-lg);padding:36px 40px}.login-card-title{color:var(--ink);letter-spacing:-.02em;margin-bottom:4px;font-size:1.3rem;font-weight:700}.login-card-subtitle{color:var(--ink-4);margin-bottom:24px;font-size:.85rem}.login-deactivated-alert{border-radius:var(--radius-md);background:#fef2f2;border:1px solid #fecaca;margin-bottom:16px;padding:12px 14px}:root[data-theme=dark] .login-deactivated-alert{background:#ef44441a;border-color:#ef44444d}.alert-title{color:#b91c1c;margin-bottom:4px;font-size:.85rem;font-weight:600}:root[data-theme=dark] .alert-title{color:#fca5a5}.alert-body{color:#991b1b;font-size:.8rem}:root[data-theme=dark] .alert-body{color:#fca5a5}.user-grid{grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin-bottom:20px;display:grid}.user-quick-btn{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg);cursor:pointer;color:var(--ink-2);font-size:.75rem;font-family:var(--font);flex-direction:column;align-items:center;gap:5px;padding:10px 8px;transition:background .12s,border-color .12s;display:flex}.user-quick-btn:hover{background:var(--accent-light);border-color:var(--accent-muted);color:var(--accent)}.user-quick-avatar{object-fit:cover;border-radius:50%;width:36px;height:36px}.login-divider{color:var(--ink-4);align-items:center;gap:10px;margin:16px 0;font-size:.75rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:var(--border);flex:1;height:1px}.login-error{border-radius:var(--radius-md);color:#b91c1c;background:#fef2f2;border:1px solid #fecaca;margin-bottom:14px;padding:10px 14px;font-size:.82rem}.profile-panel-overlay{background:var(--bg-overlay);z-index:200;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:flex-end;animation:.15s fadeIn;display:flex;position:fixed;inset:0}.profile-panel{background:var(--bg);border-left:1px solid var(--border);width:420px;height:100%;box-shadow:var(--shadow-lg);flex-direction:column;animation:.2s slideInRight;display:flex;overflow-y:auto}.profile-panel-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:20px 22px;display:flex}.profile-panel-body{flex:1;padding:22px;overflow-y:auto}.customization-section{margin-bottom:24px}.customization-title{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-4);border-bottom:1px solid var(--border);margin-bottom:12px;padding-bottom:8px;font-size:.78rem;font-weight:600}.modal-close{width:30px;height:30px;color:var(--ink-3);cursor:pointer;border-radius:var(--radius);background:0 0;border:none;justify-content:center;align-items:center;transition:background .1s,color .1s;display:flex}.modal-close:hover{background:var(--bg-hover);color:var(--ink)}.theme-toggle-row{justify-content:space-between;align-items:center;padding:10px 0;display:flex}.toggle-switch{background:var(--border-strong);cursor:pointer;border-radius:20px;flex-shrink:0;width:40px;height:22px;transition:background .2s;position:relative}.toggle-switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-switch.on{background:var(--accent)}.toggle-switch.on:after{transform:translate(18px)}.profile-request-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg);margin-bottom:10px;padding:14px 16px}.profile-request-card.pending{border-left:3px solid var(--color-pending)}.profile-request-card.approved{border-left:3px solid var(--color-done)}.profile-request-card.rejected{border-left:3px solid var(--color-returned)}.profile-request-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.request-status-badge{text-transform:uppercase;letter-spacing:.05em;border-radius:20px;padding:2px 8px;font-size:.7rem;font-weight:700}.request-status-badge.pending{color:#92400e;background:#fef3c7}.request-status-badge.approved{color:#065f46;background:#d1fae5}.request-status-badge.rejected{color:#991b1b;background:#fee2e2}:root[data-theme=dark] .request-status-badge.pending{color:#fcd34d;background:#f59e0b2e}:root[data-theme=dark] .request-status-badge.approved{color:#6ee7b7;background:#10b9812e}:root[data-theme=dark] .request-status-badge.rejected{color:#fca5a5;background:#ef44442e}.request-changes-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.change-item{background:var(--bg-secondary);border-radius:var(--radius-md);padding:8px 10px}.change-label{color:var(--ink-4);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:.7rem;font-weight:600}.change-value{color:var(--ink-2);font-size:.82rem}.card.editing{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.column-header{color:var(--ink-2);justify-content:space-between;align-items:center;padding:10px 12px;font-size:.82rem;font-weight:600;display:flex}.column-badge{background:var(--bg-active);min-width:20px;height:20px;color:var(--ink-3);border-radius:20px;justify-content:center;align-items:center;padding:0 6px;font-size:.72rem;font-weight:700;display:inline-flex}.task-card-title{color:var(--ink);margin-bottom:6px;font-size:.82rem;font-weight:500;line-height:1.4}.task-card-dates{color:var(--ink-4);align-items:center;gap:4px;margin-top:4px;font-size:.72rem;display:flex}.task-card.priority-high,.task-card.priority-medium,.task-card.priority-low{border-left:none}.admin-users-view{padding:0}.admin-tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;padding-bottom:0;display:flex}.admin-tab{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:color .15s,border-color .15s}.admin-tab:hover{color:var(--ink)}.admin-tab.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.admin-users-table{border-collapse:collapse;width:100%}.admin-users-table th,.admin-users-table td{border-bottom:1px solid var(--border);text-align:left;padding:10px 12px;font-size:.83rem}.admin-users-table th{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-4);background:var(--bg-secondary);font-size:.72rem;font-weight:700}.badge{letter-spacing:.04em;text-transform:uppercase;border-radius:20px;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.badge-role-admin{color:#5b21b6;background:#ede9fe}.badge-role-member{color:#475569;background:#f1f5f9}:root[data-theme=dark] .badge-role-admin{color:#a78bfa;background:#7c3aed33}:root[data-theme=dark] .badge-role-member{color:#94a3b8;background:#64748b33}.user-status-badge{align-items:center;gap:5px;font-size:.78rem;font-weight:500;display:inline-flex}.user-status-badge.active{color:var(--green)}.user-status-badge.inactive{color:var(--ink-4)}.user-status-dot{background:currentColor;border-radius:50%;flex-shrink:0;width:7px;height:7px}.action-btn-row{align-items:center;gap:6px;display:flex}.action-btn{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--ink-2);cursor:pointer;padding:4px 10px;font-size:.75rem;font-weight:600;transition:background .12s,border-color .12s,color .12s}.action-btn:hover{background:var(--bg-hover);border-color:var(--border-strong)}.action-btn.danger{color:#e11d48;border-color:#fecdd3}.action-btn.danger:hover{background:#fff1f2;border-color:#e11d48}.action-btn.success{color:var(--green);border-color:#a7f3d0}.action-btn.success:hover{border-color:var(--green);background:#ecfdf5}.sidebar-collapse-btn{background:0 0;border:none;flex-shrink:0}@media (width>=769px){.sidebar.collapsed{width:68px}.sidebar.collapsed .brand{padding:16px 0 12px;justify-content:center!important}.sidebar.collapsed img.brand-wordmark{object-fit:cover;object-position:0 50%;width:30px}.sidebar.collapsed .nav-label{border-top:1px solid var(--border);margin:0 14px;padding:10px 0 4px;font-size:0}.sidebar.collapsed .sidebar-header+.nav-label{border-top:none}.sidebar.collapsed>.nav-item{justify-content:center;gap:0;padding:10px 0;font-size:0}.sidebar.collapsed>.nav-item span{display:none}.sidebar.collapsed .clients-menu-list{padding:4px 8px}.sidebar.collapsed .client-row{justify-content:center;padding:6px 0}.sidebar.collapsed .client-row>:not(.client-chip){display:none}.sidebar.collapsed .add-client{justify-content:center;gap:0;padding:8px 0;font-size:0}.sidebar.collapsed .sidebar-profile{padding:0 10px!important}.sidebar.collapsed .pm-card{justify-content:center;padding:8px 0}.sidebar.collapsed .pm-card>div:last-child{display:none}}@media (width<=768px){.sidebar-collapse-btn{display:none}}.user-card-popup{max-width:calc(100vw - 24px);max-height:calc(100vh - 24px);overflow-y:auto}@media (width<=1024px){.sidebar{width:200px}.stats-row{grid-template-columns:repeat(3,1fr)}.lower-grid{grid-template-columns:1fr}}@media (width<=768px){.app{flex-direction:column}.mobile-menu-btn,.mobile-menu-close{display:flex}.mobile-overlay{display:block}.sidebar{z-index:50;width:260px;box-shadow:var(--shadow-lg);transition:left .25s;position:fixed;top:0;bottom:0;left:-100%}.sidebar.open{left:0}.main-content{width:100%}.kanban-board{gap:12px;overflow-x:auto}.kanban-column{flex:0 0 230px}.calendar-grid{font-size:.75rem}.calendar-day{min-height:60px;padding:4px}.modal{border-radius:var(--radius-lg)}.modal-header,.modal-body,.modal-footer{padding:14px 16px}.stats-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}table{font-size:.78rem}thead th,tbody td{padding:8px 10px}.topbar{padding:0 12px}.view-container{padding:16px 12px}.client-tabs-container{padding:0 12px}.stats-row{grid-template-columns:repeat(2,1fr);gap:8px}.responsive-grid{grid-template-columns:1fr!important}.modal-overlay{padding:8px}.modal-content{max-height:94vh}.modal-body{overflow-y:auto}.profile-panel{width:100%}.login-page{flex-direction:column}.login-left{text-align:center;border-right:none;flex:none;align-items:center;padding:28px 20px 8px}.login-brand{justify-content:center;margin-bottom:16px}.login-tagline{margin-bottom:0;font-size:1.5rem}.login-subtitle,.login-features{display:none}.login-right{flex:none;padding:20px 16px 32px}.login-card{padding:24px 20px}}@media (width<=480px){.stats-grid{grid-template-columns:1fr 1fr}.auth-card{padding:24px 20px}}.user-card-popup{z-index:9999;background:var(--bg-card,#1e2130);border:1px solid var(--border,#ffffff14);width:320px;color:var(--text-primary,#e2e8f0);border-radius:12px;padding:20px;animation:.15s fadeInPop;position:fixed;box-shadow:0 8px 32px #0006}@keyframes fadeInPop{0%{opacity:0;transform:scale(.96)translateY(-4px)}to{opacity:1;transform:scale(1)translateY(0)}}.user-card-close{color:var(--text-muted,#64748b);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;transition:color .15s,background .15s;display:flex;position:absolute;top:10px;right:10px}.user-card-close:hover{color:var(--text-primary,#e2e8f0);background:var(--bg-hover,#ffffff0f)}.user-card-loading{text-align:center;color:var(--text-muted,#64748b);padding:32px 0;font-size:.85rem}.user-card-header{align-items:center;gap:14px;margin-bottom:16px;display:flex}.user-card-identity{flex:1;min-width:0}.user-card-name{color:var(--text-primary,#e2e8f0);align-items:center;gap:6px;font-size:1rem;font-weight:700;display:flex}.user-card-role{color:var(--cyan,#22d3ee);margin-top:2px;font-size:.78rem}.user-card-dept{color:var(--text-muted,#64748b);margin-top:1px;font-size:.75rem}.emp-month-badge{font-size:.85rem}.user-card-stats{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px;display:grid}.ucs-item{text-align:center;background:var(--bg-secondary,#ffffff0a);border-radius:8px;padding:8px 4px}.ucs-val{font-size:1.2rem;font-weight:700;line-height:1;display:block}.ucs-label{color:var(--text-muted,#64748b);margin-top:3px;font-size:.65rem;display:block}.user-card-section{margin-bottom:12px}.user-card-section-title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted,#64748b);align-items:center;gap:4px;margin-bottom:8px;font-size:.72rem;font-weight:600;display:flex}.user-card-tasks{flex-direction:column;gap:6px;display:flex}.uct-item{background:var(--bg-secondary,#ffffff0a);border-radius:7px;align-items:center;gap:8px;padding:6px 8px;display:flex}.uct-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.uct-info{flex:1;min-width:0}.uct-title{white-space:nowrap;text-overflow:ellipsis;font-size:.8rem;font-weight:500;display:block;overflow:hidden}.uct-client{color:var(--text-muted,#64748b);font-size:.7rem;display:block}.uct-status{white-space:nowrap;flex-shrink:0;font-size:.7rem;font-weight:500}.user-card-empty{color:var(--text-muted,#64748b);padding:8px 0;font-size:.8rem}.ucl-item{border-bottom:1px solid var(--border,#ffffff0f);align-items:center;gap:8px;padding:5px 0;font-size:.78rem;display:flex}.ucl-item:last-child{border-bottom:none}.ucl-type{color:var(--text-primary,#e2e8f0);min-width:80px;font-weight:600}.ucl-dates{color:var(--text-muted,#64748b);flex:1}.ucl-pending{color:#fbbf24;background:#fbbf2426;border-radius:4px;padding:1px 5px;font-size:.65rem}
