@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);:root{--brand-primary:#007084;--brand-primary-dark:#005a6b;--brand-primary-darker:#004552;--brand-primary-light:#4a9faf;--brand-primary-lighter:#b3d4db;--brand-primary-soft:#e6f2f4;--brand-secondary:#1e3a5f;--brand-dark:#1f1b20;--brand-white:#fff;--color-success:#16a34a;--color-warning:#f59e0b;--color-danger:#ef4444;--color-danger-dark:#dc2626;--neutral-50:#f8fafc;--neutral-100:#f1f5f9;--neutral-200:#e2e8f0;--neutral-300:#cbd5e1;--neutral-400:#94a3b8;--neutral-500:#64748b;--neutral-600:#475569;--neutral-700:#334155;--neutral-800:#1e293b;--neutral-900:#0f172a;--bg-app:linear-gradient(135deg,#f5f7fa,#e8ecf1);--bg-surface:#fff;--bg-muted:#f8fafc;--sidebar-bg:var(--brand-primary);--sidebar-bg-dark:var(--brand-primary-dark);--sidebar-text:#ffffffd9;--sidebar-text-hover:#fff;--sidebar-item-hover-bg:#ffffff1a;--sidebar-item-active-bg:#ffffff2e;--sidebar-border:#ffffff1f}body{background:linear-gradient(135deg,#f5f7fa,#e8ecf1);color:#1f1b20;color:var(--brand-dark);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,sans-serif}.layout,body{background:var(--bg-app)}.layout{display:flex;min-height:100vh}.sidebar{background:var(--sidebar-bg);color:var(--sidebar-text);display:flex!important;flex-direction:column;height:100vh;height:100dvh;left:0;min-width:72px;overflow:hidden;position:fixed;top:0;transition:width .3s ease;width:250px;z-index:100}.sidebar.collapsed{width:72px}.sidebar.collapsed .sidebar-item{justify-content:center;margin:0 .35rem;padding:.7rem .75rem}.sidebar.collapsed~.layout-main{margin-left:72px}.sidebar-logo{align-items:center;border-bottom:1px solid var(--sidebar-border);display:flex;flex-shrink:0;height:72px;justify-content:center;padding:0 .75rem}.sidebar-logo-link{align-items:center;color:var(--brand-white);display:flex;font-weight:700;gap:.6rem;letter-spacing:.04em;min-width:0;text-decoration:none;transition:opacity .2s}.sidebar-logo-link:hover{opacity:.85}.sidebar-logo-img{flex-shrink:0;height:40px;object-fit:contain;width:40px}.sidebar-logo-text{font-size:1.05rem;line-height:1.15;overflow:hidden;white-space:normal}.sidebar.collapsed .sidebar-logo-img{height:36px;width:36px}.sidebar-nav{display:flex;flex:1 1;flex-direction:column;gap:2px;overflow-y:auto;padding:.75rem 0}.sidebar-item{align-items:center;border-radius:8px;color:var(--sidebar-text);display:flex;font-size:.9rem;font-weight:500;gap:.75rem;margin:0 .5rem;padding:.7rem 1rem;position:relative;text-decoration:none;transition:all .2s;white-space:nowrap}.sidebar-item:hover{background:var(--sidebar-item-hover-bg);color:var(--sidebar-text-hover)}.sidebar-item.active{box-shadow:inset 3px 0 0 var(--brand-white);color:var(--brand-white);font-weight:600}.sidebar-item.active,.sidebar-item.active:hover{background:var(--sidebar-item-active-bg)}.sidebar-badge{background:var(--color-danger);border-radius:10px;color:#fff;font-size:.7rem;font-weight:700;margin-left:auto;min-width:18px;padding:2px 7px;text-align:center}.sidebar-toggle{align-items:center;background:none;border:1px solid var(--sidebar-border);border-radius:8px;color:var(--sidebar-text);cursor:pointer;display:flex;flex-shrink:0;font-size:.85rem;gap:.5rem;margin:.5rem;padding:.75rem 1rem;transition:all .2s;white-space:nowrap}.sidebar-toggle:hover{background:var(--sidebar-item-hover-bg);color:var(--sidebar-text-hover)}.layout-main{display:flex;flex:1 1;flex-direction:column;margin-left:250px;min-height:100vh;transition:margin-left .3s ease}.layout-header{align-items:center;background:var(--bg-surface);border-bottom:1px solid var(--neutral-200);display:flex;flex-shrink:0;height:60px;justify-content:flex-end;padding:0 1.5rem;position:-webkit-sticky;position:sticky;top:0;z-index:50}.hamburger{background:none;border:none;border-radius:6px;color:var(--neutral-600);cursor:pointer;display:none;margin-right:auto;padding:.4rem}.hamburger:hover{background:var(--neutral-100)}.header-right{gap:1rem}.header-bell,.header-right{align-items:center;display:flex}.header-bell{border-radius:8px;color:var(--neutral-500);height:36px;justify-content:center;position:relative;text-decoration:none;transition:all .2s;width:36px}.header-bell:hover{background:var(--neutral-100);color:var(--brand-primary)}.header-badge{align-items:center;background:var(--color-danger);border-radius:50%;color:#fff;display:flex;font-size:.6rem;font-weight:700;height:16px;justify-content:center;position:absolute;right:2px;top:2px;width:16px}.header-user{align-items:flex-end;border-radius:8px;display:flex;flex-direction:column;padding:.25rem .5rem;text-decoration:none;transition:background .2s}.header-user:hover{background:var(--neutral-100)}.header-user-name{color:var(--neutral-800);font-size:.9rem;font-weight:600;line-height:1.2}.header-user-role{color:var(--neutral-500);font-size:.75rem;line-height:1.2}.header-lang-switch{align-items:center;background:var(--neutral-100);border:1px solid var(--neutral-200);border-radius:8px;color:var(--neutral-600);cursor:pointer;display:flex;font-size:.8rem;font-weight:600;gap:4px;padding:6px 10px;transition:all .2s}.header-lang-switch:hover{background:var(--neutral-200);border-color:var(--neutral-400);color:var(--neutral-800)}.header-logout{align-items:center;background:none;border:1px solid var(--neutral-200);border-radius:8px;color:var(--neutral-500);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.header-logout:hover{background:#fef2f2;border-color:#fca5a5;color:var(--color-danger)}.header-search{margin-left:.5rem;margin-right:auto;position:relative}.header-search-btn{align-items:center;background:none;border:1px solid var(--neutral-200);border-radius:8px;color:var(--neutral-500);cursor:pointer;display:flex;height:36px;justify-content:center;transition:all .2s;width:36px}.header-search-btn:hover{background:var(--neutral-100);color:var(--brand-primary)}.header-search-input-wrap{align-items:center;background:var(--neutral-100);border:1px solid var(--neutral-300);border-radius:8px;display:flex;padding:0 .5rem;transition:border-color .2s;width:320px}.header-search-input-wrap:focus-within{border-color:var(--brand-primary);box-shadow:0 0 0 3px #00708426}.header-search-icon{color:var(--neutral-400);flex-shrink:0}.header-search-input{background:none;border:none;color:var(--neutral-800);flex:1 1;font-size:.9rem;outline:none;padding:.5rem}.header-search-close,.header-search-input::placeholder{color:var(--neutral-400)}.header-search-close{align-items:center;background:none;border:none;border-radius:4px;cursor:pointer;display:flex;padding:2px}.header-search-close:hover{background:var(--neutral-200);color:var(--neutral-600)}.search-dropdown{background:var(--bg-surface);border:1px solid var(--neutral-200);border-radius:12px;box-shadow:0 12px 36px #0000001f;left:0;max-height:480px;overflow-y:auto;position:absolute;top:calc(100% + 8px);width:420px;z-index:200}.search-dropdown-empty{color:var(--neutral-400);font-size:.9rem;padding:1.5rem;text-align:center}.search-dropdown-group{border-bottom:1px solid var(--neutral-100)}.search-dropdown-group:last-child{border-bottom:none}.search-dropdown-group-title{background:var(--bg-muted);color:var(--neutral-500);font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.5rem 1rem;text-transform:uppercase}.search-dropdown-item{cursor:pointer;display:block;padding:.6rem 1rem;text-decoration:none;transition:background .15s}.search-dropdown-item:hover{background:var(--neutral-100)}.search-dropdown-item-title{color:var(--neutral-800);font-size:.9rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-dropdown-item-subtitle{color:var(--neutral-400);font-size:.78rem;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-dropdown-viewall{border-top:1px solid var(--neutral-200);color:var(--brand-primary);display:block;font-size:.85rem;font-weight:500;padding:.75rem 1rem;text-align:center;text-decoration:none;transition:background .15s}.search-dropdown-viewall:hover{background:var(--neutral-100)}.layout-content{flex:1 1;padding:1.5rem}.sidebar-overlay{display:none}@media (max-width:600px){.sidebar{transform:translateX(-100%);width:250px!important}.sidebar.mobile-open{transform:translateX(0)}.sidebar-overlay{background:#00000080;display:block;inset:0;position:fixed;z-index:99}.layout-main{margin-left:0!important}.hamburger{display:flex}.layout-content{padding:1rem}.header-user-role{display:none}.header-search-input-wrap{width:200px}.search-dropdown{left:-.5rem;width:calc(100vw - 2rem)}}@media (max-width:480px){.layout-content{padding:.75rem}.header-user-name{font-size:.8rem}}.login-container{align-items:center;background:radial-gradient(circle at 20% 20%,#ffffff14,#0000 55%),radial-gradient(circle at 80% 80%,#0000002e,#0000 55%),var(--brand-primary);display:flex;justify-content:center;min-height:100vh;padding:2rem}.login-box{animation:slideUp .6s ease;background:var(--brand-white);border-radius:20px;box-shadow:0 24px 60px #00384259;max-width:440px;overflow:hidden;width:100%}.login-header{background:var(--brand-primary);color:var(--brand-white);padding:2rem 2rem 1.75rem;text-align:center}.login-logo{display:block;filter:drop-shadow(0 4px 12px rgba(0,0,0,.18));height:84px;margin:0 auto .75rem;object-fit:contain;width:84px}.login-header h1{font-size:1.5rem;font-weight:800;letter-spacing:.04em;line-height:1.25;margin:0}.login-header p{font-size:.95rem;margin:.5rem 0 0;opacity:.92}.login-form{padding:2rem}.form-group label{color:var(--neutral-600)}.form-group input{border:2px solid var(--neutral-200);border-radius:10px;font-family:inherit;font-size:1rem;padding:.875rem 1rem;transition:all .3s;width:100%}.form-group input:focus{border-color:var(--brand-primary);box-shadow:0 0 0 4px #00708426;outline:none}.form-group input:disabled{background:var(--neutral-100);cursor:not-allowed}.error-message{background:#fee2e2;border-radius:10px;color:var(--color-danger-dark);font-size:.9rem;margin-bottom:1rem;padding:.875rem 1rem;text-align:center}.login-button{background:var(--brand-primary);border:none;border-radius:10px;color:var(--brand-white);cursor:pointer;font-size:1.05rem;font-weight:600;padding:1rem;transition:all .25s;width:100%}.login-button:hover:not(:disabled){background:var(--brand-primary-dark);box-shadow:0 10px 22px #00708466;transform:translateY(-2px)}.login-button:active:not(:disabled){transform:translateY(0)}.login-button:disabled{cursor:not-allowed;opacity:.6}.login-footer{background:var(--bg-muted);border-top:1px solid var(--neutral-200);padding:1.5rem 2rem;text-align:center}.login-footer p{color:var(--neutral-500);font-size:.85rem;margin:.25rem 0}@media (max-width:480px){.login-container{padding:1rem}.login-header h1{font-size:1.25rem}.login-logo{height:72px;width:72px}}.admin-dashboard{padding:0}.dashboard-header p{color:#64748b;margin:.5rem 0 0;text-transform:capitalize}.btn-refresh{color:#475569;display:flex;font-size:.9rem;gap:.5rem;padding:.6rem 1.2rem}.btn-refresh:hover{border-color:#94a3b8}.btn-refresh:disabled{cursor:not-allowed;opacity:.5}.stats-grid{grid-gap:1.25rem;gap:1.25rem;grid-template-columns:repeat(4,1fr)}.stat-card{animation:fadeInUp .5s ease;border-radius:16px;transition:transform .2s}.stat-card:hover{transform:translateY(-2px)}.stat-value{font-size:1.75rem}.quick-actions{gap:1rem;margin-bottom:2rem}.quick-action-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;flex:1 1;font-size:.9rem;font-weight:600;gap:.5rem;justify-content:center;padding:.85rem 1rem;transition:transform .15s,box-shadow .15s}.quick-action-btn:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-1px)}.qa-approve{background:#dcfce7;color:#166534}.qa-weekly{background:#e6f2f4;color:#005a6b}.qa-constructor{background:#fef3c7;color:#92400e}.director-widgets{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.widgets-column{display:flex;flex-direction:column;gap:1.5rem}.widget-card{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 2px 8px #0000000f;padding:1.25rem}.widget-header{justify-content:space-between;margin-bottom:1rem}.widget-header,.widget-title{align-items:center;display:flex}.widget-title{color:#005a6b;font-size:1rem;font-weight:600;gap:.5rem;margin:0}.widget-title svg{color:#007084}.widget-period{color:#94a3b8;font-size:.8rem}.widget-count{color:#475569;font-size:1.1rem;font-weight:700}.widget-count.red-text{color:#dc2626}.widget-link{align-items:center;background:none;border:none;color:#007084;cursor:pointer;display:flex;font-size:.85rem;gap:.25rem;padding:0}.widget-link:hover{color:#005a6b;text-decoration:underline}.widget-empty{align-items:center;color:#94a3b8;display:flex;font-size:.9rem;gap:.5rem;justify-content:center;padding:1.5rem}.widget-empty.green-text{color:#10b981}.weekly-row{align-items:center;display:flex;gap:.75rem;margin-bottom:.75rem}.weekly-label{color:#475569;font-size:.85rem;min-width:60px}.weekly-progress{align-items:center;display:flex;flex:1 1;gap:.75rem}.progress-track{background:#e2e8f0;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.progress-fill{background:#007084}.progress-fill.reports-fill{background:#10b981}.progress-text{font-size:.85rem;min-width:45px}.missing-section{border-top:1px solid #f1f5f9;margin-top:.75rem;padding-top:.75rem}.missing-header{color:#dc2626;font-size:.8rem;font-weight:600;margin-bottom:.5rem}.missing-list{display:flex;flex-wrap:wrap;gap:.25rem .75rem}.missing-dept{align-items:center;color:#64748b;display:flex;font-size:.8rem;gap:.25rem}.missing-dept svg{color:#dc2626}.missing-more{color:#94a3b8;font-size:.8rem;font-style:italic}.overdue-list{display:flex;flex-direction:column;gap:.5rem}.overdue-card{background:#fef2f2;border-left:4px solid #ef4444;border-radius:8px;cursor:pointer;padding:.75rem 1rem;transition:background .15s}.overdue-card:hover{background:#fee2e2}.overdue-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:.25rem}.overdue-number{color:#991b1b;font-size:.8rem;font-weight:600}.overdue-badge{background:#dc2626;border-radius:10px;color:#fff;font-weight:700;padding:.15rem .5rem}.overdue-title{color:#374151;font-size:.85rem;margin-bottom:.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overdue-meta{color:#6b7280;display:flex;font-size:.75rem;justify-content:space-between}.overdue-authority{background:#fee2e2;border-radius:4px;color:#991b1b;padding:.1rem .4rem}.deadline-list{display:flex;flex-direction:column;gap:.5rem}.deadline-card{background:#fffbeb;border-left:4px solid #f59e0b;border-radius:8px;cursor:pointer;padding:.6rem .75rem;transition:background .15s}.deadline-card:hover{background:#fef3c7}.deadline-top{align-items:center;display:flex;gap:.5rem;margin-bottom:.25rem}.deadline-icon-doc{color:#007084}.deadline-icon-plan{color:#7c3aed}.deadline-title{color:#374151;flex:1 1;font-size:.85rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.deadline-badge{background:#fde68a;border-radius:10px;color:#92400e;font-size:.75rem;font-weight:700;padding:.15rem .5rem;white-space:nowrap}.deadline-badge.critical{background:#ef4444;color:#fff}.deadline-meta{color:#6b7280;display:flex;font-size:.75rem;justify-content:space-between}.problem-list{display:flex;flex-direction:column;gap:.75rem}.problem-row{border-bottom:1px solid #f1f5f9;padding-bottom:.5rem}.problem-row:last-child{border-bottom:none;padding-bottom:0}.problem-info{align-items:center;display:flex;gap:.5rem;margin-bottom:.35rem}.problem-rank{color:#94a3b8;font-size:.8rem;font-weight:700;min-width:28px}.problem-name{color:#374151;font-size:.85rem;font-weight:500}.problem-kpi{align-items:center;display:flex;gap:.5rem}.kpi-bar-track{background:#e2e8f0;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.kpi-bar-fill{transition:width .5s ease}.kpi-bar-fill.kpi-red{background:#ef4444}.kpi-bar-fill.kpi-orange{background:#f59e0b}.kpi-bar-fill.kpi-yellow{background:#eab308}.kpi-score{font-size:.85rem;font-weight:700;min-width:32px;text-align:right}.kpi-score.kpi-red{color:#dc2626}.kpi-score.kpi-orange{color:#d97706}.kpi-score.kpi-yellow{color:#ca8a04}.problem-issues{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.25rem}.issue-tag{background:#f1f5f9;border-radius:4px;color:#6b7280;font-size:.7rem;padding:.1rem .4rem}.recommendations-list{display:flex;flex-direction:column;gap:.5rem}.recommendation-card{background:#f0f9ff;border:1px solid #e0f2fe;border-radius:10px;padding:.75rem}.rec-header{justify-content:space-between;margin-bottom:.35rem}.rec-priority{border-radius:10px;font-size:.7rem;font-weight:700;padding:.15rem .5rem;text-transform:uppercase}.priority-critical{background:#fee2e2;color:#dc2626}.priority-high{background:#fef3c7;color:#d97706}.priority-medium{background:#e6f2f4;color:#007084}.priority-low{background:#f1f5f9;color:#64748b}.rec-dept{color:#6b7280;font-size:.75rem}.rec-title{font-size:.85rem;font-weight:600;margin-bottom:.25rem}.rec-content{-webkit-line-clamp:2;-webkit-box-orient:vertical;color:#475569;display:-webkit-box;font-size:.8rem;line-height:1.4;overflow:hidden}.timeline{display:flex;flex-direction:column}.timeline-item{border-bottom:1px solid #f8fafc;display:flex;gap:.75rem;padding:.5rem 0}.timeline-item:last-child{border-bottom:none}.timeline-dot{border-radius:50%;flex-shrink:0;height:8px;margin-top:.4rem;width:8px}.dot-create{background:#10b981}.dot-update{background:#007084}.dot-delete{background:#ef4444}.dot-view{background:#94a3b8}.dot-login{background:#8b5cf6}.dot-logout{background:#64748b}.timeline-content{flex:1 1;min-width:0}.timeline-header{align-items:center;display:flex;justify-content:space-between}.timeline-user{color:#374151;font-size:.8rem;font-weight:600}.timeline-time{color:#94a3b8;font-size:.7rem;white-space:nowrap}.timeline-desc{color:#6b7280;font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reports-table{overflow-x:auto}.reports-table table{border-collapse:collapse;width:100%}.reports-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-size:.8rem;font-weight:600;padding:.6rem .75rem;text-align:left}.reports-table td{border-bottom:1px solid #f1f5f9;color:#475569;font-size:.85rem;padding:.6rem .75rem}.reports-table tr:hover{background:#f8fafc}.status-badge{padding:.25rem .6rem}.action-buttons{gap:.35rem}.action-buttons button{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.8rem;padding:.35rem .5rem;transition:all .2s}.btn-view{background:#e0f2fe;color:#005a6b}.btn-view:hover{background:#bae6fd}.red-text{color:#dc2626}.green-text{color:#10b981}.td-check,.th-check{text-align:center;width:36px}.td-check input,.th-check input{accent-color:#007084;cursor:pointer;height:16px;width:16px}.row-selected{background:#e6f2f4!important}.bulk-panel{align-items:center;animation:fadeInDown .2s ease;background:#e6f2f4;border:1px solid #b3d4db;border-radius:8px;display:flex;gap:.5rem;margin-bottom:.75rem;padding:.6rem .75rem}.bulk-count{color:#005a6b;font-size:.85rem;font-weight:600;margin-right:.5rem}.bulk-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;gap:.3rem;padding:.35rem .75rem;transition:all .2s}.bulk-btn:disabled{cursor:not-allowed;opacity:.6}.bulk-approve{background:#dcfce7;color:#16a34a}.bulk-approve:hover:not(:disabled){background:#bbf7d0}.bulk-reject{background:#fee2e2;color:#dc2626}.bulk-reject:hover:not(:disabled){background:#fecaca}.bulk-clear{background:#f1f5f9;color:#64748b}.bulk-clear:hover{background:#e2e8f0}.bulk-modal-overlay{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;position:fixed;z-index:300}.bulk-modal{background:#fff;border-radius:12px;box-shadow:0 20px 50px #00000026;max-width:440px;padding:1.5rem;width:90%}.bulk-modal h3{color:#1e293b;font-size:1.1rem;margin:0 0 1rem}.bulk-modal-textarea{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:.9rem;outline:none;padding:.75rem;resize:vertical;width:100%}.bulk-modal-textarea:focus{border-color:#007084;box-shadow:0 0 0 3px #0070841a}.bulk-modal-actions{display:flex;gap:.5rem;justify-content:flex-end;margin-top:1rem}.loading{min-height:400px}@media (max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:1024px){.director-widgets{grid-template-columns:1fr}}@media (max-width:768px){.admin-dashboard{padding:1rem}.dashboard-header{align-items:flex-start;flex-direction:column;gap:1rem}.stats-grid{grid-template-columns:1fr}.quick-actions{flex-direction:column}.reports-table{overflow-x:auto}}.dashboard{padding:0}.dashboard-header{align-items:center;animation:fadeInDown .6s ease;display:flex;justify-content:space-between;margin-bottom:2rem}.dashboard-header h1{color:#005a6b;font-size:2rem;margin:0}.subtitle{color:#64748b;margin-top:.5rem}.welcome-card{align-items:center;animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;display:flex;gap:1.5rem;margin-bottom:2rem;padding:2rem}.welcome-icon{color:#007084;flex-shrink:0}.welcome-card h2{color:#005a6b;font-size:1.5rem;margin:0}.welcome-card p{color:#64748b;margin:.5rem 0 0}.welcome-card .btn-primary{margin-left:auto}.section{animation:fadeInUp .8s ease}.section-title{align-items:center;color:#005a6b;display:flex;font-size:1.5rem;gap:.75rem;margin-bottom:1.5rem}.reports-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.report-card{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;padding:1.5rem;transition:all .3s}.report-card:hover{box-shadow:0 8px 16px #00000026;transform:translateY(-4px)}.report-card-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:1rem}.report-card-header h3{color:#005a6b;flex:1 1;font-size:1.1rem;margin:0}.status-badge{align-items:center;display:inline-flex;font-size:.75rem;gap:.25rem}.report-card-body{margin-bottom:1rem}.report-meta{align-items:center;color:#64748b;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:.75rem}.report-summary{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:#475569;display:-webkit-box;font-size:.9rem;line-height:1.5;margin:0;overflow:hidden}.rejection-notice{align-items:start;background:#fee2e2;border-radius:8px;color:#dc2626;display:flex;font-size:.875rem;gap:.5rem;margin-top:.75rem;padding:.75rem}.rejection-notice svg{flex-shrink:0;margin-top:.1rem}.report-card-footer{border-top:1px solid #e2e8f0;display:flex;gap:.75rem;padding-top:1rem}.btn-secondary{padding:.75rem 1.25rem;transition:all .3s}.btn-secondary:hover{color:#475569}.modal-overlay{animation:fadeIn .3s ease}.modal-content{display:flex;flex-direction:column;max-height:90vh;max-width:600px}.modal-header{padding:1.5rem}.modal-header h2{font-size:1.5rem}.modal-close{align-items:center;border-radius:8px;display:flex;font-size:2rem;height:32px;justify-content:center;transition:all .2s;width:32px}.modal-close:hover{background:#f1f5f9;color:#64748b}.modal-body{overflow-y:auto}.form-group{margin-bottom:1.5rem}.form-group label{font-size:.9rem;margin-bottom:.5rem}.form-control{font-size:.95rem;padding:.75rem;transition:all .3s}textarea.form-control{min-height:80px}.modal-footer{gap:1rem;padding:1.5rem}.template-fields-section{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;margin:1rem 0;padding:1rem}.template-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.template-section-header h4{align-items:center;color:#005a6b;display:flex;font-size:1rem;gap:.5rem;margin:0}.completion-badge{background:#e0f2fe;border-radius:12px;color:#005a6b;font-size:.8rem;font-weight:500;padding:.25rem .75rem}.field-hint{color:#64748b;display:block;font-size:.8rem;font-style:italic;margin-bottom:.25rem}.last-report-hint{color:#059669;display:block;font-size:.78rem;margin-top:.25rem}.pending-tasks-list{display:flex;flex-direction:column;gap:.5rem}.pending-task-card{background:#fff;border-left:4px solid #f59e0b;border-radius:12px;box-shadow:0 2px 4px #0000000f;padding:1rem 1.25rem;transition:all .2s}.pending-task-card:hover{box-shadow:0 4px 12px #0000001a}.pending-task-card.overdue{background:#fef2f2;border-left-color:#ef4444}.pending-task-main{align-items:center;display:flex;gap:1rem}.pending-task-info{flex:1 1;min-width:0}.pending-task-doc{align-items:center;color:#64748b;display:flex;font-size:.82rem;gap:.35rem;margin-bottom:.25rem}.pending-task-doc-link{color:#007084;cursor:pointer;text-decoration:none}.pending-task-doc-link:hover{text-decoration:underline}.pending-task-text{color:#1e293b;font-size:.92rem;font-weight:500;line-height:1.3;margin-bottom:.35rem}.pending-task-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:.78rem;gap:.75rem}.pending-task-meta span{align-items:center;display:flex;gap:.2rem}.text-danger{color:#ef4444!important;font-weight:600}.overdue-badge{background:#fef2f2}.overdue-badge,.responsible-badge-small{border-radius:4px;font-size:.75rem;padding:.1rem .5rem}.responsible-badge-small{background:#e6f2f4;color:#005a6b;font-weight:500}.pending-task-action{flex-shrink:0}.btn-complete-task{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:.4rem;padding:.55rem 1.1rem;transition:all .2s;white-space:nowrap}.btn-complete-task:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}@media (max-width:768px){.pending-task-main{align-items:flex-start;flex-direction:column}.pending-task-action{width:100%}.btn-complete-task{justify-content:center;width:100%}.dashboard{padding:1rem}.dashboard-header{align-items:flex-start;flex-direction:column;gap:1rem}.welcome-card{flex-direction:column;text-align:center}.welcome-card .btn-primary{margin-left:0;width:100%}.reports-grid{grid-template-columns:1fr}.report-card-footer{flex-direction:column}.modal-content{max-height:95vh;width:95%}}.report-detail{margin:0 auto;max-width:900px;padding:0}.detail-header{align-items:center;animation:fadeInDown .6s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.detail-header-actions{display:flex;gap:.75rem}.btn-action{font-size:.9rem;gap:.5rem;padding:.6rem 1.2rem;transition:all .3s}.btn-action:hover{transform:translateY(-2px)}.btn-submit{background:linear-gradient(135deg,#007084,#005a6b);color:#fff}.btn-submit:hover{box-shadow:0 4px 12px #0070844d}.btn-approve{background:#dcfce7;color:#16a34a}.btn-approve:hover{background:#bbf7d0;box-shadow:0 4px 12px #10b98133}.btn-reject{background:#fee2e2;color:#dc2626}.btn-reject:hover{background:#fecaca;box-shadow:0 4px 12px #ef444433}.detail-title-card{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;margin-bottom:1.5rem;padding:2rem}.detail-title-row{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.detail-title-row h1{color:#005a6b;flex:1 1;font-size:1.75rem;margin:0}.detail-meta{display:flex;flex-wrap:wrap;gap:1.5rem}.meta-item{gap:.5rem}.meta-item.secondary{color:#94a3b8;font-size:.85rem;margin-top:.75rem}.status-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:600;padding:.35rem .75rem;white-space:nowrap}.status-draft{background:#f1f5f9;color:#64748b}.status-submitted{background:#e6f2f4;color:#007084}.status-review{background:#fef3c7;color:#d97706}.status-approved{background:#d1fae5;color:#059669}.status-rejected{background:#fee2e2;color:#dc2626}.status-archived{background:#e5e7eb;color:#6b7280}.rejection-card{align-items:flex-start;animation:fadeInUp .7s ease;background:#fef2f2;border:1px solid #fecaca;border-radius:16px;display:flex;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.rejection-card svg{color:#dc2626;flex-shrink:0;margin-top:.1rem}.rejection-card strong{color:#dc2626}.rejection-card p{color:#7f1d1d;margin:.5rem 0 0}.detail-sections{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:1.5rem}.detail-section{animation:fadeInUp .8s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;padding:1.5rem}.detail-section h2{align-items:center;border-bottom:1px solid #e2e8f0;color:#005a6b;display:flex;font-size:1.15rem;gap:.5rem;margin:0 0 1rem;padding-bottom:.75rem}.detail-section h2 svg{color:#64748b}.detail-section p{color:#475569;line-height:1.7;margin:0;white-space:pre-wrap}.metrics-table{overflow-x:auto}.metrics-table table{border-collapse:collapse;width:100%}.metrics-table th{color:#475569;font-size:.85rem;padding:.75rem 1rem}.metrics-table td{color:#475569;font-size:.9rem;padding:.75rem 1rem}.metric-value{font-weight:600}.dept-data-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.dept-data-item{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;padding:1rem}.dept-data-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.25rem}.dept-data-label{color:#64748b;font-size:.82rem}.dept-data-value{color:#1e293b;display:block;font-size:1.1rem;font-weight:600;white-space:pre-wrap}.files-list{flex-direction:column;gap:.5rem}.file-item{color:#475569;gap:.75rem;padding:.75rem 1rem}.file-item:hover{background:#e0f2fe;color:#005a6b}.file-item svg{color:#94a3b8;flex-shrink:0}.file-name{flex:1 1;font-weight:500}.file-size{font-size:.8rem}.comments-list{display:flex;flex-direction:column;gap:1rem}.comment-item{background:#f8fafc;border-left:3px solid #e2e8f0;border-radius:8px;padding:1rem}.comment-item.internal{background:#fffbeb;border-left-color:#f59e0b}.comment-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.5rem}.comment-header strong{color:#005a6b}.comment-date,.comment-position{color:#94a3b8;font-size:.8rem}.comment-date{margin-left:auto}.comment-internal-badge{background:#fef3c7;border-radius:10px;color:#d97706;font-size:.7rem;font-weight:600;padding:.15rem .5rem}.comment-item p{color:#475569;line-height:1.6;margin:0}.error-state,.loading-spinner{align-items:center;color:#64748b;display:flex;flex-direction:column;font-size:1.2rem;gap:1rem;justify-content:center;min-height:400px}.error-state svg{color:#ef4444}.error-state h3{color:#475569;margin:0}.resolutions-section{margin-bottom:1.5rem}@media (max-width:768px){.report-detail{padding:1rem}.detail-header{align-items:flex-start;flex-direction:column;gap:1rem}.detail-header-actions{flex-wrap:wrap}.detail-meta,.detail-title-row{flex-direction:column}.detail-meta{gap:.75rem}.metrics-table{overflow-x:auto}.comment-date{margin-left:0}.modal-field-comments{max-width:95%}.field-comment-replies{margin-left:.5rem;padding-left:.5rem}}.field-comment-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;display:inline-flex;font-size:.75rem;gap:.2rem;padding:.2rem .4rem;transition:all .2s}.field-comment-btn:hover{background:#e0f2fe;color:#005a6b}.field-comment-btn.has-comments{color:#007084}.field-comment-btn.has-unresolved{background:#fffbeb;color:#f59e0b}.field-comment-count{align-items:center;background:#007084;border-radius:50%;color:#fff;display:inline-flex;font-size:.7rem;font-weight:600;height:16px;justify-content:center;min-width:16px}.field-comment-btn.has-unresolved .field-comment-count{background:#f59e0b}.modal-field-comments{max-height:85vh;max-width:650px}.modal-field-comments .modal-body{max-height:70vh;overflow-y:auto}.field-comments-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.field-comment-item{background:#f8fafc;border-left:3px solid #007084;border-radius:8px;padding:.75rem 1rem}.field-comment-item.resolved{border-left-color:#22c55e;opacity:.75}.field-comment-item.internal{background:#fffbeb;border-left-color:#f59e0b}.field-comment-header{align-items:center;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.5rem;margin-bottom:.35rem}.field-comment-header strong{color:#005a6b}.field-comment-position{color:#94a3b8;font-size:.8rem}.field-comment-date{color:#94a3b8;font-size:.75rem;margin-left:auto}.field-comment-resolved-badge{align-items:center;background:#dcfce7;border-radius:8px;color:#16a34a;display:inline-flex;font-size:.7rem;font-weight:600;gap:.2rem;padding:.1rem .4rem}.field-comment-text{color:#475569;font-size:.9rem;line-height:1.5;margin:.25rem 0}.field-comment-actions{display:flex;gap:.5rem;margin-top:.35rem}.field-comment-actions .btn-small{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.75rem;gap:.25rem;padding:.2rem .5rem;transition:all .2s}.field-comment-actions .btn-small:hover{background:#f0fdf4;border-color:#22c55e;color:#22c55e}.field-comment-replies{border-left:2px solid #e2e8f0;display:flex;flex-direction:column;gap:.5rem;margin-left:1rem;margin-top:.5rem;padding-left:.75rem}.field-comment-reply{background:#f1f5f9;border-radius:6px;font-size:.85rem;padding:.5rem .75rem}.field-comment-reply.resolved{opacity:.7}.field-comment-input{border-top:1px solid #e2e8f0;margin-top:1rem;padding-top:1rem}.reply-indicator{align-items:center;background:#e6f2f4;border-radius:6px;color:#007084;display:flex;font-size:.8rem;justify-content:space-between;margin-bottom:.5rem;padding:.35rem .75rem}.reply-indicator button{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1rem;line-height:1}.field-comment-input-actions{align-items:center;display:flex;justify-content:space-between;margin-top:.5rem}.internal-checkbox{align-items:center;color:#64748b;cursor:pointer;display:flex;font-size:.8rem;gap:.35rem}.internal-checkbox input{cursor:pointer}.field-comments-summary{display:flex;flex-direction:column;gap:.5rem}.field-summary-item{align-items:center;border-radius:8px;cursor:pointer;display:flex;justify-content:space-between;padding:.6rem 1rem;transition:all .2s}.field-summary-item.has-unresolved{background:#fffbeb;border:1px solid #fde68a}.field-summary-item.all-resolved{background:#f0fdf4;border:1px solid #bbf7d0}.field-summary-item:hover{transform:translateX(4px)}.field-summary-label{color:#334155;font-weight:500}.field-summary-counts{align-items:center;display:flex;font-size:.8rem;gap:.5rem}.unresolved-count{color:#d97706;font-weight:600}.resolved-all{color:#16a34a;font-weight:500}.total-count{color:#94a3b8}.doc-list-page{padding:0}.doc-list-header{align-items:center;animation:fadeInDown .6s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.doc-list-header-left{align-items:center;display:flex;gap:1rem}.doc-list-header h1{color:#005a6b;font-size:2rem;margin:0}.doc-list-header .subtitle{color:#64748b;font-size:.9rem;margin:.25rem 0 0}.btn-secondary{padding:.6rem 1rem}.doc-list-toolbar{animation:fadeInUp .5s ease;display:flex;gap:1rem;margin-bottom:1rem}.search-bar{align-items:center;background:#fff;border-radius:10px;box-shadow:0 2px 4px #0000000f;display:flex;flex:1 1;gap:.75rem;padding:.5rem 1rem}.search-bar input{border:none;color:#334155;flex:1 1;font-size:.95rem;outline:none}.search-bar input::placeholder,.search-bar svg{color:#94a3b8}.btn-search{background:#007084;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:background .2s}.btn-search:hover{background:#005a6b}.btn-filter{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 2px 4px #0000000f;color:#64748b;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;padding:.5rem 1rem;transition:all .2s}.btn-filter.active,.btn-filter:hover{background:#f1f5f9;border-color:#007084;color:#007084}.filters-panel{animation:fadeInDown .3s ease;background:#fff;border-radius:12px;box-shadow:0 2px 6px #00000014;margin-bottom:1.5rem;padding:1.25rem}.filters-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));margin-bottom:1rem}.filter-group label{margin-bottom:.35rem}.filter-group select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#334155;font-size:.9rem;padding:.5rem;width:100%}.filter-group select:focus{border-color:#007084;box-shadow:0 0 0 2px #0070841a;outline:none}.filters-actions{display:flex;gap:.75rem;justify-content:flex-end}.doc-table-wrapper{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;overflow:hidden}.doc-table{border-collapse:collapse;width:100%}.doc-table thead{background:#f8fafc}.doc-table th{border-bottom:2px solid #e2e8f0;color:#64748b;font-size:.8rem;font-weight:600;letter-spacing:.05em;padding:.85rem 1rem;text-align:left;text-transform:uppercase}.doc-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:.9rem;padding:.85rem 1rem;vertical-align:middle}.doc-table tbody tr{transition:background .2s}.doc-table tbody tr:hover{background:#f8fafc}.doc-table tbody tr.row-overdue{background:#fef2f2}.doc-table tbody tr.row-overdue:hover{background:#fee2e2}.col-number{color:#005a6b;font-weight:600;white-space:nowrap}.col-title{max-width:300px}.doc-title-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.priority-badge{display:inline-block;padding:.2rem .6rem}.doc-status-badge,.priority-badge{font-size:.75rem;white-space:nowrap}.doc-status-badge{border-radius:12px;padding:.25rem .65rem}.department-tag{align-items:center;color:#64748b;display:inline-flex;font-size:.82rem;gap:.3rem}.deadline-cell{align-items:center;display:flex;gap:.4rem;white-space:nowrap}.deadline-overdue{color:#dc2626;font-weight:600}.deadline-overdue .overdue-icon{color:#dc2626}.deadline-warning,.deadline-warning .warning-icon{color:#d97706}.btn-view{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#007084;cursor:pointer;font-size:.82rem;font-weight:500;padding:.4rem .8rem;transition:all .2s}.btn-view:hover{background:#e6f2f4;border-color:#93c5fd}.empty-state{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;padding:4rem 2rem}.empty-state svg{color:#cbd5e1;margin-bottom:1rem}.empty-state h3{color:#475569}.empty-state p{color:#94a3b8}@media (max-width:1024px){.doc-table-wrapper{overflow-x:auto}.doc-table{min-width:900px}}@media (max-width:768px){.doc-list-page{padding:1rem}.doc-list-header{align-items:flex-start;gap:1rem}.doc-list-header,.doc-list-toolbar{flex-direction:column}.filters-grid{grid-template-columns:1fr}}.doc-detail-page{padding:0}.executor-action-banner{animation:bannerPulse .5s ease;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:14px;margin-bottom:1.25rem;padding:1rem 1.25rem}@keyframes bannerPulse{0%{opacity:0;transform:scale(.97)}50%{transform:scale(1.01)}to{opacity:1;transform:scale(1)}}.executor-banner-header{align-items:center;color:#92400e;display:flex;font-size:.95rem;font-weight:700;gap:.5rem;margin-bottom:.75rem}.executor-banner-item{align-items:center;background:#ffffffb3;border-radius:10px;display:flex;gap:1rem;margin-bottom:.5rem;padding:.75rem 1rem}.executor-banner-item:last-child{margin-bottom:0}.executor-banner-info{flex:1 1;min-width:0}.executor-banner-item-num{color:#92400e;font-size:.88rem;font-weight:700;margin-right:.4rem}.executor-banner-item-text{color:#451a03;display:inline;font-size:.88rem}.executor-banner-deadline{align-items:center;color:#b45309;display:flex;font-size:.8rem;font-weight:500;gap:.25rem;margin-top:.3rem}.btn-executor-complete{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:10px;box-shadow:0 3px 8px #10b9814d;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:600;gap:.4rem;padding:.6rem 1.25rem;transition:all .2s;white-space:nowrap}.btn-executor-complete:hover{box-shadow:0 6px 16px #10b98166;transform:translateY(-2px)}@media (max-width:768px){.executor-banner-item{align-items:flex-start;flex-direction:column}.btn-executor-complete{justify-content:center;margin-top:.5rem;width:100%}}.doc-detail-header{align-items:center;animation:fadeInDown .4s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.doc-detail-header-actions{display:flex;gap:.75rem}.btn-action{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:.4rem;padding:.6rem 1rem;transition:all .2s}.btn-edit{background:#f1f5f9;color:#475569}.btn-edit:hover{background:#e2e8f0}.btn-status{background:#e6f2f4;color:#005a6b}.btn-status:hover{background:#b3d4db}.doc-detail-card{animation:fadeInUp .5s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;margin-bottom:1.5rem;padding:2rem}.doc-detail-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:.75rem}.doc-reg-number{align-items:center;background:#f1f5f9;border-radius:8px;color:#005a6b;display:inline-flex;font-size:1rem;font-weight:700;gap:.3rem;padding:.3rem .8rem}.doc-status-badge{border-radius:14px;display:inline-block;font-size:.8rem;font-weight:600;padding:.3rem .75rem}.priority-badge{align-items:center;border-radius:14px;display:inline-flex;font-size:.78rem;gap:.3rem;padding:.25rem .7rem}.doc-detail-title{color:#1e293b;font-size:1.5rem;line-height:1.4;margin:0 0 1rem}.doc-detail-meta{display:flex;flex-wrap:wrap;gap:1rem 2rem}.meta-item{font-size:.9rem;gap:.4rem}.meta-item svg{color:#94a3b8;flex-shrink:0}.deadline-banner{align-items:center;background:#f0f9ff;border-left:4px solid #007084;border-radius:0 8px 8px 0;color:#005a6b;display:flex;font-size:.9rem;gap:.75rem;margin-top:1.25rem;padding:.85rem 1rem}.deadline-banner.overdue{background:#fef2f2;border-left-color:#ef4444;color:#991b1b}.overdue-text{align-items:center;color:#dc2626;display:inline-flex;font-weight:600;gap:.3rem;margin-left:.5rem}.days-left{color:#64748b;font-weight:400}.completed-banner{align-items:center;background:#f0fdf4;border-left:4px solid #22c55e;border-radius:0 8px 8px 0;color:#166534;display:flex;font-size:.9rem;gap:.75rem;margin-top:.75rem;padding:.85rem 1rem}.doc-section{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;margin-bottom:1.5rem;padding:1.5rem}.doc-section h2{align-items:center;color:#005a6b;display:flex;font-size:1.15rem;gap:.5rem;margin:0 0 1rem}.doc-description{color:#475569;line-height:1.7;white-space:pre-wrap}.items-list{display:flex;flex-direction:column;gap:.75rem}.item-card{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;transition:box-shadow .2s}.item-card:hover{box-shadow:0 2px 8px #00000014}.item-card.item-overdue{background:#fef2f2;border-color:#fca5a5}.item-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:.85rem 1rem;transition:background .2s;-webkit-user-select:none;user-select:none}.item-header:hover{background:#f8fafc}.item-header-left{align-items:center;display:flex;gap:.6rem}.item-number{color:#005a6b;font-size:.9rem;font-weight:700}.item-status-badge{border-radius:10px;font-size:.72rem;font-weight:600;padding:.15rem .5rem}.item-overdue-icon{color:#dc2626}.item-header-right{align-items:center;color:#64748b;display:flex;gap:.75rem}.item-deadline{align-items:center;display:flex;font-size:.82rem;gap:.3rem}.item-deadline.overdue{color:#dc2626;font-weight:600}.item-text{color:#475569;font-size:.9rem;line-height:1.6;margin:0;padding:0 1rem .85rem}.item-details{border-top:1px solid #f1f5f9;padding:0 1rem 1rem}.btn-small{background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;font-size:.75rem;font-weight:500;padding:.3rem .6rem;transition:all .2s}.btn-status-change{border-color:#93c5fd;color:#005a6b}.btn-status-change:hover{background:#e6f2f4}.btn-complete{align-items:center;border-color:#6ee7b7;color:#059669;display:inline-flex;gap:.3rem}.btn-complete:hover{background:#d1fae5}.executors-section{margin-top:1rem}.executors-section h4{color:#64748b;font-size:.85rem;letter-spacing:.05em;margin:0 0 .6rem;text-transform:uppercase}.executors-list{display:flex;flex-direction:column;gap:.5rem}.executor-row{grid-gap:.75rem;align-items:center;background:#f8fafc;border-radius:8px;display:grid;gap:.75rem;grid-template-columns:1fr auto auto;padding:.65rem .85rem}.executor-row.completed{background:#f0fdf4}.executor-info{align-items:center;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.6rem}.executor-dept{color:#475569;font-weight:500}.executor-dept,.executor-name{align-items:center;display:flex;gap:.3rem}.executor-name{color:#64748b}.responsible-badge{background:#fef3c7;border-radius:6px;color:#92400e;font-size:.7rem;font-weight:600;padding:.1rem .45rem}.executor-status-info{align-items:center;display:flex;font-size:.8rem;gap:.6rem}.executor-status{border-radius:8px;font-size:.75rem;font-weight:600;padding:.15rem .5rem}.executor-status.status-not_started{background:#f1f5f9;color:#64748b}.executor-status.status-in_progress{background:#e6f2f4;color:#005a6b}.executor-status.status-completed{background:#d1fae5;color:#059669}.executor-status.status-overdue{background:#fee2e2;color:#dc2626}.executor-completed,.executor-deadline{align-items:center;color:#94a3b8;display:flex;font-size:.78rem;gap:.2rem}.executor-completed{color:#059669}.executor-result{border-top:1px dashed #e2e8f0;color:#475569;font-size:.85rem;grid-column:1/-1;margin-top:.4rem;padding-top:.4rem}.history-section{margin-top:1.25rem}.history-section h4{color:#64748b;font-size:.85rem;letter-spacing:.05em;margin:0 0 .6rem;text-transform:uppercase}.history-list{border-left:2px solid #e2e8f0;display:flex;flex-direction:column;gap:0;padding-left:1rem}.history-item{display:flex;gap:.75rem;padding-bottom:.75rem;position:relative}.history-dot{background:#94a3b8;border-radius:50%;height:8px;left:-1.35rem;position:absolute;top:.4rem;width:8px}.history-content{flex:1 1}.history-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.2rem}.history-header strong{color:#334155;font-size:.85rem}.history-date{color:#94a3b8;font-size:.75rem}.history-action{color:#64748b;font-size:.85rem;margin:0}.history-status-change{color:#005a6b;font-size:.8rem;margin:.2rem 0 0}.history-comment{color:#475569;font-size:.82rem;font-style:italic;margin:.2rem 0 0}.files-list{display:flex;flex-wrap:wrap;gap:.75rem}.file-item{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#007084;display:flex;font-size:.85rem;gap:.5rem;padding:.6rem 1rem;text-decoration:none;transition:all .2s}.file-item:hover{background:#e6f2f4;border-color:#93c5fd}.file-size{color:#94a3b8;font-size:.75rem}.co-executors-info{align-items:center;border-top:1px dashed #92400e33;color:#78350f;display:flex;font-size:.82rem;gap:.4rem;margin-top:.5rem;padding-top:.5rem}.co-executors-info svg{flex-shrink:0}.section-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.section-header-row h2{margin:0}.btn-upload-toggle{align-items:center;border-color:#93c5fd;color:#007084;display:inline-flex;gap:.3rem}.btn-upload-toggle:hover{background:#e6f2f4}.upload-form{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;margin-bottom:1rem;padding:1rem}.upload-actions{display:flex;gap:.5rem;margin-top:.5rem}.file-info-col{display:flex;flex-direction:column;gap:.15rem}.file-desc{color:#94a3b8;font-size:.75rem}.empty-note{color:#94a3b8;font-size:.9rem;margin:0}.modal-complete{max-width:550px}.complete-modal-info{background:#f0f9ff;border-left:3px solid #007084;border-radius:0 8px 8px 0;margin-bottom:1.25rem;padding:.85rem 1rem}.complete-modal-item-num{color:#005a6b;font-size:.9rem;font-weight:700;margin-bottom:.3rem}.complete-modal-item-text{color:#475569;font-size:.88rem;line-height:1.5}.complete-modal-deadline{color:#64748b;display:flex;margin-top:.5rem}.complete-modal-deadline,.file-selected{align-items:center;font-size:.82rem;gap:.3rem}.file-selected{color:#059669;display:inline-flex;margin-top:.3rem}.all-history{max-height:400px;overflow-y:auto}.history-item-ref{background:#e0e7ff;border-radius:4px;color:#4338ca;font-size:.72rem;font-weight:600;margin-left:.4rem;padding:.1rem .4rem}.assignment-card{animation:fadeInUp .5s ease;background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;border-radius:14px;margin-bottom:1.5rem;padding:1.5rem}.assignment-card-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.assignment-card-header h3{color:#92400e;font-size:1.1rem;margin:0}.assignment-card-header svg{color:#d97706}.assignment-card-text{color:#78350f;font-size:.95rem;line-height:1.5;margin:0 0 .5rem}.assignment-card-hint{color:#92400e;font-size:.85rem;font-style:italic;line-height:1.4;margin:0}.error-state{align-items:center;color:#64748b;display:flex;flex-direction:column;gap:1rem;justify-content:center;min-height:400px}.error-state svg{color:#cbd5e1}.btn-back-large{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.9rem;gap:.5rem;padding:.75rem 1.25rem}.modal-content{overflow:hidden}.modal-header h2{font-size:1.2rem}.btn-primary{gap:.4rem}.btn-secondary{padding:.6rem 1.2rem}.btn-resolution{background:#f5f3ff;border-color:#ddd6fe;color:#7c3aed}.btn-resolution:hover{background:#ede9fe}.resolutions-section{margin-bottom:1rem}.resolutions-list{display:flex;flex-direction:column;gap:.75rem}.resolution-card{background:#fff;border-left:4px solid #8b5cf6;border-radius:10px;box-shadow:0 1px 4px #0000000f;padding:1rem 1.25rem}.resolution-card.executed{border-left-color:#22c55e;opacity:.7}.resolution-card-header{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.resolution-type-badge{align-items:center;border-radius:10px;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;gap:.25rem;padding:.2rem .6rem}.resolution-author{color:#1e293b;font-size:.9rem;font-weight:600}.resolution-position{color:#64748b;font-size:.8rem}.resolution-date{color:#94a3b8;font-size:.8rem;margin-left:auto}.resolution-text{color:#334155;font-size:.9rem;line-height:1.5;margin:.5rem 0}.resolution-meta{align-items:center;display:flex;flex-wrap:wrap;font-size:.8rem;gap:.75rem}.resolution-delegate{color:#007084}.resolution-deadline,.resolution-delegate{align-items:center;display:flex;gap:.25rem}.resolution-deadline{color:#f59e0b}.resolution-executed{align-items:center;color:#22c55e;display:flex;font-weight:500;gap:.25rem}.btn-execute-res{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;display:inline-flex;font-size:.75rem;gap:.25rem;padding:.25rem .6rem}.btn-execute-res:hover{background:#f0fdf4;border-color:#22c55e;color:#22c55e}.modal-resolution{max-width:600px}.resolution-type-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(3,1fr);margin-top:.5rem}.res-type-btn{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:8px;color:#334155;cursor:pointer;display:flex;font-size:.8rem;gap:.35rem;padding:.5rem .75rem;transition:all .2s}.res-type-btn:hover{background:#f8fafc;border-color:#cbd5e1}.res-type-btn.active{font-weight:600}@media (max-width:768px){.doc-detail-page{padding:1rem}.doc-detail-header{align-items:flex-start;flex-direction:column;gap:1rem}.doc-detail-meta{flex-direction:column;gap:.5rem}.executor-row{gap:.5rem;grid-template-columns:1fr}.item-header{align-items:flex-start;flex-direction:column;gap:.5rem}}.doc-create-page{padding:0}.doc-create-header{align-items:center;animation:fadeInDown .4s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.doc-create-header-left{align-items:center;display:flex;gap:1rem}.doc-create-header h1{color:#005a6b;font-size:1.75rem;margin:0}.form-row-4{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr)}.btn-add-small{align-items:center;background:#f0fdf4;border:1px solid #6ee7b7;border-radius:6px;color:#059669;cursor:pointer;display:inline-flex;font-size:.78rem;font-weight:500;gap:.3rem;padding:.3rem .6rem}.btn-add-small:hover{background:#d1fae5}.btn-remove-small{align-items:center;background:#fef2f2;border:1px solid #fca5a5;border-radius:4px;color:#dc2626;cursor:pointer;display:flex;height:28px;justify-content:center;padding:0;width:28px}.btn-remove-small:hover{background:#fee2e2}.items-form-list{display:flex;flex-direction:column;gap:1rem}.item-form-card{background:#fafbfc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem}.item-form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.item-form-header h3{color:#005a6b;font-size:.95rem;margin:0}.executors-form-section{border-top:1px dashed #e2e8f0;margin-top:.5rem;padding-top:.75rem}.executors-form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.executors-form-header h4{align-items:center;color:#64748b;display:flex;font-size:.85rem;gap:.3rem;margin:0}.executor-form-row{align-items:center;display:flex;gap:.75rem;margin-bottom:.5rem}.executor-form-row .form-control{flex:1 1;margin-bottom:0}.checkbox-label{font-size:.82rem;gap:.3rem;white-space:nowrap}.checkbox-label input[type=checkbox]{accent-color:#007084;height:16px;width:16px}@media (max-width:768px){.doc-create-page{padding:1rem}.form-row,.form-row-4{flex-direction:column;grid-template-columns:1fr}.executor-form-row{align-items:stretch}.executor-form-row,.form-actions{flex-direction:column}}.plan-list-page{padding:0}.plan-list-header{align-items:center;animation:fadeInDown .4s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.plan-list-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0}.filters-card{animation:fadeInUp .4s ease;padding:1.25rem}.filters-row{align-items:flex-end}.filter-group label{color:#64748b;font-size:.8rem}.filter-control{font-family:inherit;font-size:.85rem}.plan-stats{grid-gap:1rem;animation:fadeInUp .5s ease;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}.plan-stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000f;display:flex;gap:1rem;padding:1.25rem}.plan-stat-card.blue{border-left:4px solid #007084}.plan-stat-card.green{border-left:4px solid #10b981}.plan-stat-card.orange{border-left:4px solid #f59e0b}.plan-stat-card.purple{border-left:4px solid #8b5cf6}.plan-stat-card .stat-icon{align-items:center;border-radius:12px;display:flex;height:48px;justify-content:center;width:48px}.plan-stat-card.blue .stat-icon{background:#e6f2f4;color:#007084}.plan-stat-card.green .stat-icon{background:#d1fae5;color:#10b981}.plan-stat-card.orange .stat-icon{background:#fef3c7;color:#f59e0b}.plan-stat-card.purple .stat-icon{background:#ede9fe;color:#8b5cf6}.stat-label{font-size:.8rem}.plans-table-card{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;overflow-x:auto;padding:1.5rem}.plans-table-card h2{align-items:center;color:#005a6b;display:flex;font-size:1.15rem;gap:.5rem;margin:0 0 1rem}.plans-table{border-collapse:collapse;width:100%}.plans-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#64748b;font-size:.8rem;font-weight:600;padding:.75rem .6rem;text-align:left;text-transform:uppercase;white-space:nowrap}.plans-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:.88rem;padding:.75rem .6rem;vertical-align:middle}.plans-table tr:hover{background:#f8fafc}.plan-title-link{color:#005a6b;cursor:pointer;font-weight:500;text-decoration:none}.plan-title-link:hover{text-decoration:underline}.plan-status-badge,.plan-type-badge{white-space:nowrap}.progress-bar-container{align-items:center;display:flex;gap:.5rem}.progress-bar{background:#e2e8f0;border-radius:4px;flex:1 1;height:8px;min-width:80px;overflow:hidden}.progress-bar-fill{border-radius:4px;height:100%;transition:width .3s ease}.progress-bar-fill.green{background:#10b981}.progress-bar-fill.yellow{background:#f59e0b}.progress-bar-fill.red{background:#ef4444}.progress-text{color:#475569;font-size:.82rem;font-weight:600;min-width:35px;text-align:right}.overdue-indicator{align-items:center;color:#dc2626;display:inline-flex;font-size:.78rem;font-weight:500;gap:.2rem}.btn-secondary{border-radius:6px;font-size:.82rem;padding:.4rem .8rem}@media (max-width:768px){.plan-list-page{padding:1rem}.plan-stats{grid-template-columns:repeat(2,1fr)}.filters-row{flex-direction:column}.filter-group{min-width:100%}.plan-list-header{align-items:flex-start;flex-direction:column;gap:1rem}}.plan-detail-page{padding:0}.plan-detail-header{align-items:flex-start;animation:fadeInDown .4s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.plan-detail-header-left{align-items:center;display:flex;gap:1rem}.plan-detail-header h1{color:#005a6b;font-size:1.5rem;margin:0}.plan-detail-header .plan-subtitle{color:#64748b;font-size:.9rem;margin-top:.25rem}.header-badges{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.plan-info-card{animation:fadeInUp .4s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;margin-bottom:1.5rem;padding:1.5rem}.plan-info-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.plan-info-item{display:flex;flex-direction:column;gap:.25rem}.plan-info-label{color:#94a3b8;font-size:.78rem;font-weight:600;text-transform:uppercase}.plan-info-value{color:#334155;font-size:.95rem;font-weight:500}.plan-overall-progress{align-items:center;background:#f8fafc;border-radius:12px;display:flex;gap:1rem;margin-top:1rem;padding:1rem 1.5rem}.plan-overall-progress .progress-bar{background:#e2e8f0;border-radius:6px;flex:1 1;height:12px;overflow:hidden}.plan-overall-progress .progress-bar-fill{border-radius:6px;height:100%;transition:width .5s ease}.plan-overall-progress .progress-bar-fill.green{background:linear-gradient(90deg,#10b981,#34d399)}.plan-overall-progress .progress-bar-fill.yellow{background:linear-gradient(90deg,#f59e0b,#fbbf24)}.plan-overall-progress .progress-bar-fill.red{background:linear-gradient(90deg,#ef4444,#f87171)}.plan-overall-progress .progress-pct{color:#1e293b;font-size:1.5rem;font-weight:700;min-width:60px;text-align:right}.plan-overall-progress .progress-label{color:#64748b;font-size:.85rem;white-space:nowrap}.tasks-section{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;padding:1.5rem}.tasks-section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.tasks-section-header h2{align-items:center;color:#005a6b;display:flex;font-size:1.15rem;gap:.5rem;margin:0}.task-card{border:1px solid #e2e8f0;border-radius:12px;margin-bottom:.75rem;overflow:hidden;transition:box-shadow .2s}.task-card:hover{box-shadow:0 2px 8px #00000014}.task-card-header{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:1rem;-webkit-user-select:none;user-select:none}.task-card-header:hover{background:#f8fafc}.task-card-left{align-items:center;display:flex;flex:1 1;gap:.75rem}.task-number{color:#005a6b;font-size:.9rem;font-weight:700;min-width:30px}.task-title{color:#334155;font-size:.92rem;font-weight:500}.task-card-right{align-items:center;display:flex;gap:.75rem}.task-deadline{align-items:center;color:#64748b;display:flex;font-size:.82rem;gap:.3rem;white-space:nowrap}.task-deadline.overdue{color:#dc2626;font-weight:500}.task-progress-mini{align-items:center;display:flex;gap:.4rem;min-width:90px}.task-progress-mini .progress-bar{background:#e2e8f0;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.task-progress-mini .progress-bar-fill{border-radius:3px;height:100%}.task-progress-mini .progress-bar-fill.green{background:#10b981}.task-progress-mini .progress-bar-fill.yellow{background:#f59e0b}.task-progress-mini .progress-bar-fill.red{background:#ef4444}.task-progress-mini .pct{color:#475569;font-size:.78rem;font-weight:600;min-width:30px;text-align:right}.task-status-badge{align-items:center;border-radius:12px;display:inline-flex;font-size:.75rem;font-weight:500;gap:.2rem;padding:.2rem .5rem;white-space:nowrap}.task-status-not_started{background:#f1f5f9;color:#64748b}.task-status-in_progress{background:#e6f2f4;color:#005a6b}.task-status-completed{background:#d1fae5;color:#059669}.task-status-overdue{background:#fee2e2;color:#dc2626}.task-status-cancelled{background:#f3e8ff;color:#7c3aed}.task-card-body{border-top:1px solid #f1f5f9;padding:0 1rem 1rem}.task-details-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:1rem 0}.task-detail-item{display:flex;flex-direction:column;gap:.2rem}.task-detail-label{color:#94a3b8;font-size:.75rem;font-weight:600;text-transform:uppercase}.task-detail-value{color:#334155;font-size:.88rem}.task-text-block{background:#f8fafc;border-radius:8px;margin-top:.75rem;padding:.75rem}.task-text-block h4{color:#64748b;font-size:.82rem;margin:0 0 .3rem}.task-text-block p{color:#334155;font-size:.88rem;margin:0;white-space:pre-wrap}.task-actions{display:flex;gap:.5rem;margin-top:.75rem}.executions-section,.task-actions{border-top:1px dashed #e2e8f0;padding-top:.75rem}.executions-section{margin-top:1rem}.executions-section h4{align-items:center;color:#64748b;display:flex;font-size:.85rem;gap:.3rem;margin:0 0 .75rem}.execution-item{background:#fafbfc;border-left:3px solid #007084;border-radius:8px;display:flex;gap:.75rem;margin-bottom:.75rem;padding:.75rem}.execution-item .exec-date{color:#94a3b8;font-size:.78rem;font-weight:600;min-width:80px}.execution-item .exec-content{flex:1 1}.execution-item .exec-result{color:#334155;font-size:.85rem;margin:0 0 .3rem}.execution-item .exec-deviation{color:#dc2626;font-size:.82rem;font-style:italic;margin:.3rem 0 0}.execution-item .exec-reporter{color:#94a3b8;font-size:.75rem}.execution-item .exec-pct{color:#475569;font-size:.82rem;font-weight:600}.modal-overlay{animation:fadeIn .2s ease;background:#00000080;bottom:0;left:0;right:0;top:0}.modal-content{animation:slideUp .3s ease;max-width:550px}.modal-header{border-bottom:1px solid #e2e8f0}.modal-header h2{font-size:1.1rem}.modal-close{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.modal-close:hover{color:#475569}.modal-footer{border-top:1px solid #e2e8f0}.btn-primary{padding:.6rem 1.2rem}.btn-secondary,.btn-success{font-size:.85rem;gap:.4rem;padding:.5rem .9rem}.btn-success{align-items:center;background:#10b981;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;transition:all .2s}.btn-success:hover{background:#059669}.btn-warning{background:#f59e0b;font-size:.85rem;gap:.4rem;padding:.5rem .9rem;transition:all .2s}.btn-warning:hover{background:#d97706}.plan-status-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.78rem;font-weight:500;gap:.3rem;padding:.25rem .65rem}.plan-status-draft{background:#f1f5f9;color:#64748b}.plan-status-active{background:#e6f2f4;color:#005a6b}.plan-status-completed{background:#d1fae5;color:#059669}.plan-status-archived{background:#f3e8ff;color:#7c3aed}.plan-type-badge{border-radius:6px;display:inline-flex;font-size:.78rem;font-weight:500;padding:.2rem .5rem}.plan-type-annual{background:#fef3c7;color:#b45309}.plan-type-quarterly{background:#e0e7ff;color:#4338ca}.plan-type-monthly{background:#ecfdf5;color:#047857}.overdue-badge{align-items:center;border-radius:6px;display:inline-flex;font-size:.78rem;font-weight:500;gap:.2rem;padding:.2rem .5rem}.expand-icon{color:#94a3b8;transition:transform .2s}.expand-icon.expanded{transform:rotate(180deg)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.plan-detail-page{padding:1rem}.plan-detail-header{flex-direction:column;gap:1rem}.plan-info-grid{grid-template-columns:1fr 1fr}.task-card-header{align-items:flex-start;flex-direction:column;gap:.5rem}.task-card-right{justify-content:space-between;width:100%}.task-details-grid{grid-template-columns:1fr}}.plan-create-page{padding:0}.plan-create-header{align-items:center;animation:fadeInDown .4s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.plan-create-header-left{align-items:center;display:flex;gap:1rem}.plan-create-header h1{color:#005a6b;font-size:1.75rem;margin:0}.form-card{animation:fadeInUp .5s ease;box-shadow:0 4px 6px #0000001a}.card-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.card-header-row h2{margin:0}.form-row{margin-bottom:0}.form-row-3{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.form-group{margin-bottom:1rem}.form-control::placeholder{color:#cbd5e1}textarea.form-control{min-height:60px;resize:vertical}.btn-primary:disabled{box-shadow:none;opacity:.5}.btn-add{align-items:center;background:#e6f2f4;border:1px solid #93c5fd;border-radius:8px;color:#005a6b;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:.4rem;padding:.5rem 1rem;transition:all .2s}.btn-add:hover{background:#b3d4db}.btn-remove{align-items:center;background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;color:#dc2626;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s;width:32px}.btn-remove:hover{background:#fee2e2}.tasks-form-list{display:flex;flex-direction:column;gap:1rem}.task-form-card{background:#fafbfc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem}.task-form-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.task-form-header h3{color:#005a6b;font-size:.95rem;margin:0}.form-actions{gap:1rem;padding-top:.5rem}.empty-hint{color:#94a3b8;font-size:.9rem;padding:1.5rem;text-align:center}.loading-spinner{font-size:1.2rem;min-height:400px}@media (max-width:768px){.plan-create-page{padding:1rem}.form-row,.form-row-3{flex-direction:column;grid-template-columns:1fr}.form-actions{flex-direction:column}}.analytics-dashboard{padding:0}.analytics-dashboard .dashboard-header{align-items:center;animation:fadeInDown .6s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.analytics-dashboard .dashboard-header h1{color:#005a6b;font-size:2rem;margin:0}.analytics-dashboard .dashboard-header p{color:#64748b;margin:.25rem 0 0}.tab-nav{animation:fadeInDown .7s ease;background:#fff;border-radius:12px;box-shadow:0 2px 4px #0000000f;display:flex;gap:.5rem;margin-bottom:1.5rem;overflow-x:auto;padding:.5rem}.tab-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.4rem;padding:.6rem 1.2rem;transition:all .3s;white-space:nowrap}.tab-btn:hover{background:#f1f5f9;color:#005a6b}.tab-btn.active{background:#005a6b;box-shadow:0 2px 8px #005a6b4d;color:#fff}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:1.5rem}.stat-card{align-items:center;animation:fadeInUp .6s ease;background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;display:flex;gap:1rem;padding:1.25rem;transition:transform .3s}.stat-card:hover{transform:translateY(-3px)}.stat-card.blue{border-left:4px solid #007084}.stat-card.green{border-left:4px solid #10b981}.stat-card.orange{border-left:4px solid #f59e0b}.stat-card.red{border-left:4px solid #ef4444}.stat-card.purple{border-left:4px solid #7c3aed}.stat-card svg{flex-shrink:0}.stat-card.blue svg{color:#007084}.stat-card.green svg{color:#10b981}.stat-card.orange svg{color:#f59e0b}.stat-card.red svg{color:#ef4444}.stat-card.purple svg{color:#7c3aed}.stat-value{color:#005a6b;font-size:1.8rem}.stat-label{font-size:.85rem}.charts-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-bottom:1.5rem}.chart-card{animation:fadeInUp .7s ease;background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;padding:1.5rem}.chart-card h3{align-items:center;color:#005a6b;display:flex;font-size:1.1rem;gap:.5rem;margin:0 0 1rem}.section-card{animation:fadeInUp .8s ease;background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;margin-bottom:1.5rem;padding:1.5rem}.section-card h3{color:#005a6b;font-size:1.1rem;gap:.5rem;margin:0 0 1rem}.filter-bar,.section-card h3{align-items:center;display:flex}.filter-bar{animation:fadeInUp .5s ease;gap:.75rem;margin-bottom:1.5rem}.filter-bar label{color:#475569;font-weight:500}.filter-bar select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#005a6b;cursor:pointer;font-size:.9rem;padding:.5rem 1rem}.export-hint{color:#64748b;font-size:.85rem;margin:0}.table-wrapper{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;font-size:.85rem;font-weight:600;text-align:left;white-space:nowrap}.data-table td,.data-table th{color:#475569;padding:.75rem 1rem}.data-table td{border-bottom:1px solid #f1f5f9;font-size:.9rem}.data-table tr:hover{background:#f8fafc}.text-green{color:#10b981;font-weight:600}.text-orange{color:#f59e0b;font-weight:600}.text-red{color:#ef4444;font-weight:600}.kpi-cell{gap:.5rem}.kpi-cell span{font-size:.85rem;font-weight:600;min-width:35px}.progress-bar-mini{background:#e2e8f0;border-radius:4px;height:8px;overflow:hidden;width:80px}.progress-fill{border-radius:4px;height:100%;transition:width .5s ease}.rank-cell{text-align:center}.rank-badge{color:#64748b;font-size:.8rem;height:28px;width:28px}.rank-badge.top{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.overdue-badge{background:#fee2e2;color:#dc2626}.ok-badge,.overdue-badge{border-radius:12px;display:inline-block;font-size:.85rem;font-weight:600;padding:.2rem .6rem}.ok-badge{background:#d1fae5;color:#059669}.alerts-section{animation:fadeInUp .7s ease;margin-bottom:1.5rem}.alerts-section h3{align-items:center;color:#dc2626;display:flex;gap:.5rem;margin:0 0 1rem}.alerts-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.alert-card{background:#fff;border-radius:12px;box-shadow:0 2px 6px #0000000f;padding:1rem}.alert-card.danger{border-left:4px solid #ef4444}.alert-card.warning{border-left:4px solid #f59e0b}.alert-card h4{color:#005a6b;font-size:.95rem;margin:0 0 .75rem}.alert-item{border-bottom:1px solid #f1f5f9;cursor:pointer;padding:.5rem 0;transition:background .2s}.alert-item:hover{background:#f8fafc}.alert-item:last-child{border-bottom:none}.alert-title{color:#005a6b;display:block;font-size:.85rem;font-weight:500}.alert-meta{color:#94a3b8;display:block;font-size:.78rem;margin-top:.15rem}.actions-list{max-height:400px;overflow-y:auto}.action-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;font-size:.85rem;gap:.75rem;padding:.6rem 0}.action-row:last-child{border-bottom:none}.action-user{color:#005a6b;font-weight:600;min-width:150px}.action-type{border-radius:12px;font-size:.75rem;font-weight:600;min-width:80px;padding:.2rem .6rem;text-align:center}.action-type.type-create{background:#d1fae5;color:#059669}.action-type.type-update{background:#e6f2f4;color:#007084}.action-type.type-delete{background:#fee2e2;color:#dc2626}.action-type.type-view{background:#f1f5f9;color:#64748b}.action-type.type-login{background:#ede9fe;color:#7c3aed}.action-type.type-logout{background:#fef3c7;color:#d97706}.action-desc{color:#64748b;flex:1 1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-time{color:#94a3b8;font-size:.8rem;white-space:nowrap}.no-data{font-size:1rem;height:200px}.loading,.no-data{align-items:center;display:flex;justify-content:center}.loading{color:#64748b;font-size:1.2rem;min-height:300px}@media (max-width:768px){.analytics-dashboard{padding:1rem}.analytics-dashboard .dashboard-header{align-items:flex-start;flex-direction:column;gap:1rem}.tab-nav{flex-wrap:nowrap;overflow-x:auto}.stats-grid{grid-template-columns:1fr 1fr}.charts-grid{grid-template-columns:1fr}.table-wrapper{overflow-x:auto}.action-row{flex-wrap:wrap}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}}.stat-change{font-size:.85rem;font-weight:600;margin-top:.25rem}.change-positive{color:#16a34a;gap:2px}.change-negative{gap:2px}.yc-top-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr;margin-bottom:1.5rem}.yc-top-list{display:flex;flex-direction:column;gap:.5rem}.yc-top-item{align-items:center;border-radius:8px;display:flex;font-size:.9rem;gap:.75rem;padding:.6rem .75rem}.yc-top-item.positive{background:#f0fdf4;border-left:3px solid #16a34a}.yc-top-item.negative{background:#fef2f2;border-left:3px solid #dc2626}.yc-top-rank{color:#64748b;font-weight:700;min-width:28px}.yc-top-name{flex:1 1;font-weight:500}.yc-top-kpi{color:#64748b;font-size:.85rem;white-space:nowrap}@media (max-width:768px){.yc-top-grid{grid-template-columns:1fr}}.risk-legend{color:#64748b;display:flex;font-size:.85rem;gap:1.25rem;margin-bottom:1rem}.risk-legend-item{align-items:center;display:flex;gap:.35rem}.risk-legend-dot{border:1px solid;border-radius:4px;height:14px;width:14px}.risk-grid{grid-gap:.6rem;display:grid;gap:.6rem;grid-template-columns:repeat(6,1fr);margin-bottom:1rem}.risk-cell{border-radius:8px;cursor:pointer;padding:.75rem .5rem;text-align:center;transition:transform .15s,box-shadow .15s;-webkit-user-select:none;user-select:none}.risk-cell:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-2px)}.risk-cell.selected{outline:3px solid #1e293b;outline-offset:1px}.risk-cell-code{font-size:.75rem;font-weight:700}.risk-cell-score{font-size:1.1rem;font-weight:800;margin-top:.15rem}.risk-detail-card{background:#f8fafc;border-left:4px solid #64748b;border-radius:8px;margin-top:1rem;padding:1rem 1.25rem}.risk-detail-card h4{color:#1e293b;font-size:1rem;margin:0 0 .75rem}.risk-detail-stats{color:#475569;display:flex;flex-wrap:wrap;font-size:.9rem;gap:1.25rem;margin-bottom:.75rem}.risk-factors-list{display:flex;flex-direction:column;gap:.35rem}.risk-factor-item{background:#fff;border-radius:6px;color:#475569;display:flex;font-size:.85rem;justify-content:space-between;padding:.35rem .5rem}.risk-factor-points{color:#dc2626;font-weight:700}.risk-badge{border-radius:12px;display:inline-block;font-size:.8rem;font-weight:600;padding:.2rem .6rem;white-space:nowrap}.risk-critical-list{display:flex;flex-direction:column;gap:.75rem}.risk-critical-item{background:#fff;border-left:4px solid #ef4444;border-radius:8px;box-shadow:0 1px 4px #0000000f;padding:.85rem 1rem}.risk-critical-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.risk-critical-name{color:#1e293b;font-weight:600}.risk-critical-factors{display:flex;flex-wrap:wrap;gap:.4rem}.risk-factor-tag{background:#fef2f2;border-radius:6px;color:#991b1b;font-size:.78rem;padding:.2rem .5rem}@media (max-width:768px){.risk-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:480px){.risk-grid{grid-template-columns:repeat(2,1fr)}}.rating-table .rating-row.selected,.rating-table tbody tr:hover{background:#e6f2f4}.rank-badge{align-items:center;background:#f1f5f9;border-radius:50%;color:#475569;display:inline-flex;font-size:.85rem;font-weight:700;height:32px;justify-content:center;width:32px}.rank-badge.rank-1{background:linear-gradient(135deg,#fbbf24,#f59e0b);box-shadow:0 2px 8px #f59e0b66;color:#fff}.rank-badge.rank-2{background:linear-gradient(135deg,#94a3b8,#64748b);color:#fff}.rank-badge.rank-3{background:linear-gradient(135deg,#d97706,#b45309);color:#fff}.rank-change{font-size:.85rem;font-weight:600}.rank-change.positive{color:#10b981}.rank-change.negative{color:#ef4444}.rank-change.neutral{color:#94a3b8}.kpi-cell{align-items:center;display:flex;gap:8px}.kpi-value{font-weight:600;min-width:36px}.kpi-bar{background:#e2e8f0;border-radius:4px;flex:1 1;height:8px;min-width:60px}.kpi-fill{background:linear-gradient(90deg,#ef4444,#f59e0b 40%,#10b981 80%);border-radius:4px;height:100%;transition:width .3s ease}.penalty{color:#ef4444;font-weight:600}.rating-history-section{margin-top:1.5rem}.rating-dept-stats{display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem}.stat-mini{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;padding:.75rem 1.25rem}.stat-mini .stat-label{color:#64748b;font-size:.75rem;margin-bottom:.25rem}.stat-mini .stat-value{color:#1e293b;font-size:1.25rem;font-weight:700}.stat-mini .stat-value.positive{color:#10b981}.stat-mini .stat-value.negative{color:#ef4444}.empty-state{align-items:center;display:flex;flex-direction:column;gap:.5rem;justify-content:center}.no-data{color:#94a3b8;padding:2rem;text-align:center}@media (max-width:768px){.rating-dept-stats{gap:.75rem}.stat-mini{padding:.5rem .75rem}}.user-list-page{padding:0}.user-list-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.user-list-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0}.user-list-header .subtitle{color:#64748b;font-size:.9rem;margin:.25rem 0 0}.btn-primary{padding:.75rem 1.25rem}.user-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.search-box{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex:1 1;gap:.5rem;min-width:200px;padding:.6rem 1rem}.search-box input{border:none;color:#1e293b;font-size:.9rem;outline:none;width:100%}.search-box svg{color:#94a3b8;flex-shrink:0}.user-filters select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:.9rem;padding:.6rem 1rem}.user-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.user-table{border-collapse:collapse;width:100%}.user-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;font-size:.85rem;font-weight:600;text-align:left}.user-table td,.user-table th{color:#475569;padding:.85rem 1rem}.user-table td{border-bottom:1px solid #f1f5f9;font-size:.9rem}.user-table tr:hover{background:#f8fafc}.user-name-cell{gap:.75rem}.user-avatar,.user-name-cell{align-items:center;display:flex}.user-avatar{background:#e6f2f4;border-radius:50%;color:#007084;flex-shrink:0;font-size:.85rem;font-weight:700;height:32px;justify-content:center;width:32px}.status-dot{align-items:center;display:inline-flex;font-size:.8rem;font-weight:500;gap:.4rem}.status-dot:before{border-radius:50%;content:"";height:8px;width:8px}.status-dot.active:before{background:#10b981}.status-dot.inactive:before{background:#ef4444}.btn-icon{background:#fff;display:flex}.btn-icon:hover{background:#f1f5f9;color:#005a6b}.btn-icon-danger:hover{background:#fef2f2;border-color:#fca5a5;color:#ef4444}.pagination-bar{align-items:center;display:flex;justify-content:space-between;margin-bottom:.75rem}.pagination-info{align-items:center;color:#475569;display:flex;font-size:.9rem;gap:.5rem}.page-size-select{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;font-size:.85rem;padding:.4rem .6rem}.pagination-total{color:#94a3b8;margin-left:.5rem}.pagination-controls{border-top:1px solid #f1f5f9;display:flex;gap:4px;padding:.75rem 1rem}.pagination-btn,.pagination-controls{align-items:center;justify-content:center}.pagination-btn{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#475569;cursor:pointer;display:inline-flex;font-size:.85rem;height:32px;min-width:32px;padding:0 6px;transition:all .15s}.pagination-btn:hover:not(:disabled):not(.active){background:#f1f5f9;border-color:#cbd5e1}.pagination-btn.active{background:#007084;border-color:#007084;color:#fff;font-weight:600}.pagination-btn:disabled{cursor:not-allowed;opacity:.4}.pagination-dots{align-items:center;color:#94a3b8;display:inline-flex;font-size:.85rem;height:32px;justify-content:center;min-width:24px}@media (max-width:768px){.user-list-header{align-items:flex-start;gap:1rem}.user-filters,.user-list-header{flex-direction:column}.user-table-wrapper{overflow-x:auto}}.user-create-page{max-width:800px;padding:0}.user-create-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0 0 1.5rem}.user-form{display:flex;flex-direction:column;gap:1.5rem}.form-control,select.form-control option{background-color:#fff;color:#1e293b}.checkbox-row{display:flex;gap:2rem}.checkbox-label{align-items:center;color:#475569;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem}.checkbox-label input{accent-color:#007084;height:18px;width:18px}.form-actions{gap:.75rem}.btn-secondary{font-size:.9rem}.btn-secondary:hover{border-color:#cbd5e1}@media (max-width:768px){.form-row,.form-row-3{grid-template-columns:1fr}.checkbox-row{flex-direction:column;gap:.75rem}}.audit-log-page{padding:0}.audit-log-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0}.audit-log-header .subtitle{color:#64748b;font-size:.9rem;margin:.25rem 0 1.5rem}.audit-filters{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.audit-filters .search-box{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex:1 1;gap:.5rem;min-width:200px;padding:.6rem 1rem}.audit-filters .search-box input{border:none;color:#1e293b;font-size:.9rem;outline:none;width:100%}.audit-filters .search-box svg{color:#94a3b8;flex-shrink:0}.audit-filters select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;font-size:.9rem;padding:.6rem 1rem}.audit-table-wrapper{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.audit-table{border-collapse:collapse;width:100%}.audit-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-size:.85rem;font-weight:600;padding:.85rem 1rem;text-align:left}.audit-table td{border-bottom:1px solid #f1f5f9;color:#475569;font-size:.85rem;padding:.75rem 1rem}.audit-table tr:hover{background:#f8fafc}.date-cell{align-items:center;color:#64748b;display:flex;gap:.4rem;white-space:nowrap}.desc-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-cell{color:#94a3b8;padding:2rem!important;text-align:center}.action-badge{border-radius:10px;display:inline-block;font-size:.75rem;font-weight:600;padding:.2rem .5rem}.action-login{background:#d1fae5;color:#065f46}.action-logout{background:#f1f5f9;color:#475569}.action-create{background:#e6f2f4;color:#005a6b}.action-update{background:#fef3c7;color:#92400e}.action-delete{background:#fee2e2;color:#991b1b}.action-view{background:#ede9fe;color:#5b21b6}@media (max-width:768px){.audit-filters{flex-direction:column}.audit-table-wrapper{overflow-x:auto}}.profile-page{max-width:800px;padding:0}.profile-page h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0 0 1.5rem}.profile-info-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:1.25rem;margin-bottom:1.5rem;padding:1.5rem}.profile-avatar{align-items:center;background:linear-gradient(135deg,#007084,#005a6b);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:1.5rem;font-weight:700;height:64px;justify-content:center;width:64px}.profile-info h2{color:#1e293b;font-size:1.3rem;margin:0 0 .5rem}.profile-meta{flex-wrap:wrap;gap:1rem}.meta-item,.profile-meta{align-items:center;display:flex}.meta-item{color:#64748b;font-size:.85rem;gap:.3rem}.role-badge{border-radius:12px;display:inline-block;font-size:.75rem;font-weight:600;padding:.25rem .6rem}.role-admin{background:#fef3c7;color:#92400e}.role-director{background:#ede9fe;color:#5b21b6}.role-deputy_director{background:#e0e7ff;color:#3730a3}.role-department_head{background:#e6f2f4;color:#005a6b}.role-employee{background:#f1f5f9;color:#475569}.role-analyst{background:#d1fae5;color:#065f46}.form-card{border-radius:12px;box-shadow:0 2px 8px #00000014}.form-card h2{border-bottom:1px solid #e2e8f0;font-size:1.1rem;padding-bottom:.75rem}.form-row{grid-gap:1rem;display:grid;grid-template-columns:1fr 1fr}.form-row-3{grid-template-columns:1fr 1fr 1fr}.form-group{margin-bottom:.5rem}.form-group label{align-items:center;display:flex;gap:.3rem;margin-bottom:.4rem}.form-control{font-family:inherit;padding:.65rem .75rem;transition:border-color .2s}.form-actions{display:flex;justify-content:flex-end;margin-top:.5rem}.btn-primary,.btn-warning{font-size:.9rem}.btn-warning{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s}.btn-warning:hover{box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-2px)}.btn-warning:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.profile-info-card{flex-direction:column;text-align:center}.profile-meta{justify-content:center}.form-row,.form-row-3{grid-template-columns:1fr}}.notifications-page{padding:0}.notif-header{flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.notif-header,.notif-header h1{align-items:center;display:flex}.notif-header h1{color:#005a6b;font-size:1.75rem;gap:.5rem;margin:0}.notif-total{background:#f1f5f9;border-radius:12px;color:#64748b;font-size:.85rem;font-weight:500;padding:.3rem .75rem}.notif-header-actions{display:flex;gap:.5rem;margin-left:auto}.notif-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#475569;cursor:pointer;display:flex;font-size:.85rem;gap:.35rem;padding:.45rem .85rem;transition:all .2s}.notif-btn:hover{background:#f8fafc;border-color:#cbd5e1}.mark-all-btn{border-color:#b3d4db;color:#007084}.mark-all-btn,.mark-all-btn:hover{background:#e6f2f4}.notif-filters{background:#fff;border-radius:10px;box-shadow:0 1px 4px #0000000f;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;padding:1rem}.notif-filters select{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#334155;cursor:pointer;font-size:.85rem;min-width:160px;padding:.45rem .75rem}.notif-filters select:focus{border-color:#007084;box-shadow:0 0 0 3px #0070841a;outline:none}.notif-empty{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:4rem 2rem;text-align:center}.notif-empty svg{color:#cbd5e1;margin-bottom:1rem}.notif-empty h3{color:#475569;margin:0 0 .5rem}.notif-empty p{color:#94a3b8;margin:0}.notif-list{display:flex;flex-direction:column;gap:.5rem}.notif-card{align-items:center;background:#fff;border-left:4px solid #cbd5e1;border-radius:10px;box-shadow:0 1px 4px #0000000f;cursor:pointer;display:flex;gap:1rem;padding:1rem 1.25rem;transition:all .2s}.notif-card.unread{background:#f8fafc;border-left-width:4px}.notif-card.read{opacity:.75}.notif-card.danger{border-color:#ef4444}.notif-card.warning{border-color:#f59e0b}.notif-card.success{border-color:#22c55e}.notif-card.info{border-color:#007084}.notif-card.default{border-color:#94a3b8}.notif-card.unread.danger{background:#fef2f2}.notif-card.unread.warning{background:#fffbeb}.notif-card.unread.success{background:#f0fdf4}.notif-card.unread.info{background:#e6f2f4}.notif-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateX(4px)}.notif-card-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.notif-card-icon.danger{background:#fef2f2;color:#ef4444}.notif-card-icon.warning{background:#fffbeb;color:#f59e0b}.notif-card-icon.success{background:#f0fdf4;color:#22c55e}.notif-card-icon.info{background:#e6f2f4;color:#007084}.notif-card-icon.default{background:#f1f5f9;color:#64748b}.notif-card-content{flex:1 1;min-width:0}.notif-card-title{color:#1e293b;font-size:.95rem;font-weight:600;margin-bottom:.25rem}.notif-card-message{color:#475569;font-size:.85rem;margin-bottom:.35rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notif-card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.notif-type-badge{border-radius:10px;font-size:.7rem;font-weight:600;padding:.15rem .5rem}.notif-type-badge.danger{background:#fee2e2;color:#dc2626}.notif-type-badge.warning{background:#fef3c7;color:#92400e}.notif-type-badge.success{background:#dcfce7;color:#166534}.notif-type-badge.info{background:#e6f2f4;color:#005a6b}.notif-type-badge.default{background:#f1f5f9;color:#475569}.notif-priority-badge{border-radius:10px;font-size:.7rem;font-weight:600;padding:.15rem .5rem}.notif-priority-badge.priority-high{background:#fed7aa;color:#9a3412}.notif-priority-badge.priority-critical{background:#fecaca;color:#991b1b}.notif-priority-badge.priority-low{background:#e2e8f0;color:#475569}.notif-time{color:#94a3b8;font-size:.75rem}.notif-read-btn{background:none;border:none;border-radius:50%;color:#94a3b8;cursor:pointer;flex-shrink:0;padding:.35rem;transition:all .2s}.notif-read-btn:hover{background:#f0fdf4;color:#22c55e}.loading-spinner{min-height:300px}@media (max-width:768px){.notif-header{align-items:flex-start;flex-direction:column}.notif-header-actions{margin-left:0;width:100%}.notif-filters{flex-direction:column}.notif-filters select{min-width:100%}.notif-card{flex-wrap:wrap}.notif-card-meta{flex-direction:column;gap:.3rem}}.ai-assistant{padding:0}.ai-assistant .dashboard-header{align-items:center;animation:fadeInDown .6s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.ai-assistant .dashboard-header h1{align-items:center;color:#005a6b;display:flex;font-size:2rem;gap:.5rem;margin:0}.ai-assistant .dashboard-header h1 svg{color:#7c3aed}.ai-assistant .dashboard-header p{color:#64748b;margin:.25rem 0 0}.chat-container{animation:fadeInUp .6s ease;background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;display:flex;flex-direction:column;height:calc(100vh - 280px);min-height:400px;overflow:hidden}.chat-messages{gap:1rem;overflow-y:auto;padding:1.5rem}.chat-messages,.chat-welcome{display:flex;flex:1 1;flex-direction:column}.chat-welcome{align-items:center;justify-content:center;padding:2rem;text-align:center}.welcome-icon{animation:pulse 2s infinite;color:#7c3aed;margin-bottom:1rem}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}.chat-welcome h3{color:#005a6b;font-size:1.4rem;margin:0 0 .5rem}.chat-welcome p{color:#64748b;margin:0 0 1.5rem;max-width:500px}.quick-actions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;max-width:700px}.quick-btn{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;color:#475569;cursor:pointer;display:flex;font-size:.82rem;gap:.3rem;padding:.5rem 1rem;transition:all .2s}.quick-btn:hover{background:#ede9fe;border-color:#7c3aed;color:#7c3aed}.chat-msg{display:flex}.chat-msg.user{justify-content:flex-end}.chat-msg.assistant{justify-content:flex-start}.msg-bubble{border-radius:16px;font-size:.92rem;line-height:1.5;max-width:75%;padding:.8rem 1.2rem;word-break:break-word}.chat-msg.user .msg-bubble{background:#7c3aed;border-bottom-right-radius:4px;color:#fff}.chat-msg.assistant .msg-bubble{background:#f8fafc;border:1px solid #e2e8f0;border-bottom-left-radius:4px;color:#334155}.msg-bubble.typing{align-items:center;color:#64748b;display:flex;font-style:italic;gap:.5rem}.msg-text{white-space:pre-wrap}.msg-meta{border-top:1px solid #e2e8f0;justify-content:space-between;margin-top:.5rem;padding-top:.5rem}.confidence-badge,.msg-meta{align-items:center;display:flex}.confidence-badge{font-size:.75rem;font-weight:600;gap:.25rem}.msg-feedback{display:flex;gap:.25rem}.fb-btn{background:none;border:none;border-radius:4px;color:#94a3b8;cursor:pointer;padding:.25rem;transition:all .2s}.fb-btn:hover{background:#e2e8f0;color:#475569}.fb-btn.active{background:#ede9fe;color:#7c3aed}.related-questions{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.5rem}.related-btn{background:#fff;border:1px solid #e2e8f0;border-radius:12px;color:#7c3aed;cursor:pointer;font-size:.78rem;padding:.3rem .7rem;transition:all .2s}.related-btn:hover{background:#ede9fe;border-color:#7c3aed}.chat-chart{background:#fff;border-radius:8px;margin-top:.75rem;padding:.5rem}.chat-ranking{margin-top:.5rem}.ranking-item{align-items:center;display:flex;font-size:.85rem;gap:.5rem;padding:.4rem 0}.rank-num{align-items:center;background:#f1f5f9;border-radius:50%;color:#64748b;display:inline-flex;font-size:.75rem;font-weight:700;height:24px;justify-content:center;width:24px}.rank-num.top{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.rank-name{flex:1 1}.rank-score{color:#7c3aed;font-weight:700}.chat-input-area{background:#fff;border-top:1px solid #e2e8f0;display:flex;gap:.5rem;padding:1rem 1.5rem}.chat-input-area textarea{border:1px solid #e2e8f0;border-radius:12px;flex:1 1;font-family:inherit;font-size:.92rem;outline:none;padding:.7rem 1rem;resize:none;transition:border-color .2s}.chat-input-area textarea:focus{border-color:#7c3aed}.send-btn{align-items:center;background:#7c3aed;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;justify-content:center;padding:.7rem;transition:all .2s}.send-btn:hover:not(:disabled){background:#6d28d9;transform:scale(1.05)}.send-btn:disabled{cursor:not-allowed;opacity:.5}.action-btn{align-items:center;background:#7c3aed;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.4rem;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.action-btn:hover:not(:disabled){background:#6d28d9}.action-btn:disabled{cursor:not-allowed;opacity:.5}.action-btn.secondary{background:#fff;border:1px solid #7c3aed;color:#7c3aed}.action-btn.secondary:hover:not(:disabled){background:#ede9fe}.summary-text{color:#334155;font-size:.95rem;line-height:1.7;white-space:pre-wrap}.trends-list{display:flex;flex-direction:column;gap:.75rem}.trend-item{align-items:center;background:#f8fafc;border-radius:10px;display:flex;gap:.75rem;padding:.75rem;transition:background .2s}.trend-item:hover{background:#f1f5f9}.trend-direction{align-items:center;border-radius:50%;display:flex;font-size:1.2rem;font-weight:700;height:36px;justify-content:center;width:36px}.trend-direction.up{background:#d1fae5;color:#059669}.trend-direction.down{background:#fee2e2;color:#dc2626}.trend-direction.stable{background:#f1f5f9;color:#64748b}.trend-info{flex:1 1}.trend-info strong{color:#005a6b;display:block}.trend-detail{color:#94a3b8;font-size:.8rem}.anomalies-list{display:flex;flex-direction:column;gap:.75rem}.anomaly-card{background:#f8fafc;border-left:4px solid #f59e0b;border-radius:10px;padding:1rem}.anomaly-card.critical{background:#fef2f2;border-left-color:#ef4444}.anomaly-card.warning{background:#fffbeb;border-left-color:#f59e0b}.anomaly-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.anomaly-header svg{flex-shrink:0}.anomaly-card.critical .anomaly-header svg{color:#ef4444}.anomaly-card.warning .anomaly-header svg{color:#f59e0b}.severity-badge{border-radius:12px;font-size:.72rem;font-weight:600;margin-left:auto;padding:.15rem .5rem}.severity-badge.critical{background:#fee2e2;color:#dc2626}.severity-badge.warning{background:#fef3c7;color:#d97706}.anomaly-detail{color:#64748b;display:flex;flex-wrap:wrap;font-size:.85rem;gap:.75rem}.anomaly-detail p{color:#475569;margin:.25rem 0 0;width:100%}.recs-grid{grid-gap:1rem;animation:fadeInUp .6s ease;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.rec-card{background:#fff;border-left:4px solid #94a3b8;border-radius:14px;box-shadow:0 2px 8px #0000000f;padding:1.25rem;transition:transform .2s}.rec-card:hover{transform:translateY(-2px)}.rec-card.priority-critical{border-left-color:#ef4444}.rec-card.priority-high{border-left-color:#f59e0b}.rec-card.priority-medium{border-left-color:#007084}.rec-card.priority-low{border-left-color:#94a3b8}.rec-header{align-items:center;display:flex;gap:.5rem;margin-bottom:.5rem}.priority-badge{border-radius:12px;color:#fff;font-size:.72rem;font-weight:600;padding:.15rem .5rem}.rec-type{color:#64748b;font-size:.78rem;letter-spacing:.5px;text-transform:uppercase}.rec-status{color:#94a3b8;font-size:.78rem;font-weight:500;margin-left:auto}.rec-title{color:#005a6b;font-size:1rem;margin:.5rem 0}.rec-content{color:#64748b;font-size:.88rem;line-height:1.5;margin:0 0 .5rem}.rec-dept{color:#94a3b8;font-size:.8rem;margin-bottom:.75rem}.rec-actions{display:flex;gap:.5rem}.rec-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:.82rem;font-weight:500;gap:.25rem;padding:.4rem .8rem;transition:all .2s}.rec-btn.accept{background:#d1fae5;color:#059669}.rec-btn.accept:hover{background:#a7f3d0}.rec-btn.reject{background:#fee2e2;color:#dc2626}.rec-btn.reject:hover{background:#fecaca}.rec-btn.done{background:#e6f2f4;color:#007084}.rec-btn.done:hover{background:#b3d4db}.spinner{animation:spin 1s linear infinite}@media (max-width:768px){.chat-container{height:calc(100vh - 320px)}.msg-bubble{max-width:90%}.quick-actions{align-items:stretch;flex-direction:column}.recs-grid{grid-template-columns:1fr}.filter-bar{flex-wrap:wrap}}@media (max-width:480px){.ai-assistant .dashboard-header h1{font-size:1.5rem}}.pres-list-page{padding:0}.pres-list-header{align-items:center;animation:fadeInDown .4s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.pres-list-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0}.pres-stats{grid-gap:1rem;animation:fadeInUp .4s ease;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:1.5rem}.pres-stat-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;display:flex;gap:1rem;padding:1.25rem}.pres-stat-card.blue{border-left:4px solid #007084}.pres-stat-card.green{border-left:4px solid #10b981}.pres-stat-card.orange{border-left:4px solid #f59e0b}.pres-stat-card.purple{border-left:4px solid #8b5cf6}.stat-icon{align-items:center;border-radius:10px;display:flex;height:48px;justify-content:center;width:48px}.pres-stat-card.blue .stat-icon{background:#e6f2f4;color:#007084}.pres-stat-card.green .stat-icon{background:#d1fae5;color:#10b981}.pres-stat-card.orange .stat-icon{background:#fef3c7;color:#f59e0b}.pres-stat-card.purple .stat-icon{background:#ede9fe;color:#8b5cf6}.stat-value{color:#1e293b;font-size:1.5rem;font-weight:700}.stat-label{color:#64748b;font-size:.82rem}.filters-card{animation:fadeInUp .5s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.filters-row{display:flex;flex-wrap:wrap;gap:1rem}.filter-group{min-width:150px}.filter-control{padding:.5rem .7rem}.pres-table-card{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;padding:1.5rem}.pres-table-card h2{align-items:center;color:#005a6b;display:flex;font-size:1.15rem;gap:.5rem;margin:0 0 1rem}.pres-table{border-collapse:collapse;width:100%}.pres-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#64748b;font-size:.8rem;font-weight:600;padding:.75rem .6rem;text-align:left;text-transform:uppercase}.pres-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:.88rem;padding:.75rem .6rem}.pres-table tr:hover{background:#f8fafc}.pres-title-link{color:#005a6b;cursor:pointer;font-weight:500}.pres-title-link:hover{text-decoration:underline}.pres-status-badge,.pres-type-badge{align-items:center;border-radius:20px;display:inline-flex;font-size:.78rem;font-weight:500;padding:.25rem .65rem;white-space:nowrap}.pres-status-draft{background:#f1f5f9;color:#64748b}.pres-status-generated{background:#e6f2f4;color:#005a6b}.pres-status-downloaded{background:#d1fae5;color:#059669}.pres-status-archived{background:#fef3c7;color:#b45309}.pres-type-period{background:#e0e7ff;color:#4338ca}.pres-type-achievements{background:#d1fae5;color:#059669}.pres-type-analytics{background:#fef3c7;color:#b45309}.pres-type-meeting{background:#fce7f3;color:#be185d}.action-buttons{display:flex;gap:.4rem}.btn-icon{background:#f8fafc;border:1px solid #e2e8f0;color:#64748b}.btn-icon:hover{background:#e2e8f0;color:#334155}.btn-icon.btn-download{border-color:#a7f3d0;color:#059669}.btn-icon.btn-download:hover{background:#d1fae5}.btn-icon.btn-danger{border-color:#fca5a5;color:#dc2626}.btn-icon.btn-danger:hover{background:#fef2f2}.empty-state{color:#94a3b8;padding:3rem;text-align:center}.empty-state h3{color:#64748b;margin:1rem 0 .5rem}@media (max-width:768px){.pres-stats{grid-template-columns:repeat(2,1fr)}.pres-list-header{align-items:flex-start;gap:1rem}.filters-row,.pres-list-header{flex-direction:column}}.pres-create-page{padding:0}.pres-create-header{align-items:center;animation:fadeInDown .4s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.pres-create-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0}.header-actions{display:flex;flex-wrap:wrap;gap:.75rem}.form-card{animation:fadeInUp .4s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;margin-bottom:1.5rem;padding:1.5rem}.form-card h2{align-items:center;color:#005a6b;display:flex;font-size:1.15rem;gap:.5rem;margin:0 0 1.25rem}.form-row{display:flex;gap:1rem;margin-bottom:1rem}.form-group{flex:1 1}.form-group label{margin-bottom:.35rem}.form-control{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:.9rem;padding:.6rem .8rem;transition:all .2s;width:100%}.form-control:focus{border-color:#007084;box-shadow:0 0 0 3px #0070841a;outline:none}.form-control:disabled,.form-control:read-only{background:#f8fafc;color:#64748b}.template-info{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;margin-top:.5rem;padding:1rem}.template-details strong{color:#005a6b;display:block;margin-bottom:.25rem}.template-details span{color:#64748b;display:block;font-size:.85rem;margin-bottom:.75rem}.template-slides-preview{display:flex;flex-wrap:wrap;gap:.4rem}.template-slide-chip{border:1px solid;border-radius:16px;display:inline-flex;font-size:.75rem;font-weight:500;padding:.2rem .6rem}.slides-section{animation:fadeInUp .5s ease}.slides-section h2{align-items:center;color:#005a6b;display:flex;font-size:1.15rem;gap:.5rem;margin:0 0 1rem}.slides-list{display:flex;flex-direction:column;gap:.75rem}.slide-preview-card{background:#fff;border-left:4px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1rem 1.25rem;transition:all .2s}.slide-preview-card:hover{box-shadow:0 4px 12px #0000001a}.slide-header{gap:.75rem;margin-bottom:.75rem}.slide-header,.slide-number{align-items:center;display:flex}.slide-number{border-radius:8px;color:#fff;flex-shrink:0;font-size:.85rem;font-weight:700;height:32px;justify-content:center;width:32px}.slide-meta{flex:1 1}.slide-type-label{align-items:center;display:flex;font-size:.78rem;font-weight:600;gap:.3rem;text-transform:uppercase}.slide-title{color:#334155;display:block;font-size:.95rem;font-weight:500;margin-top:.15rem}.slide-content-preview{padding-left:2.7rem}.preview-title-slide{display:flex;flex-direction:column;gap:.2rem}.preview-title-slide strong{color:#005a6b;font-size:1rem}.preview-title-slide span{color:#64748b;font-size:.85rem}.preview-metrics{display:flex;flex-wrap:wrap;gap:.75rem}.preview-metric-card{background:#f8fafc;border-radius:8px;min-width:100px;padding:.5rem .75rem}.metric-value{color:#005a6b;font-size:1.2rem;font-weight:700}.metric-label{color:#64748b;font-size:.75rem}.preview-chart-placeholder{align-items:center;background:#f8fafc;border-radius:8px;color:#64748b;display:flex;font-size:.85rem;gap:.5rem;padding:.5rem}.preview-conclusions,.preview-discipline,.preview-problems,.preview-table-info{color:#475569;display:flex;font-size:.85rem;gap:1.5rem}.preview-table-info{align-items:center;gap:.5rem}.generate-prompt{animation:fadeInUp .5s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;color:#94a3b8;padding:3rem;text-align:center}.generate-prompt h3{color:#64748b;margin:1rem 0 .5rem}.generate-prompt p{margin-bottom:1.5rem}.btn-primary{align-items:center;background:linear-gradient(135deg,#007084,#005a6b);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s}.btn-primary:hover{box-shadow:0 4px 12px #0070844d;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.95rem;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s}.btn-secondary:hover{background:#f8fafc;color:#334155}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.btn-generate{align-items:center;background:linear-gradient(135deg,#059669,#047857);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s}.btn-generate:hover{box-shadow:0 4px 12px #0596694d;transform:translateY(-2px)}.btn-generate:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-download-pptx{align-items:center;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:500;gap:.5rem;padding:.75rem 1.5rem;transition:all .3s}.btn-download-pptx:hover{box-shadow:0 4px 12px #f59e0b4d;transform:translateY(-2px)}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.spinning{animation:spin 1s linear infinite}.loading-spinner{align-items:center;color:#64748b;display:flex;font-size:1.1rem;height:300px;justify-content:center}@media (max-width:768px){.pres-create-header{align-items:flex-start;gap:1rem}.form-row,.pres-create-header,.preview-metrics{flex-direction:column}.header-actions{flex-wrap:wrap}}.constructor-page{padding:0}.constructor-header{animation:fadeInDown .4s ease;margin-bottom:1.5rem}.constructor-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0}.constructor-layout{grid-gap:1.5rem;animation:fadeInUp .4s ease;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.constructor-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;padding:1.5rem}.constructor-card h2{color:#005a6b;font-size:1.1rem;margin:0 0 1.25rem}.constructor-card h3{color:#334155;font-size:1rem;margin:0 0 .5rem}.sections-list{display:flex;flex-direction:column;gap:.5rem}.section-item{align-items:center;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;gap:.75rem;padding:.85rem 1rem;transition:all .2s}.section-item:hover{background:#f8fafc;border-color:#93c5fd}.section-item.active{background:#e6f2f4;border-color:#007084;box-shadow:0 0 0 3px #0070841a}.section-icon{align-items:center;background:#f1f5f9;border-radius:10px;color:#64748b;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.section-item.active .section-icon{background:#e6f2f4;color:#007084}.section-info{display:flex;flex:1 1;flex-direction:column}.section-label{color:#1e293b;font-size:.9rem;font-weight:600}.section-desc{color:#94a3b8;font-size:.78rem;margin-top:.1rem}.section-check{color:#007084;flex-shrink:0}.param-group{margin-bottom:1.25rem}.param-group label{color:#475569;display:block;font-size:.85rem;font-weight:500;margin-bottom:.4rem}.param-control{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:.9rem;padding:.6rem .8rem;transition:all .2s;width:100%}.param-control:focus{border-color:#007084;box-shadow:0 0 0 3px #0070841a;outline:none}.param-hint{color:#94a3b8;font-size:.85rem}.format-options{display:flex;gap:.5rem}.format-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:.85rem;padding:.5rem 1rem;transition:all .2s}.format-btn:hover{border-color:#93c5fd;color:#007084}.format-btn.active{background:#e6f2f4;border-color:#007084;color:#007084;font-weight:600}.btn-download{align-items:center;background:linear-gradient(135deg,#7c3aed,#6d28d9);border:none;border-radius:10px;color:#fff;cursor:pointer;display:flex;font-size:.95rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:.5rem;padding:.85rem;transition:all .3s;width:100%}.btn-download:hover{box-shadow:0 4px 12px #7c3aed4d;transform:translateY(-2px)}.btn-download:disabled{box-shadow:none;cursor:not-allowed;opacity:.5;transform:none}.preview-card{background:#faf5ff;border:1px solid #e9d5ff;margin-top:1rem}.preview-card p{color:#64748b;font-size:.88rem;margin:0 0 .75rem}.preview-meta{display:flex;flex-wrap:wrap;gap:1.25rem}.preview-meta span{color:#64748b;font-size:.82rem}.preview-meta strong{color:#334155}.constructor-layout.employee-kpi-mode{grid-template-columns:280px 1fr}.constructor-table{border-collapse:collapse;font-size:.85rem;width:100%}.constructor-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-weight:600;padding:.6rem .75rem;text-align:left;white-space:nowrap}.constructor-table td{border-bottom:1px solid #f1f5f9;padding:.6rem .75rem;vertical-align:middle}.constructor-table tr:hover td{background:#f8fafc}.constructor-table .rank-num{align-items:center;background:#e2e8f0;border-radius:50%;color:#475569;display:inline-flex;font-size:.78rem;font-weight:700;height:24px;justify-content:center;width:24px}.constructor-table .rank-num.top{background:#fef3c7;color:#92400e}.kpi-bar-cell{align-items:center;display:flex;gap:.5rem;min-width:100px}.kpi-bar-bg{background:#e2e8f0;border-radius:3px;flex:1 1;height:6px;overflow:hidden}.kpi-bar-fill{border-radius:3px;height:100%;transition:width .3s}@media (max-width:768px){.constructor-layout,.constructor-layout.employee-kpi-mode{grid-template-columns:1fr}.format-options{flex-wrap:wrap}.preview-meta{flex-direction:column;gap:.3rem}}.comparison-page{padding:0}.comparison-header{animation:fadeInDown .4s ease;margin-bottom:1.5rem}.comparison-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0}.comparison-filters{animation:fadeInUp .4s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;margin-bottom:1.5rem;padding:1.25rem 1.5rem}.filter-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem}.filter-group{flex:1 1;min-width:160px}.filter-group label{color:#475569;display:block;font-size:.82rem;font-weight:500;margin-bottom:.3rem}.filter-control{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:.88rem;padding:.55rem .8rem;transition:all .2s;width:100%}.filter-control:focus{border-color:#007084;box-shadow:0 0 0 3px #0070841a;outline:none}.filter-arrow{align-items:center;color:#94a3b8;display:flex;padding-bottom:.35rem}.filter-action{flex:0 0 auto;min-width:auto}.btn-compare{align-items:center;background:linear-gradient(135deg,#007084,#007084);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:.5rem;padding:.55rem 1.25rem;transition:all .3s;white-space:nowrap}.btn-compare:hover{box-shadow:0 4px 12px #0070844d;transform:translateY(-2px)}.btn-compare:disabled{cursor:not-allowed;opacity:.5;transform:none}.comparison-cards{grid-gap:1rem;animation:fadeInUp .5s ease;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-bottom:1.5rem}.cmp-card{background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;padding:1.25rem}.cmp-card-header{align-items:center;border-bottom:1px solid #f1f5f9;color:#005a6b;display:flex;font-size:1rem;font-weight:600;gap:.5rem;margin-bottom:1rem;padding-bottom:.75rem}.cmp-card-body{display:flex;flex-direction:column;gap:.6rem}.cmp-row{align-items:center;display:flex;font-size:.88rem;gap:.5rem}.cmp-label{color:#64748b;flex:1 1}.cmp-val{color:#1e293b;font-weight:600;min-width:32px;text-align:right}.cmp-arrow{color:#94a3b8;font-size:.75rem}.change-positive{color:#059669}.change-negative,.change-positive{align-items:center;display:inline-flex;font-size:.82rem;font-weight:500;gap:.2rem;min-width:60px}.change-negative{color:#dc2626}.change-neutral{align-items:center;color:#94a3b8;display:inline-flex;font-size:.82rem;gap:.2rem;min-width:60px}.comparison-chart-card{animation:fadeInUp .6s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;margin-bottom:1.5rem;padding:1.5rem}.comparison-chart-card h2{color:#005a6b;font-size:1.1rem;margin:0 0 1rem}.comparison-metrics-card{animation:fadeInUp .7s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;padding:1.5rem}.comparison-metrics-card h2{color:#005a6b;font-size:1.1rem;margin:0 0 1rem}.metrics-table{border-collapse:collapse;width:100%}.metrics-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#64748b;font-size:.8rem;font-weight:600;padding:.7rem .6rem;text-align:left;text-transform:uppercase}.metrics-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:.88rem;padding:.7rem .6rem}.metrics-table tr:hover{background:#f8fafc}.metric-name{font-weight:500}.metric-unit{color:#94a3b8;font-size:.8rem}.comparison-empty{animation:fadeInUp .5s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;color:#94a3b8;padding:4rem 2rem;text-align:center}.comparison-empty h3{color:#64748b;margin:1rem 0 .5rem}.comparison-empty p{color:#94a3b8;margin:0 auto;max-width:400px}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.comparison-cards{grid-template-columns:1fr}.filter-row{flex-direction:column}.filter-arrow{display:none}.cmp-row{flex-wrap:wrap}}.directory-page{padding:0}.directory-header{animation:dirFadeIn .4s ease;margin-bottom:1.5rem}.directory-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.75rem;gap:.5rem;margin:0}.directory-tabs{animation:dirFadeIn .4s ease;background:#fff;border-radius:12px;box-shadow:0 2px 6px #0000000f;display:flex;gap:.25rem;margin-bottom:1rem;overflow-x:auto;padding:.35rem}.dir-tab{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;font-size:.85rem;font-weight:500;padding:.5rem 1rem;transition:all .2s;white-space:nowrap}.dir-tab:hover{background:#f1f5f9;color:#334155}.dir-tab.active{background:#007084;color:#fff}.directory-toolbar{animation:dirFadeIn .5s ease;flex-wrap:wrap;justify-content:space-between;margin-bottom:1rem}.directory-toolbar,.toolbar-left{align-items:center;display:flex;gap:1rem}.btn-dir-create{align-items:center;background:linear-gradient(135deg,#007084,#007084);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:500;gap:.4rem;padding:.5rem 1rem;transition:all .3s}.btn-dir-create:hover{box-shadow:0 4px 12px #0070844d;transform:translateY(-1px)}.toggle-archived{align-items:center;color:#64748b;cursor:pointer;display:flex;font-size:.85rem;gap:.4rem;-webkit-user-select:none;user-select:none}.toggle-archived input{cursor:pointer}.dir-search{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#94a3b8;display:flex;gap:.4rem;padding:.4rem .75rem}.dir-search input{border:none;font-size:.88rem;outline:none;width:180px}.directory-table-card{animation:dirFadeIn .5s ease;background:#fff;border-radius:14px;box-shadow:0 4px 6px #00000012;overflow:hidden}.dir-empty,.dir-loading{color:#94a3b8;font-size:.95rem;padding:3rem 2rem;text-align:center}.dir-table{border-collapse:collapse;width:100%}.dir-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#64748b;font-size:.8rem;font-weight:600;padding:.7rem .75rem;text-align:left;text-transform:uppercase}.dir-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:.88rem;padding:.65rem .75rem}.dir-table tr:hover{background:#f8fafc}.dir-table tr.row-archived{opacity:.6}.badge-active{background:#dcfce7;color:#166534}.badge-active,.badge-archived{border-radius:6px;display:inline-block;font-size:.75rem;font-weight:500;padding:.15rem .5rem}.badge-archived{background:#f1f5f9;color:#64748b}.color-dot{border:2px solid #0000001a;border-radius:50%;display:inline-block;height:20px;vertical-align:middle;width:20px}.actions-cell{display:flex;gap:.3rem}.btn-icon{align-items:center;background:#0000;border:none;border-radius:6px;cursor:pointer;display:inline-flex;height:32px;justify-content:center;transition:all .2s;width:32px}.btn-edit{color:#007084}.btn-edit:hover{background:#e6f2f4}.btn-archive{color:#f59e0b}.btn-archive:hover{background:#fffbeb}.btn-restore{color:#10b981}.btn-restore:hover{background:#ecfdf5}.modal-overlay{align-items:center;animation:dirFadeIn .2s ease;background:#0006;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.modal-content{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;max-height:80vh;max-width:500px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.modal-header h2{color:#005a6b;font-size:1.15rem;margin:0}.modal-body{display:flex;flex-direction:column;gap:1rem;padding:1.5rem}.modal-footer{border-top:1px solid #f1f5f9;display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.form-group label{color:#475569;display:block;font-size:.85rem;font-weight:500;margin-bottom:.3rem}.required{color:#ef4444;margin-left:2px}.dir-input{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:.88rem;padding:.5rem .75rem;transition:border-color .2s;width:100%}.dir-input:focus{border-color:#007084;box-shadow:0 0 0 3px #0070841a;outline:none}textarea.dir-input{font-family:inherit;resize:vertical}select.dir-input{cursor:pointer}.color-input-row{align-items:center;display:flex;gap:.5rem}.color-input-row input[type=color]{border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;height:36px;padding:2px;width:40px}.btn-cancel{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:.88rem;padding:.5rem 1rem;transition:all .2s}.btn-cancel:hover{background:#f8fafc}.btn-save{align-items:center;background:linear-gradient(135deg,#007084,#007084);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.88rem;font-weight:500;gap:.4rem;padding:.5rem 1.25rem;transition:all .3s}.btn-save:hover{box-shadow:0 4px 12px #0070844d}.btn-save:disabled{cursor:not-allowed;opacity:.5}@keyframes dirFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.directory-tabs{flex-wrap:nowrap}.directory-toolbar{align-items:stretch;flex-direction:column}.toolbar-left{flex-wrap:wrap}.dir-search input{width:100%}.dir-table{font-size:.82rem}.modal-content{max-width:none;width:95%}}.settings-page{padding:0}.settings-header{align-items:center;animation:settFadeIn .4s ease;display:flex;justify-content:space-between;margin-bottom:1.5rem}.settings-header h1{align-items:center;color:#005a6b;font-size:1.75rem;margin:0}.settings-actions,.settings-header h1{display:flex;gap:.5rem}.btn-refresh{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.875rem;gap:6px;height:38px;padding:0 14px;transition:all .2s}.btn-refresh:hover{background:#f8fafc;color:#334155}.btn-settings-save{align-items:center;background:linear-gradient(135deg,#007084,#007084);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.9rem;font-weight:500;gap:.4rem;padding:.55rem 1.25rem;transition:all .3s}.btn-settings-save:hover{box-shadow:0 4px 12px #0070844d;transform:translateY(-1px)}.btn-settings-save:disabled{cursor:not-allowed;opacity:.5;transform:none}.btn-settings-save.saved{background:linear-gradient(135deg,#10b981,#059669)}.settings-loading{background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;color:#94a3b8;font-size:.95rem;padding:4rem 2rem;text-align:center}.settings-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.settings-category-card{animation:settFadeIn .5s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;overflow:hidden}.category-header{align-items:center;background:#f8fafc;border-bottom:1px solid #f1f5f9;display:flex;gap:.5rem;padding:1rem 1.25rem}.category-icon{font-size:1.25rem}.category-header h2{color:#005a6b;font-size:1.05rem;font-weight:600;margin:0}.category-body{padding:.5rem 0}.setting-row{align-items:center;border-bottom:1px solid #f8fafc;display:flex;gap:1rem;justify-content:space-between;padding:.75rem 1.25rem}.setting-row:last-child{border-bottom:none}.setting-info{flex:1 1;min-width:0}.setting-label{color:#334155;font-size:.88rem;font-weight:500}.setting-description{color:#94a3b8;font-size:.78rem;margin-top:.15rem}.setting-control{flex:0 0 auto;min-width:160px;text-align:right}.setting-input{border:1px solid #e2e8f0;border-radius:8px;box-sizing:border-box;font-size:.88rem;padding:.45rem .65rem;text-align:right;transition:border-color .2s;width:100%}.setting-input:focus{border-color:#007084;box-shadow:0 0 0 3px #0070841a;outline:none}input[type=number].setting-input{width:100px}.setting-toggle{align-items:center;cursor:pointer;display:flex;gap:.5rem;justify-content:flex-end}.setting-toggle input{display:none}.toggle-slider{background:#cbd5e1;border-radius:11px;height:22px;position:relative;transition:background .3s;width:42px}.toggle-slider:after{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0003;content:"";height:18px;left:2px;position:absolute;top:2px;transition:transform .3s;width:18px}.setting-toggle input:checked+.toggle-slider{background:#007084}.setting-toggle input:checked+.toggle-slider:after{transform:translateX(20px)}.toggle-label{color:#64748b;font-size:.82rem;min-width:70px}.backup-section{animation:settFadeIn .5s ease;background:#fff;border-radius:16px;box-shadow:0 4px 6px #00000012;margin-top:1.5rem;overflow:hidden}.backup-header{align-items:center;background:#f8fafc;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:1rem 1.25rem}.backup-header h2{align-items:center;color:#005a6b;display:flex;font-size:1.05rem;font-weight:600;gap:.5rem;margin:0}.btn-create-backup{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:.4rem;padding:.5rem 1rem;transition:all .3s}.btn-create-backup:hover{box-shadow:0 4px 12px #10b9814d;transform:translateY(-1px)}.btn-create-backup:disabled{cursor:not-allowed;opacity:.5;transform:none}.backup-info{align-items:center;background:#e6f2f4;border-bottom:1px solid #f1f5f9;color:#007084;display:flex;font-size:.82rem;gap:.4rem;padding:.65rem 1.25rem}.backup-empty,.backup-loading{color:#94a3b8;font-size:.9rem;padding:2.5rem 1rem;text-align:center}.backup-table{border-collapse:collapse;width:100%}.backup-table th{border-bottom:1px solid #f1f5f9;color:#64748b;font-size:.78rem;font-weight:600;letter-spacing:.5px;padding:.65rem 1.25rem;text-align:left;text-transform:uppercase}.backup-table td{border-bottom:1px solid #f8fafc;color:#334155;font-size:.88rem;padding:.65rem 1.25rem}.backup-table tr:last-child td{border-bottom:none}.backup-table tr:hover td{background:#fafbfd}.backup-filename{align-items:center;color:#475569;display:flex;font-family:Courier New,monospace;font-size:.82rem;gap:.4rem}.backup-actions{display:flex;gap:.35rem}.btn-backup-action{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:6px;cursor:pointer;display:inline-flex;height:30px;justify-content:center;transition:all .2s;width:30px}.btn-backup-action.download{color:#007084}.btn-backup-action.download:hover{background:#e6f2f4;border-color:#007084}.btn-backup-action.delete{color:#ef4444}.btn-backup-action.delete:hover{background:#fef2f2;border-color:#ef4444}@keyframes settFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.settings-grid{grid-template-columns:1fr}}@media (max-width:768px){.settings-header{gap:1rem}.setting-row,.settings-header{align-items:flex-start;flex-direction:column}.setting-row{gap:.5rem}.setting-control{min-width:0;text-align:left;width:100%}.setting-input{text-align:left}input[type=number].setting-input{width:100%}.setting-toggle{justify-content:flex-start}.backup-header{align-items:flex-start;flex-direction:column;gap:.75rem}.backup-table{font-size:.82rem}.backup-table td,.backup-table th{padding:.5rem .75rem}.backup-filename{font-size:.75rem}}.search-results-page{margin:0 auto;max-width:900px}.search-results-header{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:space-between;margin-bottom:1.5rem}.search-results-header h1{align-items:center;color:#005a6b;display:flex;font-size:1.5rem;gap:.5rem;margin:0;white-space:nowrap}.search-results-form{align-items:center;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;display:flex;flex:1 1;max-width:500px;padding:0 .75rem;transition:border-color .2s}.search-results-form:focus-within{border-color:#007084;box-shadow:0 0 0 3px #0070841a}.search-form-icon{color:#94a3b8;flex-shrink:0}.search-results-form input{background:none;border:none;color:#1e293b;flex:1 1;font-size:.95rem;outline:none;padding:.6rem .5rem}.search-results-form input::placeholder{color:#94a3b8}.search-results-form button{background:linear-gradient(135deg,#007084,#005a6b);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;padding:.4rem 1rem;transition:opacity .2s}.search-results-form button:hover{opacity:.9}.search-results-summary{color:#64748b;font-size:.9rem;margin:0 0 1rem}.search-type-tabs{border-bottom:1px solid #e2e8f0;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;padding-bottom:1rem}.search-type-tab{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:20px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.85rem;gap:.35rem;padding:.4rem .9rem;transition:all .2s}.search-type-tab:hover{background:#f8fafc;border-color:#cbd5e1}.search-type-tab.active{background:#007084;border-color:#007084;color:#fff;font-weight:500}.search-results-group{margin-bottom:1.5rem}.search-results-group-title{align-items:center;color:#005a6b;display:flex;font-size:1.1rem;font-weight:600;gap:.5rem;margin:0 0 .75rem}.search-results-list{display:flex;flex-direction:column;gap:.5rem}.search-result-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:flex;justify-content:space-between;padding:.85rem 1.1rem;text-decoration:none;transition:all .2s}.search-result-card:hover{border-color:#007084;box-shadow:0 2px 8px #0070841a;transform:translateY(-1px)}.search-result-card-main{flex:1 1;min-width:0}.search-result-card-title{color:#1e293b;font-size:.95rem;font-weight:500}.search-result-card-subtitle,.search-result-card-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-card-subtitle{color:#94a3b8;font-size:.82rem;margin-top:2px}.search-result-card-status{background:#f1f5f9;border-radius:10px;color:#64748b;flex-shrink:0;font-size:.75rem;font-weight:500;margin-left:1rem;padding:.2rem .6rem}.search-results-empty{align-items:center;color:#94a3b8;display:flex;flex-direction:column;justify-content:center;min-height:300px;text-align:center}.search-results-empty h3{color:#475569;font-size:1.1rem;margin:1rem 0 .5rem}.search-results-empty p{color:#94a3b8;font-size:.9rem;margin:0}@media (max-width:768px){.search-results-header{align-items:stretch;flex-direction:column}.search-results-form{max-width:100%}.search-type-tabs{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.search-type-tab{white-space:nowrap}.search-result-card{align-items:flex-start;flex-direction:column;gap:.5rem}.search-result-card-status{margin-left:0}}.tasks-page{padding:24px}.tasks-page h1{font-size:24px;margin:0 0 20px}.tasks-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.tasks-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;gap:6px;padding:8px 14px}.tasks-btn:hover{background:#f9fafb}.tasks-btn.primary{background:#2563eb;border-color:#2563eb;color:#fff}.tasks-btn.primary:hover{background:#1d4ed8}.tasks-btn.danger{border-color:#fca5a5;color:#dc2626}.tasks-btn.danger:hover{background:#fef2f2}.tasks-input,.tasks-select,.tasks-textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:8px 10px;width:100%}.tasks-textarea{min-height:80px;resize:vertical}.tasks-dashboard-counters{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:24px}.tasks-counter-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.tasks-counter-card .val{font-size:28px;font-weight:700}.tasks-counter-card .lbl{color:#6b7280;font-size:13px;margin-top:4px}.tasks-counter-card.overdue .val{color:#dc2626}.tasks-counter-card.done .val{color:#16a34a}.tasks-counter-card.progress .val{color:#2563eb}.tasks-dashboard-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr}@media (max-width:900px){.tasks-dashboard-grid{grid-template-columns:1fr}}.tasks-panel{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:16px}.tasks-panel h3{font-size:16px;margin:0 0 12px}.workload-row{border-bottom:1px solid #f3f4f6;display:flex;font-size:14px;justify-content:space-between;padding:8px 0}.workload-row .badge-overdue{color:#dc2626;font-weight:600;margin-left:8px}.tasks-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.tasks-card{background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:16px;transition:box-shadow .15s}.tasks-card:hover{box-shadow:0 2px 8px #0000000f}.tasks-card h3{font-size:16px;margin:0 0 8px}.tasks-card .meta{color:#6b7280;font-size:13px}.tasks-card .progress-bar{background:#f3f4f6;border-radius:3px;height:6px;margin-top:10px;overflow:hidden}.tasks-card .progress-fill{background:#2563eb;height:100%}.tasks-status-pill{border:1px solid #0000;border-radius:999px;display:inline-block;font-size:11px;padding:2px 8px}.tasks-status-pill.new{background:#eff6ff;color:#1d4ed8}.tasks-status-pill.in_progress{background:#fef3c7;color:#92400e}.tasks-status-pill.review{background:#f3e8ff;color:#6b21a8}.tasks-status-pill.done{background:#dcfce7;color:#166534}.tasks-status-pill.cancelled{background:#f3f4f6;color:#6b7280}.tasks-status-pill.planned{background:#eff6ff;color:#1d4ed8}.tasks-status-pill.active{background:#fef3c7;color:#92400e}.tasks-status-pill.on_hold{background:#f3f4f6;color:#6b7280}.tasks-priority-pill{border-radius:4px;display:inline-block;font-size:11px;margin-left:6px;padding:2px 8px}.tasks-priority-pill.low{background:#f3f4f6;color:#6b7280}.tasks-priority-pill.medium{background:#eff6ff;color:#1d4ed8}.tasks-priority-pill.high{background:#fef3c7;color:#92400e}.tasks-priority-pill.critical{background:#fee2e2;color:#b91c1c}.kanban-board{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(5,minmax(240px,1fr));overflow-x:auto}@media (max-width:1200px){.kanban-board{grid-template-columns:repeat(3,1fr)}}@media (max-width:700px){.kanban-board{grid-template-columns:1fr}}.kanban-column{background:#f9fafb;border-radius:8px;min-height:400px;padding:10px}.kanban-column h4{color:#6b7280;font-size:13px;margin:0 0 10px;padding:0 4px;text-transform:uppercase}.kanban-column .count{color:#9ca3af;font-weight:400;margin-left:4px}.kanban-card{background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;font-size:14px;margin-bottom:8px;padding:10px 12px;transition:box-shadow .15s}.kanban-card:hover{box-shadow:0 2px 6px #00000014}.kanban-card .title{font-weight:500;margin-bottom:6px}.kanban-card .meta{align-items:center;color:#6b7280;display:flex;font-size:12px;justify-content:space-between}.kanban-card .assignee{max-width:60%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kanban-card.overdue{border-left:3px solid #dc2626}.kanban-card.overdue .meta .due{color:#dc2626;font-weight:600}.kanban-column.drop-over{background:#eff6ff}.tasks-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:100}.tasks-modal{background:#fff;border-radius:10px;box-shadow:0 20px 60px #00000040;max-height:90vh;overflow-y:auto;padding:20px 24px;width:min(720px,95vw)}.tasks-modal h2{font-size:20px;margin:0 0 16px}.tasks-modal .close-btn{background:#0000;border:0;color:#6b7280;cursor:pointer;float:right;font-size:22px;line-height:1;padding:0}.tasks-form-row{grid-gap:8px;align-items:center;display:grid;gap:8px;grid-template-columns:140px 1fr;margin-bottom:10px}.tasks-form-row label{color:#4b5563;font-size:14px}.tasks-form-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:16px}.tasks-tabs{border-bottom:1px solid #e5e7eb;display:flex;margin-bottom:12px;margin-top:16px}.tasks-tab{border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;padding:8px 14px}.tasks-tab.active{border-color:#2563eb;color:#2563eb;font-weight:600}.comment-list{max-height:260px;overflow-y:auto}.comment-item{background:#f9fafb;border-radius:6px;font-size:14px;margin-bottom:8px;padding:10px}.comment-item .author{color:#111827;font-size:13px;font-weight:600}.comment-item .when{color:#9ca3af;font-size:12px;margin-left:6px}.history-item{border-bottom:1px solid #f3f4f6;color:#4b5563;font-size:13px;padding:6px 0}.tasks-table{background:#fff;border:1px solid #e5e7eb;border-collapse:collapse;border-radius:8px;overflow:hidden;width:100%}.tasks-table td,.tasks-table th{border-bottom:1px solid #f3f4f6;font-size:14px;padding:10px;text-align:left}.tasks-table th{background:#f9fafb;color:#374151;font-size:13px}.tasks-table tr.overdue td{background:#fef2f2}.tasks-table tr:hover td{background:#f9fafb;cursor:pointer}.tasks-table tr.overdue:hover td{background:#fee2e2}.tasks-empty{background:#fff;border:1px dashed #e5e7eb;border-radius:8px;color:#9ca3af;padding:40px;text-align:center}.tasks-view-switcher{border:1px solid #d1d5db;border-radius:6px;display:inline-flex;margin-right:12px;overflow:hidden}.tasks-view-switcher button{background:#fff;border:0;border-right:1px solid #d1d5db;cursor:pointer;font-size:14px;padding:8px 16px}.tasks-view-switcher button:last-child{border-right:0}.tasks-view-switcher button.active{background:#2563eb;color:#fff}.gantt-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:8px;padding:12px}.gantt-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.gantt-legend{color:#4b5563;display:flex;font-size:13px;gap:12px;margin-left:auto}.gantt-legend span{align-items:center;display:inline-flex;gap:4px}.gantt-legend .dot{border-radius:3px;display:inline-block;height:12px;width:12px}.dot-new{background:#93c5fd}.dot-progress{background:#fbbf24}.dot-done{background:#86efac}.dot-overdue{background:#fca5a5}.gantt-container{overflow-x:auto}.gantt .bar-wrapper.bar-new .bar{fill:#93c5fd}.gantt .bar-wrapper.bar-progress .bar{fill:#fbbf24}.gantt .bar-wrapper.bar-done .bar{fill:#86efac}.gantt .bar-wrapper.bar-cancelled .bar{fill:#d1d5db}.gantt .bar-wrapper.bar-overdue .bar{fill:#fca5a5}.gantt-popup{font-size:13px;padding:6px 10px}.gantt-popup-title{font-weight:600;margin-bottom:4px}.gantt-popup-meta{color:#6b7280;font-size:12px}.matrix-summary{align-items:center;background:#f9fafb;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:12px;padding:12px 16px}.matrix-table td,.matrix-table th{font-size:13px}.matrix-table th{position:-webkit-sticky;position:sticky;top:0}.conclusion-select{border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:13px;padding:4px 8px}.conclusion-select.pending{background:#f3f4f6;color:#6b7280}.conclusion-select.approved{background:#dcfce7;border-color:#86efac;color:#166534}.conclusion-select.approved_with_remarks{background:#fef3c7;border-color:#fbbf24;color:#92400e}.conclusion-select.rejected{background:#fee2e2;border-color:#fca5a5;color:#b91c1c}.flow-summary{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;display:flex;flex-wrap:wrap;gap:14px;justify-content:space-between;margin-bottom:12px;padding:18px 22px}.flow-progress-bar{background:#f3f4f6;border-radius:5px;height:10px;overflow:hidden}.flow-progress-fill{background:linear-gradient(90deg,#16a34a,#10b981);height:100%;transition:width .4s}.flow-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.flow-card{border:2px solid;border-radius:10px;padding:14px;transition:transform .15s,box-shadow .15s}.flow-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.mytask-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.mytask-card{background:#fff;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;padding:12px;transition:box-shadow .15s,transform .15s}.mytask-card:hover{box-shadow:0 4px 10px #00000014;transform:translateY(-1px)}.wbs-wrap{grid-gap:0;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:grid;gap:0;grid-template-columns:minmax(650px,55%) 1fr;overflow:hidden}.wbs-table-scroll{border-right:2px solid #cbd5e1}.wbs-chart-scroll,.wbs-table-scroll{overflow-x:auto;overflow-y:visible}.wbs-table{border-collapse:collapse;font-size:13px;width:100%}.wbs-table th{background:#f3f4f6;border-bottom:2px solid #cbd5e1;box-sizing:border-box;font-size:12px;font-weight:600;height:42px;padding:0 10px;position:-webkit-sticky;position:sticky;text-align:left;text-transform:uppercase;top:0;z-index:2}.wbs-table td{border-bottom:1px solid #f3f4f6;padding:6px 10px;vertical-align:middle}.wbs-row{cursor:pointer;min-height:26px}.wbs-row td{box-sizing:border-box;max-width:0;min-height:26px;overflow:hidden;padding:4px 10px;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.wbs-row td:nth-child(2){max-width:none;overflow:visible;text-overflow:clip;white-space:normal}.wbs-row td:nth-child(2)>span{display:inline-block;line-height:1.3;vertical-align:middle}.wbs-row:hover td{background:#f9fafb}.wbs-row.summary td{background:#eff6ff;font-weight:600}.wbs-row.project-summary td{background:#1f2937!important;color:#fff!important;font-size:13px;font-weight:700}.wbs-row.project-summary:hover td{background:#111827!important}.wbs-summary-bar.project-summary{height:14px;top:6px}.wbs-summary-bar.project-summary .wbs-summary-body{background:#111;height:10px}.wbs-summary-bar.project-summary .wbs-summary-cap{background:#111;height:14px;width:8px}.wbs-row.summary:hover td{background:#dbeafe}.wbs-row.overdue td{background:#fef2f2}.wbs-toggle{color:#6b7280;cursor:pointer;display:inline-block;font-size:10px;margin-right:2px;-webkit-user-select:none;user-select:none;width:16px}.wbs-toggle:hover{color:#111}.wbs-chart{font-size:11px;position:relative}.wbs-chart-header{background:#f3f4f6;border-bottom:2px solid #cbd5e1;box-sizing:border-box;height:42px;position:-webkit-sticky;position:sticky;top:0;z-index:2}.wbs-months,.wbs-weeks{display:flex}.wbs-month{background:#e0e7ff;border-right:1px solid #cbd5e1;color:#1e40af;font-weight:700;overflow:hidden;padding:0 6px;white-space:nowrap}.wbs-month,.wbs-week{box-sizing:border-box;height:20px;line-height:20px;text-align:center}.wbs-week{background:#fff;border-right:1px solid #e5e7eb;color:#6b7280;font-size:11px}.wbs-bar-row,.wbs-bars{position:relative}.wbs-bar-row{border-bottom:1px solid #f3f4f6;box-sizing:border-box;display:flex;min-height:26px}.wbs-week-bg{border-right:1px solid #f3f4f6;box-sizing:border-box}.wbs-task-bar{align-items:center;background:#93c5fd;border:1px solid #3b82f6;border-radius:2px;cursor:pointer;display:flex;height:16px;overflow:hidden;padding:0 3px;position:absolute;top:5px}.wbs-task-bar.overdue{background:#fca5a5;border-color:#dc2626}.wbs-task-bar.critical{background:#fecaca;border-color:#b91c1c}.wbs-task-bar.critical .wbs-task-progress{background:#991b1b}.wbs-task-progress{background:#2563eb;border-radius:3px 0 0 3px;bottom:0;left:0;position:absolute;top:0}.wbs-task-bar.overdue .wbs-task-progress{background:#b91c1c}.wbs-task-label{color:#374151;font-size:10px;font-weight:500;left:calc(100% + 4px);pointer-events:none;position:absolute;top:50%;transform:translateY(-50%);white-space:nowrap;z-index:1}.wbs-summary-bar{align-items:center;display:flex;height:10px;position:absolute;top:9px}.wbs-summary-body{background:#1f2937;flex:1 1;height:6px;margin:0}.wbs-summary-cap{background:#1f2937;height:10px;width:6px}.wbs-summary-cap,.wbs-summary-cap.right{-webkit-clip-path:polygon(0 0,100% 0,100% 100%,50% 40%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,50% 40%,0 100%)}.wbs-summary-cap.right{transform:scaleX(-1)}.wbs-milestone{background:#1f2937;border:1px solid #000;height:12px;position:absolute;top:7px;transform:rotate(45deg);width:12px}.wbs-legend{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-top:14px;padding:12px 16px}.wbs-legend-title{color:#374151;font-size:13px;font-weight:700;margin-bottom:8px}.wbs-legend-grid{grid-gap:8px 16px;color:#4b5563;display:grid;font-size:13px;gap:8px 16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.wbs-legend-item{align-items:center;display:flex;gap:10px}.lg-sample{align-items:center;display:inline-flex;flex:0 0 70px;height:16px;justify-content:center;position:relative}.lg-task{background:#93c5fd;border:1px solid #3b82f6;border-radius:2px;overflow:hidden}.lg-task-fill{background:#2563eb;display:block;height:100%}.lg-overdue{background:#fca5a5;border-color:#dc2626}.lg-overdue-fill{background:#b91c1c}.lg-critical{background:#fecaca;border:1px solid #b91c1c;border-radius:2px;overflow:hidden}.lg-critical-fill{background:#991b1b;display:block;height:100%}.lg-summary{align-items:center;height:10px}.lg-summary-body{background:#1f2937;flex:1 1;height:6px}.lg-summary-cap-l,.lg-summary-cap-r{background:#1f2937;-webkit-clip-path:polygon(0 0,100% 0,100% 100%,50% 40%,0 100%);clip-path:polygon(0 0,100% 0,100% 100%,50% 40%,0 100%);height:10px;width:6px}.lg-summary-cap-r{transform:scaleX(-1)}.lg-milestone-wrap{align-items:center;justify-content:center}.lg-milestone{background:#1f2937;border:1px solid #000;display:inline-block;height:12px;transform:rotate(45deg);width:12px}.lg-row-overdue{background:#fef2f2;border:1px solid #fca5a5;border-radius:2px}.lg-row-summary{background:#eff6ff;border:1px solid #bfdbfe;border-radius:2px}.wbs-actions{white-space:nowrap}.wbs-add-btn{background:#0000;border:1px solid #d1d5db;border-radius:3px;color:#4b5563;cursor:pointer;font-size:11px;margin-right:2px;padding:2px 6px}.wbs-add-btn:hover{background:#eff6ff;border-color:#3b82f6;color:#1e40af}.wbs-row[draggable=true]{cursor:grab}.wbs-row[draggable=true]:active{cursor:grabbing}.wbs-row.drop-before td{box-shadow:inset 0 3px 0 0 #2563eb}.wbs-row.drop-after td{box-shadow:inset 0 -3px 0 0 #2563eb}.wbs-row.drop-child td{background:#dbeafe!important;box-shadow:inset 3px 0 0 0 #2563eb}.wbs-row.faded td{opacity:.35}.wbs-row.chain td{background:#fef3c7!important}.wbs-row.chain.summary td{background:#fde68a!important}.wbs-bar-row.faded{opacity:.25}.wbs-bar-row.chain:before{background:#fbbf2426;content:"";inset:0;pointer-events:none;position:absolute}.rolled-up-task{background:#93c5fd;border:1px solid #3b82f6;border-radius:2px;height:16px;position:absolute;top:-3px;z-index:1}.rolled-up-task.critical{background:#fca5a5;border-color:#b91c1c}.rolled-up-milestone{background:#1f2937;border:1px solid #000;height:10px;position:absolute;top:-1px;transform:rotate(45deg);width:10px;z-index:2}.wbs-deadline-arrow{background:#0000;height:12px;pointer-events:none;position:absolute;top:-8px;width:12px;z-index:3}.wbs-deadline-arrow:before{border-left:6px solid #0000;border-right:6px solid #0000;border-top:10px solid #059669;content:"";left:0;position:absolute;top:0}.wbs-deadline-warn{cursor:help;font-size:13px;font-weight:700;margin-left:6px}.wbs-deadline-warn.missed{color:#b91c1c}.wbs-deadline-warn.at-risk{color:#d97706}.wbs-baseline-bar{background:repeating-linear-gradient(90deg,#9ca3af,#9ca3af 3px,#0000 0,#0000 6px);border-bottom:1px solid #6b7280;border-top:1px solid #6b7280;height:5px;position:absolute;top:15px;z-index:0}.wbs-baseline-info{background:#f0f9ff;border:1px solid #3b82f6;border-radius:6px;color:#1e40af;font-size:13px;margin-bottom:10px;padding:10px 14px}.rl-table{border-collapse:collapse;font-size:12px;width:100%}.rl-table td,.rl-table th{border:1px solid #e5e7eb;padding:4px 6px;text-align:center}.rl-table th{background:#f3f4f6;font-weight:600}.rl-user-col{background:#f3f4f6!important;min-width:220px}.rl-user-col,.rl-user-name{left:0;position:-webkit-sticky;position:sticky;text-align:left!important;z-index:1}.rl-user-name{background:#fff}.rl-peak-col,.rl-total-col{min-width:45px}.rl-day-col{min-width:34px}.rl-day-col.weekend{background:#e5e7eb}.rl-num{font-weight:600}.rl-num.overload{color:#b91c1c}.rl-cell{height:28px;min-width:34px}.rl-cell.weekend{background:#f9fafb}.rl-cell.load-1{background:#dcfce7;color:#14532d}.rl-cell.load-2{background:#fef3c7;color:#78350f}.rl-cell.load-3{background:#fee2e2;color:#7f1d1d;font-weight:700}:root{--g-arrow-color:#1f2937;--g-bar-color:#fff;--g-bar-border:#fff;--g-tick-color-thick:#ededed;--g-tick-color:#f3f3f3;--g-actions-background:#f3f3f3;--g-border-color:#ebeff2;--g-text-muted:#7c7c7c;--g-text-light:#fff;--g-text-dark:#171717;--g-progress-color:#dbdbdb;--g-handle-color:#37352f;--g-weekend-label-color:#dcdce4;--g-expected-progress:#c4c4e9;--g-header-background:#fff;--g-row-color:#fdfdfd;--g-row-border-color:#c7c7c7;--g-today-highlight:#37352f;--g-popup-actions:#ebeff2;--g-weekend-highlight-color:#f7f7f7}html[data-theme=dark]{--g-arrow-color:#e5e5e5;--g-bar-color:#2a2a2a;--g-bar-border:#3a3a3a;--g-tick-color-thick:#1a1a1a;--g-tick-color:#0a0a0a;--g-actions-background:#1a1a1a;--g-border-color:#2a2a2a;--g-text-muted:#999;--g-text-light:#fff;--g-text-dark:#f5f5f5;--g-progress-color:#4a4a4a;--g-handle-color:#d0d0d0;--g-weekend-label-color:#3a3a3a;--g-expected-progress:#5a5a5a;--g-header-background:#0a0a0a;--g-row-color:#141414;--g-row-border-color:#2a2a2a;--g-today-highlight:#999;--g-popup-actions:#1a1a1a;--g-weekend-highlight-color:#0f0f0f}.gantt-container{border-radius:8px;font-size:12px;height:var(--gv-grid-height);isolation:isolate;line-height:14.5px;overflow:auto;position:relative;width:100%}.gantt-container .popup-wrapper{background:#fff;background:var(--g-header-background);border-radius:5px;box-shadow:0 10px 24px -3px #0003;left:0;padding:10px;position:absolute;top:0;width:-webkit-max-content;width:max-content;z-index:1000}.gantt-container .popup-wrapper .title{color:#171717;color:var(--g-text-dark);font-size:.85rem;font-weight:650;line-height:15px;margin-bottom:2px}.gantt-container .popup-wrapper .subtitle{color:#171717;color:var(--g-text-dark);font-size:.8rem;margin-bottom:5px}.gantt-container .popup-wrapper .details{color:#7c7c7c;color:var(--g-text-muted);font-size:.7rem}.gantt-container .popup-wrapper .actions{margin-left:3px;margin-top:10px}.gantt-container .popup-wrapper .action-btn{background-color:#ebeff2;background-color:var(--g-popup-actions);border:none;border-right:1px solid #ebeff2;border-right:1px solid var(--g-border-color);padding:5px 8px}.gantt-container .popup-wrapper .action-btn:hover{filter:brightness(97%)}.gantt-container .popup-wrapper .action-btn:first-child{border-bottom-left-radius:4px;border-top-left-radius:4px}.gantt-container .popup-wrapper .action-btn:last-child{border-bottom-right-radius:4px;border-right:none;border-top-right-radius:4px}.gantt-container .grid-header{background-color:#fff;background-color:var(--g-header-background);border-bottom:1px solid #c7c7c7;border-bottom:1px solid var(--g-row-border-color);height:calc(var(--gv-lower-header-height) + var(--gv-upper-header-height) + 10px);left:0;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.gantt-container .lower-text,.gantt-container .upper-text{text-anchor:middle}.gantt-container .upper-header{height:var(--gv-upper-header-height)}.gantt-container .lower-header{height:var(--gv-lower-header-height)}.gantt-container .lower-text{align-content:center;color:#7c7c7c;color:var(--g-text-muted);font-size:12px;height:calc(var(--gv-lower-header-height)*.8);margin:0 calc(var(--gv-column-width)*.1);position:absolute;text-align:center;width:calc(var(--gv-column-width)*.8)}.gantt-container .upper-text{color:#171717;color:var(--g-text-dark);font-size:14px;font-weight:500;height:calc(var(--gv-lower-header-height)*.66);position:absolute;width:-webkit-fit-content;width:fit-content}.gantt-container .current-upper{left:0!important;padding-left:17px}.gantt-container .current-upper,.gantt-container .side-header{background:#fff;background:var(--g-header-background);position:-webkit-sticky;position:sticky}.gantt-container .side-header{display:flex;float:right;font-weight:400;line-height:20px;margin-left:auto;padding-right:10px;padding-top:10px;right:0;top:0;width:-webkit-max-content;width:max-content;z-index:1000}.gantt-container .side-header *{background-color:#f3f3f3;background-color:var(--g-actions-background);border:none;border-radius:.5rem;box-sizing:initial;color:#171717;color:var(--g-text-dark);font-size:14px;font-weight:420;letter-spacing:.02em;margin-right:5px;padding:5px 8px;transition-duration:.15s;transition-property:background-color;transition-timing-function:cubic-bezier(.4,0,.2,1)}.gantt-container .side-header :last-child{margin-right:0}.gantt-container .side-header :hover{filter:brightness(97.5%)}.gantt-container .side-header select{padding-bottom:2px;padding-top:2px;width:60px}.gantt-container .side-header select:focus{outline:none}.gantt-container .date-range-highlight{background-color:#dbdbdb;background-color:var(--g-progress-color);border-radius:12px;height:calc(var(--gv-lower-header-height) - 6px);position:absolute;top:calc(var(--gv-upper-header-height) + 5px)}.gantt-container .current-highlight{background:#37352f;background:var(--g-today-highlight);position:absolute;width:1px;z-index:999}.gantt-container .current-ball-highlight{background:#37352f;background:var(--g-today-highlight);border-radius:50%;position:absolute;z-index:1001}.gantt-container .current-date-highlight{background:#37352f;background:var(--g-today-highlight);border-radius:5px;color:#fff;color:var(--g-text-light)}.gantt-container .holiday-label{background:#dcdce4;background:var(--g-weekend-label-color);border-radius:5px;left:0;opacity:0;padding:2px 5px;position:absolute;top:0;z-index:1000}.gantt-container .holiday-label.show{opacity:1}.gantt-container .extras{left:0;position:-webkit-sticky;position:sticky}.gantt-container .extras .adjust{background-color:#f3f3f3;background-color:var(--g-actions-background);border:none;border-radius:3px;color:#fff;color:var(--g-text-light);left:8px;padding:8px;position:absolute;top:calc(var(--gv-grid-height) - 60px)}.gantt-container .hide{display:none}.gantt{position:absolute;user-select:none;-webkit-user-select:none}.gantt .grid-background{fill:none}.gantt .grid-row{fill:#fdfdfd;fill:var(--g-row-color)}.gantt .row-line{stroke:#ebeff2;stroke:var(--g-border-color)}.gantt .tick{stroke:#f3f3f3;stroke:var(--g-tick-color);stroke-width:.4}.gantt .tick.thick{stroke:#ededed;stroke:var(--g-tick-color-thick);stroke-width:.7}.gantt .arrow{fill:none;stroke:#1f2937;stroke:var(--g-arrow-color);stroke-width:1.5}.gantt .bar-wrapper .bar{fill:#fff;fill:var(--g-bar-color);stroke:#fff;stroke:var(--g-bar-border);stroke-width:0;transition:stroke-width .3s ease}.gantt .bar-progress{fill:#dbdbdb;fill:var(--g-progress-color);border-radius:4px}.gantt .bar-expected-progress{fill:#c4c4e9;fill:var(--g-expected-progress)}.gantt .bar-invalid{fill:#0000;stroke:#fff;stroke:var(--g-bar-border);stroke-width:1;stroke-dasharray:5}:is(.gantt .bar-invalid)~.bar-label{fill:#fff;fill:var(--g-text-light)}.gantt .bar-label{fill:#171717;fill:var(--g-text-dark);dominant-baseline:central;font-family:Helvetica;font-size:13px;font-weight:400}.gantt .bar-label.big{fill:#171717;fill:var(--g-text-dark);text-anchor:start}.gantt .handle{fill:#37352f;fill:var(--g-handle-color);opacity:0;transition:opacity .3s ease}.gantt .handle.active,.gantt .handle.visible{cursor:ew-resize;opacity:1}.gantt .handle.progress{fill:#7c7c7c;fill:var(--g-text-muted)}.gantt .bar-wrapper{cursor:pointer}.gantt .bar-wrapper .bar{border-radius:3px;outline:1px solid #c7c7c7;outline:1px solid var(--g-row-border-color)}.gantt .bar-wrapper:hover .bar{transition:transform .3s ease}.gantt .bar-wrapper:hover .date-range-highlight{display:block}.gantt .grid-column{fill:#0000;pointer-events:all}.gantt .grid-column:hover{fill:#f7f7f7;fill:var(--g-weekend-highlight-color);transition:fill .1s ease}*{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Manrope,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.App{min-height:100vh}.btn-export{align-items:center;background:#fff;border:1px solid #7c3aed;border-radius:8px;color:#7c3aed;cursor:pointer;display:inline-flex;font-size:.82rem;font-weight:500;gap:.3rem;padding:.45rem .9rem;transition:all .2s;white-space:nowrap}.btn-export:hover{background:#ede9fe;color:#6d28d9}
/*# sourceMappingURL=main.6d553ae9.css.map*/