@layer reset,theme,base,components,utilities;@layer reset{*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html,body,#root{height:100%}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.5;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,svg,video{display:block;max-width:100%}button{font-family:inherit}}@layer theme{:root{--bg: #06080d;--bg-gradient: linear-gradient(135deg, #06080d 0%, #0c1018 50%, #0a0e16 100%);--surface: rgba(15, 20, 30, .8);--surface-solid: #0f141e;--surface-2: rgba(20, 28, 42, .9);--surface-3: rgba(30, 40, 58, .95);--surface-glass: rgba(15, 20, 30, .6);--primary: #3b82f6;--primary-light: #60a5fa;--primary-600: #2563eb;--primary-700: #1d4ed8;--primary-800: #1e40af;--primary-glow: rgba(59, 130, 246, .15);--accent: #f59e0b;--accent-light: #fbbf24;--accent-glow: rgba(245, 158, 11, .15);--text: #f1f5f9;--text-secondary: #94a3b8;--muted: #64748b;--muted-dark: #475569;--border: rgba(51, 65, 85, .5);--border-light: rgba(71, 85, 105, .6);--border-glow: rgba(59, 130, 246, .3);--success: #10b981;--success-light: #34d399;--warning: #f59e0b;--warning-light: #fbbf24;--danger: #ef4444;--danger-light: #f87171;--radius: 12px;--radius-sm: 8px;--radius-lg: 16px;--radius-xl: 24px;--shadow: 0 4px 20px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 40px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .6);--shadow-glow: 0 0 30px var(--primary-glow);--elevation-1: 0 2px 8px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.05);--elevation-2: 0 4px 16px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.06);--elevation-3: 0 8px 32px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.08);--focus-ring: 0 0 0 3px var(--primary-glow), 0 0 20px var(--primary-glow);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-8: 48px;--font-xs: 11px;--font-sm: 13px;--font-md: 14px;--font-lg: 18px;--font-xl: 24px;--font-2xl: 32px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--sidebar-width: 280px;--sidebar-collapsed: 72px}}@layer base{.app{min-height:100%;background:var(--bg-gradient);background-attachment:fixed}.sidebar{background:var(--surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-right:1px solid var(--border);display:flex;flex-direction:column;position:fixed;left:0;top:0;width:var(--sidebar-width);height:100vh;overflow-y:auto;overflow-x:hidden;z-index:100;transition:transform var(--transition),width var(--transition)}.mobile-menu-toggle{display:none;position:fixed;top:16px;left:16px;z-index:200;width:44px;height:44px;border-radius:var(--radius);background:var(--surface-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border);color:var(--text);font-size:20px;cursor:pointer;align-items:center;justify-content:center;transition:all var(--transition);box-shadow:var(--shadow)}.mobile-menu-toggle:hover{background:var(--surface-2);border-color:var(--primary)}.brand{display:flex;align-items:center;gap:14px;padding:20px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,rgba(59,130,246,.1) 0%,transparent 100%)}.brand-logo{width:42px;height:42px;border-radius:var(--radius);object-fit:contain;box-shadow:var(--shadow)}.brand-name{font-weight:700;font-size:19px;color:var(--text);letter-spacing:-.3px}.nav{display:flex;flex-direction:column;padding:16px 12px;flex:1;gap:6px}.nav a{padding:12px 16px;border-radius:var(--radius);color:var(--text-secondary);text-decoration:none;font-weight:500;font-size:14px;transition:all var(--transition);display:flex;align-items:center;gap:12px;position:relative;overflow:hidden}.nav a:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:var(--primary);border-radius:0 4px 4px 0;transition:height var(--transition)}.nav a:hover{background:var(--surface-2);color:var(--text)}.nav a:hover:before{height:60%}.nav a.active{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-700) 100%);color:#fff;font-weight:600;box-shadow:0 4px 15px var(--primary-glow),var(--shadow-glow)}.nav a.active:before{height:0}.nav a .nav-icon{font-size:18px;opacity:.9}.sidebar-footer{padding:12px;border-top:1px solid var(--border);margin-top:auto;background:linear-gradient(180deg,transparent 0%,rgba(0,0,0,.2) 100%)}.sidebar-footer .logs-link{display:flex;align-items:center;gap:8px;color:var(--text);text-decoration:none;margin:4px 2px 10px;font-weight:600;padding:12px 14px;border-radius:var(--radius);background:linear-gradient(135deg,var(--primary) 0%,var(--primary-700) 100%);transition:all var(--transition);box-shadow:0 4px 12px var(--primary-glow)}.sidebar-footer .logs-link:hover{transform:translateY(-2px);box-shadow:0 6px 20px var(--primary-glow)}.sidebar-footer .dashboard-link{display:block;color:var(--text-secondary);text-decoration:none;margin:4px 2px 10px;font-weight:500;padding:8px 14px;border-radius:var(--radius);transition:all var(--transition)}.sidebar-footer .dashboard-link:hover{color:var(--text);background:var(--surface-2)}.sidebar-footer .logout-btn{display:flex;align-items:center;gap:8px;padding:12px 14px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);color:var(--text);text-decoration:none;transition:all var(--transition);cursor:pointer}.sidebar-footer .logout-btn:hover{background:#ef44441a;border-color:#ef44444d;color:var(--danger)}.sidebar-footer .logout-text{font-weight:600}.content{padding:24px 28px;margin-left:var(--sidebar-width);width:calc(100% - var(--sidebar-width));min-height:100vh;transition:margin-left var(--transition),width var(--transition)}.page{max-width:1600px;margin:0 auto;display:grid;gap:24px;animation:fadeInUp .4s ease}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-title{background:transparent;color:var(--text-primary);padding:16px 0;font-size:28px;font-weight:700;letter-spacing:-.5px}.card{background:var(--surface);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--elevation-1);transition:all var(--transition);position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.1) 50%,transparent 100%);pointer-events:none}.card.flat{background:var(--surface-solid);box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.card.interactive{cursor:pointer}.card.interactive:hover{box-shadow:var(--elevation-3),0 0 30px var(--primary-glow);transform:translateY(-4px);border-color:var(--border-light)}.card.interactive:active{transform:translateY(-2px);box-shadow:var(--elevation-2)}.card.pad{padding:var(--space-6)}.card.dense{padding:var(--space-4)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.card-header .title{font-size:var(--font-lg);font-weight:700;letter-spacing:-.3px;color:var(--text)}.card-header .subtitle{font-size:var(--font-sm);color:var(--muted);margin-top:4px}.muted{color:var(--muted)}.grid{display:grid;gap:16px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width: 1280px){.kpi-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.grid.cols-4,.grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(2,1fr)}.content{padding:20px}}@media (max-width: 768px){.mobile-menu-toggle{display:flex}.sidebar{transform:translate(-100%);box-shadow:none}.sidebar.is-open{transform:translate(0);box-shadow:var(--shadow-xl)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:99;opacity:0;visibility:hidden;transition:all var(--transition)}.sidebar-overlay.visible{opacity:1;visibility:visible}.content{margin-left:0;width:100%;padding:70px 16px 16px}.page{gap:16px}.page-title{font-size:22px;padding:16px 20px}.card.pad{padding:var(--space-4)}.kpi-grid{grid-template-columns:1fr}}@media (max-width: 640px){.app{display:block}.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}.toolbar{flex-direction:column;gap:12px}.toolbar input[type=text],.toolbar select{width:100%}.divider{display:none}.btn{padding:10px 14px}.btn-sm{padding:8px 12px}.model-header-card{flex-direction:column;text-align:center;padding:16px}.model-header-card .model-info{align-items:center}}@media (max-width: 400px){.content{padding:66px 12px 12px}.page-title{font-size:20px;padding:12px 0}.brand-name{font-size:16px}.nav a{padding:10px 14px;font-size:13px}}.contacts-header-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-bottom:16px}@media (max-width: 768px){.contacts-header-row{flex-direction:column;align-items:stretch}.contacts-header-row .select,.contacts-header-row .btn{width:100%}}.kpi-table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px}.kpi-table{min-width:800px}@media (max-width: 768px){.kpi-table{font-size:13px}.kpi-table th,.kpi-table td{padding:10px 8px}}.model-header{display:flex;align-items:center;gap:20px;padding:20px 24px;margin-bottom:20px;background:linear-gradient(135deg,var(--surface-2) 0%,var(--surface) 100%);border-radius:var(--radius-lg);border:1px solid var(--border)}@media (max-width: 640px){.model-header{flex-direction:column;text-align:center;gap:16px;padding:16px}.model-header .avatar{width:70px;height:70px;font-size:24px}.model-header .info{align-items:center}.model-header .info h2{font-size:20px}.model-header .badges{justify-content:center}}@media (max-width: 768px){form .grid.cols-2{grid-template-columns:1fr}}.edit-mode-banner{position:sticky;top:0;z-index:1000;background:linear-gradient(135deg,#dc2626,#b91c1c);padding:12px 24px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 4px 12px #dc26264d;border-bottom:2px solid rgba(255,255,255,.2);color:#fff;font-weight:600;font-size:15px}@media (max-width: 640px){.edit-mode-banner{flex-direction:column;gap:12px;padding:12px 16px;text-align:center}.edit-mode-banner .actions{width:100%;display:flex;gap:8px}.edit-mode-banner .actions .btn{flex:1}}.section-title{display:flex;align-items:center;gap:12px;margin:0 0 var(--space-5) 0;padding:14px 18px;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--surface) 0%,var(--surface-2) 100%);color:#f1f5f9;font-weight:700;font-size:16px;border:1px solid var(--border);box-shadow:var(--elevation-1);letter-spacing:-.3px}.section-title .caret{font-size:18px;opacity:.7;transition:transform .3s ease;color:var(--primary)}.section-title.collapsible{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease}.section-title.collapsible:hover{background:linear-gradient(135deg,var(--surface-2) 0%,var(--surface-3) 100%);border-color:var(--border-light)}.section-title.collapsible:hover .caret{opacity:1;transform:scale(1.1)}.section-title.open .caret{transform:rotate(90deg)}.toolbar{display:flex;gap:var(--space-4);flex-wrap:wrap;align-items:center;padding:var(--space-5);border:1px solid var(--border);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--elevation-2)}.toolbar input[type=text],.toolbar select{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;color:#f1f5f9;font-size:14px;font-weight:500;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 4px #0003}.toolbar input[type=text]:hover,.toolbar select:hover{border-color:var(--border-light);background:var(--surface-3)}.toolbar input[type=text]:focus,.toolbar select:focus{outline:none;box-shadow:var(--focus-ring);border-color:var(--primary);background:var(--surface-3)}.toolbar select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%2394a3b8' d='M4 6l4 4 4-4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.divider{height:24px;width:1px;background:var(--border-light)}.kpi .trend{font-size:12px;font-weight:600;color:#10b981}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--surface-solid);border-radius:10px}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:10px;border:2px solid var(--surface-solid)}::-webkit-scrollbar-thumb:hover{background:var(--primary-700)}table{width:100%;border-collapse:separate;border-spacing:0 6px}@media (max-width: 768px){.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 -16px;padding:0 16px}table{min-width:600px}}th,td{padding:14px 16px;white-space:nowrap;text-align:left}thead th{color:var(--text-secondary);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;background:var(--surface);border-bottom:1px solid var(--border)}tbody tr{background:var(--surface);border:1px solid var(--border);transition:all var(--transition)}tbody tr:hover{background:var(--surface-2);border-color:var(--border-light)}tbody tr td:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}tbody tr td:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:99px;border:1px solid var(--border);background:var(--surface);font-size:13px;font-weight:500;transition:all var(--transition)}.pill .dot{width:8px;height:8px;border-radius:999px;background:var(--muted)}.pill.success{background:#10b98126;border-color:#10b9814d;color:#10b981}.pill.success .dot{background:#10b981}.pill.warning{background:#f59e0b26;border-color:#f59e0b4d;color:#f59e0b}.pill.warning .dot{background:#f59e0b}.pill.danger{background:#ef444426;border-color:#ef44444d;color:#ef4444}.pill.danger .dot{background:#ef4444}.pill.info{background:#3b82f626;border-color:#3b82f64d;color:var(--primary)}.pill.info .dot{background:var(--primary)}.pill.accent{background:color-mix(in oklab,var(--accent) 30%,transparent);color:#2b3035;border-color:color-mix(in oklab,var(--accent) 36%,#000)}.peach-card{background:color-mix(in oklab,var(--accent) 18%,#fff);color:#2c2e33;border:2px solid color-mix(in oklab,var(--accent) 45%,#000)}.kpi-grid{display:grid;gap:16px;grid-template-columns:repeat(4,1fr)}.kpi-grid .kpi{padding:20px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--elevation-1);transition:all var(--transition);position:relative;overflow:hidden}.kpi-grid .kpi:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--primary),var(--primary-700));opacity:0;transition:opacity var(--transition)}.kpi-grid .kpi:hover{border-color:var(--primary);box-shadow:var(--elevation-2),0 0 20px var(--primary-glow);transform:translateY(-2px)}.kpi-grid .kpi:hover:before{opacity:1}.kpi-grid .kpi:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 30% 20%,rgba(59,130,246,.05),transparent 70%);pointer-events:none}.kpi .label{color:var(--text-secondary);font-size:12px;margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.kpi .value{font-size:28px;font-weight:800;word-break:break-word;color:var(--text);letter-spacing:-.5px;line-height:1.1}.kpi .trend{display:inline-flex;align-items:center;gap:4px;margin-top:8px;font-size:12px;font-weight:600;color:#10b981;padding:4px 8px;background:#10b9811a;border-radius:var(--radius-sm)}.kpi .trend.negative{color:#ef4444;background:#ef44441a}@media (max-width: 640px){.kpi .value{font-size:22px}.kpi-grid .kpi{padding:16px}}input[type=date],input[type=week],input[type=datetime-local]{color-scheme:dark}input[type=date]::-webkit-calendar-picker-indicator,input[type=week]::-webkit-calendar-picker-indicator,input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(.7) brightness(1.2);cursor:pointer;opacity:.8;transition:opacity .2s ease}input[type=date]::-webkit-calendar-picker-indicator:hover,input[type=week]::-webkit-calendar-picker-indicator:hover,input[type=datetime-local]::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=date]::-webkit-datetime-edit,input[type=week]::-webkit-datetime-edit,input[type=datetime-local]::-webkit-datetime-edit{color:#e7edf3}input[type=date]::-webkit-datetime-edit-fields-wrapper,input[type=week]::-webkit-datetime-edit-fields-wrapper{color:#e7edf3}input[type=date]::-webkit-datetime-edit-text,input[type=week]::-webkit-datetime-edit-text{color:#a0aec0}@media (max-width: 640px){.kpi .value{font-size:18px}.page-title{font-size:24px;padding:12px 0}}}@layer components{.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;font-weight:600;font-size:14px;transition:all var(--transition);box-shadow:var(--elevation-1);position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(255,255,255,.05) 0%,transparent 100%);pointer-events:none}.btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--border-light);transform:translateY(-2px);box-shadow:var(--elevation-2)}.btn:active:not(:disabled){transform:translateY(0);box-shadow:var(--elevation-1)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-700) 100%);color:#fff;border-color:var(--primary-700);box-shadow:0 4px 15px var(--primary-glow)}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,var(--primary-600) 0%,var(--primary-800) 100%);box-shadow:0 6px 25px var(--primary-glow)}.btn-secondary{background:var(--surface-2);border-color:var(--border-light)}.btn-secondary:hover:not(:disabled){background:var(--surface-3)}.btn-subtle{background:transparent;border-color:transparent;box-shadow:none}.btn-subtle:hover:not(:disabled){background:var(--surface-2);border-color:var(--border);box-shadow:none;transform:none}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border-color:#dc2626;box-shadow:0 4px 15px #ef44444d}.btn-danger:hover:not(:disabled){background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 6px 25px #ef444466}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border-color:#059669;box-shadow:0 4px 15px #10b9814d}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 6px 25px #10b98166}.btn-ghost{background:transparent;border-color:transparent;box-shadow:none}.btn-ghost:hover:not(:disabled){background:var(--surface);border-color:var(--border);box-shadow:none;transform:none}.btn-sm{padding:8px 14px;font-size:13px}.btn-md{padding:12px 20px;font-size:14px}.btn-lg{padding:14px 28px;font-size:16px}.btn-block{display:flex;width:100%}.btn-icon{display:inline-flex;align-items:center}.btn-icon.left{margin-right:4px}.btn-icon.right{margin-left:4px}.btn-icon-only{width:40px;height:40px;padding:0;justify-content:center}.btn-icon-only.btn-sm{width:32px;height:32px}.btn-icon-only.btn-lg{width:48px;height:48px}.field{display:flex;flex-direction:column;gap:8px}.field-inline{flex-direction:row;align-items:center}.field-label{font-size:13px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.field-required{color:#ef4444;font-weight:700}.field-control input,.field-control select,.field-control textarea{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;color:var(--text);font-size:14px;font-family:inherit;font-weight:500;transition:all var(--transition);box-shadow:inset 0 2px 4px #0000001a}.input,.select,.textarea,.filter-row input,.filter-row select{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;color:var(--text);font-size:14px;font-weight:500;transition:all var(--transition);box-shadow:inset 0 2px 4px #0000001a}.input:hover,.select:hover,.textarea:hover,.filter-row input:hover,.filter-row select:hover,.field-control input:hover,.field-control select:hover,.field-control textarea:hover{border-color:var(--border-light);background:var(--surface-2)}.input:focus,.select:focus,.textarea:focus,.filter-row input:focus,.filter-row select:focus,.field-control input:focus,.field-control select:focus,.field-control textarea:focus{outline:none;box-shadow:var(--focus-ring);border-color:var(--primary);background:var(--surface-2)}.select,.filter-row select,.field-control select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%2394a3b8' d='M4 6l4 4 4-4z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:40px}.textarea,.filter-row textarea,.field-control textarea{resize:vertical;min-height:100px}.field-hint{font-size:12px;color:var(--muted);margin-top:-2px}.field-error{font-size:12px;color:#ef4444;font-weight:600;margin-top:-2px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000bf;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;padding:20px;z-index:9999;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-card{width:100%;max-width:520px;max-height:90vh;overflow-y:auto;background:var(--surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--shadow-xl),0 0 60px #00000080;padding:0;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:20px 24px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:18px;font-weight:700;color:var(--text)}.modal-close{width:32px;height:32px;border-radius:var(--radius);background:var(--surface-2);border:1px solid var(--border);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition)}.modal-close:hover{background:var(--surface-3);color:var(--text);border-color:var(--border-light)}.modal-body{padding:24px}.modal-footer{padding:16px 24px;border-top:1px solid var(--border);display:flex;gap:12px;justify-content:flex-end}@media (max-width: 640px){.modal-backdrop{padding:12px}.modal-card{max-height:85vh}.modal-body{padding:16px}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}}.modal-content{display:flex;flex-direction:column;gap:16px;padding:24px}.modal-title{margin:0;font-size:20px;font-weight:700;color:var(--text)}.modal-subtitle{margin:0;font-size:14px;color:var(--text-secondary)}.modal-contact-list{max-height:320px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding-right:4px}.modal-contact-button{width:100%;text-align:left;padding:14px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition)}.modal-contact-button:hover{background:var(--surface-3);border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--elevation-1)}.modal-close-button{align-self:flex-end;padding:10px 18px;border-radius:var(--radius);border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:all var(--transition)}.modal-close-button:hover{background:var(--surface-2);color:var(--text)}.toast{position:fixed;bottom:24px;right:24px;padding:16px 20px;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-lg);color:var(--text);font-weight:500;z-index:10000;animation:slideInRight .3s ease}.toast.success{border-left:4px solid #10b981}.toast.error{border-left:4px solid #ef4444}.toast.warning{border-left:4px solid #f59e0b}.toast.info{border-left:4px solid var(--primary)}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}}@layer utilities{.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-bounce{animation:bounce 1s infinite}@keyframes bounce{0%,to{transform:translateY(-5%);animation-timing-function:cubic-bezier(.8,0,1,1)}50%{transform:translateY(0);animation-timing-function:cubic-bezier(0,0,.2,1)}}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.my-4{margin-top:16px;margin-bottom:16px}.p-4{padding:16px}.gap-4{gap:16px}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.text-center{text-align:center}.text-sm{font-size:14px}.text-lg{font-size:18px}.font-bold{font-weight:700}.text-muted{color:var(--text-secondary)}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}}.page-header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.page-header h1{font-size:24px;letter-spacing:-.01em}.pill-stats{display:flex;gap:10px;flex-wrap:wrap}.pill{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:600;background:var(--surface-2);color:var(--muted)}.pill.primary{background:#3b82f626;color:#93c5fd}.pill.warning{background:#f59e0b26;color:#fcd34d}.pill.danger{background:#ef444426;color:#fecdd3}.task-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.select{width:100%;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-family:inherit}.textarea{width:100%;min-height:80px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-family:inherit}.filter-row{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:12px;align-items:center}.kanban-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-top:12px}.kanban-column{background:var(--surface);border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;min-height:360px;box-shadow:var(--elevation-1)}.kanban-column__header{padding:12px 14px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.kanban-column__title{font-weight:700}.kanban-column__body{padding:12px;display:flex;flex-direction:column;gap:10px}.kanban-card{background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px;box-shadow:0 6px 16px #00000040;cursor:grab;transition:all .15s ease}.kanban-card--clickable{cursor:pointer}.kanban-card--clickable:hover{background:var(--surface-3);border-color:var(--border-light);transform:translateY(-2px);box-shadow:0 8px 20px #00000059}.kanban-card.is-dragging{opacity:.6}.kanban-card__labels{display:flex;gap:4px;flex-wrap:wrap;cursor:pointer}.kanban-card__label{height:8px;min-width:40px;border-radius:4px;transition:all .2s ease;overflow:hidden;display:flex;align-items:center;justify-content:center}.kanban-card__label-text{display:none;font-size:10px;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);padding:0 6px;white-space:nowrap}.kanban-card__labels.is-expanded .kanban-card__label{height:18px;min-width:auto;padding:0 8px}.kanban-card__labels.is-expanded .kanban-card__label-text{display:block}.kanban-card__top{display:flex;align-items:center;justify-content:space-between;gap:8px}.kanban-card__title{font-weight:600;font-size:14px;line-height:1.4}.kanban-card__has-description{color:var(--muted);font-size:12px}.kanban-card__description{color:var(--muted)}.kanban-card__badges{display:flex;gap:6px;flex-wrap:wrap}.kanban-card__badge{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:4px;font-size:11px;font-weight:500}.kanban-card__meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px}.kanban-card__footer{display:flex;gap:4px;justify-content:flex-end;margin-top:4px}.kanban-card__avatar{width:24px;height:24px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.kanban-card__avatar--assignee{background:var(--accent)}.kanban-card__assign{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.kanban-card__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.task-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;align-items:flex-start;justify-content:center;z-index:2000;padding:48px 16px;overflow-y:auto}.task-modal{background:var(--surface);border-radius:12px;width:100%;max-width:768px;box-shadow:0 24px 80px #00000080;animation:modalSlideIn .2s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.task-modal__header{display:flex;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border)}.task-modal__header-icon{font-size:24px}.task-modal__header-content{flex:1}.task-modal__title{margin:0;font-size:20px;font-weight:600}.task-modal__column-info{font-size:13px;color:var(--muted);margin-top:4px}.task-modal__column-info strong{color:var(--text);text-decoration:underline}.task-modal__close{background:none;border:none;font-size:28px;color:var(--muted);cursor:pointer;padding:0;line-height:1;transition:color .15s}.task-modal__close:hover{color:var(--text)}.task-modal__body{display:grid;grid-template-columns:1fr 200px;gap:24px;padding:20px}@media (max-width:640px){.task-modal__body{grid-template-columns:1fr}}.task-modal__main{display:flex;flex-direction:column;gap:24px}.task-modal__section-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.task-modal__section-icon{font-size:16px}.task-modal__section-title{font-size:14px;font-weight:600;color:var(--muted)}.task-modal__labels-display{display:flex;gap:6px;flex-wrap:wrap}.task-modal__label-pill{padding:4px 12px;border-radius:4px;font-size:12px;font-weight:500;color:#fff}.task-modal__due-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;font-size:13px;font-weight:500}.task-modal__description-display{padding:12px;background:var(--surface-2);border-radius:8px;min-height:60px;color:var(--muted);cursor:pointer;transition:background .15s}.task-modal__description-display:hover{background:var(--surface-3)}.task-modal__description-edit{display:flex;flex-direction:column;gap:8px}.task-modal__description-actions{display:flex;gap:8px}.task-modal__textarea{width:100%;padding:12px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-family:inherit;font-size:14px;resize:vertical}.task-modal__textarea:focus{outline:none;border-color:var(--primary);box-shadow:var(--focus-ring)}.task-modal__textarea--small{padding:8px 12px;font-size:13px}.task-modal__comment-input{margin-bottom:16px}.task-modal__activity{display:flex;flex-direction:column;gap:12px}.task-modal__activity-item{display:flex;gap:12px;padding:8px 0}.task-modal__activity-avatar{width:32px;height:32px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:600;flex-shrink:0}.task-modal__activity-content{font-size:13px;color:var(--text)}.task-modal__activity-time{font-size:12px;color:var(--muted);margin-top:2px}.task-modal__sidebar{display:flex;flex-direction:column;gap:16px}.task-modal__sidebar-title{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.task-modal__action-wrapper{position:relative;margin-bottom:4px}.task-modal__action-btn{display:flex;align-items:center;gap:8px;width:100%;padding:10px 14px;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;cursor:pointer;transition:all .2s ease;text-align:left;font-weight:500}.task-modal__action-btn:hover{background:#3a9eff1a;border-color:#3a9eff4d;transform:translateY(-1px)}.task-modal__action-btn--success{background:#22c55e26;color:#22c55e;border-color:#22c55e4d}.task-modal__action-btn--success:hover{background:#22c55e40;border-color:#22c55e80}.task-modal__action-btn--danger{background:#ef444426;color:#ef4444;border-color:#ef44444d}.task-modal__action-btn--danger:hover{background:#ef444440;border-color:#ef444480}.task-modal__action-label{display:flex;align-items:center;gap:8px;padding:4px 0;color:var(--muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.task-modal__select{width:100%;padding:10px 12px;margin-top:6px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px;cursor:pointer;transition:border-color .2s}.task-modal__select:hover,.task-modal__select:focus{border-color:#3a9eff80;outline:none}.task-modal__date-input{width:100%;padding:10px 12px;margin-top:6px;border-radius:8px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:13px;cursor:pointer}.task-modal__date-input:hover,.task-modal__date-input:focus{border-color:#3a9eff80;outline:none}.task-modal__input{padding:8px 10px;border-radius:6px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:12px}.task-modal__dropdown{position:absolute;top:100%;left:0;right:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px;margin-top:4px;z-index:10;box-shadow:var(--elevation-2);max-height:350px;overflow:visible}.task-modal__dropdown-title{font-size:13px;font-weight:600;margin-bottom:8px;text-align:center}.task-modal__labels-list{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;padding-right:4px}.task-modal__labels-list::-webkit-scrollbar{width:5px}.task-modal__labels-list::-webkit-scrollbar-track{background:transparent}.task-modal__labels-list::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.task-modal__label-item{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;transition:background .15s}.task-modal__label-item:hover{background:var(--surface-2)}.task-modal__label-item.is-selected{background:var(--surface-3)}.task-modal__label-color{width:100%;height:24px;border-radius:4px;flex:1;cursor:pointer}.task-modal__label-check{margin-left:auto;color:var(--success)}.task-modal__label-delete{background:none;border:none;color:var(--danger);cursor:pointer;font-size:16px;padding:0 4px;opacity:.6;transition:opacity .15s}.task-modal__label-delete:hover{opacity:1}.task-modal__label-create{margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.task-modal__archive-confirm{padding:12px;background:#ef44441a;border-radius:8px;border:1px solid rgba(239,68,68,.3)}.task-modal__archive-warning{font-size:12px;color:#ef4444;margin-bottom:8px}.task-modal__archive-actions{display:flex;gap:8px;margin-top:8px}.archived-task-item{display:flex;align-items:center;gap:12px;padding:12px;background:var(--surface-2);border-radius:8px;border:1px solid var(--border)}.context-menu__item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;background:none;border:none;color:var(--text);font-size:13px;cursor:pointer;text-align:left;border-radius:4px;transition:background .15s}.context-menu__item:hover{background:var(--surface-2)}.context-menu__item--danger{color:#ef4444}.context-menu__item--danger:hover{background:#ef44441a}.context-menu__divider{height:1px;background:var(--border);margin:4px 0}.context-menu__subtitle{font-size:11px;color:var(--muted)}.trello-context-menu{background:var(--surface);border-radius:8px;box-shadow:0 8px 24px #0006;padding:8px;min-width:200px}.trello-context-menu__buttons{display:flex;flex-direction:column;gap:4px}.trello-context-menu__btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:6px;color:var(--text);font-size:13px;cursor:pointer;transition:all .15s;white-space:nowrap}.trello-context-menu__btn:hover{background:var(--surface-3);border-color:var(--border-light)}.trello-context-menu__btn--danger{color:#ef4444}.trello-context-menu__btn--danger:hover{background:#ef444426}.trello-context-menu__btn--small{width:100%;justify-content:center;padding:6px 10px;font-size:12px;margin-top:8px}.trello-context-menu__dropdown{margin-top:8px;padding-top:8px;border-top:1px solid var(--border);max-height:250px;overflow-y:auto}.trello-context-menu__dropdown::-webkit-scrollbar{width:6px}.trello-context-menu__dropdown::-webkit-scrollbar-track{background:transparent}.trello-context-menu__dropdown::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.trello-context-menu__dropdown-title{font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;margin-bottom:8px;letter-spacing:.5px;position:sticky;top:0;background:var(--surface);padding-bottom:4px}.trello-context-menu__label-item{display:flex;align-items:center;gap:8px;padding:4px;cursor:pointer;border-radius:4px;transition:background .15s}.trello-context-menu__label-item:hover{background:var(--surface-2)}.trello-context-menu__label-item.is-selected{background:var(--surface-3)}.trello-context-menu__label-color{flex:1;height:28px;border-radius:4px}.trello-context-menu__member-item{display:flex;align-items:center;gap:8px;padding:8px;cursor:pointer;border-radius:4px;font-size:13px;transition:background .15s}.trello-context-menu__member-item:hover{background:var(--surface-2)}.trello-context-menu__member-item.is-selected{background:var(--surface-3);color:var(--primary)}.trello-context-menu__member-avatar{width:24px;height:24px;border-radius:50%;background:var(--primary);color:#fff;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600}.trello-context-menu__move-item{display:flex;align-items:center;gap:8px;padding:8px;cursor:pointer;border-radius:4px;font-size:13px;transition:background .15s}.trello-context-menu__move-item:hover{background:var(--surface-2)}.trello-context-menu__move-item.is-selected{background:var(--surface-3);color:var(--primary)}.trello-context-menu__date-input{width:100%;padding:10px;border-radius:6px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-size:14px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;border-radius:999px;font-size:12px;font-weight:600}.label{font-size:12px;color:var(--muted);margin-bottom:4px}.empty{padding:20px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:12px}
