@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap";.app-layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);height:100vh;position:fixed;left:0;top:0;background:var(--bg-sidebar);border-right:1px solid var(--border-color);display:flex;flex-direction:column;z-index:100;transition:width var(--transition-normal);box-shadow:1px 0 10px #0f172a05}.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.125rem;height:var(--header-height);border-bottom:1px solid var(--border-color);background:#fff}.logo{display:flex;align-items:center;gap:.625rem}.logo-icon{font-size:1.35rem}.logo-text{font-size:1.15rem;font-weight:800;color:#0f172a;letter-spacing:-.02em}.sidebar-toggle{width:28px;height:28px;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--gray-100);color:var(--gray-600);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.85rem;transition:all var(--transition-fast)}.sidebar-toggle:hover{background:var(--gray-200);color:#0f172a}.sidebar-section-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem .35rem}.sidebar-section-label{font-size:.6875rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.06em}.sidebar-section-badge{font-size:.625rem;font-weight:700;padding:2px 6px;border-radius:4px;background:#f1f5f9;color:#64748b;border:1px solid var(--border-color)}.sidebar-nav{flex:1;padding:.5rem .65rem;display:flex;flex-direction:column;gap:3px;overflow-y:auto}.nav-item{display:flex;align-items:flex-start;gap:.75rem;padding:.65rem .85rem;color:#475569;text-decoration:none;border-radius:var(--radius-md);font-weight:500;font-size:.84rem;line-height:1.35;min-height:38px;transition:all var(--transition-fast);position:relative}.nav-item:hover{background:#f1f5f9;color:#0f172a}.sidebar-email-badge{margin-left:auto;background:#2563eb;color:#fff;font-size:.6875rem;font-weight:700;padding:1px 7px;border-radius:9999px;min-width:20px;height:18px;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #2563eb40;font-family:var(--font-mono, monospace);line-height:1;flex-shrink:0}.nav-item.active .sidebar-email-badge{background:#fff;color:#2563eb}.sidebar-email-badge-dot{position:absolute;top:-2px;right:-2px;width:8px;height:8px;border-radius:50%;background:#2563eb;border:2px solid #ffffff}.nav-item.active{background:#0f172a;color:#fff;font-weight:600;box-shadow:0 2px 8px #0f172a26}.nav-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;margin-top:1px;color:var(--sidebar-icon-inactive);transition:color var(--transition-fast)}.nav-item:hover .nav-icon{color:#0f172a}.nav-item.active .nav-icon{color:#38bdf8}.nav-text{white-space:normal;word-break:break-word;line-height:1.35;font-weight:inherit;flex:1}.sidebar-collapsed .nav-text{display:none}.nav-group{display:flex;flex-direction:column}.nav-item.nav-group-header{cursor:pointer;-webkit-user-select:none;user-select:none}.nav-item.parent-active{background:#f1f5f9;color:#0f172a;font-weight:600}.nav-item.parent-active .nav-icon{color:#0284c7}.nav-chevron{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-top:2px;flex-shrink:0;border-radius:4px;color:#94a3b8;margin-left:auto;transition:all var(--transition-fast, .15s)}.nav-chevron:hover{background:#0000000f;color:#0f172a}.nav-item.active .nav-chevron,.nav-item.parent-active .nav-chevron{color:#475569}.nav-sub-items{display:flex;flex-direction:column;gap:3px;margin:3px 0 6px 1.25rem;padding-left:.75rem;border-left:2px solid #e2e8f0}.nav-sub-item{display:flex;align-items:flex-start;gap:.65rem;padding:.48rem .75rem;color:#64748b;text-decoration:none;border-radius:var(--radius-md, 8px);font-weight:500;font-size:.82rem;line-height:1.35;min-height:32px;transition:all var(--transition-fast, .15s);position:relative}.nav-sub-item:hover{background:#f8fafc;color:#0f172a}.nav-sub-item.active{background:#0f2942;color:#fff;font-weight:600;box-shadow:0 1px 4px #0f294226}.nav-sub-item.nav-sub-tree-active.active{background:#1d5e7b!important;color:#fff!important;font-weight:600;box-shadow:0 2px 6px #1d5e7b59!important}.nav-sub-item.nav-sub-tree-active.active .nav-sub-icon{color:#7dd3fc!important}.nav-sub-item.nav-sub-tree-active:hover:not(.active){background:#f0f7fa;color:#1d5e7b}.nav-sub-item.nav-sub-tree-active:hover:not(.active) .nav-sub-icon{color:#1d5e7b}.nav-sub-group{display:flex;flex-direction:column}.nav-sub-group-header{-webkit-user-select:none;user-select:none}.nav-sub-chevron{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px;color:#94a3b8;margin-left:auto;transition:all var(--transition-fast, .15s)}.nav-sub-chevron:hover{background:#0000000f;color:#0f172a}.nav-nested-sub-items{display:flex;flex-direction:column;gap:2px;margin:2px 0 4px .85rem;padding-left:.65rem;border-left:1.5px solid #cbd5e1}.nav-nested-sub-item{font-size:.78rem!important;padding:.38rem .65rem!important;min-height:28px!important;color:#64748b}.nav-nested-sub-item .nav-sub-icon{width:15px;height:15px}.nav-sub-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:18px;height:18px;margin-top:2px;color:#94a3b8;transition:color var(--transition-fast, .15s)}.nav-sub-item:hover .nav-sub-icon{color:#0f172a}.nav-sub-item.active .nav-sub-icon{color:#38bdf8}.nav-sub-text{white-space:normal;word-break:break-word;line-height:1.35;flex:1}.sidebar-bottom-widgets{padding:.75rem .85rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;gap:8px;background:#fff}.sidebar-widget-card{border-radius:10px;border:1px solid var(--border-color);background:#fff;overflow:hidden}.sidebar-widget-header{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;font-size:.7rem;font-weight:700;letter-spacing:.04em}.sidebar-widget-header.dark{background:#0f233a;color:#fff}.sidebar-widget-badge{background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;padding:1px 6px;border-radius:999px}.sidebar-widget-badge.green{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.sidebar-widget-body{padding:8px 10px;font-size:.75rem;color:#475569;display:flex;flex-direction:column;gap:4px}.sidebar-widget-row{display:flex;justify-content:space-between;align-items:center}.sidebar-quota-bar{width:100%;height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:4px}.sidebar-quota-fill{height:100%;background:#f59e0b;border-radius:999px;width:34.2%}.sidebar-footer{padding:.5rem 1rem .75rem;font-size:var(--text-xs);color:var(--text-sidebar-muted);text-align:center}.main-content{flex:1;margin-left:var(--sidebar-width);min-height:0;overflow-y:auto;padding:var(--page-padding);transition:margin-left var(--transition-normal)}.sidebar-collapsed .main-content{margin-left:var(--sidebar-collapsed)}.card{background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-color);padding:1.25rem;box-shadow:var(--shadow-xs)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color)}.card-title{font-size:var(--text-md);font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.375rem;padding:.5rem .875rem;font-size:var(--text-sm);font-weight:500;font-family:var(--font-sans);border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--gray-100);border-color:var(--gray-300)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-success{background:var(--success);color:#fff}.btn-success:hover:not(:disabled){background:#047857}.btn-ghost{background:transparent;color:var(--text-secondary);padding:.5rem}.btn-ghost:hover{background:var(--gray-100);color:var(--text-primary)}.btn-sm{padding:.375rem .625rem;font-size:var(--text-xs)}.btn-lg{padding:.625rem 1.25rem;font-size:var(--text-base)}.btn-icon{width:32px;height:32px;padding:0;font-size:.875rem}.btn-group{display:flex;gap:.375rem}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.375rem;font-weight:500;font-size:var(--text-sm);color:var(--text-primary)}.form-label .required{color:var(--danger)}.form-input,.form-control,.form-select,.form-textarea{width:100%;padding:.5rem .75rem;font-size:var(--text-base);font-family:var(--font-sans);color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);transition:border-color var(--transition-fast)}.form-input:focus,.form-control:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--border-focus);box-shadow:0 0 0 2px var(--primary-bg)}.form-input::placeholder,.form-control::placeholder,.form-textarea::placeholder{color:var(--text-placeholder)}.form-textarea{min-height:80px;resize:vertical}.form-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%236b7280'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:1rem;padding-right:2rem}.form-hint{display:block;margin-top:.25rem;font-size:var(--text-xs);color:var(--text-muted)}.form-row{display:grid;gap:.75rem}.form-row-2{grid-template-columns:repeat(2,1fr)}.form-row-3{grid-template-columns:repeat(3,1fr)}.form-row-4{grid-template-columns:repeat(4,1fr)}.form-section{margin-bottom:1.25rem;padding:1rem;background:var(--gray-50);border-radius:var(--radius-sm);border:1px solid var(--border-color)}.form-section-title{margin:0 0 .75rem;font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#111827d9;display:flex;align-items:flex-start;justify-content:center;z-index:1000;padding:2rem 1.5rem;overflow-y:auto;animation:fadeIn .15s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal,.modal-content{background:var(--bg-card);background-color:#fff;border-radius:var(--radius-lg);border:2px solid var(--border-color);max-width:520px;width:100%;max-height:calc(100vh - 6rem);display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;padding:1.5rem}.modal-content{max-width:680px;overflow-y:auto;padding:1.75rem}.modal-lg,.modal-content.modal-lg{max-width:640px}.modal-xl,.modal-content.modal-xl{max-width:800px}.unit-price-modal{max-width:650px;max-height:calc(100vh - 4rem);overflow:hidden;padding:0}.unit-price-modal .modal-header{padding:1.25rem 1.5rem;background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-secondary) 100%)}.unit-price-modal .modal-header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-heading)}.unit-price-modal .modal-body{padding:1.5rem;overflow-y:auto;max-height:calc(100vh - 220px)}.unit-price-modal .modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:var(--spacing-sm);background:var(--bg-secondary)}.unit-price-modal .form-section{margin-bottom:1.5rem;padding:1.25rem;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color)}.unit-price-modal .form-section h3{font-size:1rem;font-weight:600;color:var(--text-heading);margin:0 0 1rem;display:flex;align-items:center;gap:.5rem}.unit-price-modal .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:1rem}.unit-price-modal .form-group{margin-bottom:.75rem}.unit-price-modal .form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--text-secondary);margin-bottom:.25rem}.unit-price-modal .calculated-price{padding:.75rem 1rem;background:linear-gradient(135deg,var(--primary-light),var(--primary));color:#fff;font-weight:700;font-size:1rem;border-radius:var(--radius-sm);text-align:center}.unit-price-modal .auto-code-hint{padding:.75rem 1rem;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px dashed #22c55e;border-radius:var(--radius-sm);text-align:center}.unit-price-modal .auto-code-hint .hint-text{font-size:.875rem;color:#16a34a;font-weight:500}.project-modal{max-width:600px;width:100%;max-height:calc(100vh - 4rem);display:flex;flex-direction:column}.project-modal form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.project-modal .modal-form-content{overflow-y:auto;flex:1;padding:1.25rem;min-height:0}.project-modal .form-section{margin-bottom:1rem}.project-modal .form-section h3{font-size:.9375rem;font-weight:600;color:var(--text-heading);margin:0 0 .75rem;display:flex;align-items:center;gap:.5rem}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color);flex-shrink:0;background:var(--gray-50)}.modal-title{font-size:var(--text-md);font-weight:600;color:var(--text-primary);margin:0;display:flex;align-items:center;gap:.5rem}.modal-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;font-size:1rem;transition:background var(--transition-fast)}.modal-close:hover{background:var(--gray-200);color:var(--text-primary)}.modal-body{padding:1.25rem;overflow-y:auto;flex:1}.modal-form-content{overflow-y:auto;flex:1;min-height:0;padding:1.25rem}.modal-footer{display:flex;justify-content:flex-end;gap:.5rem;padding:.875rem 1.25rem;border-top:1px solid var(--border-color);flex-shrink:0;background:var(--gray-50)}.table-container{overflow-x:auto;border-radius:var(--radius-sm);border:1px solid var(--border-color);background:var(--bg-card)}.table,.data-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.table th,.table td,.data-table th,.data-table td{padding:.625rem .875rem;text-align:left;border-bottom:1px solid var(--border-color)}.table th,.data-table th{font-weight:600;color:var(--text-secondary);background:var(--bg-table-header);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.table tbody tr,.data-table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover,.data-table tbody tr:hover{background:var(--gray-50)}.table tbody tr:last-child td,.data-table tbody tr:last-child td{border-bottom:none}.table-striped tbody tr:nth-child(2n),.data-table.striped tbody tr:nth-child(2n){background:var(--bg-table-row-alt)}.table td.number,.data-table td.number,.table td.price,.data-table td.price{font-family:var(--font-mono);text-align:right;white-space:nowrap}.table td.code,.data-table td.code{font-family:var(--font-mono);font-weight:500;color:var(--primary)}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .5rem;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-sm)}.badge-primary{background:var(--primary-bg);color:var(--primary)}.badge-success{background:var(--success-bg);color:var(--success)}.badge-warning{background:var(--warning-bg);color:var(--warning)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-secondary{background:var(--gray-100);color:var(--text-secondary)}.status-badge{display:inline-flex;align-items:center;padding:.125rem .5rem;font-size:var(--text-xs);font-weight:500;border-radius:var(--radius-sm)}.loading-page{display:flex;align-items:center;justify-content:center;min-height:300px;color:var(--text-muted);font-size:var(--text-sm)}.loading-spinner{width:20px;height:20px;border:2px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2.5rem;text-align:center;color:var(--text-muted)}.empty-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.4}.empty-state h4{font-size:var(--text-md);font-weight:500;color:var(--text-secondary);margin:0 0 .25rem}.empty-state p{color:var(--text-muted);margin:0 0 1rem;font-size:var(--text-sm)}.empty-state.small{padding:1.5rem}.empty-state.small .empty-icon{font-size:2rem}.error,.error-message{background:var(--danger-bg);border:1px solid rgba(220,38,38,.2);color:var(--danger);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:1rem}.success-message{background:var(--success-bg);border:1px solid rgba(5,150,105,.2);color:var(--success);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:1rem}.warning-message{background:var(--warning-bg);border:1px solid rgba(217,119,6,.2);color:var(--warning);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:1rem}.info-message{background:var(--info-bg);border:1px solid rgba(37,99,235,.2);color:var(--info);padding:.75rem 1rem;border-radius:var(--radius-sm);font-size:var(--text-sm);margin-bottom:1rem}.text-left{text-align:left}.mb-0{margin-bottom:0}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.mb-4{margin-bottom:2rem}.mt-0{margin-top:0}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mt-4{margin-top:2rem}.gap-1{gap:.25rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.flex{display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.page-container{max-width:100%}.page-header{margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.page-header h1,.page-title{font-size:var(--text-xl);font-weight:600;margin:0 0 .25rem;color:var(--text-primary)}.page-subtitle{color:var(--text-muted);margin:0;font-size:var(--text-sm)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;box-shadow:var(--shadow-xs)}.stat-card .stat-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:.25rem}.stat-card .stat-value{font-size:var(--text-xl);font-weight:600;color:var(--text-primary)}.stat-card .stat-change{font-size:var(--text-xs);margin-top:.25rem}.stat-card .stat-change.positive{color:var(--success)}.stat-card .stat-change.negative{color:var(--danger)}.dashboard-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-xs)}.dashboard-card .card-header{padding:.75rem 1rem;margin:0;border-bottom:1px solid var(--border-color);background:var(--bg-table-header)}.dashboard-card .card-header h3{font-size:var(--text-sm);font-weight:600;margin:0;color:var(--text-primary)}.dashboard-card .card-content{padding:0}.list{list-style:none;padding:0;margin:0}.list-item{border-bottom:1px solid var(--border-color)}.list-item:last-child{border-bottom:none}.list-link{display:flex;align-items:center;justify-content:space-between;padding:.625rem 1rem;color:inherit;text-decoration:none;transition:background var(--transition-fast)}.list-link:hover{background:var(--gray-50)}.list-main{flex:1;min-width:0}.list-title{display:block;font-weight:500;font-size:var(--text-sm);color:var(--text-primary);margin-bottom:.125rem}.list-subtitle{display:block;font-size:var(--text-xs);color:var(--text-muted)}.list-meta{font-size:var(--text-xs);color:var(--text-muted)}.list-right{display:flex;flex-direction:column;align-items:flex-end;gap:.125rem}.list-amount{font-weight:600;font-size:var(--text-sm);font-family:var(--font-mono);color:var(--text-primary)}.quick-actions h3{font-size:var(--text-sm);font-weight:600;color:var(--text-secondary);margin-bottom:.75rem}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.75rem}.quick-action-btn{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem .75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);text-decoration:none;font-weight:500;font-size:var(--text-xs);transition:background var(--transition-fast)}.quick-action-icon{font-size:1.25rem;opacity:.8}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.project-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;transition:box-shadow var(--transition-fast);box-shadow:var(--shadow-xs)}.project-card:hover{box-shadow:var(--shadow-sm)}.project-card-title{font-size:var(--text-md);font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.project-card-desc{color:var(--text-muted);font-size:var(--text-sm);margin:.5rem 0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-card-actions{display:flex;gap:.375rem;margin-top:1rem;padding-top:.75rem;border-top:1px solid var(--border-color)}.exchange-widget{margin:.5rem;padding:.75rem;background:#ffffff0a;border-radius:var(--radius-sm)}.exchange-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.exchange-header-left{display:flex;align-items:center;gap:.375rem}.exchange-icon{font-size:.875rem}.exchange-title{font-size:var(--text-xs);font-weight:500;color:var(--text-sidebar)}.refresh-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-sidebar-muted);cursor:pointer;font-size:.75rem;transition:color var(--transition-fast)}.refresh-btn:hover:not(:disabled){color:#fff}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.exchange-date{font-size:.625rem;color:var(--text-sidebar-muted);margin-bottom:.5rem}.exchange-rates{display:flex;flex-direction:column;gap:.375rem}.rate-item{display:flex;align-items:center;justify-content:space-between;padding:.375rem .5rem;background:#ffffff0a;border-radius:var(--radius-sm)}.rate-currency{display:flex;align-items:center;gap:.25rem}.currency-flag{font-size:.875rem}.currency-code{font-size:var(--text-xs);font-weight:600;color:var(--text-sidebar)}.rate-values{display:flex;flex-direction:column;align-items:flex-end}.rate-row{display:flex;align-items:center;gap:.25rem}.rate-label{font-size:.5625rem;color:var(--text-sidebar-muted);text-transform:uppercase}.rate-value{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;color:var(--text-sidebar)}.rate-value.buying{color:var(--success)}.rate-value.selling{color:var(--brand-primary-light)}.exchange-cached-warning{font-size:.6875rem;color:var(--warning);text-align:center;margin-top:.5rem;padding:.25rem;background:#f59e0b1a;border-radius:var(--radius-sm)}.exchange-source{font-size:.625rem;color:var(--text-muted);text-align:center;margin-top:.5rem}.exchange-loading,.exchange-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;padding:1rem;color:var(--text-muted);font-size:.8125rem}.exchange-error{color:var(--danger)}.retry-btn{padding:.375rem .75rem;font-size:.75rem;background:var(--bg-card-hover);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.retry-btn:hover{background:var(--neutral-600)}.project-detail-page{padding:1.5rem 2rem;animation:fadeIn .3s ease-out;max-width:100%}.project-detail-page .page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.project-detail-page .header-left{display:flex;align-items:center;gap:1.5rem;flex:1}.project-detail-page .btn-ghost{background:transparent;color:var(--text-secondary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:var(--radius-md);font-size:.875rem;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:.5rem}.project-detail-page .btn-ghost:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--brand-primary)}.project-detail-page .project-title{display:flex;flex-direction:column;gap:.25rem}.project-detail-page .project-title h1{font-size:1.75rem;font-weight:700;color:var(--text-heading);margin:0;display:flex;align-items:center;gap:.5rem}.project-detail-page .customer-name{font-size:1rem;color:var(--brand-primary-light);display:flex;align-items:center;gap:.5rem}.project-detail-page .header-actions{display:flex;gap:.75rem}.tab-navigation{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;background:var(--bg-secondary);padding:.5rem;border-radius:var(--radius-lg);border:1px solid var(--border-color)}.tab-btn{flex:0 1 auto;white-space:nowrap;padding:.6rem 1.25rem;border:none;background:transparent;border-radius:var(--radius-md);font-weight:600;font-size:.9375rem;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-primary);display:flex;align-items:center;justify-content:center;gap:.5rem}.tab-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.tab-btn.active{background:linear-gradient(135deg,var(--brand-primary),var(--brand-primary-light));color:#fff;box-shadow:0 4px 12px #3498db4d}.tab-content{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:2rem;min-height:400px}.overview-tab .info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.overview-tab .info-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;transition:all var(--transition-fast)}.overview-tab .info-card:hover{border-color:var(--brand-primary);box-shadow:0 4px 20px #3498db26}.overview-tab .info-card.full-width{grid-column:1 / -1}.overview-tab .info-card h3{font-size:1.125rem;font-weight:700;color:var(--text-heading);margin:0 0 1.25rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:.5rem}.overview-tab .info-row{display:flex;justify-content:space-between;align-items:center;padding:.625rem 0;border-bottom:1px dashed var(--border-light)}.overview-tab .info-row:last-child{border-bottom:none}.overview-tab .info-row .label{color:var(--text-muted);font-size:.9rem}.overview-tab .info-row .value{color:var(--text-primary);font-weight:600;font-size:.95rem}.commitment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.commitment-checkbox{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);font-size:.875rem;color:var(--text-primary)}.commitment-checkbox:hover{border-color:var(--brand-primary);background:#3498db0d}.commitment-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:var(--brand-primary);cursor:pointer}.commitment-checkbox input[type=checkbox]:checked+span{color:var(--brand-primary);font-weight:500}@media (max-width: 768px){.commitment-grid{grid-template-columns:repeat(2,1fr)}}.commitment-tags{display:flex;flex-wrap:wrap;gap:.5rem}.commitment-tag{background:linear-gradient(135deg,var(--brand-primary),var(--brand-secondary));color:#fff;padding:.375rem .875rem;border-radius:var(--radius-full);font-size:.8125rem;font-weight:500}.no-data{color:var(--text-muted);font-style:italic}.proposals-tab .proposals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(480px,1fr));gap:1.25rem}.proposal-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;transition:all var(--transition-fast)}.proposal-card:hover{border-color:var(--brand-primary);box-shadow:0 4px 20px #3498db26;transform:translateY(-2px)}.proposal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:var(--bg-card);border-bottom:1px solid var(--border-color)}.proposal-no{font-size:1.125rem;font-weight:700;color:var(--text-heading)}.proposal-body{padding:1.25rem}.proposal-dates{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.proposal-dates .date-item{display:flex;flex-direction:column;gap:.25rem}.proposal-dates .label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.proposal-dates .value{font-size:.9375rem;color:var(--text-primary);font-weight:500}.proposal-total{display:flex;flex-direction:column;gap:.25rem;padding-top:1rem;border-top:1px dashed var(--border-color)}.proposal-total .label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.proposal-total .value{font-size:1.375rem;font-weight:700;color:var(--success);font-family:var(--font-mono)}.proposal-financials{display:flex;flex-direction:column;gap:.5rem;padding-top:1rem;border-top:1px dashed var(--border-color)}.proposal-financials .financial-row{display:flex;justify-content:space-between;align-items:center;padding:.25rem 0}.proposal-financials .financial-row .label{font-size:.75rem;color:var(--text-muted)}.proposal-financials .financial-row .value{font-size:.875rem;font-weight:600;font-family:var(--font-mono)}.proposal-financials .financial-row .value.cost{color:var(--primary)}.proposal-financials .financial-row .value.profit{color:#f39c12}.proposal-financials .financial-row .value.overhead{color:#9b59b6}.proposal-financials .financial-row.total{margin-top:.5rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.proposal-financials .financial-row.total .label{font-size:.8rem;font-weight:600;color:var(--text-primary);text-transform:uppercase}.proposal-financials .financial-row.total .value{font-size:1.125rem;font-weight:700;color:var(--success)}.proposal-actions{display:flex;gap:.5rem;padding:1rem 1.25rem;background:var(--bg-card);border-top:1px solid var(--border-color)}.proposal-actions .btn{flex:1}.documents-tab .empty-state,.proposals-tab .empty-state{text-align:center;padding:4rem 2rem}.empty-state .empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.empty-state h3{font-size:1.25rem;color:var(--text-heading);margin:0 0 .5rem}.empty-state p{color:var(--text-muted);margin:0 0 1.5rem}@media (max-width: 1024px){.overview-tab .info-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.project-detail-page{padding:1rem}.project-detail-page .page-header{flex-direction:column;align-items:stretch}.project-detail-page .header-left{flex-direction:column}.tab-navigation{flex-wrap:wrap}.tab-btn{flex:1 1 45%;font-size:.8125rem;padding:.75rem .5rem}.overview-tab .info-grid,.proposals-tab .proposals-grid{grid-template-columns:1fr}.tab-content{padding:1.25rem}}.project-header-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem 2rem;margin-bottom:1.5rem}.project-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1.5rem;margin-bottom:1rem}.project-info{flex:1}.project-customer{color:var(--text-muted);font-size:.9375rem}.project-description{color:var(--text-secondary);margin:.75rem 0 0;font-size:.9375rem}.project-meta{display:flex;gap:1.5rem;flex-wrap:wrap;margin-top:1rem}.project-meta .meta-item{color:var(--text-secondary);font-size:.875rem;display:flex;align-items:center;gap:.375rem}.project-tabs{display:flex;gap:.25rem;margin-bottom:1.5rem;background:var(--bg-card);padding:.375rem;border-radius:var(--radius-lg);border:1px solid var(--border-color)}.project-tabs .tab-btn{flex:1;padding:.75rem 1.25rem;border:none;background:transparent;border-radius:var(--radius-md);font-weight:600;font-size:.875rem;color:var(--text-muted);cursor:pointer;transition:all var(--transition-fast);font-family:var(--font-sans)}.project-tabs .tab-btn:hover{background:var(--bg-input);color:var(--text-secondary)}.project-tabs .tab-btn.active{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-dark) 100%);color:#fff;box-shadow:0 2px 8px #0ea5e94d}.tab-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.tab-header h3{margin:0;font-size:1.125rem;color:var(--text-primary)}.summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.summary-card{padding:1.25rem;border-radius:var(--radius-lg);display:flex;align-items:center;gap:1rem;background:var(--bg-input);border:1px solid var(--border-color)}.summary-card.cost{background:#f59e0b14;border-color:#f59e0b33}.summary-card.profit{background:#10b98114;border-color:#10b98133}.summary-card.total{background:#0ea5e914;border-color:#0ea5e933}.summary-icon{font-size:1.75rem}.summary-content{flex:1}.summary-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.25rem}.summary-value{font-size:1.375rem;font-weight:800;color:var(--text-primary)}.proposals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(450px,1fr));gap:1rem}.proposal-card{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;cursor:pointer;transition:all var(--transition-fast)}.proposal-card:hover{border-color:var(--brand-primary);background:#0ea5e90d;transform:translateY(-2px)}.proposal-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.proposal-card .proposal-no{font-weight:700;color:var(--text-primary);font-family:var(--font-mono)}.proposal-card .proposal-status{font-size:.6875rem;padding:.25rem .625rem;border-radius:var(--radius-full);font-weight:600}.proposal-card-body .proposal-date{font-size:.8125rem;color:var(--text-muted);margin-bottom:.5rem}.proposal-card .proposal-totals{display:flex;justify-content:space-between;font-size:.875rem}.proposal-card .proposal-totals .cost{color:var(--text-muted)}.proposal-card .proposal-totals .total{font-weight:700;color:var(--text-primary)}@media (max-width: 1200px){.summary-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1024px){:root{--sidebar-width: 240px}}@media (max-width: 768px){.main-content{padding:1rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.summary-cards,.form-row-2,.form-row-3,.form-row-4{grid-template-columns:1fr}.project-tabs{flex-wrap:wrap}.project-tabs .tab-btn{flex:1 1 45%}.project-grid{grid-template-columns:1fr}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.stat-card{padding:1rem}.stat-value{font-size:1.25rem}}.spaces-container{display:flex;flex-direction:column;gap:1.5rem}.floor-group{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.floor-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:var(--bg-input);border-bottom:1px solid var(--border-color)}.floor-icon{font-size:1.25rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-color)}.floor-name{margin:0;font-size:1rem;font-weight:700;color:var(--text-primary);flex:1}.space-count{font-size:.75rem;color:var(--text-muted);background:var(--bg-card-hover);padding:.25rem .75rem;border-radius:var(--radius-full)}.floor-total-area{font-size:.8125rem;font-weight:600;color:var(--brand-primary);background:#0ea5e91a;padding:.25rem .75rem;border-radius:var(--radius-full)}.spaces-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;padding:1rem}.space-card{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast)}.space-card:hover{border-color:var(--brand-primary);transform:translateY(-2px)}.space-card-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-card);border-bottom:1px solid var(--border-color)}.space-name{margin:0;font-size:.9375rem;font-weight:600;color:var(--text-primary)}.space-actions{display:flex;gap:.25rem}.space-card-body{padding:.75rem 1rem}.space-area{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px dashed var(--border-color)}.area-label{font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.area-value{font-size:1.125rem;font-weight:700;color:var(--brand-primary);font-family:var(--font-mono)}.space-coverings{display:flex;flex-direction:column;gap:.375rem}.covering-item{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;color:var(--text-secondary)}.covering-icon{width:18px;text-align:center}.covering-name{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.covering-area{font-size:.6875rem;color:var(--text-muted);background:var(--bg-card-hover);padding:.125rem .375rem;border-radius:var(--radius-sm);font-family:var(--font-mono)}.no-coverings{font-size:.8125rem;color:var(--text-muted);font-style:italic;text-align:center;padding:.5rem}.spaces-summary{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.25rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem}.spaces-summary .summary-row{display:flex;flex-direction:column;gap:.25rem;text-align:center;padding:.75rem;background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border-color)}.spaces-summary .summary-label{font-size:.6875rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.spaces-summary .summary-value{font-size:1.125rem;font-weight:800;color:var(--text-primary)}.floors-info{display:flex;gap:.75rem;justify-content:center;margin-top:1rem}.floor-badge{display:flex;align-items:center;gap:.375rem;padding:.5rem 1rem;border-radius:var(--radius-full);font-size:.8125rem;font-weight:600}.floor-badge.basement{background:#ef44441a;color:#f87171;border:1px solid rgba(239,68,68,.2)}.floor-badge.ground{background:#10b9811a;color:var(--success);border:1px solid rgba(16,185,129,.2)}.floor-badge.normal{background:#0ea5e91a;color:var(--brand-primary-light);border:1px solid rgba(14,165,233,.2)}.searchable-select{position:relative}.select-display{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);min-height:46px}.select-display:hover{border-color:var(--border-color-strong)}.select-display.active{border-color:var(--brand-primary);box-shadow:0 0 0 3px #0ea5e926}.select-display.has-value{border-color:var(--success)}.select-display .placeholder{color:var(--text-muted);font-size:.9375rem}.select-display .selected-value{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0;overflow:hidden}.select-display .select-code{background:var(--brand-primary);color:#fff;padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:700;flex-shrink:0;font-family:var(--font-mono)}.select-display .select-name{color:var(--text-primary);font-size:.875rem;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-arrow{color:var(--text-muted);font-size:.625rem;margin-left:.5rem;transition:transform var(--transition-fast)}.select-display.active .dropdown-arrow{transform:rotate(180deg)}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999}.dropdown-panel{position:absolute;top:calc(100% + 4px);left:0;right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);z-index:1000;overflow:hidden;animation:scaleIn .15s ease-out}.dropdown-search{padding:.75rem;border-bottom:1px solid var(--border-color);background:var(--bg-input)}.dropdown-search input{width:100%;padding:.625rem .875rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.875rem;background:var(--bg-card);color:var(--text-primary);font-family:var(--font-sans)}.dropdown-search input:focus{outline:none;border-color:var(--brand-primary)}.dropdown-search input::placeholder{color:var(--text-muted)}.dropdown-options{max-height:280px;overflow-y:auto}.dropdown-option{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background var(--transition-fast);border-bottom:1px solid var(--border-color)}.dropdown-option:last-child{border-bottom:none}.dropdown-option:hover{background:#0ea5e914}.dropdown-option.selected{background:#0ea5e91f;border-left:3px solid var(--brand-primary)}.dropdown-option .option-code{background:var(--bg-card-hover);color:var(--text-secondary);padding:.15rem .5rem;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:600;flex-shrink:0;font-family:var(--font-mono)}.dropdown-option.selected .option-code{background:var(--brand-primary);color:#fff}.dropdown-option .option-name{flex:1;color:var(--text-primary);font-size:.875rem;font-weight:500}.dropdown-option .option-unit{color:var(--text-muted);font-size:.75rem;background:var(--bg-input);padding:.125rem .375rem;border-radius:var(--radius-sm)}.dropdown-empty{padding:1.5rem;text-align:center;color:var(--text-muted);font-size:.875rem}.project-schedule{padding:var(--spacing-md)}.schedule-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.schedule-header h2{font-size:1.5rem;color:var(--text-heading);margin:0;display:flex;align-items:center;gap:.5rem}.warning-box{background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-md);padding:1rem 1.25rem;margin-bottom:var(--spacing-lg);color:#f59e0b}.warning-box p{margin:0;color:var(--text-secondary);font-size:.875rem}.info-box{background:#3b82f61a;border:1px solid rgba(59,130,246,.3);border-radius:var(--radius-md);padding:1rem 1.25rem;margin-bottom:var(--spacing-lg);color:var(--brand-primary)}.add-task-form{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.add-task-form h3{font-size:1.125rem;color:var(--text-heading);margin:0 0 var(--spacing-md)}.add-task-form .form-row{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.add-task-form .form-group{flex:1;min-width:150px}.add-task-form .form-group label{display:block;font-size:.8125rem;color:var(--text-muted);margin-bottom:.375rem}.add-task-form .form-group input,.add-task-form .form-group select,.add-task-form .form-group textarea{width:100%;padding:.625rem .875rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9375rem}.add-task-form .form-group input:focus,.add-task-form .form-group select:focus,.add-task-form .form-group textarea:focus{outline:none;border-color:var(--brand-primary)}.add-task-form .form-actions{margin-top:var(--spacing-md)}.gantt-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden;margin-bottom:var(--spacing-lg)}.gantt-wrapper-outer{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.gantt-toolbar{display:flex;justify-content:flex-end;padding:.75rem 1rem;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.gantt-wrapper{overflow:auto;max-height:500px}.gantt-header{display:flex;position:sticky;top:0;z-index:10;background:var(--bg-card)}.gantt-task-list-header{min-width:200px;max-width:200px;padding:.5rem 1rem;background:var(--bg-secondary);border-right:2px solid var(--border-color);border-bottom:1px solid var(--border-color);font-weight:600;color:var(--text-heading);display:flex;align-items:flex-end}.gantt-timeline-header{position:relative;flex:1;min-height:60px}.gantt-timeline-row{display:flex;position:absolute;width:100%}.gantt-timeline-row.months-row{top:0;height:30px}.gantt-timeline-row.days-row{top:30px;height:30px;border-bottom:1px solid var(--border-color)}.gantt-timeline-cell{display:flex;align-items:center;justify-content:center;position:absolute;font-size:.75rem;color:var(--text-secondary);box-sizing:border-box;border-right:1px solid var(--border-light)}.gantt-timeline-cell.day-cell{font-size:.6875rem;color:var(--text-muted);background:var(--bg-secondary)}.gantt-timeline-cell.day-cell.weekend{background:#ef44441a;color:#ef4444}.gantt-body{display:flex;flex-direction:column}.gantt-row{display:flex;min-height:36px;border-bottom:1px solid var(--border-light)}.gantt-row:hover{background:var(--bg-hover)}.gantt-task-name{min-width:200px;max-width:200px;padding:.5rem .75rem;display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary);border-right:2px solid var(--border-color);cursor:pointer;transition:background var(--transition-fast)}.gantt-task-name:hover{background:var(--bg-hover)}.gantt-task-name .task-index{font-size:.6875rem;color:var(--text-muted);min-width:1.25rem}.gantt-task-name .task-label{font-size:.8125rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.gantt-task-name .milestone-icon{font-size:.75rem}.gantt-task-timeline{position:relative;flex:1;display:flex;align-items:center}.gantt-grid-line{position:absolute;top:0;bottom:0;border-right:1px solid var(--border-light)}.gantt-grid-line.weekend{background:#ef44440d}.gantt-task-bar{position:absolute;height:22px;border-radius:var(--radius-sm);cursor:pointer;z-index:5;overflow:hidden;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 3px #0003;transition:transform .15s ease,box-shadow .15s ease}.gantt-task-bar:hover{transform:scaleY(1.15);box-shadow:0 3px 8px #0000004d;z-index:10}.gantt-task-progress{position:absolute;top:0;left:0;bottom:0;background:#ffffff40}.gantt-task-bar-label{font-size:.625rem;color:#fff;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3);z-index:1}.gantt-empty{text-align:center;padding:3rem 2rem;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg)}.task-list{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-top:var(--spacing-lg)}.task-list h3{font-size:1.125rem;color:var(--text-heading);margin:0 0 var(--spacing-md)}.task-list .code{font-size:.75rem;color:var(--brand-primary-light);background:var(--bg-secondary);padding:.125rem .5rem;border-radius:var(--radius-sm);margin-right:.5rem}.priority-badge{display:inline-block;padding:.125rem .5rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:500}.priority-badge.high{background:#ef444433;color:#ef4444}.priority-badge.medium{background:#f59e0b33;color:#f59e0b}.priority-badge.low{background:#22c55e33;color:#22c55e}.progress-bar{display:flex;align-items:center;gap:.5rem;min-width:80px}.progress-fill{height:6px;background:var(--brand-primary);border-radius:var(--radius-full);flex:1}.progress-bar span{font-size:.75rem;color:var(--text-muted);min-width:2.5rem;text-align:right}.orientation-options{display:flex;gap:1.5rem;margin-top:1rem;justify-content:center}.orientation-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;cursor:pointer;padding:1rem;border-radius:var(--radius-md);border:2px solid var(--border-color);transition:all var(--transition-fast)}.orientation-option:hover{border-color:var(--brand-primary)}.orientation-option.selected{border-color:var(--brand-primary);background:#3498db1a}.orientation-preview{display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:1px solid var(--border-color);font-size:.75rem;color:var(--text-muted)}.orientation-preview.landscape{width:80px;height:56px}.orientation-preview.portrait{width:56px;height:80px}.pdf-export-modal{padding:1.5rem}.pdf-options{display:flex;flex-direction:column;gap:1rem}.pdf-option{display:flex;align-items:center;gap:.75rem;padding:1rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.pdf-option:hover{border-color:var(--brand-primary)}.pdf-option.selected{border-color:var(--brand-primary);background:#0ea5e914}.pdf-option input{display:none}.pdf-option-icon{font-size:1.5rem}.pdf-option-text{font-weight:600;color:var(--text-primary)}.covering-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.covering-select-group{display:flex;flex-direction:column}.space-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.75rem;margin-top:1rem;padding:1rem;background:#0ea5e914;border:1px solid rgba(14,165,233,.2);border-radius:var(--radius-md)}.space-summary .summary-item{display:flex;flex-direction:column;gap:.25rem;text-align:center}.space-summary .summary-label{font-size:.625rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.space-summary .summary-value{font-size:1rem;font-weight:700;color:var(--brand-primary-light)}.loading-text{text-align:center;padding:2rem;color:var(--text-muted)}.proposals-table-container,.spaces-table-container{overflow-x:auto}.proposal-no-cell{font-weight:700;color:var(--brand-primary);font-family:var(--font-mono)}.profit{color:var(--success);font-weight:600}.total{font-weight:700;color:var(--text-primary)}.action-buttons{display:flex;gap:.75rem;flex-wrap:wrap}.recent-proposals h3{font-size:.9375rem;color:var(--text-secondary);margin-bottom:1rem}.unit-prices-page{animation:fadeIn .3s ease-out}.unit-prices-toolbar{display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.unit-prices-filter{display:flex;flex-direction:column;gap:.5rem;flex:1;max-width:400px}.unit-prices-filter label{font-size:.875rem;font-weight:600;color:var(--text-secondary)}.unit-prices-table-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th{padding:1rem;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);background:var(--bg-input);border-bottom:1px solid var(--border-color);white-space:nowrap}.data-table td{padding:.875rem 1rem;border-bottom:1px solid var(--border-color);color:var(--text-primary);vertical-align:middle}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:#0ea5e90d}.data-table tbody tr:last-child td{border-bottom:none}.data-table .code-cell{font-family:var(--font-mono);font-weight:600;color:var(--brand-primary)}.data-table .section-cell{display:flex;flex-direction:column;gap:.25rem}.data-table .section-badge{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;color:var(--brand-secondary)}.data-table .section-name{font-size:.8125rem;color:var(--text-muted)}.data-table .name-cell{max-width:250px}.data-table .name-cell .name-link{color:var(--primary);cursor:pointer;transition:all .15s}.data-table .name-cell .name-link:hover{color:var(--primary-dark);text-decoration:underline}.data-table .unit-cell{font-family:var(--font-mono);color:var(--text-muted)}.data-table .price-cell{font-family:var(--font-mono);font-size:.8125rem}.data-table .price-cell.material{color:#f59e0b}.data-table .price-cell.labor{color:#3b82f6}.data-table .price-cell.machine{color:#8b5cf6}.data-table .price-cell.equipment{color:#10b981}.data-table .price-cell.total{color:var(--text-primary);font-weight:700}.data-table .actions-cell{display:flex;gap:.375rem;justify-content:center}.data-table .text-right{text-align:right}.accounts-page .stats-grid{margin-bottom:1.5rem}.card table{width:100%;border-collapse:collapse}.card table th{padding:1rem!important;text-align:left!important;background:var(--bg-input)!important;color:var(--text-secondary)!important;font-weight:600!important;font-size:.75rem!important;text-transform:uppercase!important;letter-spacing:.05em!important;border-bottom:1px solid var(--border-color)!important}.card table td{padding:.875rem 1rem!important;border-bottom:1px solid var(--border-color)!important;color:var(--text-primary)!important}.card table tbody tr:hover{background:#0ea5e90d!important}.card table tbody tr:last-child td{border-bottom:none!important}.catalogs-page{animation:fadeIn .3s ease-out}.catalog-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1rem;transition:all var(--transition-fast)}.catalog-card:hover{border-color:var(--border-color-strong)}.catalog-header{display:flex;align-items:center;gap:1rem;margin-bottom:.75rem}.catalog-icon{font-size:1.5rem}.catalog-title{flex:1;font-size:1.125rem;font-weight:700;color:var(--text-primary);margin:0}.catalog-type-badge{padding:.25rem .75rem;font-size:.75rem;font-weight:600;border-radius:var(--radius-full);text-transform:uppercase}.catalog-type-badge.material{background:#f59e0b26;color:#f59e0b}.catalog-type-badge.labor{background:#3b82f626;color:#3b82f6}.catalog-type-badge.machine{background:#8b5cf626;color:#8b5cf6}.catalog-type-badge.equipment{background:#10b98126;color:#10b981}.catalog-type-badge.transport{background:#0ea5e926;color:#0ea5e9}.catalog-info{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--border-color)}.catalog-count{font-size:.875rem;color:var(--text-muted)}.settings-page{animation:fadeIn .3s ease-out;max-width:800px}.settings-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem}.settings-section-title{display:flex;align-items:center;gap:.5rem;font-size:1.125rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.settings-section-desc{color:var(--text-muted);font-size:.875rem;margin:0 0 1.5rem}.settings-section-header{margin-bottom:1.5rem}.settings-section-header h2{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:700;color:var(--text-heading);margin:0 0 .5rem}.settings-section-header p{color:var(--text-muted);font-size:.875rem;margin:0 0 1rem}.settings-section-header .btn{margin-top:.5rem}.settings-form{display:flex;flex-direction:column;gap:1rem}.logo-upload-section{margin-bottom:1rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-light)}.logo-upload-section>label{display:block;margin-bottom:.75rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}.logo-upload-container{display:flex;align-items:flex-start;gap:1.5rem}.logo-preview{width:120px;height:120px;border:2px dashed var(--border-color);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);overflow:hidden;flex-shrink:0}.logo-preview img{max-width:100%;max-height:100%;object-fit:contain}.logo-placeholder{text-align:center;color:var(--text-muted)}.logo-placeholder span{font-size:2rem;display:block;margin-bottom:.25rem}.logo-placeholder p{font-size:.75rem;margin:0}.logo-actions{display:flex;flex-direction:column;gap:.5rem;align-items:flex-start}.logo-hint{font-size:.75rem;color:var(--text-muted);margin:.25rem 0 0}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-row .form-group{margin-bottom:0}.form-group.full-width{grid-column:span 2}.form-group label{display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500;color:var(--text-secondary)}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.625rem .75rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);font-size:.875rem;transition:var(--transition-fast)}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #3498db26}.form-group textarea{resize:vertical;min-height:80px}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.message{padding:.75rem 1rem;border-radius:var(--radius-md);font-size:.875rem;margin-bottom:.5rem}.message.success{background:#27ae6026;border:1px solid var(--success);color:var(--success)}.message.error{background:#e74c3c26;border:1px solid var(--danger);color:var(--danger)}.templates-list{display:flex;flex-direction:column;gap:.75rem}.template-card{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:var(--transition-fast)}.template-card:hover{border-color:var(--brand-primary);box-shadow:0 2px 8px #0000001a}.template-info h3{display:flex;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;color:var(--text-primary);margin:0 0 .25rem}.template-info p{font-size:.8125rem;color:var(--text-muted);margin:0}.template-actions{display:flex;gap:.5rem}.badge{display:inline-flex;align-items:center;padding:.125rem .5rem;font-size:.6875rem;font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.025em}.badge.default{background:linear-gradient(135deg,var(--brand-primary) 0%,var(--brand-primary-light) 100%);color:#fff}.btn-sm{padding:.375rem .75rem;font-size:.75rem}@media (max-width: 768px){.form-row{grid-template-columns:1fr}.form-group.full-width{grid-column:span 1}.template-card{flex-direction:column;align-items:flex-start;gap:1rem}.template-actions{width:100%;justify-content:flex-end}}.btn-info{background:linear-gradient(135deg,var(--info) 0%,#2563eb 100%);color:#fff;box-shadow:0 2px 8px #3b82f64d}.btn-info:hover:not(:disabled){box-shadow:0 4px 16px #3b82f666;transform:translateY(-1px)}@media (max-width: 768px){.unit-prices-toolbar{flex-direction:column;align-items:stretch}.unit-prices-filter{max-width:none}.data-table{font-size:.8125rem}.data-table th,.data-table td{padding:.75rem .5rem}.data-table .name-cell{max-width:150px}}.unit-price-detail-modal{max-width:900px;width:95%;max-height:90vh;display:flex;flex-direction:column}.unit-price-detail-modal .modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem;border-bottom:1px solid var(--border-color);background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-secondary) 100%)}.unit-price-detail-modal .modal-header h2{font-size:1.25rem;font-weight:700;color:var(--text-heading);margin:0 0 .25rem}.unit-price-detail-modal .unit-price-code{font-size:.875rem;color:var(--text-muted)}.unit-price-detail-modal .modal-close{background:none;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;padding:.25rem;line-height:1;transition:color var(--transition-fast)}.unit-price-detail-modal .modal-close:hover{color:var(--danger)}.unit-price-detail-modal .modal-body{flex:1;overflow-y:auto;padding:1.5rem}.cost-summary-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;margin-bottom:1.5rem}.cost-card{display:flex;align-items:center;gap:.75rem;padding:1rem;border-radius:var(--radius-md);background:var(--bg-secondary);border:1px solid var(--border-color)}.cost-card .cost-icon{font-size:1.5rem}.cost-card .cost-info{display:flex;flex-direction:column}.cost-card .cost-label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.025em}.cost-card .cost-value{font-size:1rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary)}.cost-card.labor{border-left:3px solid #3b82f6}.cost-card.material{border-left:3px solid #f59e0b}.cost-card.machine{border-left:3px solid #10b981}.cost-card.equipment{border-left:3px solid #8b5cf6}.cost-card.total{border-left:3px solid var(--success);background:linear-gradient(135deg,rgba(39,174,96,.1) 0%,var(--bg-secondary) 100%)}.cost-card.total .cost-value{color:var(--success)}.add-item-section{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem;margin-bottom:1.5rem}.add-item-section h3{font-size:1rem;font-weight:600;color:var(--text-heading);margin:0 0 1rem}.type-buttons{display:flex;gap:.5rem}.type-btn{padding:.5rem 1rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.8125rem;cursor:pointer;transition:all var(--transition-fast)}.type-btn:hover{border-color:var(--brand-primary);color:var(--brand-primary)}.type-btn.active{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.add-item-section .form-row{display:flex;align-items:flex-end;gap:1rem;margin-bottom:.75rem}.add-item-section .form-group{margin-bottom:0}.add-item-section .form-group.flex-3{flex:3}.add-item-section .form-group label{display:block;font-size:.75rem;font-weight:500;color:var(--text-secondary);margin-bottom:.375rem}.add-item-section .form-group input,.add-item-section .form-group select{width:100%;padding:.625rem .75rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.875rem}.add-item-section .form-group input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #3498db26}.add-item-section .form-actions-inline{display:flex;align-items:flex-end}.add-item-section .searchable-select{position:relative}.add-item-section .dropdown-list{position:absolute;top:100%;left:0;right:0;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);max-height:200px;overflow-y:auto;z-index:100}.add-item-section .dropdown-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;cursor:pointer;border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}.add-item-section .dropdown-item:last-child{border-bottom:none}.add-item-section .dropdown-item:hover,.add-item-section .dropdown-item.selected{background:var(--bg-hover)}.add-item-section .dropdown-item .item-code{font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:var(--brand-primary);min-width:60px}.add-item-section .dropdown-item .item-name{flex:1;font-size:.8125rem;color:var(--text-primary)}.add-item-section .dropdown-item .item-price{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}.add-item-section .error-message{margin-top:.5rem;padding:.5rem .75rem;background:#e74c3c1a;border:1px solid var(--danger);border-radius:var(--radius-sm);color:var(--danger);font-size:.8125rem}.items-list{display:flex;flex-direction:column;gap:1.5rem}.item-group h4{font-size:.9375rem;font-weight:600;color:var(--text-heading);margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.item-group .data-table{font-size:.8125rem}.item-group .data-table th{padding:.625rem .75rem;font-size:.6875rem}.item-group .data-table td{padding:.5rem .75rem}.item-group .data-table td.code{font-family:var(--font-mono);color:var(--brand-primary);font-weight:600}.item-group .data-table td.price{font-family:var(--font-mono);text-align:right}.item-group .data-table .quantity-input{width:70px;padding:.375rem .5rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.8125rem;text-align:center}.item-group .data-table .quantity-input:focus{outline:none;border-color:var(--brand-primary)}.items-list .empty-state{text-align:center;padding:2rem;color:var(--text-muted)}.items-list .empty-state p{margin:.25rem 0}.unit-price-detail-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.unit-price-detail-modal .footer-total{display:flex;align-items:center;gap:.75rem}.unit-price-detail-modal .footer-total .label{font-size:.875rem;color:var(--text-secondary)}.unit-price-detail-modal .footer-total .value{font-size:1.125rem;font-weight:700;font-family:var(--font-mono);color:var(--success)}@media (max-width: 768px){.cost-summary-cards{grid-template-columns:repeat(2,1fr)}.add-item-section .form-row{flex-direction:column;align-items:stretch}.add-item-section .form-group.flex-3{flex:none}.type-buttons{flex-wrap:wrap}.unit-price-detail-modal .modal-footer{flex-direction:column;gap:1rem}}.proposal-detail-modal{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;margin:0!important;border-radius:0!important;display:flex;flex-direction:column;overflow:hidden}.proposal-detail-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;border-bottom:1px solid var(--border-color);background:var(--bg-card);flex-shrink:0}.proposal-detail-modal .modal-body{padding:1.5rem 2rem;overflow-y:auto;overflow-x:hidden;flex:1 1 0%!important;min-height:0!important;max-height:none!important;background:var(--bg-secondary)}.proposal-detail-modal .print-content{min-height:auto}.proposal-detail-modal .modal-header h2{font-size:1.75rem;color:var(--text-heading);margin:0;display:flex;align-items:center;gap:.5rem}.proposal-detail-modal .proposal-no{font-size:1.125rem;color:var(--brand-primary-light);font-weight:600;background:#3498db1a;padding:.25rem .75rem;border-radius:var(--radius-sm);margin-left:1rem}.proposal-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-color)}@media (max-width: 900px){.proposal-summary{grid-template-columns:repeat(2,1fr)}}.proposal-summary .summary-item{display:flex;flex-direction:column;gap:.25rem}.proposal-summary .summary-item .label{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.proposal-summary .summary-item .value{font-size:1rem;color:var(--text-primary);font-weight:500}.proposal-summary .summary-item.total .value{font-size:1.375rem;font-weight:700;color:var(--success);font-family:var(--font-mono)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:.8125rem;font-weight:600}.status-badge.onaylandı,.status-badge.approved{background:var(--success);color:#fff}.status-badge.reddedildi,.status-badge.rejected{background:var(--danger);color:#fff}.status-badge.taslak,.status-badge.draft{background:var(--text-muted);color:#fff}.status-badge.gönderildi,.status-badge.sent{background:var(--brand-primary);color:#fff}.items-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.items-header h3{font-size:1.125rem;color:var(--text-heading);margin:0;display:flex;align-items:center;gap:.5rem}.add-item-form{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg)}.add-item-form .form-row{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.add-item-form .form-row:last-child{margin-bottom:0}.add-item-form .form-group{flex:1;min-width:150px}.add-item-form .form-group.flex-2{flex:2}.add-item-form .form-group.flex-3{flex:3}.add-item-form .form-group label{display:block;font-size:.8125rem;color:var(--text-muted);margin-bottom:.375rem}.add-item-form .form-group input,.add-item-form .form-group select{width:100%;padding:.625rem .875rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.9375rem}.add-item-form .form-group input:focus,.add-item-form .form-group select:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #3498db1a}.add-item-form .form-actions-inline{display:flex;align-items:flex-end}.add-item-form .error-message{color:var(--danger);font-size:.875rem;margin-top:var(--spacing-sm)}.selected-unit-price-info{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-md)}.price-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.price-info-item{display:flex;flex-direction:column;gap:2px}.price-info-item.total{background:#fffc;padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px dashed var(--border-color)}.price-info-item .price-label{font-size:.75rem;color:var(--text-muted);font-weight:500}.price-info-item .price-value{font-size:1rem;font-weight:600}.price-info-item .price-value.cost{color:#6366f1}.price-info-item .price-value.sale{color:#10b981}.price-info-item .price-note{font-size:.7rem;color:var(--text-muted);font-style:italic}.section-group{margin-bottom:2rem;background:var(--bg-card);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.section-group:last-child{margin-bottom:0}.section-title{font-size:1.125rem;color:var(--text-heading);margin:0;padding:1rem 1.25rem;background:linear-gradient(135deg,var(--brand-primary),var(--brand-primary-dark));color:#fff;display:flex;align-items:center;gap:.5rem}.proposal-detail-modal .data-table{width:100%;border-collapse:collapse;font-size:.9rem;background:var(--bg-card);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.proposal-detail-modal .data-table th,.proposal-detail-modal .data-table td{padding:1rem 1.25rem;text-align:left;border-bottom:1px solid var(--border-light)}.proposal-detail-modal .data-table th{background:linear-gradient(135deg,var(--bg-secondary),var(--bg-card));color:var(--text-muted);font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;position:sticky;top:0}.proposal-detail-modal .data-table tbody tr:hover{background:#3498db0d}.proposal-detail-modal .data-table td:nth-child(3),.proposal-detail-modal .data-table th:nth-child(3){text-align:center}.proposal-detail-modal .data-table td:nth-child(4),.proposal-detail-modal .data-table th:nth-child(4){text-align:center}.proposal-detail-modal .data-table td:nth-child(5),.proposal-detail-modal .data-table th:nth-child(5){text-align:right}.proposal-detail-modal .data-table td:nth-child(6),.proposal-detail-modal .data-table th:nth-child(6){text-align:right}.proposal-detail-modal .data-table td:nth-child(7),.proposal-detail-modal .data-table th:nth-child(7){text-align:center;width:80px}.proposal-detail-modal .data-table td.code{font-weight:600;color:var(--brand-primary-light);white-space:nowrap}.proposal-detail-modal .data-table td.price{font-family:var(--font-mono);text-align:right;white-space:nowrap}.proposal-detail-modal .data-table td.price.total{font-weight:600;color:var(--success)}.proposal-detail-modal .data-table .quantity-input{width:80px;padding:.375rem .5rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);color:var(--text-primary);text-align:center}.proposal-detail-modal .modal-footer{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;border-top:1px solid var(--border-color);background:var(--bg-card);flex-shrink:0}.proposal-detail-modal .footer-total{display:flex;align-items:center;gap:var(--spacing-sm)}.proposal-detail-modal .footer-total .label{font-size:1rem;color:var(--text-muted)}.proposal-detail-modal .footer-total .value{font-size:1.5rem;font-weight:700;color:var(--success);font-family:var(--font-mono)}.proposal-no-badge{font-size:1rem;color:var(--brand-primary);font-weight:600;background:#3498db1a;padding:.375rem 1rem;border-radius:var(--radius-md);border:1px solid rgba(52,152,219,.2)}.proposal-summary-header{background:var(--bg-card);padding:1.25rem 1.5rem;border-radius:var(--radius-md);margin-bottom:1.5rem;box-shadow:var(--shadow-sm)}.proposal-summary-header .summary-row{display:flex;flex-wrap:wrap;gap:2rem}.proposal-summary-header .summary-item{display:flex;align-items:center;gap:.5rem}.proposal-summary-header .summary-item .label{color:var(--text-muted);font-size:.875rem}.proposal-summary-header .summary-item .value{color:var(--text-primary);font-weight:600}.items-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.items-toolbar h3{margin:0;font-size:1.125rem;color:var(--text-heading)}.table-header-row{display:flex;background:linear-gradient(135deg,#2c3e50,#34495e);color:#fff;padding:.75rem 1rem;border-radius:var(--radius-md) var(--radius-md) 0 0;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.table-header-row .header-section-info{flex:1}.table-header-row .header-totals{display:flex;gap:.5rem}.table-header-row .header-cell{width:90px;text-align:right}.items-hierarchy{background:var(--bg-card);border-radius:0 0 var(--radius-md) var(--radius-md);overflow:visible;box-shadow:var(--shadow-sm);flex-shrink:0}.section-hierarchy{border-bottom:1px solid var(--border-light)}.section-hierarchy:last-child{border-bottom:none}.section-header{display:flex;justify-content:space-between;align-items:center;padding:.875rem 1rem;cursor:pointer;transition:background .2s ease}.section-header:hover{background:#3498db0d}.section-header.level-0{background:linear-gradient(135deg,#3498db1a,#3498db0d);font-weight:600}.section-header.level-1{background:#2ecc710d;padding-left:2rem}.section-header.level-2{background:#f1c40f0d;padding-left:3rem}.section-title-row{display:flex;align-items:center;gap:.75rem}.section-title-row .expand-icon{color:var(--text-muted);font-size:.75rem;width:16px}.section-title-row .section-code{font-family:var(--font-mono);font-size:.875rem;color:var(--brand-primary);font-weight:600;background:#3498db1a;padding:.125rem .5rem;border-radius:var(--radius-sm)}.section-title-row .section-name{color:var(--text-primary);font-size:.9375rem}.section-totals{display:flex;gap:.5rem}.section-totals .total-cell{width:90px;text-align:right;font-family:var(--font-mono);font-size:.8125rem;padding:.25rem .5rem;border-radius:var(--radius-sm)}.section-totals .total-cell.material{color:#8e44ad}.section-totals .total-cell.labor{color:#e67e22}.section-totals .total-cell.machine{color:#16a085}.section-totals .total-cell.cost{color:var(--text-primary);font-weight:500}.section-totals .total-cell.total{color:var(--success);font-weight:600;background:#27ae601a}.section-items{padding:.5rem 1rem 1rem 2.5rem}.proposal-items-table{width:100%;border-collapse:collapse;font-size:.8125rem;background:#fff;border-radius:var(--radius-sm);overflow:hidden;box-shadow:inset 0 0 0 1px var(--border-light)}.proposal-items-table th,.proposal-items-table td{padding:.625rem .75rem;text-align:left;border-bottom:1px solid var(--border-light)}.proposal-items-table th{background:var(--bg-secondary);color:var(--text-muted);font-weight:600;font-size:.6875rem;text-transform:uppercase;letter-spacing:.3px}.proposal-items-table tbody tr:hover{background:#3498db08}.proposal-items-table tbody tr:last-child td{border-bottom:none}.proposal-items-table td.code{font-family:var(--font-mono);font-weight:600;color:var(--brand-primary)}.proposal-items-table td.description{max-width:250px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.proposal-items-table td.unit,.proposal-items-table td.quantity{text-align:center}.proposal-items-table td.price{text-align:right;font-family:var(--font-mono);font-size:.75rem}.proposal-items-table td.price.material{color:#8e44ad}.proposal-items-table td.price.labor{color:#e67e22}.proposal-items-table td.price.machine{color:#16a085}.proposal-items-table td.price.unit-price{color:var(--text-primary);font-weight:500}.proposal-items-table td.price.total{color:var(--success);font-weight:600}.proposal-items-table td.actions{text-align:center}.proposal-items-table .qty-input{width:60px;padding:.25rem .375rem;text-align:center;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:.8125rem}.proposal-items-table .btn-icon{padding:.25rem .375rem;background:transparent;border:none;cursor:pointer;font-size:.875rem;opacity:.6;transition:opacity .2s}.proposal-items-table .btn-icon:hover{opacity:1}.proposal-items-table .btn-icon.danger:hover{color:var(--danger)}.grand-totals{background:linear-gradient(135deg,#2c3e50,#34495e);padding:1.5rem;margin-top:1.5rem;border-radius:var(--radius-md);color:#fff}.grand-totals .totals-row{display:flex;flex-direction:column;gap:1rem}.grand-totals .totals-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;opacity:.8}.grand-totals .totals-values{display:flex;flex-wrap:wrap;gap:1rem}.grand-totals .total-box{background:#ffffff1a;padding:.875rem 1.25rem;border-radius:var(--radius-md);text-align:center;min-width:120px}.grand-totals .total-box .label{display:block;font-size:.6875rem;text-transform:uppercase;opacity:.8;margin-bottom:.375rem}.grand-totals .total-box .value{display:block;font-size:1rem;font-weight:600;font-family:var(--font-mono)}.grand-totals .total-box.highlight{background:#3498db4d}.grand-totals .total-box.profit{background:#f1c40f4d}.grand-totals .total-box.grand{background:linear-gradient(135deg,#27ae60,#2ecc71);box-shadow:0 4px 15px #27ae604d}.grand-totals .total-box.grand .value{font-size:1.25rem}.proposal-totals-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 2rem;background:linear-gradient(135deg,#2c3e50,#34495e);border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.proposal-totals-footer .totals-grid{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center}.proposal-totals-footer .total-item{display:flex;flex-direction:column;gap:.25rem}.proposal-totals-footer .total-item .label{font-size:.65rem;color:#ffffffb3;text-transform:uppercase;letter-spacing:.5px}.proposal-totals-footer .total-item .value{font-size:.9rem;font-weight:600;font-family:var(--font-mono);color:#fff}.proposal-totals-footer .total-item .value.material{color:#9b59b6}.proposal-totals-footer .total-item .value.labor{color:#e67e22}.proposal-totals-footer .total-item .value.machine{color:#1abc9c}.proposal-totals-footer .total-item .value.cost{color:#3498db}.proposal-totals-footer .total-item .value.profit{color:#f1c40f}.proposal-totals-footer .total-item.grand{padding:.5rem 1rem;background:linear-gradient(135deg,#27ae60,#2ecc71);border-radius:var(--radius-md);margin-left:1rem}.proposal-totals-footer .total-item.grand .value{font-size:1.1rem;color:#fff}.proposal-totals-footer .btn{flex-shrink:0}.proposal-edit-modal{width:95vw!important;max-width:950px!important;height:90vh!important;max-height:90vh!important;margin:auto!important;border-radius:var(--radius-lg)!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;position:fixed!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important}.proposal-edit-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid var(--border-color);background:linear-gradient(135deg,var(--bg-card) 0%,var(--bg-secondary) 100%);flex-shrink:0}.proposal-edit-modal .modal-header h2{font-size:1.5rem;font-weight:700;color:var(--text-heading);margin:0;display:flex;align-items:center;gap:.75rem}.proposal-edit-modal .proposal-no-badge{font-size:1rem;color:var(--brand-primary-light);font-weight:600;background:#3498db26;padding:.375rem 1rem;border-radius:var(--radius-full);border:1px solid rgba(52,152,219,.3)}.proposal-edit-modal .modal-form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.proposal-edit-modal .modal-body{padding:1.5rem 2rem;overflow-y:auto!important;overflow-x:hidden!important;flex:1 1 auto!important;min-height:0!important;background:var(--bg-secondary)}.proposal-edit-modal .modal-footer{display:flex;justify-content:flex-end;gap:1rem;padding:1.25rem 2rem;border-top:1px solid var(--border-color);background:var(--bg-card);flex-shrink:0}.proposal-edit-modal .date-cards-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1rem}.proposal-edit-modal .date-card{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;transition:all var(--transition-fast)}.proposal-edit-modal .date-card:hover{border-color:var(--brand-primary);box-shadow:0 4px 20px #3498db26}.proposal-edit-modal .date-card:focus-within{border-color:var(--brand-primary);box-shadow:0 0 0 3px #3498db33}.proposal-edit-modal .date-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.proposal-edit-modal .date-card-icon{font-size:2rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--brand-primary),var(--brand-primary-light));border-radius:var(--radius-md)}.proposal-edit-modal .date-card-label{font-size:.875rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.proposal-edit-modal .date-card input[type=date]{width:100%;padding:.875rem 1rem;font-size:1.125rem;font-weight:600;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer}.proposal-edit-modal .date-card input[type=date]:focus{outline:none;border-color:var(--brand-primary)}.proposal-edit-modal .date-preview{display:block;margin-top:.75rem;font-size:1rem;color:var(--brand-primary-light);font-weight:500}.proposal-edit-modal .status-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem;margin-bottom:1rem}.proposal-edit-modal .section-title{font-size:1rem;font-weight:700;color:var(--text-heading);margin:0 0 1.25rem;display:flex;align-items:center;gap:.5rem}.proposal-edit-modal .status-options{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.proposal-edit-modal .status-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:.75rem .5rem;background:var(--bg-input);border:2px solid var(--border-color);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.proposal-edit-modal .status-option:hover{border-color:var(--text-muted);transform:translateY(-2px)}.proposal-edit-modal .status-option.selected{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.proposal-edit-modal .status-option .status-icon{font-size:1.5rem;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--bg-secondary);transition:all var(--transition-fast)}.proposal-edit-modal .status-option.selected .status-icon{background:currentColor;color:#fff}.proposal-edit-modal .status-option .status-label{font-size:.875rem;font-weight:600;color:var(--text-primary)}.proposal-edit-modal .status-option.selected .status-label{color:inherit}.proposal-edit-modal .status-option.status-taslak.selected{border-color:#6b7280;background:#6b72801a;color:#6b7280}.proposal-edit-modal .status-option.status-taslak.selected .status-icon{background:#6b7280}.proposal-edit-modal .status-option.status-gönderildi.selected{border-color:#3b82f6;background:#3b82f61a;color:#3b82f6}.proposal-edit-modal .status-option.status-gönderildi.selected .status-icon{background:#3b82f6}.proposal-edit-modal .status-option.status-onaylandı.selected{border-color:#22c55e;background:#22c55e1a;color:#22c55e}.proposal-edit-modal .status-option.status-onaylandı.selected .status-icon{background:#22c55e}.proposal-edit-modal .status-option.status-reddedildi.selected{border-color:#ef4444;background:#ef44441a;color:#ef4444}.proposal-edit-modal .status-option.status-reddedildi.selected .status-icon{background:#ef4444}.proposal-edit-modal .notes-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:1rem}.proposal-edit-modal .notes-section textarea{width:100%;min-height:80px;padding:1rem;font-size:1rem;background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);resize:vertical;font-family:var(--font-sans);line-height:1.6}.proposal-edit-modal .notes-section textarea:focus{outline:none;border-color:var(--brand-primary)}.proposal-edit-modal .notes-section textarea::placeholder{color:var(--text-muted)}@media (max-width: 768px){.proposal-edit-modal{width:95vw!important;margin:1rem auto!important}.proposal-edit-modal .date-cards-grid{grid-template-columns:1fr}.proposal-edit-modal .status-options{grid-template-columns:repeat(2,1fr)}.proposal-edit-modal .modal-body{padding:1.25rem}}.project-schedule-tab{padding:var(--spacing-md)}.project-schedule-tab h2{font-size:1.5rem;color:var(--text-heading);margin:0 0 var(--spacing-lg);display:flex;align-items:center;gap:.5rem}.schedule-actions{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.gantt-wrapper{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:hidden}.gantt-timeline{display:flex;flex-direction:column;min-width:100%}.gantt-timeline-header{display:flex;border-bottom:1px solid var(--border-color);position:sticky;top:0;z-index:10;background:var(--bg-secondary)}.gantt-timeline-row{display:flex;position:relative}.gantt-timeline-row.months-row{background:var(--bg-card)}.gantt-timeline-row.days-row{background:var(--bg-secondary);font-size:.75rem}.gantt-timeline-cell{padding:.5rem .25rem;text-align:center;color:var(--text-secondary);font-size:.8125rem;border-right:1px solid var(--border-light);min-width:30px}.gantt-timeline-cell.month-cell{font-weight:600;color:var(--text-heading);background:var(--bg-card);border-bottom:1px solid var(--border-color)}.gantt-timeline-cell.day-cell{font-size:.6875rem;padding:.25rem;color:var(--text-muted)}.gantt-timeline-cell.day-cell.weekend{background:#ef44441a;color:var(--danger)}.gantt-timeline-cell.day-cell.today{background:#3498db33;color:var(--brand-primary);font-weight:600}.gantt-tasks{display:flex;flex-direction:column}.gantt-task-row{display:flex;align-items:center;border-bottom:1px solid var(--border-light);min-height:40px}.gantt-task-name{min-width:200px;max-width:200px;padding:.5rem 1rem;font-size:.875rem;color:var(--text-primary);background:var(--bg-secondary);border-right:1px solid var(--border-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;position:sticky;left:0;z-index:5}.gantt-task-bar-container{flex:1;position:relative;height:100%;display:flex;align-items:center}.gantt-task-bar{height:24px;border-radius:var(--radius-sm);position:absolute;cursor:pointer;transition:transform .15s ease;display:flex;align-items:center;padding:0 .5rem;font-size:.75rem;color:#fff;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gantt-task-bar:hover{transform:scaleY(1.1);z-index:10}.gantt-task-bar.milestone{width:20px!important;height:20px;border-radius:50%;transform:rotate(45deg)}.gantt-task-bar.color-blue{background:linear-gradient(135deg,#3b82f6,#60a5fa)}.gantt-task-bar.color-green{background:linear-gradient(135deg,#22c55e,#4ade80)}.gantt-task-bar.color-yellow{background:linear-gradient(135deg,#eab308,#facc15)}.gantt-task-bar.color-red{background:linear-gradient(135deg,#ef4444,#f87171)}.gantt-task-bar.color-purple{background:linear-gradient(135deg,#8b5cf6,#a78bfa)}.gantt-task-bar.color-orange{background:linear-gradient(135deg,#f97316,#fb923c)}.gantt-task-bar.color-teal{background:linear-gradient(135deg,#14b8a6,#2dd4bf)}.gantt-empty{text-align:center;padding:3rem 2rem;color:var(--text-muted)}.gantt-empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}@media (max-width: 768px){.gantt-task-name{min-width:120px;max-width:120px;font-size:.75rem}.gantt-timeline-cell{min-width:24px}.schedule-actions{flex-direction:column}}.unit-price-detail-page{padding:var(--spacing-md)}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-color)}.detail-header-left{display:flex;align-items:center;gap:var(--spacing-md)}.btn-back{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);padding:.5rem}.btn-back:hover{color:var(--primary)}.detail-title h1{font-size:1.125rem;font-weight:600;margin:0;color:var(--text-primary)}.detail-subtitle{font-size:var(--text-sm);color:var(--text-muted)}.detail-header-right{display:flex;gap:var(--spacing-xs)}.toast-success,.toast-error{padding:.5rem 1rem;border-radius:var(--radius-md);margin-bottom:var(--spacing-sm);font-size:var(--text-sm);display:flex;align-items:center;justify-content:space-between}.toast-success{background:#d1fae5;color:#065f46}.toast-error{background:#fee2e2;color:#991b1b}.toast-error button{background:none;border:none;color:inherit;cursor:pointer;font-size:1rem}.edit-panel{background:#fefce8;border:1px solid #fef08a;border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.edit-row{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-sm)}.edit-field{flex:1}.edit-field.small{flex:0 0 100px}.edit-field label{display:block;font-size:var(--text-xs);color:var(--text-muted);margin-bottom:.25rem}.edit-field input,.edit-field textarea{width:100%;padding:.5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm)}.cost-bar{display:flex;gap:var(--spacing-sm);background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-sm) var(--spacing-md);margin-bottom:var(--spacing-md);flex-wrap:wrap}.cost-item{display:flex;align-items:center;gap:.5rem;padding:.25rem .75rem;background:var(--bg-secondary);border-radius:var(--radius-sm);font-size:var(--text-sm)}.cost-item .cost-label{color:var(--text-muted)}.cost-item .cost-amount{font-weight:600;color:var(--text-primary)}.cost-item.total{background:var(--primary);color:#fff}.cost-item.total .cost-label,.cost-item.total .cost-amount{color:#fff}.add-item-panel{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.add-item-row{display:flex;gap:var(--spacing-md);align-items:flex-end;flex-wrap:wrap}.add-field{display:flex;flex-direction:column;gap:4px;min-width:120px}.add-field label{font-size:var(--text-xs);color:var(--text-muted);font-weight:500}.add-field.flex-2{flex:2;min-width:200px}.add-field.small{min-width:80px;max-width:100px}.add-field.btn-field{min-width:auto}.add-field .form-select,.add-field .form-input{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);background:#fff}.add-field .form-select:disabled{background:var(--bg-secondary);color:var(--text-muted)}.add-field .form-select:focus,.add-field .form-input:focus{border-color:var(--primary);outline:none}.add-row{display:flex;align-items:center;gap:var(--spacing-sm);background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:var(--spacing-sm);margin-bottom:var(--spacing-md)}.add-type-select{display:flex;gap:4px}.type-pill{width:36px;height:36px;border:1px solid var(--border-color);border-radius:var(--radius-sm);background:#fff;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .15s}.type-pill:hover{border-color:var(--primary)}.type-pill.active{background:var(--primary);border-color:var(--primary)}.add-search{flex:1;position:relative}.add-search input{width:100%;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm)}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);max-height:200px;overflow-y:auto;z-index:100;margin-top:2px}.search-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;cursor:pointer;border-bottom:1px solid var(--border-light);font-size:var(--text-sm)}.search-item:hover{background:var(--bg-secondary)}.si-code{font-weight:600;color:var(--primary);min-width:60px}.si-name{flex:1;color:var(--text-primary)}.si-price{color:var(--text-muted)}.add-qty{width:80px;padding:.5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);text-align:center}.items-table-container{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.empty-items{padding:3rem;text-align:center;color:var(--text-muted)}.items-table th{background:var(--bg-secondary);padding:.75rem;text-align:left;font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;border-bottom:1px solid var(--border-color)}.items-table td{padding:.75rem;border-bottom:1px solid var(--border-light);font-size:var(--text-sm);vertical-align:middle}.items-table tbody tr:hover{background:var(--bg-secondary)}.items-table .type-icon{font-size:.65rem;text-align:center;font-weight:700;color:#fff;background:#374151;padding:3px 6px;border-radius:3px;display:inline-block;min-width:32px;letter-spacing:.5px}.items-table .code-cell{font-weight:500;color:var(--primary)}.items-table .text-right{text-align:right}.items-table .total-cell{font-weight:600}.qty-input{width:70px;padding:.375rem .5rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm);text-align:center}.qty-input:focus{border-color:var(--primary);outline:none}.btn-delete{background:none;border:none;cursor:pointer;font-size:.875rem;opacity:.6;transition:opacity .15s}.btn-delete:hover{opacity:1}.items-table tfoot td{background:var(--bg-secondary);font-size:var(--text-sm);border-top:2px solid var(--border-color)}.items-table tfoot tr:first-child td{border-top:2px solid var(--border-color)}.items-table tfoot tr:not(:first-child) td{border-top:1px solid var(--border-light)}.items-table .profit-row td{background:#fffbeb;font-size:var(--text-sm)}.items-table .grand-total-row td{background:#dcfce7;font-size:var(--text-base)}.items-table .grand-total-row strong{color:#15803d;font-size:1rem}.percent-input-wrap{display:inline-flex;align-items:center;gap:4px;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:2px 6px}.percent-input-wrap span{color:var(--text-muted);font-size:var(--text-xs)}.percent-input{width:50px;border:none;text-align:right;font-size:var(--text-sm);padding:2px;background:transparent}.percent-input:focus{outline:none}.calc-note{font-size:var(--text-xs);color:var(--text-muted);font-weight:400}.technical-specs-container{background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);margin-top:var(--spacing-lg);overflow:hidden}.specs-header{background:#f0f9ff;border-bottom:1px solid #bae6fd;padding:var(--spacing-sm) var(--spacing-md)}.specs-header h3{margin:0;font-size:var(--text-base);font-weight:600;color:#0369a1}.specs-content{padding:var(--spacing-md)}.specs-empty{color:var(--text-muted);font-style:italic;text-align:center;padding:var(--spacing-md)}.specs-list{margin:0 0 var(--spacing-md) 0;padding-left:0;list-style:none;counter-reset:spec-counter}.spec-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-light);counter-increment:spec-counter}.spec-item:before{content:counter(spec-counter) ".";font-weight:600;color:var(--primary-color);min-width:1.5rem;flex-shrink:0}.spec-item:last-child{border-bottom:none}.spec-text{flex:1;line-height:1.5}.btn-delete-spec{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:1.25rem;line-height:1;padding:0;opacity:.5;transition:opacity .15s}.btn-delete-spec:hover{opacity:1;color:var(--danger)}.add-spec-row{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-sm)}.spec-input{flex:1;padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:var(--radius-sm);font-size:var(--text-sm)}.spec-input:focus{border-color:var(--primary);outline:none}.print-only{display:none!important}@media print{*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;box-shadow:none!important;margin:0!important}html,body{background:#fff!important;background-color:#fff!important;font-size:8pt!important;margin:0!important;padding:0!important;width:100%!important;height:auto!important;overflow:visible!important;line-height:1.2!important}.app-layout,.main-content,.dashboard-page,.unit-price-detail-page{background:#fff!important;background-color:#fff!important}.sidebar,.app-sidebar,aside,.no-print,.detail-header,.cost-bar,.add-item-panel,.btn-delete,.add-spec-row,.edit-panel{display:none!important}.print-only{display:block!important}.main-content{padding:0!important;margin:0!important;width:100%!important;max-width:100%!important;position:absolute!important;left:0!important;top:0!important}.unit-price-detail-page{margin:0!important;padding:8mm 10mm!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}@page{size:A4;margin:5mm}.print-header{display:flex!important;justify-content:space-between;align-items:flex-start;border-bottom:2px solid #1a365d;padding-bottom:6px!important;margin-bottom:8px!important}.print-company-info{display:flex;align-items:center;gap:10px}.print-logo{max-height:35px!important;max-width:90px!important;object-fit:contain}.print-company-details h2{margin:0 0 2px!important;font-size:11pt!important;font-weight:700;color:#1a365d}.print-company-details p{margin:0!important;font-size:7pt!important;color:#374151;line-height:1.2!important}.print-company-details .tax-info{font-size:6pt!important;color:#6b7280;margin-top:1px!important}.print-doc-title{text-align:right}.print-doc-title h1{margin:0!important;font-size:10pt!important;font-weight:700;color:#1a365d;text-transform:uppercase;letter-spacing:.5px}.print-date{font-size:7pt!important;color:#6b7280;margin-top:2px!important}.print-poz-info{margin-bottom:6px!important;padding:4px 8px!important;background:#f8fafc!important;border:1px solid #e2e8f0;border-radius:2px}.print-info-table{width:100%;border-collapse:collapse;font-size:7pt!important}.print-info-table td{padding:1px 10px 1px 0!important;border:none;vertical-align:top}.print-info-table td:first-child{color:#4b5563;font-weight:600;width:50px!important}.print-info-table td:last-child{color:#111827}.items-table-container{border:none!important;box-shadow:none!important;margin:0!important;border-radius:0!important;overflow:visible!important}.items-table{font-size:7pt!important;border-collapse:collapse;width:100%!important;border:1px solid #374151!important;table-layout:auto!important}.items-table th,.items-table td{padding:2px 4px!important;border:1px solid #9ca3af!important;line-height:1.2!important}.items-table thead th{background:#1e40af!important;color:#fff!important;font-size:6pt!important;font-weight:600!important;text-transform:uppercase!important;letter-spacing:.2px!important;padding:3px 4px!important;text-align:center!important;white-space:nowrap!important}.items-table thead th:last-child,.items-table tbody td:last-child{display:none!important}.items-table tfoot td:last-child{display:none!important}.items-table tbody td:nth-child(5){text-align:center!important}.items-table tbody td:nth-child(6),.items-table tbody td:nth-child(7){text-align:right!important}.items-table tbody tr:nth-child(2n){background:#f9fafb!important}.items-table .type-icon{font-size:5pt!important;padding:1px 2px!important;min-width:16px!important;text-align:center!important}.items-table .qty-input{border:none!important;background:transparent!important;text-align:center;width:auto!important;padding:0!important;font-weight:600!important;font-size:7pt!important}.items-table .btn-delete{display:none!important}.items-table tfoot td{font-size:7pt!important;background:#f3f4f6!important;border-top:1px solid #374151!important;padding:2px 4px!important}.items-table .profit-row td{background:#fef3c7!important}.items-table .grand-total-row td{background:#d1fae5!important;font-weight:700!important;font-size:8pt!important;border-top:1px solid #059669!important}.percent-input-wrap{border:none!important;background:transparent!important;padding:0!important}.percent-input{width:auto!important;font-size:7pt!important}.technical-specs-container{page-break-inside:avoid;border:1px solid #1e40af!important;margin-top:8px!important;border-radius:2px!important;overflow:hidden}.specs-header{background:#1e40af!important;padding:3px 8px!important}.specs-header h3{font-size:7pt!important;margin:0!important;color:#fff!important;font-weight:600!important}.specs-content{padding:4px 8px!important;background:#fff!important}.specs-list{margin:0!important;font-size:7pt!important;padding-left:0!important;line-height:1.3!important}.spec-item{padding:2px 0!important;border-bottom:1px solid #e5e7eb!important}.spec-item:last-child{border-bottom:none!important}.spec-item .btn-delete-spec{display:none!important}.summary-section{margin-top:6px!important;padding:0!important}.summary-section .summary-card{padding:4px 8px!important;margin:0!important;font-size:7pt!important}.table-footer,.cost-summary,.price-summary{padding:2px 4px!important;font-size:7pt!important;margin:0!important}.unit-price-detail-page>*{page-break-inside:avoid}}@media (max-width: 768px){.cost-bar{flex-direction:column}.add-row{flex-wrap:wrap}.add-search{flex:1 1 100%;order:1}.add-type-select{order:0}.add-qty{order:2}}.sections-page{animation:fadeIn .3s ease-out}.sections-toolbar{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg)}.sections-tree-container{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);padding:var(--spacing-md)}.section-tree{display:flex;flex-direction:column}.section-node{margin-bottom:2px}.section-node-header{display:flex;align-items:center;gap:var(--spacing-sm);padding:.75rem 1rem;background:var(--bg-secondary);border-radius:var(--radius-md);border-left:4px solid;transition:all var(--transition-fast);margin-bottom:2px}.section-node-header:hover{background:#3498db1a;box-shadow:0 2px 8px #0000001a}.section-node-toggle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;cursor:pointer;flex-shrink:0}.section-node-toggle .toggle-icon{font-size:.75rem;color:var(--text-muted);transition:transform .2s ease}.section-node-toggle .toggle-icon.expanded{transform:rotate(90deg)}.section-node-toggle .toggle-icon.placeholder{font-size:.5rem;color:var(--border-color)}.section-node-code{font-family:var(--font-mono);font-size:.8125rem;font-weight:700;color:#fff;padding:.25rem .75rem;border-radius:var(--radius-sm);min-width:50px;text-align:center;flex-shrink:0}.section-node-name{flex:1;font-size:.9375rem;font-weight:500;color:var(--text-primary);padding-left:var(--spacing-sm)}.section-node-count{display:flex;align-items:center;margin-right:var(--spacing-sm)}.section-node-count .count-badge{display:inline-flex;align-items:center;padding:2px 8px;background:linear-gradient(135deg,var(--primary-light) 0%,rgba(52,152,219,.15) 100%);color:var(--primary);font-size:.75rem;font-weight:600;border-radius:12px;border:1px solid rgba(52,152,219,.3);white-space:nowrap}.section-node-count .count-badge:before{content:"📋";margin-right:4px;font-size:.7rem}.section-node-actions{display:flex;gap:4px;opacity:0;transition:opacity var(--transition-fast)}.section-node-header:hover .section-node-actions{opacity:1}.section-node-actions .btn-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:none;background:var(--bg-card);cursor:pointer;font-size:.875rem;transition:all var(--transition-fast)}.section-node-actions .btn-icon.btn-add{color:var(--success)}.section-node-actions .btn-icon.btn-add:hover{background:#27ae6033}.section-node-actions .btn-icon.btn-edit{color:var(--brand-primary)}.section-node-actions .btn-icon.btn-edit:hover{background:#3498db33}.section-node-actions .btn-icon.btn-delete{color:var(--danger)}.section-node-actions .btn-icon.btn-delete:hover{background:#e74c3c33}.section-node-children{margin-left:1.5rem;padding-left:var(--spacing-md);border-left:2px dashed var(--border-light);margin-top:2px}.section-node-header.level-0{background:linear-gradient(135deg,#3498db1a,#3498db0d)}.section-node-header.level-1{background:linear-gradient(135deg,#27ae6014,#27ae6008)}.section-node-header.level-2{background:linear-gradient(135deg,#9b59b614,#9b59b608)}.section-node-header.level-3{background:linear-gradient(135deg,#e67e2214,#e67e2208)}.section-modal{max-width:500px;width:90%}.section-modal .modal-content{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-xl)}.section-modal .modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.section-modal .modal-header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-heading)}.section-modal .modal-body{padding:1.5rem}.section-modal .modal-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.sections-tree-container .empty-state{text-align:center;padding:3rem 2rem}.sections-tree-container .empty-state .empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.sections-tree-container .empty-state p{color:var(--text-muted);margin-bottom:1rem}@media (max-width: 768px){.section-node-header{flex-wrap:wrap;padding:.5rem .75rem}.section-node-name{flex:1 1 100%;order:3;padding-left:0;padding-top:.5rem;font-size:.875rem}.section-node-actions{opacity:1}.section-node-children{margin-left:1rem;padding-left:.75rem}}.fullscreen-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a;z-index:2000;animation:fadeIn .2s ease-out}.fullscreen-modal{width:100%;height:100%;display:flex;flex-direction:column;background:#0f172a}.fullscreen-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:linear-gradient(135deg,#1e293b,#0f172a);border-bottom:1px solid rgba(255,255,255,.08);flex-shrink:0}.fullscreen-modal-header .header-left{display:flex;align-items:center;gap:1rem}.fullscreen-modal-header .back-btn{width:40px;height:40px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#94a3b8;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.fullscreen-modal-header .back-btn:hover{background:#ffffff1a;color:#f8fafc;border-color:#fff3}.fullscreen-modal-header .header-title h1{font-size:1.25rem;font-weight:700;color:#f8fafc;margin:0;font-family:JetBrains Mono,Fira Code,monospace}.fullscreen-modal-header .header-subtitle{font-size:.8rem;color:#64748b;display:block;margin-top:.25rem}.fullscreen-modal-header .header-actions{display:flex;gap:.75rem}.fullscreen-modal-header .btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.1);color:#94a3b8;padding:.625rem 1.25rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.fullscreen-modal-header .btn-ghost:hover{background:#ffffff0d;color:#f8fafc}.fullscreen-modal-header .btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;color:#fff;padding:.625rem 1.5rem;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #3b82f64d}.fullscreen-modal-header .btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 16px #3b82f666}.fullscreen-modal-header .btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.fullscreen-modal-content{display:flex;flex:1;overflow:hidden;min-height:0;height:calc(100vh - 80px);flex-direction:row!important}.template-sidebar{width:280px;background:#1e293b;border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;overflow:hidden;flex-shrink:0}.template-sidebar .sidebar-header{padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.06)}.template-sidebar .sidebar-header h3{font-size:.95rem;font-weight:700;color:#f8fafc;margin:0 0 .25rem}.template-sidebar .sidebar-header p{font-size:.75rem;color:#64748b;margin:0}.variables-container{flex:1;overflow-y:auto;padding:1rem}.variable-category{margin-bottom:1.25rem}.category-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.category-icon{font-size:1rem}.category-title{font-size:.8rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.category-variables{display:flex;flex-wrap:wrap;gap:.5rem}.variable-chip{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:6px;padding:.375rem .625rem;font-size:.75rem;font-family:JetBrains Mono,Fira Code,monospace;color:#60a5fa;cursor:pointer;transition:all .15s}.variable-chip:hover{background:#3b82f633;border-color:#3b82f666;transform:translateY(-1px)}.variable-chip:active{transform:translateY(0)}.template-main{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#0f172a}.template-info-section{padding:1.25rem 1.5rem;background:#1e293b;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.info-grid{display:flex;gap:1.5rem;align-items:flex-end}.template-info-section .form-group{flex:1;min-width:200px}.template-info-section .form-group label{display:block;font-size:.8rem;font-weight:600;color:#94a3b8;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.3px}.template-info-section .form-group label .required{color:#f43f5e}.template-info-section .form-group input{width:100%;padding:.75rem 1rem;background:#0f172a;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#f8fafc;font-size:.9rem;transition:all .2s}.template-info-section .form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.template-info-section .form-group input::placeholder{color:#475569}.template-info-section .input-lg{font-size:1rem;font-weight:600}.checkbox-inline{display:flex;align-items:center;min-width:auto!important;flex:0!important}.checkbox-label{display:flex!important;align-items:center;gap:.75rem;cursor:pointer;font-size:.875rem!important;color:#94a3b8;text-transform:none!important;letter-spacing:0!important;white-space:nowrap}.checkbox-label input[type=checkbox]{width:18px!important;height:18px;accent-color:#3b82f6;cursor:pointer}.editor-tabs{display:flex;gap:0;padding:0 1.5rem;background:#1e293b;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.tab-btn{padding:.875rem 1.5rem;background:transparent;border:none;border-bottom:2px solid transparent;color:#64748b;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.tab-btn:hover{color:#94a3b8;background:#ffffff05}.tab-btn.active{color:#3b82f6;border-bottom-color:#3b82f6}.editor-area{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:1.5rem}.template-textarea{flex:1;width:100%;padding:1.25rem;background:#1e293b;border:1px solid rgba(255,255,255,.08);border-radius:12px;color:#e2e8f0;font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:.9rem;line-height:1.7;resize:none;transition:all .2s}.template-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.template-textarea::placeholder{color:#475569}.preview-area{flex:1;display:flex;flex-direction:column;gap:1rem;overflow:hidden}.preview-content{flex:1;background:#fff;border-radius:12px;padding:2rem;overflow-y:auto;box-shadow:0 4px 24px #0000004d}.preview-content pre{margin:0;white-space:pre-wrap;word-wrap:break-word;font-family:Georgia,Times New Roman,serif;font-size:1rem;line-height:1.8;color:#1e293b}.preview-note{display:flex;align-items:center;gap:.75rem;padding:.875rem 1rem;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:8px;font-size:.85rem;color:#60a5fa;flex-shrink:0}.error-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.9rem;margin-top:1rem;flex-shrink:0}@media (max-width: 1024px){.template-sidebar{width:240px}.info-grid{flex-wrap:wrap}.template-info-section .form-group{min-width:180px}}@media (max-width: 768px){.fullscreen-modal-content{flex-direction:column}.template-sidebar{width:100%;max-height:200px;border-right:none;border-bottom:1px solid rgba(255,255,255,.06)}.variables-container{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:1rem;padding:.75rem 1rem}.variable-category{flex-shrink:0;margin-bottom:0}.info-grid{flex-direction:column;gap:1rem}.template-info-section .form-group{min-width:100%}.checkbox-inline{flex:1!important}.fullscreen-modal-header{padding:.875rem 1rem}.fullscreen-modal-header .header-title h1{font-size:1rem}.fullscreen-modal-header .header-subtitle{display:none}}.contract-info-bar{display:flex;gap:1rem;margin-top:.5rem;flex-wrap:wrap}.info-badge{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .75rem;background:#ffffff14;border-radius:6px;font-size:.8rem;color:#94a3b8}.info-badge strong{color:#64748b;font-weight:500}.info-badge.amount{background:#22c55e26;color:#22c55e}.info-badge.amount strong{color:#16a34a}.contract-editor-layout{display:flex;flex:1;overflow:hidden;gap:0;min-height:0;height:calc(100vh - 100px)}.contract-sidebar{width:320px;background:#1e293b;border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;overflow-y:auto;flex-shrink:0;height:100%;position:relative}.sidebar-section{padding:1.25rem;border-bottom:1px solid rgba(255,255,255,.06)}.sidebar-section h3{font-size:.85rem;font-weight:600;color:#e2e8f0;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.section-hint{font-size:.75rem;color:#64748b;margin-bottom:.75rem}.template-select{width:100%;padding:.75rem 1rem;background:#0f172a;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#f8fafc;font-size:.9rem;cursor:pointer}.template-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.variables-list{display:flex;flex-direction:column;gap:.5rem}.variable-btn{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px;cursor:pointer;transition:all .2s}.variable-btn:hover{background:#3b82f61a;border-color:#3b82f64d}.var-label{font-size:.85rem;color:#e2e8f0}.var-key{font-size:.7rem;color:#64748b;background:#0000004d;padding:.2rem .5rem;border-radius:4px;font-family:Fira Code,monospace}.additional-clauses-input{width:100%;min-height:150px;padding:.75rem;background:#0f172a;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#f8fafc;font-size:.85rem;font-family:inherit;resize:vertical;line-height:1.6}.additional-clauses-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.additional-clauses-input::placeholder{color:#475569}.contract-main-panel{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#0f172a;min-height:0;height:100%}.editor-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;height:calc(100% - 50px)}.contract-textarea{flex:1;width:100%;height:calc(100vh - 200px)!important;min-height:500px;padding:1.5rem;background:transparent;border:none;color:#f8fafc;font-family:Fira Code,Consolas,monospace;font-size:.9rem;line-height:1.8;resize:none;overflow-y:auto}.contract-textarea:focus{outline:none}.contract-textarea::placeholder{color:#475569}.contract-preview{flex:1;overflow-y:auto;padding:2rem;background:#fff;min-height:0}.preview-content{max-width:800px;margin:0 auto;color:#1e293b;font-family:Georgia,Times New Roman,serif;font-size:1rem;line-height:1.8}.preview-content h1,.preview-content h2,.preview-content h3,.preview-content h4{color:#0f172a;margin-top:1.5rem;margin-bottom:.75rem}.preview-content h1{font-size:1.5rem}.preview-content h2{font-size:1.25rem}.preview-content h3{font-size:1.1rem}.fullscreen-modal-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#64748b}.fullscreen-modal-empty .empty-icon{font-size:4rem;margin-bottom:1rem;opacity:.5}.fullscreen-modal-empty h2{font-size:1.5rem;color:#94a3b8;margin-bottom:.5rem}.fullscreen-modal-empty p{font-size:.95rem;color:#64748b}.fullscreen-modal-error{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:#f43f5e;color:#fff;padding:1rem 2rem;border-radius:8px;font-weight:500;box-shadow:0 4px 20px #f43f5e66;z-index:2100}.fullscreen-modal-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.loading-spinner{width:40px;height:40px;border:3px solid rgba(255,255,255,.1);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 1024px){.contract-editor-layout{flex-direction:column}.contract-sidebar{width:100%;max-height:40vh;border-right:none;border-bottom:1px solid rgba(255,255,255,.06)}.contract-info-bar{gap:.5rem}.info-badge{font-size:.75rem;padding:.25rem .5rem}}.gantt-wrapper-outer.professional{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);overflow:visible;margin-top:1rem}.gantt-wrapper-outer.professional .gantt-wrapper{overflow-x:auto;overflow-y:visible;min-height:180px}.gantt-toolbar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid var(--border-color);background:linear-gradient(180deg,rgba(255,255,255,.02) 0%,transparent 100%)}.toolbar-left{display:flex;align-items:center;gap:1rem}.toolbar-label{font-weight:600;font-size:.95rem;color:var(--text-primary)}.task-count{font-size:.8rem;color:var(--text-muted);background:#3b82f61a;padding:.25rem .5rem;border-radius:var(--radius-sm)}.toolbar-right{display:flex;align-items:center;gap:1rem}.zoom-controls{display:flex;align-items:center;gap:.5rem;background:var(--bg-tertiary);padding:.25rem;border-radius:var(--radius-md)}.zoom-level{font-size:.8rem;color:var(--text-secondary);min-width:40px;text-align:center}.gantt-legend{display:flex;gap:1.5rem;padding:.5rem 1rem;border-bottom:1px solid var(--border-color);background:#00000005}.legend-item{display:flex;align-items:center;gap:.4rem;font-size:.75rem;color:var(--text-muted)}.legend-color{width:12px;height:12px;border-radius:3px}.legend-icon{font-size:.85rem}.gantt-header{display:flex;position:sticky;top:0;z-index:10;background:var(--bg-card);border-bottom:2px solid var(--border-color);min-height:54px}.gantt-task-list-header{min-width:320px;min-height:54px;max-width:320px;display:flex;background:linear-gradient(180deg,rgba(59,130,246,.08) 0%,transparent 100%);border-right:2px solid var(--border-color);flex-shrink:0}.task-header-cell{padding:.5rem;font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);background:transparent;display:flex;align-items:center;justify-content:center}.task-header-cell.index{width:35px;min-width:35px;text-align:center}.task-header-cell.name{flex:1;justify-content:flex-start}.task-header-cell.duration{width:45px;min-width:45px;text-align:center}.gantt-timeline-header{position:relative;display:flex;flex-direction:column;flex:1;overflow:visible;min-height:54px}.gantt-timeline-row{display:flex;position:relative;height:27px;width:100%;flex-shrink:0}.gantt-timeline-row.months-row{background:linear-gradient(180deg,#3b82f61f,#3b82f60a)}.gantt-timeline-row.days-row{background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.gantt-timeline-row.days-row .day-cell{background:var(--bg-secondary)}.gantt-timeline-cell{position:absolute;display:flex;align-items:center;justify-content:center;font-size:.75rem;border-right:1px solid rgba(0,0,0,.08);height:27px;top:0;box-sizing:border-box;background:inherit}.month-cell{font-weight:600;color:var(--text-primary);font-size:.8rem}.day-cell{color:var(--text-secondary);font-size:.7rem;font-weight:500}.day-cell.weekend{background:#ef44440d;color:#ef4444}.day-cell.today{background:#3b82f626;color:#3b82f6;font-weight:700}.gantt-body{position:relative;display:flex;flex-direction:column}.gantt-row{display:flex;border-bottom:1px solid rgba(0,0,0,.05);transition:background .15s ease}.gantt-row:hover,.gantt-row.hovered{background:#3b82f608}.gantt-row.critical{background:#ef444408}.gantt-row.critical:hover{background:#ef44440f}.gantt-task-info{min-width:320px;max-width:320px;display:flex;align-items:center;padding:0 .25rem;border-right:2px solid var(--border-color);gap:.25rem;background:#00000003;flex-shrink:0}.task-index{width:35px;min-width:35px;text-align:center;font-size:.7rem;color:var(--text-muted);font-weight:500}.task-name-wrapper{flex:1;display:flex;align-items:center;gap:.3rem;cursor:pointer;padding:.15rem .25rem;border-radius:var(--radius-sm);transition:background .1s ease;overflow:hidden;min-width:0}.task-name-wrapper:hover{background:#3b82f614}.task-duration{width:45px;min-width:45px;text-align:center;font-size:.7rem;color:var(--text-muted);font-weight:500}.task-label{font-size:.75rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.task-code{font-size:.6rem;background:var(--primary-color);color:#fff;padding:.1rem .3rem;border-radius:2px;margin-right:.3rem;font-weight:600}.dep-badge{font-size:.65rem;color:var(--text-muted)}.milestone-badge{font-size:.75rem}.task-duration{min-width:40px;text-align:center;font-size:.7rem;color:var(--text-muted)}.gantt-task-timeline{position:relative;flex:1;height:100%;overflow:hidden}.gantt-grid-line{position:absolute;top:0;bottom:0;border-right:1px solid rgba(0,0,0,.06)}.gantt-grid-line.weekend{background:#ef444408}.gantt-grid-line.today{background:#3b82f614;border-right:2px solid rgba(59,130,246,.3)}.gantt-task-bar{position:absolute;border-radius:4px;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease;overflow:hidden;box-shadow:0 1px 3px #00000026}.gantt-task-bar:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0003;z-index:10}.gantt-task-bar.critical{box-shadow:0 0 0 2px #ef444466,0 2px 6px #ef44444d}.gantt-task-bar.completed{opacity:.7}.gantt-task-progress{position:absolute;left:0;top:0;height:100%;background:#ffffff59;border-radius:4px 0 0 4px}.gantt-task-bar-label{position:relative;z-index:2;padding:0 .5rem;font-size:.65rem;font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:flex;align-items:center;height:100%}.gantt-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);margin-top:1rem}.gantt-empty .empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.gantt-empty .hint{font-size:.85rem;margin-top:.5rem;opacity:.7}.gantt-dependencies-svg{overflow:visible}.pdf-export-modal{max-width:400px}.orientation-options{display:flex;gap:1.5rem;justify-content:center;margin:1.5rem 0}.orientation-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease}.orientation-option:hover{border-color:var(--primary-color)}.orientation-option.selected{border-color:var(--primary-color);background:#3b82f614}.orientation-preview{background:var(--bg-tertiary);border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--text-muted)}.orientation-preview.landscape{width:80px;height:50px}.orientation-preview.portrait{width:50px;height:80px}.task-modal{max-width:1000px;width:92vw;max-height:92vh;overflow:hidden;display:flex;flex-direction:column}.task-modal .modal-header{flex-shrink:0;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color)}.task-modal .modal-body{flex:1;overflow-y:auto;padding:1rem 1.5rem;min-height:0;display:flex;flex-direction:column;gap:.5rem}.task-modal .modal-footer{flex-shrink:0;padding:.75rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-card)}.task-modal .form-row{display:flex;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.task-modal .form-row .form-group{flex:1;min-width:120px}.task-modal .form-section{padding:.75rem 1rem;margin-bottom:.5rem}.task-modal .form-section h3{font-size:.95rem;margin-bottom:.5rem}.task-modal .form-group{margin-bottom:.4rem}.task-modal .form-group label{font-size:.85rem;margin-bottom:.2rem}.task-modal textarea{min-height:40px}.task-modal .form-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 768px){.task-modal .form-columns{grid-template-columns:1fr}.task-modal{max-width:95vw;width:95vw}}.task-modal .form-section{background:#00000005;border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem}.task-modal .form-section h3{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.task-modal .form-section h4{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-bottom:.75rem}.task-modal .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border-color)}.task-modal .section-header h3{margin:0;padding:0;border:none}.form-range{width:100%;height:8px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-tertiary);border-radius:4px;outline:none}.form-range::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--primary-color);cursor:pointer;box-shadow:0 2px 4px #0003}.form-range::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--primary-color);cursor:pointer;box-shadow:0 2px 4px #0003}.dependency-add-form{background:#3b82f60d;border:1px dashed var(--primary-color);border-radius:var(--radius-md);padding:1rem;margin-bottom:1rem}.dependencies-list{display:flex;flex-direction:column;gap:.5rem}.dependency-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md)}.dependency-info{display:flex;align-items:center;gap:1rem}.dependency-task{font-weight:500;font-size:.85rem;color:var(--text-primary)}.dependency-type{font-size:.75rem;color:var(--text-muted);background:var(--bg-tertiary);padding:.2rem .5rem;border-radius:var(--radius-sm)}.dependency-lag{font-size:.75rem;color:var(--primary-color);font-weight:500}.project-schedule{display:flex;flex-direction:column;gap:1rem}.schedule-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.stat-card.compact{padding:1rem}.stat-card.compact .stat-content{display:flex;flex-direction:column}.stat-card.compact .stat-value{font-size:1.5rem}.stat-card.compact .stat-label{font-size:.75rem}.schedule-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0}.schedule-header h2{font-size:1.1rem;font-weight:600;color:var(--text-primary);margin:0}.header-actions{display:flex;gap:.75rem}.schedule-view-tabs{display:flex;gap:0;margin-bottom:1rem;background:var(--bg-secondary);border-radius:var(--radius-lg);padding:4px;width:fit-content}.view-tab{padding:.6rem 1.5rem;border:none;background:transparent;color:var(--text-secondary);font-size:.95rem;font-weight:500;cursor:pointer;border-radius:var(--radius-md);transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.view-tab:hover{color:var(--text-primary);background:#ffffff80}.view-tab.active{background:var(--bg-card);color:var(--primary-color);box-shadow:0 1px 3px #0000001a}.task-list-container{min-height:300px}.empty-state{text-align:center;padding:3rem 2rem}.empty-state .empty-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state h3{margin:0 0 .5rem;color:var(--text-secondary);font-weight:500}.empty-state p{margin:0;color:var(--text-muted);font-size:.9rem}.warning-box{padding:1rem;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:var(--radius-md);color:#d97706}.warning-box strong{display:block;margin-bottom:.25rem}.warning-box p{margin:0;font-size:.85rem;opacity:.9}.info-box{padding:.75rem 1rem;background:#3b82f614;border:1px solid rgba(59,130,246,.2);border-radius:var(--radius-md);color:var(--primary-color);font-size:.85rem}.add-task-form{margin-bottom:1rem}.add-task-form h3{margin-bottom:1rem;font-size:1rem;color:var(--text-primary)}.add-task-form .form-row{display:flex;gap:1rem;margin-bottom:1rem}.add-task-form .form-group{flex:1}.add-task-form .form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem;padding-top:1rem;border-top:1px solid var(--border-color)}.dependency-section{background:#3b82f608;border:1px solid rgba(59,130,246,.1);border-radius:var(--radius-md);padding:1rem;margin-top:.5rem}.dependency-section h4{margin:0 0 .75rem;font-size:.9rem;color:var(--text-secondary)}.task-list{margin-top:1.5rem}.task-list h3{margin-bottom:1rem;font-size:1rem;color:var(--text-primary)}.task-list .data-table{font-size:.85rem}.task-list tr.critical-task{background:#ef444408}.task-name-cell{display:flex;align-items:center;gap:.5rem}.task-name-cell .code{font-size:.7rem;background:var(--primary-color);color:#fff;padding:.1rem .4rem;border-radius:3px;font-weight:600}.task-name-cell .name{color:var(--primary-color)}.task-name-cell .name:hover{text-decoration:underline}.task-name-cell .dependency-badge{font-size:.7rem;color:var(--text-muted)}.priority-badge{font-size:.85rem}.progress-cell{display:flex;align-items:center;gap:.5rem}.progress-slider{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-tertiary);border-radius:3px;outline:none}.progress-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary-color);cursor:pointer}.progress-value{font-size:.75rem;font-weight:600;color:var(--text-secondary);min-width:35px}.actions-cell{display:flex;gap:.25rem}.btn-icon{padding:.25rem .5rem!important;min-width:auto}.schedule-summary-banner{display:flex;align-items:center;gap:1.5rem;padding:1rem 1.5rem;background:linear-gradient(135deg,var(--primary-color),var(--primary-dark));border-radius:var(--border-radius);margin-bottom:1rem;flex-wrap:wrap}.summary-item{display:flex;align-items:center;gap:.75rem;color:#fff}.summary-icon{font-size:1.5rem}.summary-content{display:flex;flex-direction:column}.summary-label{font-size:.7rem;opacity:.8;text-transform:uppercase;letter-spacing:.5px}.summary-value{font-size:1rem;font-weight:600}.progress-item .summary-content{min-width:120px}.progress-bar-mini{height:6px;background:#ffffff4d;border-radius:3px;margin:.25rem 0;overflow:hidden}.progress-bar-mini .progress-fill{height:100%;background:#4ade80;border-radius:3px;transition:width .3s ease}.work-calendar-settings{padding:1.5rem}.work-calendar-settings h3{margin-bottom:1.5rem;color:var(--primary-color)}.calendar-section{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.calendar-section:last-of-type{border-bottom:none}.calendar-section h4{margin-bottom:.5rem;color:var(--text-primary)}.section-desc{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem}.work-days-grid{display:flex;gap:.75rem;flex-wrap:wrap}.work-day-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;width:80px;height:70px;border:2px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;background:var(--bg-secondary)}.work-day-toggle:hover{border-color:var(--primary-color)}.work-day-toggle.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.day-label{font-size:.85rem;font-weight:500}.day-indicator{font-size:1.25rem;margin-top:.25rem}.work-day-toggle.active .day-indicator{color:#4ade80}.work-day-toggle:not(.active) .day-indicator{color:#f87171}.holiday-add-form{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.holiday-add-form .form-input{flex:1;min-width:150px}.holidays-list{display:flex;flex-direction:column;gap:.5rem}.holiday-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;background:var(--bg-secondary);border-radius:var(--border-radius);border:1px solid var(--border-color)}.holiday-date{font-weight:500;color:var(--text-primary)}.holiday-desc{flex:1;color:var(--text-muted);font-size:.9rem}.no-holidays{color:var(--text-muted);font-style:italic}.calendar-info-box{background:var(--info-bg);border:1px solid var(--info-color);border-radius:var(--border-radius);padding:1rem;margin-top:1rem}.calendar-info-box h4{color:var(--info-color);margin-bottom:.5rem}.calendar-info-box p{font-size:.9rem;color:var(--text-secondary);margin:0}.calculated-date{display:flex;align-items:center;height:38px;padding:0 .75rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--border-radius);font-weight:500}.calculated-date .calculating{color:var(--text-muted);font-style:italic}.calculated-date .end-date{color:var(--primary-color)}.calculated-date .no-date{color:var(--text-muted)}.proposal-type-section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.proposal-type-options{display:flex;gap:1rem;margin-bottom:1rem}.type-option{flex:1;display:flex;align-items:center;gap:1rem;padding:1rem;border:2px solid var(--border-color);border-radius:var(--border-radius);cursor:pointer;transition:all .2s ease;background:var(--bg-secondary)}.type-option:hover{border-color:var(--primary-color)}.type-option.selected{border-color:var(--primary-color);background:color-mix(in srgb,var(--primary-color) 10%,transparent)}.type-option.disabled{opacity:.5;cursor:not-allowed}.type-icon{font-size:1.5rem}.type-content{display:flex;flex-direction:column}.type-label{font-weight:600;color:var(--text-primary)}.type-desc{font-size:.8rem;color:var(--text-muted)}.parent-proposal-select{margin-top:1rem}.parent-proposal-select label{display:block;margin-bottom:.5rem;font-weight:500}.parent-proposal-select select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:var(--border-radius);background:var(--bg-primary);color:var(--text-primary);font-size:.95rem}.parent-proposal-select .loading-text{color:var(--text-muted);font-style:italic}.parent-proposal-select .warning-text{color:var(--warning-color);padding:.5rem;background:var(--warning-bg);border-radius:var(--border-radius)}.proposal-type-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.7rem;font-weight:600;border-radius:4px;margin-left:.5rem}.proposal-type-badge.additional{background:var(--info-bg);color:var(--info-color)}.parent-proposal-link{display:block;font-size:.75rem;color:var(--text-muted);margin-top:.25rem}.proposal-stats-summary{display:flex;flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:1rem;border-top:1px dashed var(--border-color)}.proposal-stats-row{display:flex;justify-content:space-between;align-items:center;font-size:.9rem}.proposal-stats-row .label{color:var(--text-secondary)}.proposal-stats-row .value{font-weight:600;color:var(--text-primary)}.proposal-stats-row.main .value{color:var(--success-color)}.proposal-stats-row.additional .value{color:var(--info-color)}.proposal-stats-row.total{font-size:1rem;padding-top:.5rem;border-top:1px solid var(--border-color)}.proposal-stats-row.total .value{font-size:1.1rem;color:var(--primary-color)}.btn-logout{background:transparent;border:1px solid #e5e7eb;color:#6b7280;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s;width:100%}.btn-logout:hover{background:#fee2e2;border-color:#fecaca;color:#991b1b}.main-content.full-width{margin-left:0}.card-header .btn-secondary{border-color:#06b6d466;color:var(--sidebar-icon-active);background:#06b6d40d;font-weight:500;font-size:.825rem;padding:.35rem .75rem;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:.25rem}.card-header .btn-secondary:hover{background:var(--sidebar-icon-active);border-color:var(--sidebar-icon-active);color:#fff!important}.project-detail-sticky-header{position:sticky;top:-1.5rem;margin-top:-1.5rem;padding-top:1.5rem;padding-bottom:.75rem;z-index:100;background:var(--bg-primary, #f8fafc);border-bottom:1px solid var(--border-color, #e2e8f0);margin-bottom:1rem}.gallery-image-wrapper:hover .image-hover-overlay{opacity:1!important}.gallery-image-wrapper:hover img{transform:scale(1.06)}@keyframes scaleUp{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.kokpit-breadcrumb{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:600;color:#64748b;margin-bottom:8px}.kokpit-breadcrumb span.active{color:#0f172a}.kokpit-header-row{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.kokpit-title-group{display:flex;flex-direction:column;gap:4px}.kokpit-title-row{display:flex;align-items:center;gap:10px}.kokpit-icon-box{width:36px;height:36px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kokpit-title{font-size:1.4rem;font-weight:800;color:#0f172a;letter-spacing:-.02em;margin:0}.kokpit-badge-pending{background:#f1f5f9;color:#0f172a;font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:6px;border:1px solid #e2e8f0}.kokpit-subtitle{font-size:.8125rem;color:#64748b;margin:0}.btn-kokpit-primary{background:#0f2942;color:#fff;border:1px solid #0f2942;border-radius:8px;padding:8px 16px;font-size:.8125rem;font-weight:700;display:inline-flex;align-items:center;gap:6px;cursor:pointer;text-decoration:none;transition:all var(--transition-fast)}.btn-kokpit-primary:hover{background:#1e3a5f;border-color:#1e3a5f;color:#fff;box-shadow:0 4px 10px #0f294233}.kokpit-metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}@media (max-width: 1200px){.kokpit-metrics-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.kokpit-metrics-grid{grid-template-columns:1fr}}.kokpit-metric-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;padding:1.1rem 1.25rem;box-shadow:0 1px 3px #0f172a0a;display:flex;flex-direction:column;position:relative;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.kokpit-metric-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px -2px #0f172a14}.kokpit-metric-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.kokpit-metric-label{font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b}.kokpit-metric-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem}.kokpit-metric-icon.red{background:#fef2f2;color:#dc2626;border:1px solid #fee2e2}.kokpit-metric-icon.orange{background:#fffbeb;color:#d97706;border:1px solid #fef3c7}.kokpit-metric-icon.blue{background:#eff6ff;color:#2563eb;border:1px solid #dbeafe}.kokpit-metric-icon.green{background:#ecfdf5;color:#059669;border:1px solid #d1fae5}.kokpit-metric-val{font-size:1.5rem;font-weight:800;letter-spacing:-.02em;margin-bottom:2px}.kokpit-metric-val.red{color:#dc2626}.kokpit-metric-val.dark{color:#0f172a}.kokpit-metric-val.green{color:#059669}.kokpit-metric-sub{font-size:.72rem;color:#94a3b8;font-weight:500}.kokpit-metric-sub.red{color:#b91c1c}.kokpit-metric-sub.orange{color:#d97706}.kokpit-metric-sub.green{color:#059669}.kokpit-table-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 1px 3px #0f172a0a;overflow:hidden;margin-bottom:1.75rem}.kokpit-table-header{padding:1rem 1.25rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-color)}.kokpit-table-title{font-size:.95rem;font-weight:800;color:#0f172a;margin:0 0 2px}.kokpit-table-desc{font-size:.75rem;color:#64748b;margin:0}.kokpit-table-wrapper{overflow-x:auto}.kokpit-table{width:100%;border-collapse:collapse;text-align:left}.kokpit-table th{background:#f8fafc;padding:10px 14px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b;border-bottom:1px solid var(--border-color);white-space:nowrap}.kokpit-table td{padding:12px 14px;font-size:.8125rem;color:#1e293b;border-bottom:1px solid #f1f5f9;vertical-align:middle}.kokpit-table tr:hover td{background:#f8fafc}.kokpit-task-code{font-size:.6875rem;color:#94a3b8;font-family:var(--font-mono, monospace);margin-bottom:2px}.kokpit-task-name{font-weight:700;color:#0f172a}.kokpit-task-tag{font-size:.7rem;color:#64748b;margin-top:1px}.kokpit-user-name{font-weight:600;color:#0f172a}.kokpit-user-title{font-size:.7rem;color:#64748b}.kokpit-priority-badge{display:inline-block;font-size:.6875rem;font-weight:700;padding:2px 8px;border-radius:4px;white-space:nowrap}.kokpit-priority-badge.critical{background:#fee2e2;color:#dc2626}.kokpit-priority-badge.high{background:#fef3c7;color:#d97706}.kokpit-priority-badge.normal{background:#f1f5f9;color:#475569}.kokpit-status-pill{display:inline-flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;padding:4px 10px;border-radius:999px;white-space:nowrap}.kokpit-status-pill.pending{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.kokpit-status-pill.completed{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.btn-kokpit-action{background:#059669;color:#fff;border:none;border-radius:6px;padding:6px 14px;font-size:.75rem;font-weight:700;display:inline-flex;align-items:center;gap:4px;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn-kokpit-action:hover{background:#047857}.org-page{width:100%;max-width:100%;margin:0;padding:0 0 2.5rem;box-sizing:border-box}.org-breadcrumb{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:600;color:#64748b;margin-bottom:.75rem}.org-breadcrumb .active{color:#0f172a}.org-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;gap:1.5rem;flex-wrap:wrap}.org-title-group{display:flex;flex-direction:column;gap:4px}.org-title-row{display:flex;align-items:center;gap:12px}.org-icon-badge{width:42px;height:42px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.org-title{font-size:1.5rem;font-weight:800;color:#0f172a;letter-spacing:-.02em;margin:0}.org-subtitle{font-size:.84rem;color:#64748b;margin:0}.org-tabs{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid var(--border-color, #e2e8f0);padding:6px;border-radius:12px;margin-bottom:1.5rem;box-shadow:0 1px 3px #0f172a0a}.org-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:8px;border:none;background:transparent;font-size:.845rem;font-weight:600;color:#475569;cursor:pointer;transition:all var(--transition-fast, .15s)}.org-tab-btn:hover{background:#f8fafc;color:#0f172a}.org-tab-btn.active{background:#0f2942;color:#fff;box-shadow:0 2px 6px #0f29422e}.org-tab-badge{font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:999px;background:#f1f5f9;color:#334155}.org-tab-btn.active .org-tab-badge{background:#fff3;color:#fff}.org-action-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.org-search-box{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px 14px;width:320px;box-shadow:0 1px 2px #0f172a08}.org-search-box input{border:none;background:transparent;font-size:.845rem;color:#0f172a;outline:none;width:100%;font-family:inherit}.org-btn-primary{background:#0f2942;color:#fff;border:1px solid #0f2942;border-radius:10px;padding:8px 18px;font-size:.845rem;font-weight:700;display:inline-flex;align-items:center;gap:8px;cursor:pointer;transition:all .15s ease}.org-btn-primary:hover{background:#1e3a5f;border-color:#1e3a5f;box-shadow:0 4px 10px #0f294226}.dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.dept-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #0f172a0a;display:flex;flex-direction:column;transition:transform .15s ease,box-shadow .15s ease;position:relative}.dept-card:hover{transform:translateY(-2px);box-shadow:0 8px 18px -2px #0f172a14}.dept-card-body{padding:1.25rem;display:flex;flex-direction:column;flex:1}.dept-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:.75rem}.dept-icon-wrapper{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.1rem;flex-shrink:0}.dept-code-tag{font-size:.6875rem;font-weight:700;font-family:var(--font-mono, monospace);padding:2px 7px;border-radius:4px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.dept-name{font-size:1.05rem;font-weight:800;color:#0f172a;margin:0 0 6px}.dept-desc{font-size:.8rem;color:#64748b;line-height:1.45;margin-bottom:1rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dept-manager-box{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;padding:8px 12px;border-radius:8px;margin-bottom:1rem}.dept-manager-label{font-size:.6875rem;font-weight:700;color:#94a3b8;text-transform:uppercase;display:block}.dept-manager-name{font-size:.8125rem;font-weight:700;color:#0f172a}.dept-stats-row{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.875rem;border-top:1px solid #f1f5f9}.dept-stat-chip{display:flex;align-items:center;gap:5px;font-size:.75rem;font-weight:600;color:#475569}.dept-actions{display:flex;align-items:center;gap:6px}.dept-action-btn{width:28px;height:28px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;display:flex;align-items:center;justify-content:center;color:#64748b;cursor:pointer;transition:all .15s}.dept-action-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.scenarios-container{display:flex;flex-direction:column;gap:1.25rem}.scenario-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #0f172a0a;overflow:hidden;transition:box-shadow .15s ease}.scenario-card:hover{box-shadow:0 4px 12px #0f172a0f}.scenario-header{padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;background:#fff;gap:1rem;border-bottom:1px solid #f1f5f9}.scenario-header-left{display:flex;align-items:center;gap:1rem;flex:1}.scenario-trigger-icon{width:40px;height:40px;border-radius:10px;background:#f1f5f9;color:#0f2942;display:flex;align-items:center;justify-content:center;flex-shrink:0}.scenario-info{display:flex;flex-direction:column;gap:4px}.scenario-badges-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.scenario-code{font-size:.6875rem;font-weight:700;font-family:var(--font-mono, monospace);color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;padding:1px 6px;border-radius:4px}.scenario-dept-badge{font-size:.6875rem;font-weight:700;padding:2px 8px;border-radius:4px;color:#fff}.scenario-trigger-badge{font-size:.6875rem;font-weight:600;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;padding:1px 7px;border-radius:4px}.scenario-title{font-size:1.05rem;font-weight:800;color:#0f172a;margin:0}.scenario-desc{font-size:.8125rem;color:#64748b;margin:0}.scenario-header-right{display:flex;align-items:center;gap:12px}.scenario-meta-chip{display:flex;align-items:center;gap:5px;font-size:.75rem;color:#475569;font-weight:600;background:#f8fafc;border:1px solid #e2e8f0;padding:4px 10px;border-radius:6px}.btn-launch-pill{background:#059669;color:#fff;border:none;border-radius:8px;padding:7px 14px;font-size:.78rem;font-weight:700;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:all .15s;white-space:nowrap}.btn-launch-pill:hover{background:#047857;box-shadow:0 2px 6px #0596694d}.scenario-steps-body{padding:1rem 1.5rem 1.5rem;background:#f8fafc;border-top:1px solid #e2e8f0}.steps-list{display:flex;flex-direction:column;gap:8px}.step-row{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.step-order-badge{width:26px;height:26px;border-radius:50%;background:#f1f5f9;color:#0f2942;font-weight:800;font-size:.75rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.step-main-info{flex:1;display:flex;flex-direction:column;gap:2px}.step-title{font-size:.875rem;font-weight:700;color:#0f172a}.step-desc{font-size:.75rem;color:#64748b}.step-meta-group{display:flex;align-items:center;gap:10px;flex-shrink:0}.step-role-pill{background:#f1f5f9;color:#334155;font-size:.72rem;font-weight:600;padding:3px 8px;border-radius:6px;border:1px solid #e2e8f0}.step-days-pill{background:#fffbeb;color:#d97706;font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:6px;border:1px solid #fde68a}.step-critical-badge{background:#fef2f2;color:#dc2626;font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:4px;border:1px solid #fecaca}.launcher-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2rem;box-shadow:0 2px 8px #0f172a0a;max-width:900px;margin:0 auto}.launcher-header{display:flex;align-items:center;gap:14px;margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px solid #f1f5f9}.launcher-icon{width:48px;height:48px;border-radius:14px;background:#ecfdf5;border:1px solid #a7f3d0;color:#059669;display:flex;align-items:center;justify-content:center;font-size:1.4rem}.launcher-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;margin-bottom:1.5rem}.form-group label{font-size:.8125rem;font-weight:700;color:#1e293b}.form-input,.form-select,.form-textarea{padding:9px 12px;border-radius:8px;border:1px solid #e2e8f0;font-size:.845rem;font-family:inherit;color:#0f172a;outline:none;transition:all .15s;background:#fff}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.timeline-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;margin-bottom:1.75rem}.timeline-preview-title{font-size:.845rem;font-weight:700;color:#0f172a;margin-bottom:.75rem;display:flex;align-items:center;justify-content:space-between}.btn-launch-submit{width:100%;padding:12px 24px;background:#059669;color:#fff;font-weight:800;font-size:.95rem;border:none;border-radius:10px;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;transition:all .15s;box-shadow:0 4px 12px #05966940}.btn-launch-submit:hover{background:#047857;box-shadow:0 6px 16px #05966959}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:680px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:1.15rem;font-weight:800;color:#0f172a;margin:0}.modal-close-btn{border:none;background:transparent;color:#94a3b8;font-size:1.25rem;cursor:pointer}.modal-close-btn:hover{color:#0f172a}.modal-body{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:10px;background:#f8fafc;border-radius:0 0 16px 16px}.org-hierarchy-view{display:flex;flex-direction:column;gap:2.5rem}.dept-hub-card{background:linear-gradient(135deg,#fff,#f0f7ff);border:1.5px solid #bfdbfe;border-radius:16px;box-shadow:0 4px 16px -2px #2563eb14;position:relative;overflow:hidden}.dept-hub-card-inner{padding:1.5rem 1.75rem 1.5rem 2rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap}.dept-hub-main{display:flex;align-items:flex-start;gap:1.25rem;flex:1;min-width:320px}.dept-hub-icon{width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.3rem;flex-shrink:0;box-shadow:0 4px 12px #2563eb40}.dept-hub-info{display:flex;flex-direction:column;gap:6px}.dept-hub-badges{display:flex;align-items:center;gap:8px}.dept-hub-title{font-size:1.35rem;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.01em}.dept-hub-desc{font-size:.84rem;color:#475569;margin:0;line-height:1.45}.dept-hub-meta{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.dept-hub-manager-card{background:#fff;border:1px solid #cbd5e1;padding:8px 14px;border-radius:10px;display:flex;flex-direction:column;gap:2px;min-width:220px;box-shadow:0 1px 3px #0000000a}.dept-hub-manager-label{font-size:.65rem;font-weight:800;color:#3b82f6;letter-spacing:.03em}.dept-hub-manager-name{font-size:.88rem;font-weight:800;color:#0f172a}.dept-hub-stats{display:flex;flex-direction:column;gap:6px}.dept-hub-stat-item{display:flex;align-items:center;gap:6px;font-size:.82rem;color:#334155;background:#fff;padding:4px 10px;border-radius:6px;border:1px solid #e2e8f0}.dept-hub-actions{display:flex;align-items:center;gap:8px}.dept-hub-add-btn{background:#2563eb;color:#fff;border:none;padding:8px 14px;border-radius:8px;font-size:.8125rem;font-weight:700;display:inline-flex;align-items:center;gap:6px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.dept-hub-add-btn:hover{background:#1d4ed8;box-shadow:0 4px 12px #2563eb40}.dept-sub-container{margin-left:1.5rem;padding-left:1.5rem;border-left:2px dashed #93c5fd;position:relative}.dept-sub-header{margin-bottom:1rem;display:flex;flex-direction:column;gap:4px}.dept-sub-header-title{display:flex;align-items:center;gap:8px;font-size:.92rem;font-weight:800;color:#1e3a8a}.dept-sub-count{font-size:.78rem;font-weight:700;color:#64748b}.dept-sub-hint{font-size:.77rem;color:#64748b}.sub-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.sub-card{border-color:#e2e8f0;background:#fff}.sub-card:hover{border-color:#93c5fd;box-shadow:0 6px 16px -2px #2563eb1a}.dept-icon-wrapper.sub{width:36px;height:36px;font-size:.95rem;border-radius:8px}.dept-sub-badge{font-size:.65rem;font-weight:700;color:#2563eb;background:#eff6ff;padding:2px 7px;border-radius:4px;border:1px solid #bfdbfe;display:inline-flex;align-items:center;gap:4px}.dept-parent-tag{font-size:.6875rem;font-weight:700;color:#1e40af;background:#dbeafe;padding:2px 8px;border-radius:4px;border:1px solid #bfdbfe;display:inline-flex;align-items:center;gap:4px}.dept-independent-section{margin-top:1rem;display:flex;flex-direction:column;gap:1.25rem;padding-top:1.5rem;border-top:1px solid #e2e8f0}.dept-independent-header{display:flex;flex-direction:column;gap:4px}.dept-independent-desc{font-size:.8rem;color:#64748b;margin:0}.org-section-header{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:700;color:#475569;margin-bottom:1rem}.as-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.25rem;animation:asFadeIn .2s ease-out}@keyframes asFadeIn{0%{opacity:0}to{opacity:1}}.as-modal-container{background:#fff;border-radius:16px;width:100%;max-width:900px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;font-family:var(--font-sans, inherit)}.as-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.75rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.as-header-title{display:flex;align-items:center;gap:.75rem}.as-header-title h2{margin:0;font-size:1.25rem;font-weight:700;color:#0f172a}.as-code-badge{background:#e0f2fe;color:#0369a1;font-size:.8rem;font-weight:700;padding:.2rem .6rem;border-radius:6px;font-family:var(--font-mono, monospace)}.as-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.4rem;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.as-close-btn:hover{background:#e2e8f0;color:#1e293b}.as-category-tabs{display:flex;padding:.75rem 1.75rem;background:#fff;border-bottom:1px solid #f1f5f9;gap:.6rem;overflow-x:auto}.as-cat-tab{display:flex;align-items:center;gap:.5rem;padding:.6rem 1rem;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .15s ease;white-space:nowrap}.as-cat-tab:hover{background:#f1f5f9;color:#1e293b}.as-cat-tab.active{background:#eff6ff;border-color:#3b82f6;color:#2563eb;box-shadow:0 1px 3px #2563eb1a}.as-modal-form{display:flex;flex-direction:column;flex:1;overflow:hidden}.as-form-content{flex:1;overflow-y:auto;padding:1.5rem 1.75rem;display:flex;flex-direction:column;gap:1.25rem}.as-error-box{margin:1rem 1.75rem 0;display:flex;align-items:center;gap:.5rem;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;padding:.75rem 1rem;border-radius:8px;font-size:.875rem}.as-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}.as-section-title{margin:0 0 1rem;font-size:.95rem;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:.5rem}.as-section.category-box.vehicle{background:#f0fdf4;border-color:#bbf7d0}.as-section.category-box.vehicle .as-section-title{color:#15803d}.as-section.category-box.it{background:#eff6ff;border-color:#bfdbfe}.as-section.category-box.it .as-section-title{color:#1d4ed8}.as-section.category-box.phone{background:#faf5ff;border-color:#e9d5ff}.as-section.category-box.phone .as-section-title{color:#7e22ce}.as-form-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:.85rem}.as-form-grid-3:last-child{margin-bottom:0}.as-form-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:.85rem}.col-span-2{grid-column:span 2}.as-field-group{display:flex;flex-direction:column;gap:.35rem}.as-field-group label{font-size:.82rem;font-weight:600;color:#475569}.as-input,.as-select,.as-textarea{width:100%;padding:.65rem .85rem;border:1.5px solid #cbd5e1;border-radius:8px;font-size:.9rem;color:#0f172a;background:#fff;transition:all .15s ease;box-sizing:border-box;font-family:inherit}.as-input:focus,.as-select:focus,.as-textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.as-input.font-mono{font-family:var(--font-mono, monospace)}.as-price-input-wrap{display:flex;gap:.5rem}.as-currency-select{width:90px;padding:.65rem .5rem;border:1.5px solid #cbd5e1;border-radius:8px;font-size:.85rem;font-weight:600;background:#fff}.as-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1.1rem 1.75rem;background:#f8fafc;border-top:1px solid #e2e8f0}.as-btn-cancel{padding:.65rem 1.25rem;border-radius:8px;font-size:.9rem;font-weight:600;background:#fff;border:1px solid #cbd5e1;color:#475569;cursor:pointer;transition:all .15s ease}.as-btn-cancel:hover:not(:disabled){background:#f1f5f9;color:#1e293b}.as-btn-save{padding:.65rem 1.35rem;border-radius:8px;font-size:.9rem;font-weight:600;background:#2563eb;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 6px -1px #2563eb33;transition:all .15s ease}.as-btn-save:hover:not(:disabled){background:#1d4ed8}.as-btn-save:disabled,.as-btn-cancel:disabled{opacity:.5;cursor:not-allowed}.as-spin{animation:asSpin 1s linear infinite}@keyframes asSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.as-input-warning{border-color:#f59e0b!important;background-color:#fffbeb!important}.as-field-warning{display:flex;align-items:center;gap:.4rem;color:#b45309;background-color:#fef3c7;border:1px solid #fde68a;padding:.35rem .65rem;border-radius:6px;font-size:.78rem;font-weight:500;margin-top:.35rem;line-height:1.3}.as-field-warning svg{flex-shrink:0;color:#d97706}.as-confirm-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#0f172ab3;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:1050;padding:1rem;animation:asFadeIn .2s ease-out}.as-confirm-dialog{background:#fff;border-radius:16px;width:100%;max-width:520px;box-shadow:0 25px 50px -12px #00000059;border:1px solid #fde68a;overflow:hidden;display:flex;flex-direction:column}.as-confirm-header{display:flex;gap:1rem;align-items:center;padding:1.25rem 1.5rem;background:#fffbeb;border-bottom:1px solid #fef3c7}.as-confirm-icon-wrap{width:48px;height:48px;border-radius:50%;background:#fef3c7;color:#d97706;display:flex;align-items:center;justify-content:center;flex-shrink:0;border:2px solid #fde68a}.as-confirm-title-area h4{margin:0;font-size:1.1rem;font-weight:700;color:#92400e}.as-confirm-title-area p{margin:.25rem 0 0;font-size:.82rem;color:#b45309}.as-confirm-body{padding:1.25rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.as-confirm-subtext{font-size:.85rem;font-weight:600;color:#475569;margin:0}.as-confirm-dup-cards{display:flex;flex-direction:column;gap:.5rem;max-height:180px;overflow-y:auto}.as-confirm-dup-card{background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid #f59e0b;border-radius:8px;padding:.65rem .85rem}.dup-card-top{display:flex;align-items:center;gap:.5rem;font-size:.88rem;color:#1e293b}.dup-field-label{color:#64748b;font-size:.8rem;font-weight:500}.dup-field-val{color:#0f172a;background:#e2e8f0;padding:.1rem .45rem;border-radius:4px;font-size:.85rem}.dup-card-meta{display:flex;align-items:center;gap:.4rem;margin-top:.35rem;font-size:.8rem;color:#64748b;flex-wrap:wrap}.dup-meta-label{color:#94a3b8}.dup-code-pill{background:#dbeafe;color:#1d4ed8;font-weight:700;font-size:.75rem;padding:.1rem .4rem;border-radius:4px;font-family:var(--font-mono, monospace)}.dup-name{font-weight:600;color:#334155}.dup-personnel{color:#059669;font-weight:500}.as-confirm-question-box{background:#fef3c7;border-radius:8px;padding:.75rem 1rem;border:1px dashed #f59e0b;margin-top:.25rem}.as-confirm-question-box p{margin:0;font-size:.88rem;font-weight:600;color:#92400e;text-align:center}.as-confirm-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;background:#f8fafc;border-top:1px solid #e2e8f0}.as-confirm-btn-cancel{padding:.65rem 1.1rem;border-radius:8px;font-size:.85rem;font-weight:600;background:#fff;border:1px solid #cbd5e1;color:#475569;cursor:pointer;transition:all .15s ease}.as-confirm-btn-cancel:hover{background:#f1f5f9;color:#0f172a}.as-confirm-btn-proceed{padding:.65rem 1.35rem;border-radius:8px;font-size:.85rem;font-weight:600;background:#d97706;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;gap:.5rem;box-shadow:0 4px 6px -1px #d9770640;transition:all .15s ease}.as-confirm-btn-proceed:hover:not(:disabled){background:#b45309}.as-confirm-btn-proceed:disabled{opacity:.6;cursor:not-allowed}.zm-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172ab3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:1.25rem;animation:zmFadeIn .2s ease-out}@keyframes zmFadeIn{0%{opacity:0}to{opacity:1}}.zm-container{background:#fff;border-radius:16px;width:100%;max-width:820px;max-height:92vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #0000004d;overflow:hidden;position:relative}.zm-container-print{max-width:900px;background:#f1f5f9}.zm-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.zm-header-left{display:flex;align-items:center;gap:.85rem}.zm-header-icon{width:40px;height:40px;border-radius:10px;background:#e0f2fe;color:#0284c7;display:flex;align-items:center;justify-content:center;flex-shrink:0}.zm-header-icon.upload-icon{background:#fef3c7;color:#d97706}.zm-header-left h3{margin:0;font-size:1.15rem;font-weight:700;color:#0f172a}.zm-header-sub{margin:.2rem 0 0;font-size:.82rem;color:#64748b}.zm-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.35rem;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.zm-close-btn:hover{background:#e2e8f0;color:#0f172a}.zm-body{padding:1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.25rem}.zm-asset-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem 1.25rem;display:flex;flex-direction:column;gap:.75rem}.zm-asset-top{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.zm-code-badge{background:#0284c7;color:#fff;font-size:.8rem;font-weight:700;padding:.2rem .55rem;border-radius:6px}.zm-asset-name{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a}.zm-asset-model{font-size:.88rem;color:#64748b}.zm-asset-meta-row{display:flex;align-items:center;gap:1.5rem;padding-top:.6rem;border-top:1px dashed #e2e8f0;font-size:.82rem;flex-wrap:wrap}.zm-meta-item{display:flex;align-items:center;gap:.35rem}.zm-meta-lbl{color:#64748b}.zm-meta-val{color:#1e293b;font-weight:600}.zm-doc-tracking-banner{display:flex;align-items:center;gap:1rem;padding:.85rem 1.1rem;border-radius:10px;font-size:.85rem}.zm-doc-tracking-banner.is-pending{background-color:#fffbeb;border:1px solid #fde68a}.zm-doc-tracking-banner.is-pending .zm-banner-icon{color:#d97706}.zm-doc-tracking-banner.is-pending .zm-banner-title{color:#92400e;font-weight:700}.zm-doc-tracking-banner.is-pending .zm-banner-desc{color:#b45309;font-size:.8rem;margin-top:.15rem}.zm-doc-tracking-banner.is-uploaded{background-color:#f0fdf4;border:1px solid #bbf7d0}.zm-doc-tracking-banner.is-uploaded .zm-banner-icon{color:#16a34a}.zm-doc-tracking-banner.is-uploaded .zm-banner-title{color:#166534;font-weight:700}.zm-doc-tracking-banner.is-uploaded .zm-banner-desc{color:#15803d;font-size:.8rem;margin-top:.15rem}.zm-banner-info{flex:1}.zm-banner-actions{display:flex;align-items:center;gap:.5rem}.zm-banner-btn-view,.zm-banner-btn-upload{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .8rem;border-radius:7px;font-size:.8rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .15s ease;border:1px solid #cbd5e1;background:#fff;color:#334155}.zm-banner-btn-upload.primary{background:#2563eb;color:#fff;border-color:#2563eb}.zm-banner-btn-upload.primary:hover{background:#1d4ed8}.zm-form-group{display:flex;flex-direction:column;gap:.45rem}.zm-label{font-size:.85rem;font-weight:600;color:#334155;display:flex;align-items:center;gap:.4rem}.zm-personnel-selector{display:flex;flex-direction:column;gap:.4rem}.zm-search-input-wrap{position:relative;display:flex;align-items:center}.zm-search-input-wrap svg{position:absolute;left:.75rem}.zm-filter-input{width:100%;padding:.55rem .75rem .55rem 2.2rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.85rem;outline:none}.zm-filter-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.zm-select{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:.4rem;font-size:.85rem;color:#1e293b;outline:none;max-height:140px}.zm-select option{padding:.45rem .6rem;border-radius:4px}.zm-select option:checked{background:#e0f2fe;color:#0369a1;font-weight:600}.zm-selected-person-card{display:flex;align-items:center;gap:.75rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:.65rem .85rem;margin-top:.25rem}.zm-person-avatar{width:36px;height:36px;border-radius:50%;background:#16a34a;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.82rem;font-weight:700;flex-shrink:0}.zm-person-fullname{font-size:.92rem;font-weight:700;color:#166534}.zm-person-details{font-size:.78rem;color:#15803d;display:flex;gap:.4rem;flex-wrap:wrap}.zm-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.zm-input,.zm-textarea{width:100%;padding:.6rem .8rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.88rem;color:#0f172a;outline:none}.zm-input:focus,.zm-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.zm-footer{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.5rem;background:#f8fafc;border-top:1px solid #e2e8f0}.zm-footer-left,.zm-footer-right{display:flex;align-items:center;gap:.75rem}.zm-btn-cancel{padding:.65rem 1.15rem;border-radius:8px;font-size:.88rem;font-weight:600;background:#fff;border:1px solid #cbd5e1;color:#475569;cursor:pointer;transition:all .15s ease}.zm-btn-cancel:hover:not(:disabled){background:#f1f5f9}.zm-btn-document{padding:.65rem 1.25rem;border-radius:8px;font-size:.88rem;font-weight:600;background:#0284c7;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;gap:.45rem;box-shadow:0 4px 6px -1px #0284c740;transition:all .15s ease}.zm-btn-document:hover{background:#0369a1}.zm-btn-assign{padding:.65rem 1.35rem;border-radius:8px;font-size:.88rem;font-weight:600;background:#16a34a;border:none;color:#fff;cursor:pointer;display:flex;align-items:center;gap:.45rem;box-shadow:0 4px 6px -1px #16a34a40;transition:all .15s ease}.zm-btn-assign:hover:not(:disabled){background:#15803d}.zm-btn-assign:disabled{opacity:.5;cursor:not-allowed}.zm-btn-unassign{padding:.6rem 1rem;border-radius:8px;font-size:.82rem;font-weight:600;background:#fee2e2;border:1px solid #fca5a5;color:#b91c1c;cursor:pointer;transition:all .15s ease}.zm-btn-unassign:hover:not(:disabled){background:#fecaca}.zm-spin{animation:zmSpin 1s linear infinite}@keyframes zmSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.zm-print-view{display:flex;flex-direction:column;height:92vh}.zm-print-toolbar{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.5rem;background:#fff;border-bottom:1px solid #e2e8f0}.zm-btn-back{display:flex;align-items:center;gap:.4rem;background:#f1f5f9;border:1px solid #cbd5e1;padding:.5rem .85rem;border-radius:7px;font-size:.85rem;font-weight:600;color:#334155;cursor:pointer}.zm-print-toolbar-title{font-weight:700;font-size:.95rem;color:#0f172a}.zm-btn-print-action{display:flex;align-items:center;gap:.5rem;background:#2563eb;color:#fff;border:none;padding:.55rem 1.25rem;border-radius:7px;font-size:.88rem;font-weight:600;cursor:pointer;box-shadow:0 4px 6px -1px #2563eb40}.zm-btn-print-action:hover{background:#1d4ed8}.zm-a4-document{background:#fff;width:210mm;min-height:297mm;margin:1.5rem auto;padding:20mm;box-shadow:0 10px 25px -5px #00000026;overflow-y:auto;box-sizing:border-box;font-family:Times New Roman,Times,serif,system-ui;color:#111827}.zm-doc-header{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:12px;border-bottom:2px solid #1e293b;margin-bottom:18px}.zm-doc-company-title h1{margin:0;font-size:1.25rem;font-weight:800;letter-spacing:.5px;color:#0f172a}.zm-doc-sub{margin:3px 0 0;font-size:.78rem;color:#475569;font-weight:600}.zm-doc-meta-box{text-align:right;font-size:.8rem;color:#334155;line-height:1.4}.zm-doc-main-title{text-align:center;margin:15px 0 20px}.zm-doc-main-title h2{margin:0;font-size:1.15rem;font-weight:800;text-decoration:underline;letter-spacing:.5px}.zm-doc-section{margin-bottom:18px}.zm-doc-sec-title{font-size:.85rem;font-weight:800;background:#f1f5f9;padding:5px 8px;border-left:4px solid #0f172a;margin:0 0 8px}.zm-doc-table{width:100%;border-collapse:collapse;font-size:.82rem}.zm-doc-table th,.zm-doc-table td{border:1px solid #94a3b8;padding:6px 8px;text-align:left}.zm-doc-table th{background-color:#f8fafc;font-weight:700;color:#1e293b}.zm-doc-commitment-text{font-size:.8rem;line-height:1.5;text-align:justify;color:#334155}.zm-doc-commitment-text p{margin:0 0 8px}.zm-doc-signatures{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:30px;padding-top:15px}.zm-sign-box{border:1px dashed #94a3b8;padding:12px 14px;border-radius:4px;font-size:.8rem}.zm-sign-title{font-weight:800;text-align:center;margin-bottom:10px;border-bottom:1px solid #cbd5e1;padding-bottom:4px}.zm-sign-line{margin-bottom:6px;color:#334155}.zm-sign-space{height:60px;display:flex;align-items:flex-end;justify-content:center;color:#94a3b8;font-style:italic;font-size:.75rem}.zm-current-file-box{display:flex;align-items:center;justify-content:space-between;background:#f0fdf4;border:1px solid #bbf7d0;padding:.9rem 1.1rem;border-radius:10px}.zm-current-file-left{display:flex;align-items:center;gap:.75rem}.zm-current-file-left strong{color:#166534;font-size:.9rem}.zm-current-file-left p{margin:.15rem 0 0;font-size:.78rem;color:#15803d}.zm-current-file-right{display:flex;align-items:center;gap:.5rem}.zm-btn-view-doc{display:inline-flex;align-items:center;gap:.35rem;background:#fff;border:1px solid #cbd5e1;padding:.45rem .8rem;border-radius:6px;font-size:.8rem;font-weight:600;color:#0284c7;text-decoration:none}.zm-btn-delete-doc{display:inline-flex;align-items:center;gap:.35rem;background:#fee2e2;border:1px solid #fca5a5;padding:.45rem .8rem;border-radius:6px;font-size:.8rem;font-weight:600;color:#dc2626;cursor:pointer}.zm-dropzone{border:2px dashed #cbd5e1;border-radius:12px;padding:2.5rem 1.5rem;text-align:center;cursor:pointer;background:#f8fafc;transition:all .2s ease}.zm-dropzone:hover{border-color:#2563eb;background:#eff6ff}.zm-dropzone.has-file{border-color:#2563eb;background:#f0fdf4}.zm-dropzone-prompt{display:flex;flex-direction:column;align-items:center;gap:.6rem}.prompt-title{font-size:.95rem;font-weight:600;color:#1e293b}.prompt-sub{font-size:.8rem;color:#64748b}.zm-selected-file-info{display:flex;flex-direction:column;align-items:center;gap:.4rem}.file-name{font-size:.95rem;font-weight:700;color:#0f172a}.file-size{font-size:.8rem;color:#64748b}@media print{body *{visibility:hidden}#printable-zimmet-doc,#printable-zimmet-doc *{visibility:visible}#printable-zimmet-doc{position:absolute;left:0;top:0;width:100%!important;margin:0!important;padding:10mm 15mm!important;box-shadow:none!important;border:none!important}.no-print{display:none!important}}.company-assets-page{width:100%!important;max-width:none!important;padding:1.5rem 2rem 3rem;display:flex;flex-direction:column;gap:1.25rem;box-sizing:border-box;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.as-header-card{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem 1.75rem;box-shadow:0 1px 3px #00000008;flex-wrap:wrap;gap:1rem}.as-title-area{display:flex;flex-direction:column;gap:.35rem}.as-breadcrumb{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#94a3b8}.as-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s ease}.as-breadcrumb a:hover{color:#2563eb}.as-breadcrumb .current{color:#0f172a;font-weight:600}.as-main-title{display:flex;align-items:center;gap:.85rem}.as-title-icon{width:44px;height:44px;border-radius:12px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;border:1px solid #bfdbfe;flex-shrink:0}.as-main-title h1{margin:0;font-size:1.35rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}.as-main-title p{margin:.15rem 0 0;font-size:.82rem;color:#64748b}.as-header-buttons{display:flex;align-items:center;gap:.75rem}.as-btn-primary{background:#2563eb;color:#fff;border:none;padding:.65rem 1.2rem;border-radius:10px;font-weight:600;font-size:.9rem;display:inline-flex;align-items:center;gap:.45rem;cursor:pointer;box-shadow:0 4px 6px -1px #2563eb33;transition:all .15s ease}.as-btn-primary:hover{background:#1d4ed8}.as-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.as-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.15rem 1.35rem;display:flex;flex-direction:column;gap:.4rem;box-shadow:0 1px 2px #00000008;position:relative;transition:all .15s ease}.as-kpi-card.clickable{cursor:pointer}.as-kpi-card.clickable:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0000000d;border-color:#cbd5e1}.as-kpi-icon{width:38px;height:38px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:.2rem}.as-kpi-icon.total{background:#f1f5f9;color:#475569}.as-kpi-icon.vehicle{background:#f0fdf4;color:#16a34a}.as-kpi-icon.it{background:#eff6ff;color:#2563eb}.as-kpi-icon.phone{background:#faf5ff;color:#9333ea}.as-kpi-info{display:flex;flex-direction:column}.as-kpi-val{font-size:1.6rem;font-weight:800;color:#0f172a;line-height:1.2;font-family:var(--font-mono, monospace)}.as-kpi-lbl{font-size:.8rem;font-weight:600;color:#64748b}.as-kpi-sub{font-size:.72rem;color:#94a3b8;margin-top:.15rem}.as-filter-card{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:.85rem 1.25rem;gap:1rem;flex-wrap:wrap}.as-cat-pills{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.as-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;color:#64748b;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s ease}.as-pill:hover{background:#f1f5f9;color:#1e293b}.as-pill.active{background:#eff6ff;color:#2563eb;border-color:#3b82f6;box-shadow:0 1px 3px #2563eb1a}.as-filter-right{display:flex;align-items:center;gap:.75rem}.as-search-box{display:flex;align-items:center;gap:.5rem;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:.45rem .75rem;width:280px;transition:all .15s ease}.as-search-box:focus-within{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.as-search-input{border:none;background:transparent;font-size:.82rem;color:#0f172a;width:100%;outline:none}.as-status-select{padding:.45rem .75rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff;font-size:.82rem;font-weight:600;color:#334155;outline:none}.as-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #00000005;overflow:hidden}.as-table{width:100%;border-collapse:collapse;text-align:left;font-size:.85rem}.as-table thead th{background:#f8fafc;color:#475569;font-weight:700;font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;padding:.85rem 1rem;border-bottom:1px solid #e2e8f0;white-space:nowrap}.as-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background-color .12s ease}.as-table tbody tr:hover{background-color:#f8fafc}.as-table tbody td{padding:.95rem 1rem;vertical-align:middle;color:#1e293b}.as-code-text{font-size:.8rem;font-weight:700;color:#0369a1;background:#f0f9ff;border:1px solid #e0f2fe;padding:2px 7px;border-radius:5px;white-space:nowrap}.as-name-cell{display:flex;flex-direction:column;gap:2px}.as-item-name{font-weight:700;color:#0f172a;font-size:.88rem}.as-item-model{font-size:.74rem;color:#64748b}.as-ident-box{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:5px;font-size:.78rem;white-space:nowrap}.as-ident-box.vehicle-plate{background:#fff;border:1.5px solid #0f172a;border-radius:4px;padding:1px 6px;gap:5px}.plate-tr{background:#039;color:#fff;font-size:.65rem;font-weight:800;padding:1px 3px;border-radius:2px}.plate-num{font-family:var(--font-mono, monospace);font-weight:800;color:#0f172a;letter-spacing:.05em}.as-ident-box.phone-num{background:#faf5ff;color:#7e22ce;border:1px solid #e9d5ff}.as-ident-box.serial{background:#f1f5f9;color:#334155;border:1px solid #e2e8f0}.as-ident-none{color:#cbd5e1}.as-loc-text{font-size:.78rem;color:#64748b;display:inline-flex;align-items:center;gap:3px;white-space:nowrap}.as-cat-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:6px;white-space:nowrap}.as-cat-badge.vehicle{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.as-cat-badge.it{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.as-cat-badge.phone{background:#faf5ff;color:#7e22ce;border:1px solid #e9d5ff}.as-cat-badge.office{background:#f8fafc;color:#475569;border:1px solid #e2e8f0}.as-status-badge{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:6px;white-space:nowrap}.as-status-badge.assigned{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.as-status-badge.in-stock{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.as-status-badge.maintenance{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.as-status-badge.scrapped{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.as-person-cell{display:flex;align-items:center;gap:.6rem}.as-person-avatar{width:28px;height:28px;border-radius:50%;background:#3b82f6;color:#fff;font-size:.7rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.as-person-name{font-size:.82rem;font-weight:600;color:#0f172a;display:block}.as-person-sub{font-size:.7rem;color:#94a3b8;display:block}.as-unassigned-pill{font-size:.72rem;font-weight:600;color:#94a3b8;background:#f1f5f9;padding:2px 8px;border-radius:5px;white-space:nowrap}.as-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.as-action-btn{width:30px;height:30px;border-radius:7px;border:1px solid #e2e8f0;background:#fff;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.as-action-btn.edit:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.as-action-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.as-empty-state{display:flex;flex-direction:column;align-items:center;gap:.6rem;color:#64748b}.as-empty-state h3{margin:.35rem 0 0;color:#1e293b;font-size:1.1rem}.as-empty-state p{margin:0;font-size:.85rem;color:#94a3b8;max-width:360px}.as-assign-btn{display:inline-flex;align-items:center;gap:.35rem;background-color:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:.35rem .75rem;border-radius:7px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease}.as-assign-btn:hover{background-color:#dbeafe;border-color:#93c5fd;transform:translateY(-1px)}.as-person-info-wrap{display:flex;flex-direction:column;gap:.2rem}.as-signed-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:6px;font-size:.74rem;font-weight:600;cursor:pointer;transition:all .15s ease;width:fit-content}.as-signed-badge.uploaded{background-color:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.as-signed-badge.uploaded:hover{background-color:#dcfce7;border-color:#86efac}.as-signed-badge.pending{background-color:#fffbeb;color:#b45309;border:1px solid #fde68a}.as-signed-badge.pending:hover{background-color:#fef3c7;border-color:#fcd34d}.as-action-btn.zimmet:hover{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.department-permissions-page{padding:1.25rem 2rem;width:100%;max-width:100%;box-sizing:border-box;min-height:calc(100vh - 80px);background-color:#f8fafc;color:#0f172a}.permissions-header{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:1.25rem 1.75rem;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 2px 8px #00000008;margin-bottom:1.25rem;flex-wrap:wrap;gap:1rem}.header-left{display:flex;align-items:center;gap:1rem}.header-icon-box{width:52px;height:52px;border-radius:12px;background:linear-gradient(135deg,#e0f2fe,#bae6fd);display:flex;align-items:center;justify-content:center;color:#0284c7;flex-shrink:0}.header-badge-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.badge-admin{background:#f1f5f9;color:#475569;font-size:.7rem;font-weight:700;padding:.2rem .5rem;border-radius:6px;letter-spacing:.5px}.badge-unsaved{background:#fef3c7;color:#b45309;font-size:.72rem;font-weight:600;padding:.2rem .6rem;border-radius:6px;border:1px solid #fde68a;animation:pulse-border 1.5s infinite}@keyframes pulse-border{0%,to{opacity:1}50%{opacity:.7}}.header-title{font-size:1.35rem;font-weight:800;color:#0a2540;margin:0;line-height:1.2}.header-subtitle{font-size:.85rem;color:#64748b;margin:.2rem 0 0}.header-actions{display:flex;align-items:center;gap:.75rem}.btn-secondary{display:inline-flex;align-items:center;gap:.4rem;padding:.65rem 1rem;background:#fff;border:1px solid #cbd5e1;color:#475569;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#f1f5f9;border-color:#94a3b8}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;background:linear-gradient(135deg,#0284c7,#0369a1);border:none;color:#fff;border-radius:8px;font-size:.88rem;font-weight:700;cursor:pointer;box-shadow:0 4px 12px #0284c740;transition:all .2s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #0284c759}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary.pulse{animation:pulse-save 2s infinite}@keyframes pulse-save{0%{box-shadow:0 0 #0284c780}70%{box-shadow:0 0 0 10px #0284c700}to{box-shadow:0 0 #0284c700}}.dept-selector-wrapper{background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:1.15rem 1.25rem;margin-bottom:1.25rem;box-shadow:0 2px 6px #00000005}.dept-selector-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem;flex-wrap:wrap;gap:.5rem}.dept-selector-title{display:flex;align-items:center;gap:.4rem;font-size:.88rem;font-weight:700;color:#0f172a}.dept-selector-hint{font-size:.8rem;color:#64748b}.dept-card-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.85rem}.dept-card{display:flex;flex-direction:column;justify-content:space-between;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;padding:.85rem 1rem;text-align:left;cursor:pointer;transition:all .2s ease;position:relative;min-height:86px}.dept-card:hover{border-color:#93c5fd;background:#f0f7ff;transform:translateY(-2px)}.dept-card.active{background:linear-gradient(180deg,#f0f9ff,#e0f2fe);border-color:#0284c7;box-shadow:0 4px 12px #0284c726}.dept-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.dept-code{font-size:.72rem;font-weight:700;color:#0284c7;background:#e0f2fe;padding:.15rem .45rem;border-radius:4px}.dept-badge-personnel{display:flex;align-items:center;gap:.25rem;font-size:.72rem;color:#64748b;font-weight:600}.dept-name{font-size:.88rem;font-weight:700;color:#0f172a;line-height:1.3;margin-bottom:.4rem}.dept-card-bottom{display:flex;align-items:center;justify-content:space-between;font-size:.74rem;color:#64748b}.dept-allowed-modules{color:#0369a1;font-weight:600}.dept-check{width:20px;height:20px;border-radius:50%;background:#0284c7;color:#fff;display:flex;align-items:center;justify-content:center}.dept-detail-strip{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:1.15rem 1.5rem;margin-bottom:1.25rem;box-shadow:0 2px 6px #00000005;flex-wrap:wrap;gap:1.25rem}.strip-info{max-width:500px}.strip-title-row{display:flex;align-items:center;gap:.6rem;margin-bottom:.3rem}.strip-title{font-size:1.2rem;font-weight:800;color:#0a2540;margin:0}.strip-code-badge{background:#0284c7;color:#fff;font-size:.72rem;font-weight:700;padding:.2rem .5rem;border-radius:6px}.strip-desc{font-size:.82rem;color:#64748b;margin:0;line-height:1.4}.strip-stats{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.stat-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.6rem .9rem;min-width:120px;display:flex;flex-direction:column;gap:.2rem}.stat-label{font-size:.72rem;color:#64748b;font-weight:600;text-transform:uppercase}.stat-val{display:flex;align-items:center;gap:.35rem;font-size:.95rem;font-weight:800}.text-blue{color:#0284c7}.text-teal{color:#0d9488}.text-amber{color:#d97706}.controls-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:1rem}.tabs-wrapper{display:flex;align-items:center;gap:.5rem}.tab-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.15rem;border-radius:10px;border:1px solid #cbd5e1;background:#fff;color:#475569;font-size:.86rem;font-weight:700;cursor:pointer;transition:all .2s}.tab-btn:hover{background:#f1f5f9}.tab-btn.active{background:#0a2540;color:#fff;border-color:#0a2540}.tab-pill{font-size:.72rem;font-weight:700;padding:.15rem .45rem;border-radius:20px;background:#00000014}.tab-btn.active .tab-pill{background:#fff3;color:#fff}.presets-wrapper{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.presets-label{font-size:.8rem;font-weight:700;color:#64748b}.btn-preset{display:inline-flex;align-items:center;gap:.35rem;padding:.45rem .8rem;border-radius:8px;font-size:.78rem;font-weight:700;border:1px solid transparent;cursor:pointer;transition:all .15s}.btn-preset.green{background:#dcfce7;color:#166534;border-color:#bbf7d0}.btn-preset.green:hover{background:#bbf7d0}.btn-preset.blue{background:#e0f2fe;color:#0369a1;border-color:#bae6fd}.btn-preset.blue:hover{background:#bae6fd}.btn-preset.amber{background:#fef3c7;color:#92400e;border-color:#fde68a}.btn-preset.amber:hover{background:#fde68a}.btn-preset.red{background:#fee2e2;color:#991b1b;border-color:#fecaca}.btn-preset.red:hover{background:#fecaca}.btn-preset.clone{background:#f1f5f9;color:#334155;border-color:#cbd5e1}.btn-preset.clone:hover{background:#e2e8f0}.matrix-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 2px 8px #00000008;overflow:hidden}.matrix-filter-bar{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid #f1f5f9;flex-wrap:wrap;gap:.85rem;background:#fafbfc}.search-box{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:.45rem .8rem;width:280px}.search-box input{border:none;outline:none;background:transparent;font-size:.85rem;width:100%}.btn-clear{border:none;background:none;color:#94a3b8;cursor:pointer;padding:0}.group-filter-list{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.group-pill{padding:.35rem .75rem;border-radius:20px;font-size:.76rem;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .15s}.group-pill:hover{background:#f1f5f9}.group-pill.active{background:#0284c7;color:#fff;border-color:#0284c7}.matrix-table-container{overflow-x:auto}.matrix-table{width:100%;border-collapse:collapse;text-align:left}.matrix-table th{background:#f8fafc;padding:.85rem 1rem;font-size:.78rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.4px;border-bottom:1.5px solid #e2e8f0}.th-action-title{display:inline-flex;align-items:center;gap:.35rem;justify-content:center}.matrix-table td{padding:.9rem 1rem;border-bottom:1px solid #f1f5f9;font-size:.85rem;vertical-align:middle}.matrix-table tr:hover{background:#f8fafc}.matrix-table tr.row-inactive{opacity:.65;background:#fafafa}.matrix-table tr.row-inactive:hover{opacity:.9;background:#f1f5f9}.module-cell{display:flex;align-items:center;gap:.75rem}.module-icon{width:32px;height:32px;border-radius:8px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;color:#0284c7;flex-shrink:0}.module-info{display:flex;flex-direction:column}.module-title{font-weight:700;color:#0f172a}.module-path{font-size:.72rem;color:#94a3b8;font-family:monospace}.group-badge{font-size:.74rem;font-weight:600;color:#475569;background:#f1f5f9;padding:.25rem .6rem;border-radius:6px;white-space:nowrap}.status-pill{display:inline-block;padding:.25rem .65rem;border-radius:12px;font-size:.74rem;font-weight:700;white-space:nowrap}.status-full{background:#dcfce7;color:#15803d}.status-operational{background:#e0f2fe;color:#0369a1}.status-readonly{background:#fef3c7;color:#b45309}.status-none{background:#f1f5f9;color:#94a3b8}.toggle-switch{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input{opacity:0;width:0;height:0}.slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#cbd5e1;transition:.2s ease}.slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.2s ease;box-shadow:0 1px 3px #0003}.toggle-switch.disabled{opacity:.4;cursor:not-allowed}.toggle-switch.disabled .slider{cursor:not-allowed}input:checked+.slider.view{background-color:#0284c7}input:checked+.slider.create{background-color:#10b981}input:checked+.slider.edit{background-color:#f59e0b}input:checked+.slider.delete{background-color:#ef4444}input:checked+.slider:before{transform:translate(20px)}.slider.round{border-radius:24px}.slider.round:before{border-radius:50%}.personnel-tab-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:1.5rem;box-shadow:0 2px 8px #00000008}.personnel-notice{display:flex;align-items:flex-start;gap:1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;padding:1rem 1.25rem;margin-bottom:1.5rem}.notice-icon{width:40px;height:40px;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.notice-title{font-size:.95rem;font-weight:700;color:#0369a1;margin:0 0 .25rem}.notice-text{font-size:.84rem;color:#475569;margin:0;line-height:1.4}.personnel-table{width:100%;border-collapse:collapse}.personnel-table th{background:#f8fafc;padding:.85rem 1rem;font-size:.78rem;font-weight:700;color:#475569;text-transform:uppercase;border-bottom:1.5px solid #e2e8f0;text-align:left}.personnel-table td{padding:.9rem 1rem;border-bottom:1px solid #f1f5f9;font-size:.85rem}.personnel-name-cell{display:flex;align-items:center;gap:.75rem}.personnel-avatar{width:36px;height:36px;border-radius:50%;background:#e0f2fe;color:#0284c7;font-weight:700;display:flex;align-items:center;justify-content:center;font-size:.82rem}.personnel-name{font-weight:700;color:#0f172a}.personnel-email{font-size:.74rem;color:#94a3b8}.position-badge{background:#f1f5f9;color:#475569;font-size:.76rem;font-weight:600;padding:.25rem .6rem;border-radius:6px}.status-tag{display:inline-block;font-size:.74rem;font-weight:700;padding:.25rem .55rem;border-radius:6px}.status-tag.active{background:#dcfce7;color:#166534}.status-tag.inactive{background:#fee2e2;color:#991b1b}.table-empty{text-align:center;padding:2.5rem 1rem;color:#94a3b8;font-size:.9rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100}.clone-modal-card{background:#fff;border-radius:14px;width:100%;max-width:480px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow:hidden;animation:modal-appear .2s ease}@keyframes modal-appear{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.15rem 1.25rem;border-bottom:1px solid #f1f5f9}.modal-title{display:flex;align-items:center;gap:.5rem;font-size:.98rem;font-weight:700;color:#0f172a}.btn-close{border:none;background:none;cursor:pointer;color:#94a3b8}.btn-close:hover{color:#0f172a}.modal-body{padding:1.25rem}.modal-desc{font-size:.85rem;color:#475569;line-height:1.4;margin-bottom:1.25rem}.form-group label{display:block;font-size:.82rem;font-weight:700;color:#334155;margin-bottom:.4rem}.form-select{width:100%;padding:.65rem .85rem;border-radius:8px;border:1.5px solid #cbd5e1;font-size:.88rem;outline:none}.form-select:focus{border-color:#0284c7}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;background:#f8fafc;border-top:1px solid #f1f5f9}.btn-modal-cancel{padding:.6rem 1rem;border:1px solid #cbd5e1;background:#fff;color:#475569;border-radius:8px;font-weight:600;font-size:.84rem;cursor:pointer}.btn-modal-confirm{padding:.6rem 1.25rem;border:none;background:#0284c7;color:#fff;border-radius:8px;font-weight:700;font-size:.84rem;cursor:pointer}.btn-modal-confirm:disabled{opacity:.5;cursor:not-allowed}.permissions-access-denied{min-height:70vh;display:flex;align-items:center;justify-content:center;padding:2rem}.access-denied-card{background:#fff;border-radius:16px;border:1px solid #fecaca;padding:2.5rem;max-width:500px;text-align:center;box-shadow:0 10px 25px -5px #ef44441a}.denied-icon{width:72px;height:72px;border-radius:50%;background:#fee2e2;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}.access-denied-card h2{font-size:1.35rem;font-weight:800;color:#991b1b;margin-bottom:.5rem}.access-denied-card p{font-size:.9rem;color:#64748b;line-height:1.5;margin-bottom:1.5rem}.btn-back{display:inline-flex;align-items:center;gap:.5rem;background:#0a2540;color:#fff;padding:.75rem 1.5rem;border-radius:8px;border:none;font-weight:700;cursor:pointer}.proposal-detail-modal{background:var(--bg-card);border-radius:var(--radius-lg);display:flex;flex-direction:column;overflow:hidden;box-shadow:var(--shadow-lg);font-family:var(--font-sans)}.proposal-detail-modal .modal-header{padding:1.25rem 1.75rem;background:#fff!important;border-bottom:1px solid var(--border-color)!important;display:flex;justify-content:space-between;align-items:center}.proposal-detail-modal .modal-header h2{font-size:1.25rem!important;font-weight:700!important;color:var(--gray-900)!important;margin:0!important}.proposal-detail-modal .btn{font-weight:600!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;display:flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px!important}.proposal-detail-modal .btn-primary{background:var(--primary)!important;color:#fff!important;border:none!important;box-shadow:0 2px 4px #00408526!important}.proposal-detail-modal .btn-primary:hover{background:var(--primary-hover)!important;transform:translateY(-1px);box-shadow:0 4px 6px #00408533!important}.proposal-detail-modal .btn-outline{background:transparent!important;border:1px solid var(--gray-300)!important;color:var(--gray-600)!important;box-shadow:0 1px 2px #0000000d!important}.proposal-detail-modal .btn-outline:hover{border-color:var(--primary)!important;color:var(--primary)!important;background:#f8fafc!important;transform:translateY(-1px)}.proposal-summary-header{background:#fff!important;border:1px solid var(--border-color)!important;border-radius:var(--radius-lg)!important;padding:1.5rem!important;margin-bottom:1.5rem!important;box-shadow:var(--shadow-sm)!important}.sticky-add-form{position:sticky;top:0;z-index:100;background:#fff;padding:1rem 1.5rem!important;margin:0!important;border-bottom:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.proposal-items-table{width:100%;border-collapse:separate;border-spacing:0;margin-top:.5rem}.proposal-items-table thead th{background:#f8fafc!important;padding:.875rem .5rem!important;font-size:.75rem!important;font-weight:700!important;color:var(--gray-500)!important;text-transform:uppercase!important;letter-spacing:.05em!important;border-bottom:2px solid var(--gray-200)!important}.proposal-items-table tbody tr:hover{background:var(--gray-50)!important}.proposal-items-table td{padding:1rem .5rem!important;border-bottom:1px solid var(--gray-100)!important;vertical-align:middle!important}.proposal-items-table td.price,.proposal-items-table td.quantity,.proposal-items-table td.vat,.proposal-items-table th.text-right{text-align:right!important}.section-header{padding:1rem 1.5rem!important;background:#fff!important;border-bottom:1px solid var(--gray-200)!important;transition:background var(--transition-fast)}.section-header:hover{background:var(--gray-50)!important}.section-header.level-0{background:var(--gray-50)!important;font-weight:700}.section-header.level-1{padding-left:2.5rem!important}.section-header.level-2{padding-left:3.5rem!important}.proposal-totals-footer{background:#fff!important;border-top:1px solid var(--gray-200)!important;padding:1.25rem 1.75rem!important;display:flex!important;justify-content:space-between!important;align-items:center!important;box-shadow:0 -4px 20px -2px #0000000d!important;margin-top:auto}.totals-category-card{display:flex;flex-direction:column;padding:.6rem .9rem!important;background:#f8fafc!important;border:1px solid var(--gray-200)!important;border-radius:8px!important;min-width:95px!important;transition:all .2s ease!important;box-shadow:0 1px 2px #00000005!important}.totals-category-card:hover{background:#f1f5f9!important;border-color:var(--gray-300)!important;transform:translateY(-1px)!important;box-shadow:var(--shadow-sm)!important}.totals-category-card .total-label{font-size:.65rem!important;font-weight:800!important;color:var(--gray-500)!important;text-transform:uppercase!important;letter-spacing:.06em!important;margin-bottom:.35rem!important}.totals-category-card .total-value{font-size:1.05rem!important;font-weight:800!important;font-family:var(--font-sans)!important;color:var(--gray-900)!important;line-height:1!important}.grand-total-highlight{background:var(--primary)!important;color:#fff!important;padding:.75rem 1.75rem!important;border-radius:10px!important;display:flex!important;flex-direction:column!important;align-items:flex-end!important;box-shadow:0 4px 14px #00408540!important;transition:all .2s ease!important}.grand-total-highlight:hover{transform:translateY(-2px)!important;box-shadow:0 6px 20px #00408559!important}.grand-total-highlight .highlight-label{font-size:.7rem!important;font-weight:800!important;color:#ffffffbf!important;text-transform:uppercase!important;letter-spacing:.12em!important;margin-bottom:.2rem!important}.grand-total-highlight .highlight-value{font-size:1.65rem!important;font-weight:900!important;letter-spacing:-.02em!important}.qty-input,.notes-textarea{border:1px solid var(--gray-200)!important;border-radius:8px!important;padding:.5rem!important;font-size:var(--text-sm)!important;transition:all .2s ease!important}.qty-input:focus,.notes-textarea:focus{border-color:var(--primary)!important;box-shadow:0 0 0 3px var(--primary-bg)!important;outline:none!important}.inline-item-input{border:1px solid var(--gray-200)!important;border-radius:6px!important;padding:4px 8px!important;text-align:center!important;background-color:#fafafa!important;transition:all .2s ease!important;box-shadow:inset 0 1px 2px #0000000a!important}.inline-item-input:focus{border-color:var(--primary)!important;background-color:#fff!important;box-shadow:0 0 0 3px var(--primary-bg),inset 0 1px 2px #0000000a!important;outline:none!important}.search-results-list{position:absolute;top:100%;left:0;right:0;z-index:1000;margin-top:4px}.search-results-dropdown{background:#fff;border:1px solid var(--gray-200);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:400px;overflow-y:auto}.search-result-item{cursor:pointer;transition:all .1s}.search-result-item:hover,.search-result-item.active{background-color:#004085!important;color:#fff!important;border-left:5px solid #002752!important}.search-result-item.active *,.search-result-item:hover *{color:#fff!important}.search-result-item.active .result-code,.search-result-item:hover .result-code{background-color:#fff3!important;color:#fff!important;padding:1px 4px;border-radius:3px}.search-result-item.active .result-desc,.search-result-item:hover .result-desc{color:#fffc!important}.search-result-item.no-match{padding:1rem;text-align:center;color:var(--gray-500);font-style:italic}@keyframes pulse{0%{box-shadow:0 0 #f59e0b66;transform:scale(1)}50%{box-shadow:0 0 0 6px #f59e0b26;transform:scale(1.08)}to{box-shadow:0 0 #f59e0b00;transform:scale(1)}}.catalog-section-badge-btn{display:inline-flex;align-items:center;gap:4px;background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1;font-size:.74rem;padding:2px 8px;border-radius:4px;cursor:pointer;transition:all .15s ease;font-family:inherit}.catalog-section-badge-btn:hover{background:#e0f2fe;border-color:#7dd3fc;color:#0284c7;transform:translateY(-1px);box-shadow:0 1px 3px #0369a126}.catalog-section-badge-btn strong{color:#0284c7;font-weight:700}.proposal-detail-modal{width:100vw!important;max-width:100vw!important;height:100vh!important;max-height:100vh!important;overflow-x:hidden!important;box-sizing:border-box!important}.proposal-detail-modal .modal-header{width:100vw!important;max-width:100vw!important;box-sizing:border-box!important;overflow:visible!important;flex-shrink:0!important}.proposal-detail-modal .modal-body{padding:1rem 1.5rem!important;overflow-y:scroll!important;overflow-x:hidden!important;flex:1 1 0%!important;min-height:0!important;max-height:none!important;width:100%!important;max-width:100vw!important;box-sizing:border-box!important}.proposal-detail-modal .modal-body::-webkit-scrollbar{width:10px!important;height:10px!important}.proposal-detail-modal .modal-body::-webkit-scrollbar-track{background:#f1f5f9!important;border-left:1px solid #e2e8f0!important}.proposal-detail-modal .modal-body::-webkit-scrollbar-thumb{background:#94a3b8!important;border-radius:5px!important;border:2px solid #f1f5f9!important}.proposal-detail-modal .modal-body::-webkit-scrollbar-thumb:hover{background:#64748b!important}.proposal-detail-modal .section-items{overflow-x:auto!important;max-width:100%!important;padding:.5rem 1rem 1rem 1.5rem!important;-webkit-overflow-scrolling:touch}.proposal-detail-modal .proposal-items-table{min-width:1350px!important;width:100%!important}.proposal-detail-modal .proposal-totals-footer,.proposal-detail-modal .proposal-totals-collapsed-bar,.proposal-detail-modal .discount-setup-card,.proposal-detail-modal .discount-setup-card-collapsed,.proposal-detail-modal .discount-internal-log-box{flex-shrink:0!important;margin-top:0!important;max-width:100vw!important;box-sizing:border-box!important;overflow-x:auto!important}.proposal-detail-modal .items-hierarchy,.proposal-detail-modal .proposal-summary-tab,.proposal-detail-modal .sticky-add-form,.proposal-detail-modal .table-header-row{flex-shrink:0!important;overflow:visible!important}.unit-price-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .15s ease-out}.unit-price-modal-container{background:#fff;width:96vw;max-width:1600px;height:92vh;max-height:940px;border-radius:12px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;display:flex;flex-direction:column;overflow:hidden;animation:modalScale .2s cubic-bezier(.16,1,.3,1)}@keyframes modalScale{0%{transform:scale(.97);opacity:0}to{transform:scale(1);opacity:1}}.unit-price-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.15rem 1.75rem;background:linear-gradient(to right,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0}.header-title-area{display:flex;align-items:center;gap:1rem}.header-icon-wrap{width:44px;height:44px;background:#e0f2fe;color:#0284c7;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;box-shadow:inset 0 0 0 1px #bae6fd}.header-title{margin:0;font-size:1.25rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}.header-subtitle{margin:.2rem 0 0;font-size:.85rem;color:#64748b}.unit-price-modal-close{background:transparent;border:1px solid #cbd5e1;width:34px;height:34px;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#64748b;font-size:1.1rem;cursor:pointer;transition:all .15s}.unit-price-modal-close:hover{background:#fee2e2;color:#ef4444;border-color:#fca5a5}.unit-price-modal-toolbar{padding:1rem 1.75rem;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:.85rem}.search-box-wrap{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:14px;font-size:1.1rem;color:#94a3b8;pointer-events:none}.search-input{width:100%;height:44px;padding:0 42px 0 44px;font-size:.95rem;color:#0f172a;background:#f8fafc;border:2px solid #cbd5e1;border-radius:8px;transition:all .2s ease;box-sizing:border-box}.search-input:focus{background:#fff;border-color:#2563eb;outline:none;box-shadow:0 0 0 4px #2563eb1f}.search-clear-btn{position:absolute;right:12px;background:#e2e8f0;border:none;width:22px;height:22px;border-radius:50%;color:#64748b;display:flex;align-items:center;justify-content:center;font-size:.75rem;cursor:pointer;transition:all .15s}.search-clear-btn:hover{background:#cbd5e1;color:#0f172a}.filter-controls{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.filter-group{display:flex;align-items:center;gap:.5rem}.filter-group label{font-size:.82rem;font-weight:600;color:#475569}.filter-select{height:34px;padding:0 .75rem;font-size:.85rem;color:#1e293b;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;min-width:200px;cursor:pointer;transition:border-color .15s}.filter-select:focus{border-color:#2563eb;outline:none;background:#fff}.results-count-badge{margin-left:auto;font-size:.82rem;color:#475569;background:#f1f5f9;padding:.35rem .75rem;border-radius:9999px;border:1px solid #e2e8f0}.results-count-badge strong{color:#0284c7}.unit-price-table-container{flex:1;overflow-y:auto;overflow-x:hidden;background:#fff}.unit-price-table{width:100%;border-collapse:separate;border-spacing:0;text-align:left;table-layout:auto}.unit-price-table thead{position:sticky;top:0;background:#f8fafc;z-index:10}.unit-price-table th{padding:.75rem .85rem;font-size:.78rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.04em;border-bottom:2px solid #e2e8f0;white-space:nowrap}.unit-price-table tbody tr.unit-price-row{cursor:pointer;transition:background-color .1s ease;border-bottom:1px solid #f1f5f9}.unit-price-table tbody tr.unit-price-row:hover{background-color:#f0fdf4}.unit-price-table tbody tr.row-highlighted{background-color:#eff6ff!important;box-shadow:inset 3px 0 #2563eb}.unit-price-table tbody tr.row-draft{opacity:.85}.unit-price-table td{padding:.75rem .85rem;font-size:.85rem;color:#1e293b;border-bottom:1px solid #f1f5f9;vertical-align:middle}.code-badge-wrap{display:flex;flex-direction:column;gap:.25rem;align-items:flex-start}.code-badge{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-weight:700;font-size:.82rem;color:#1e40af;background:#dbeafe;padding:2px 7px;border-radius:5px;border:1px solid #bfdbfe;display:inline-block;white-space:nowrap}.draft-mini-badge{font-size:.68rem;color:#9a3412;background:#ffedd5;padding:1px 5px;border-radius:4px;font-weight:600}.package-mini-badge{font-size:.68rem;color:#6b21a8;background:#f3e8ff;padding:1px 5px;border-radius:4px;font-weight:600}.section-badge{display:inline-block;font-size:.75rem;color:#475569;background:#f1f5f9;padding:2px 8px;border-radius:6px;border:1px solid #e2e8f0;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-desc-cell{display:flex;flex-direction:column;gap:.2rem}.poz-name{font-weight:600;font-size:.9rem;color:#0f172a;line-height:1.35}.poz-desc{font-size:.77rem;color:#64748b;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.specs-toggle-btn{align-self:flex-start;margin-top:.25rem;background:#f8fafc;border:1px solid #cbd5e1;color:#0284c7;font-size:.72rem;font-weight:600;padding:2px 7px;border-radius:4px;cursor:pointer;transition:all .15s}.specs-toggle-btn:hover,.specs-toggle-btn.active{background:#e0f2fe;border-color:#7dd3fc;color:#0369a1}.unit-badge{display:inline-block;font-weight:700;font-size:.8rem;color:#334155;background:#e2e8f0;padding:2px 8px;border-radius:4px}.cost-breakdown-pills{display:flex;flex-wrap:wrap;gap:.3rem}.breakdown-pill{font-size:.7rem;font-weight:600;padding:1px 6px;border-radius:4px;white-space:nowrap}.pill-material{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.pill-labor{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.pill-machine{background:#f3e8ff;color:#6b21a8;border:1px solid #e9d5ff}.pill-none{color:#94a3b8;font-size:.8rem}.cost-text{font-weight:600;color:#475569;font-size:.88rem;white-space:nowrap}.sale-price-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem}.sale-price-text{font-weight:800;color:#059669;font-size:.92rem;white-space:nowrap}.profit-rate-tag{font-size:.68rem;font-weight:600;color:#047857;background:#d1fae5;padding:1px 5px;border-radius:4px}.total-sale-wrap{display:flex;flex-direction:column;align-items:flex-end;gap:.15rem}.total-sale-text{font-weight:800;color:#047857;font-size:.95rem;white-space:nowrap}.total-cost-subtext{font-size:.72rem;font-weight:500;color:#64748b;white-space:nowrap}.row-qty-input{width:68px;height:32px;text-align:center;font-size:.85rem;font-weight:600;color:#1e293b;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:0 4px;transition:border-color .15s}.row-qty-input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 2px #2563eb26}.action-buttons-wrap{display:flex;align-items:center;justify-content:center;gap:.4rem}.btn-direct-add{background:#059669;color:#fff;border:none;font-size:.77rem;font-weight:600;padding:6px 9px;border-radius:6px;cursor:pointer;white-space:nowrap;transition:all .15s;box-shadow:0 1px 2px #05966933}.btn-direct-add:hover{background:#047857;transform:translateY(-1px)}.btn-direct-add:active{transform:translateY(0)}.btn-direct-add.btn-added{background:#10b981}.btn-select-poz{background:#2563eb;color:#fff;border:none;font-size:.77rem;font-weight:600;padding:6px 10px;border-radius:6px;cursor:pointer;white-space:nowrap;transition:all .15s}.btn-select-poz:hover{background:#1d4ed8;transform:translateY(-1px)}.spec-expanded-row{background:#f8fafc}.spec-expanded-box{margin:.25rem .5rem .5rem;padding:.85rem 1.15rem;background:#fff;border:1px dashed #93c5fd;border-radius:8px;font-size:.82rem}.spec-header{color:#1e40af;margin-bottom:.4rem}.spec-list{margin:0;padding-left:1.25rem;color:#334155;display:flex;flex-direction:column;gap:.25rem;line-height:1.45}.no-results-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1.5rem;text-align:center}.no-results-icon{font-size:2.8rem;margin-bottom:.75rem;opacity:.6}.no-results-state h3{margin:0 0 .4rem;font-size:1.1rem;color:#1e293b}.no-results-state p{margin:0 0 1.25rem;font-size:.875rem;color:#64748b;max-width:450px}.btn-reset-filters{background:#f1f5f9;border:1px solid #cbd5e1;color:#334155;font-size:.85rem;font-weight:600;padding:.5rem 1.25rem;border-radius:6px;cursor:pointer;transition:all .15s}.btn-reset-filters:hover{background:#e2e8f0;color:#0f172a}.unit-price-modal-footer{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.75rem;background:#f8fafc;border-top:1px solid #e2e8f0;font-size:.82rem}.footer-tips{color:#64748b}.footer-tips strong{color:#334155}.btn-footer-close{background:#fff;border:1px solid #cbd5e1;color:#475569;font-size:.85rem;font-weight:600;padding:.45rem 1.15rem;border-radius:6px;cursor:pointer;transition:all .15s}.btn-footer-close:hover{background:#f1f5f9;color:#0f172a;border-color:#94a3b8}.proposals-manager-container{display:flex;flex-direction:column;gap:1.25rem;width:100%}.pm-toolbar-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.1rem 1.35rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;box-shadow:0 1px 3px #00000005}.pm-toolbar-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.pm-title-block{display:flex;align-items:center;gap:.6rem}.pm-title-icon{width:38px;height:38px;border-radius:10px;background:linear-gradient(135deg,#1d5e7b,#0f2942);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #1d5e7b4d}.pm-title-text h3{font-size:1.05rem;font-weight:700;color:#0f172a;margin:0;line-height:1.2}.pm-title-text p{font-size:.78rem;color:#64748b;margin:0}.pm-stats-chips{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-left:.5rem}.pm-stat-chip{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:8px;font-size:.8rem;font-weight:600;background:#f8fafc;border:1px solid #e2e8f0;color:#334155}.pm-stat-chip.approved{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.pm-stat-chip.waiting{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.pm-toolbar-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.pm-btn-primary{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1.15rem;border-radius:8px;font-size:.85rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#1d5e7b,#0f2942);border:none;cursor:pointer;box-shadow:0 2px 8px #1d5e7b4d;transition:all .2s}.pm-btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1d5e7b66}.pm-btn-secondary{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;color:#334155;background:#fff;border:1px solid #cbd5e1;cursor:pointer;transition:all .15s}.pm-btn-secondary:hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}.pm-proposals-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(460px,1fr));gap:1.25rem}@media (max-width: 640px){.pm-proposals-grid{grid-template-columns:1fr}}.pm-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 1px 4px #00000008;transition:all .2s ease}.pm-card:hover{border-color:#cbd5e1;box-shadow:0 6px 16px #0000000f;transform:translateY(-2px)}.pm-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-bottom:.85rem;border-bottom:1px solid #f1f5f9}.pm-card-title-group{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.pm-card-no{font-size:1.05rem;font-weight:700;color:#0f2942;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.pm-type-badge{font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:6px}.pm-type-badge.additional{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.pm-type-badge.excluded{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.pm-status-select-wrap{position:relative}.pm-status-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.35rem 1.6rem .35rem .75rem;border-radius:6px;font-size:.78rem;font-weight:600;color:#fff;border:none;cursor:pointer;outline:none}.pm-status-select-arrow{position:absolute;right:8px;top:50%;transform:translateY(-50%);color:#fff;font-size:.6rem;pointer-events:none}.pm-dates-strip{display:flex;gap:1.5rem;padding:.5rem .75rem;background:#f8fafc;border-radius:8px;font-size:.8rem}.pm-date-item{display:flex;flex-direction:column}.pm-date-lbl{color:#64748b;font-size:.72rem;font-weight:500}.pm-date-val{color:#1e293b;font-weight:600}.pm-fin-block{display:flex;flex-direction:column;gap:.45rem}.pm-fin-row{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.pm-fin-lbl{color:#64748b;font-weight:500}.pm-fin-val{color:#1e293b;font-weight:600}.pm-fin-val.cost{color:#475569}.pm-fin-val.profit{color:#059669}.pm-fin-val.overhead{color:#d97706}.pm-fin-total-row{display:flex;justify-content:space-between;align-items:center;padding-top:.6rem;margin-top:.35rem;border-top:1px solid #e2e8f0}.pm-fin-total-lbl{font-size:.85rem;font-weight:700;color:#0f172a}.pm-fin-total-val{font-size:1.15rem;font-weight:800;color:#1d5e7b}.pm-fin-vat-row{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;color:#64748b}.pm-fin-grand-row{display:flex;justify-content:space-between;align-items:center;font-size:.9rem;font-weight:700;color:#047857;padding-top:.35rem}.pm-currencies-box{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:6px;padding:.45rem .75rem;display:flex;flex-direction:column;gap:.2rem;font-size:.78rem;color:#64748b}.pm-card-actions{display:flex;align-items:center;gap:.5rem;padding-top:.75rem;border-top:1px solid #f1f5f9}.pm-card-actions .btn-detail{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .85rem;background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;border-radius:6px;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .15s}.pm-card-actions .btn-detail:hover{background:#dcfce7}.pm-card-actions .btn-edit{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;padding:.45rem .85rem;background:#f8fafc;color:#334155;border:1px solid #cbd5e1;border-radius:6px;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .15s}.pm-card-actions .btn-edit:hover{background:#f1f5f9}.pm-card-actions .btn-del{display:inline-flex;align-items:center;justify-content:center;padding:.45rem .65rem;background:#fff1f2;color:#be123c;border:1px solid #fecdd3;border-radius:6px;cursor:pointer;transition:all .15s}.pm-card-actions .btn-del:hover{background:#ffe4e6}.pm-empty-state{text-align:center;padding:3.5rem 1.5rem;background:#fff;border:1px dashed #cbd5e1;border-radius:12px}.pm-empty-icon{width:56px;height:56px;border-radius:16px;background:#f1f5f9;color:#64748b;display:inline-flex;align-items:center;justify-content:center;margin-bottom:1rem}.pm-empty-title{font-size:1.1rem;font-weight:700;color:#0f172a;margin-bottom:.35rem}.pm-empty-desc{font-size:.85rem;color:#64748b;margin-bottom:1.25rem}.project-drawings-container{display:flex;flex-direction:column;gap:1.25rem;width:100%;box-sizing:border-box}.drawings-top-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;background:#fff;padding:1.25rem 1.5rem;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000a}.top-header-left{display:flex;align-items:center;gap:1rem}.header-icon-box{width:44px;height:44px;border-radius:10px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0284c740;flex-shrink:0}.header-title-row{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.header-title-row h2{font-size:1.25rem;font-weight:800;color:#0f2942;margin:0}.total-badge{font-size:.72rem;font-weight:700;background:#f1f5f9;color:#475569;padding:3px 8px;border-radius:6px;border:1px solid #cbd5e1}.header-desc{font-size:.82rem;color:#64748b;margin:2px 0 0}.btn-new-drawing{display:inline-flex;align-items:center;gap:.45rem;background:#0284c7;color:#fff;border:none;padding:.65rem 1.15rem;border-radius:8px;font-size:.84rem;font-weight:700;cursor:pointer;box-shadow:0 2px 6px #0284c740;transition:all .15s ease}.btn-new-drawing:hover{background:#0369a1;transform:translateY(-1px);box-shadow:0 4px 10px #0284c759}.drawings-category-tabs{display:flex;align-items:center;gap:.5rem;overflow-x:auto;padding-bottom:2px;scrollbar-width:thin}.category-tab-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .95rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-size:.82rem;font-weight:600;color:#475569;cursor:pointer;white-space:nowrap;transition:all .15s ease}.category-tab-btn:hover{background:#f8fafc;color:#0f2942;border-color:#cbd5e1}.category-tab-btn.active{background:#fff;border-color:#0284c7;color:#0284c7;font-weight:700;box-shadow:0 2px 6px #0284c71f}.tab-count{font-size:.7rem;font-weight:700;padding:1px 6px;border-radius:999px;background:#f1f5f9;color:#64748b}.drawings-controls-bar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;background:#fff;padding:.85rem 1.25rem;border-radius:10px;border:1px solid #e2e8f0}.search-box{position:relative;display:flex;align-items:center;flex:1;min-width:240px;max-width:400px}.search-box .search-icon{position:absolute;left:10px;color:#94a3b8}.search-box input{width:100%;padding:.5rem 2rem .5rem 2.25rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.82rem;outline:none;transition:border-color .15s}.search-box input:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c71a}.clear-search{position:absolute;right:8px;background:none;border:none;color:#94a3b8;font-size:16px;cursor:pointer}.controls-right{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem}.control-select{padding:.5rem .85rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.8rem;color:#334155;background:#fff;outline:none;cursor:pointer}.control-select:focus{border-color:#0284c7}.latest-toggle-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none}.latest-toggle-label input[type=checkbox]{accent-color:#0284c7;width:15px;height:15px}.view-mode-toggle{display:inline-flex;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;background:#f8fafc}.view-btn{background:transparent;border:none;padding:6px 10px;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.view-btn.active{background:#fff;color:#0f2942;font-weight:700;box-shadow:0 1px 3px #00000014}.drawings-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto;box-shadow:0 1px 4px #00000008}.drawings-table{width:100%;border-collapse:collapse;font-size:.83rem;text-align:left}.drawings-table th{background:#f8fafc;color:#475569;font-weight:700;padding:.85rem 1rem;border-bottom:2px solid #e2e8f0;white-space:nowrap;letter-spacing:.2px}.drawings-table td{padding:.85rem 1rem;border-bottom:1px solid #f1f5f9;color:#1e293b;vertical-align:middle}.drawings-table tr:last-child td{border-bottom:none}.drawings-table tr:hover td{background:#fcfdfe}.drawings-table tr.is-old-rev td{opacity:.75;background:#fafafa}.sheet-no-badge{display:flex;align-items:center;gap:.4rem}.sheet-no-badge .no-text{font-weight:800;color:#0f2942;font-family:monospace,sans-serif;font-size:.88rem;letter-spacing:.4px}.old-rev-tag{font-size:.65rem;padding:1px 5px;border-radius:4px;background:#e2e8f0;color:#64748b;font-weight:700}.sheet-title-cell{display:flex;flex-direction:column;gap:2px}.sheet-title-cell .main-title{font-weight:700;color:#0f172a}.sheet-title-cell .sub-desc{font-size:.75rem;color:#64748b}.category-pill{display:inline-flex;align-items:center;gap:.35rem;padding:2px 8px;border-radius:6px;font-size:.74rem;font-weight:700;border:1px solid transparent;white-space:nowrap}.scale-text{font-family:monospace,sans-serif;font-weight:600;color:#475569}.rev-badge{display:inline-block;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-weight:700;padding:2px 7px;border-radius:4px;font-size:.75rem}.date-text,.author-text{font-size:.8rem;color:#475569}.file-info-cell{display:flex;align-items:center;gap:.4rem}.media-badge{display:inline-flex;align-items:center;gap:.25rem;padding:2px 6px;border-radius:4px;font-size:.7rem;font-weight:700}.media-badge.pdf{background:#fee2e2;color:#dc2626}.media-badge.video{background:#f3e8ff;color:#7c3aed}.media-badge.image{background:#f0fdf4;color:#16a34a}.media-badge.cad{background:#e0f2fe;color:#0284c7}.file-size{font-size:.72rem;color:#94a3b8}.no-file-text{font-size:.75rem;color:#cbd5e1;font-style:italic}.status-pill{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.72rem;font-weight:700}.status-pill.approved{background:#ecfdf5;color:#059669}.status-pill.for_construction{background:#eff6ff;color:#2563eb}.status-pill.in_revision{background:#fffbeb;color:#d97706}.status-pill.draft{background:#f1f5f9;color:#64748b}.status-pill.superseded{background:#fef2f2;color:#dc2626}.action-buttons-group{display:inline-flex;align-items:center;gap:.35rem}.action-btn{width:28px;height:28px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#475569;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;text-decoration:none}.action-btn:hover{background:#f1f5f9;color:#0f172a}.action-btn.preview:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.action-btn.download:hover{background:#ecfdf5;color:#059669;border-color:#a7f3d0}.action-btn.revision:hover{background:#f5f3ff;color:#7c3aed;border-color:#ddd6fe}.action-btn.history:hover{background:#f8fafc;color:#0f2942;border-color:#cbd5e1}.action-btn.edit:hover{background:#fffbeb;color:#d97706;border-color:#fde68a}.action-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.drawings-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.drawing-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 3px #0000000a;transition:transform .15s,box-shadow .15s}.drawing-card:hover{transform:translateY(-2px);box-shadow:0 6px 16px #00000014}.drawing-card.superseded{opacity:.75}.card-media-preview{position:relative;width:100%;height:170px;background:#0f172a;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center}.preview-img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}.drawing-card:hover .preview-img{transform:scale(1.04)}.video-thumb-container{position:relative;width:100%;height:100%;background:#000;display:flex;align-items:center;justify-content:center}.video-thumb-preview{width:100%;height:100%;object-fit:cover;opacity:.8}.video-play-overlay{position:absolute;display:flex;flex-direction:column;align-items:center;gap:.35rem;color:#fff;background:#00000073;padding:8px 14px;border-radius:8px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);font-size:.75rem;font-weight:700;pointer-events:none}.blueprint-thumb-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;border-bottom:1px solid #e2e8f0}.placeholder-icon{transform:scale(1.4)}.placeholder-code{font-family:monospace,sans-serif;font-size:1.25rem;font-weight:800;color:#0f2942}.placeholder-scale{font-size:.75rem;font-weight:600;color:#64748b}.card-top-badges{position:absolute;top:8px;left:8px;display:flex;gap:.3rem;z-index:2}.card-rev-badge{background:#0f172ad9;color:#fff;font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:4px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.card-media-type-badge{font-size:.7rem;font-weight:700;padding:2px 7px;border-radius:4px;color:#fff;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.card-media-type-badge.video{background:#7c3aede6}.card-media-type-badge.image{background:#10b981e6}.card-body{padding:1rem;display:flex;flex-direction:column;flex:1}.card-header-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.card-sheet-no{font-family:monospace,sans-serif;font-weight:800;font-size:.95rem;color:#0f2942}.card-date{font-size:.72rem;color:#64748b}.card-title{margin:0 0 .35rem;font-size:.92rem;font-weight:700;color:#0f172a;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-desc{font-size:.78rem;color:#64748b;margin:0 0 .5rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-meta-row{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:.5rem;border-top:1px solid #f1f5f9}.card-cat-tag{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:700}.card-scale{font-size:.75rem;color:#64748b;font-family:monospace}.card-author{font-size:.72rem;color:#64748b;margin-top:4px}.card-footer{display:flex;align-items:center;justify-content:space-between;padding:.65rem 1rem;background:#f8fafc;border-top:1px solid #e2e8f0}.btn-card-action.primary{display:inline-flex;align-items:center;gap:.35rem;background:#0f2942;color:#fff;border:none;padding:4px 10px;border-radius:6px;font-size:.76rem;font-weight:600;cursor:pointer;transition:background .15s}.btn-card-action.primary:hover{background:#0284c7}.card-sub-actions{display:flex;align-items:center;gap:.25rem}.btn-card-icon{width:26px;height:26px;border:1px solid #e2e8f0;background:#fff;border-radius:5px;display:inline-flex;align-items:center;justify-content:center;color:#475569;cursor:pointer;text-decoration:none;transition:all .15s}.btn-card-icon:hover{background:#f1f5f9;color:#0f172a}.btn-card-icon.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.no-file-card{font-size:.75rem;color:#94a3b8;font-style:italic}.drawings-loading-state,.drawings-empty-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:3rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.empty-icon-circle{width:64px;height:64px;border-radius:50%;background:#f1f5f9;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.drawings-empty-card h3{font-size:1.15rem;color:#1e293b;margin:0 0 .5rem}.drawings-empty-card p{font-size:.85rem;color:#64748b;max-width:480px;margin:0 0 1.25rem;line-height:1.5}.btn-create-first{display:inline-flex;align-items:center;gap:.45rem;background:#0284c7;color:#fff;border:none;padding:.65rem 1.25rem;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .15s}.btn-create-first:hover{background:#0369a1}.drawings-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1050;padding:1rem}.drawings-modal{background:#fff;border-radius:14px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;border:1px solid #e2e8f0;overflow:hidden;position:relative;animation:modalPop .2s cubic-bezier(.16,1,.3,1)}.drawings-modal.large{max-width:1050px}.drawings-modal form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}@keyframes modalPop{0%{opacity:0;transform:scale(.96) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.drawings-modal .modal-header{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.6rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.drawings-modal .modal-title{display:flex;align-items:center;gap:.6rem}.drawings-modal .modal-title h3{margin:0;font-size:1.1rem;font-weight:700;color:#0f2942}.drawings-modal .modal-close-btn{background:none;border:none;color:#64748b;cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center}.drawings-modal .modal-close-btn:hover{background:#e2e8f0;color:#0f172a}.drawings-modal .modal-body{padding:1.4rem 1.6rem;overflow-y:auto;flex:1;min-height:0;display:flex;flex-direction:column;gap:1.15rem}.form-label{font-size:.8rem;font-weight:700;color:#334155}.form-input,.form-select,.form-textarea{width:100%;padding:.55rem .75rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.84rem;color:#0f172a;background:#fff;outline:none;box-sizing:border-box;transition:border-color .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c71a}.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.85rem}.cat-selector-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:.55rem}.cat-select-card{display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.cat-select-card:hover{background:#f1f5f9;border-color:#cbd5e1}.cat-select-card.selected{background:#eff6ff;border-color:#0284c7;box-shadow:0 0 0 2px #0284c733}.cat-select-card .cat-icon{font-size:1.1rem;display:flex;align-items:center;flex-shrink:0}.cat-select-card .name{font-size:.82rem;font-weight:600;color:#1e293b;white-space:normal;line-height:1.25}.quick-scale-chips{display:flex;gap:.3rem;margin-top:3px}.quick-scale-chips span{font-size:.68rem;padding:1px 5px;background:#f1f5f9;border-radius:4px;color:#475569;cursor:pointer}.quick-scale-chips span:hover{background:#0284c7;color:#fff}.file-drop-zone{border:2px dashed #cbd5e1;border-radius:10px;padding:1.25rem 1rem;text-align:center;background:#f8fafc;cursor:pointer;transition:all .15s}.file-drop-zone:hover{border-color:#0284c7;background:#eff6ff}.file-drop-zone.has-file{border-color:#10b981;background:#f0fdf4}.drop-zone-placeholder{display:flex;flex-direction:column;align-items:center;gap:.35rem}.drop-zone-placeholder .main-prompt{font-size:.82rem;color:#334155;margin:0}.drop-zone-placeholder .sub-prompt{font-size:.72rem;color:#94a3b8;margin:0}.selected-file-info{display:flex;align-items:center;gap:.75rem;text-align:left}.selected-file-info .file-details{display:flex;flex-direction:column;flex:1}.selected-file-info .file-details .name{font-size:.84rem;font-weight:700;color:#0f172a}.selected-file-info .file-details .size{font-size:.74rem;color:#64748b}.btn-remove-file{background:#fee2e2;border:1px solid #fca5a5;color:#dc2626;font-size:.72rem;font-weight:700;padding:3px 8px;border-radius:6px;cursor:pointer}.drawings-modal .modal-footer{flex-shrink:0;display:flex;align-items:center;justify-content:flex-end;gap:.85rem;padding:1rem 1.6rem;background:#fff;border-top:1px solid #e2e8f0;box-shadow:0 -4px 14px #0000000a;z-index:10}.btn-modal-cancel{padding:.65rem 1.35rem;background:#f8fafc;border:1px solid #cbd5e1;color:#475569;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-modal-cancel:hover{background:#f1f5f9;border-color:#94a3b8;color:#1e293b}.btn-modal-submit{padding:.65rem 1.65rem;background:#0284c7;color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;box-shadow:0 2px 6px #0284c740;transition:all .15s;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.btn-modal-submit:hover{background:#0369a1;box-shadow:0 4px 12px #0284c759}.rev-target-info-box{display:flex;align-items:center;gap:1.5rem;padding:.75rem 1rem;background:#f5f3ff;border:1px solid #ddd6fe;border-radius:8px;font-size:.82rem}.rev-target-info-box .info-item{display:flex;gap:.35rem}.rev-target-info-box .label{color:#6d28d9;font-weight:600}.rev-target-info-box .val.bold{font-weight:800;color:#4c1d95}.history-subtitle{font-size:.84rem;color:#475569;margin:0 0 .75rem}.history-table-wrapper{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.history-table{width:100%;border-collapse:collapse;font-size:.82rem}.history-table th{background:#f8fafc;padding:.75rem .85rem;color:#475569;font-weight:700;border-bottom:1px solid #e2e8f0;text-align:left}.history-table td{padding:.75rem .85rem;border-bottom:1px solid #f1f5f9;color:#1e293b}.history-table tr.latest-row td{background:#f0fdf4}.rev-indicator{display:flex;align-items:center;gap:.4rem}.rev-tag-badge{font-weight:800;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:1px 6px;border-radius:4px}.latest-pill{font-size:.68rem;background:#10b981;color:#fff;font-weight:700;padding:1px 5px;border-radius:4px}.history-actions{display:inline-flex;gap:.35rem}.media-lightbox-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:1.5rem}.media-lightbox-container{background:#0f172a;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;max-width:90vw;max-height:90vh;box-shadow:0 25px 50px #00000080;border:1px solid #334155;animation:modalPop .2s ease}.lightbox-header{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.25rem;background:#1e293b;border-bottom:1px solid #334155;color:#fff}.lightbox-header h4{margin:0;font-size:.95rem;font-weight:700;color:#f8fafc}.btn-close-lightbox{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center}.btn-close-lightbox:hover{background:#334155;color:#fff}.lightbox-content{display:flex;align-items:center;justify-content:center;background:#020617;overflow:hidden;max-height:calc(90vh - 120px)}.lightbox-image{max-width:100%;max-height:calc(90vh - 120px);object-fit:contain}.lightbox-video-player{max-width:100%;max-height:calc(90vh - 120px);outline:none}.lightbox-footer{display:flex;align-items:center;justify-content:flex-end;padding:.75rem 1.25rem;background:#1e293b;border-top:1px solid #334155}.btn-lightbox-download{display:inline-flex;align-items:center;gap:.4rem;background:#0284c7;color:#fff;padding:5px 12px;border-radius:6px;font-size:.8rem;font-weight:600;text-decoration:none;transition:background .15s}.btn-lightbox-download:hover{background:#0369a1}.lightbox-title-box{display:flex;align-items:center;gap:.55rem}.btn-lightbox-close-sub{background:#334155;border:1px solid #475569;color:#f1f5f9;padding:5px 14px;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;margin-left:.5rem;transition:all .15s}.btn-lightbox-close-sub:hover{background:#475569}.media-lightbox-container.cad-container{background:#fff;color:#0f172a;max-width:660px;width:100%;border:1px solid #e2e8f0}.media-lightbox-container.cad-container .lightbox-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#0f172a}.media-lightbox-container.cad-container .lightbox-header h4{color:#0f2942}.media-lightbox-container.cad-container .btn-close-lightbox{color:#64748b}.media-lightbox-container.cad-container .btn-close-lightbox:hover{background:#e2e8f0;color:#0f172a}.media-lightbox-container.cad-container .lightbox-content{background:#fff;padding:1.75rem 2rem;display:block;max-height:calc(90vh - 140px);overflow-y:auto}.media-lightbox-container.cad-container .lightbox-footer{background:#f8fafc;border-top:1px solid #e2e8f0}.media-lightbox-container.cad-container .btn-lightbox-close-sub{background:#fff;border:1px solid #cbd5e1;color:#475569}.media-lightbox-container.cad-container .btn-lightbox-close-sub:hover{background:#f1f5f9}.cad-preview-card{display:flex;flex-direction:column;align-items:center;text-align:center}.cad-icon-big{width:76px;height:76px;border-radius:18px;background:#eff6ff;border:1px solid #bfdbfe;display:flex;align-items:center;justify-content:center;margin-bottom:.9rem}.cad-preview-card h3{margin:0 0 .35rem;font-size:1.2rem;font-weight:700;color:#0f2942}.cad-subtitle{font-size:.86rem;color:#64748b;margin:0 0 1.2rem;max-width:500px}.cad-meta-grid{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:.65rem 1rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1rem 1.25rem;margin-bottom:1.15rem;text-align:left;box-sizing:border-box}.cad-meta-item{display:flex;flex-direction:column;gap:2px}.cad-meta-item .lbl{font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase}.cad-meta-item .val{font-size:.85rem;color:#1e293b;font-weight:500}.cad-meta-item .val.bold{font-weight:700;color:#0284c7}.cad-meta-item .val.code{font-family:monospace;font-size:.8rem;word-break:break-all}.cad-notice-box{width:100%;padding:.85rem 1rem;background:#fffbeb;border:1px solid #fef3c7;border-radius:8px;font-size:.8rem;color:#92400e;line-height:1.45;text-align:left;margin-bottom:1.4rem;box-sizing:border-box}.cad-action-buttons{width:100%;display:flex;justify-content:center}.btn-cad-download{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;background:#0284c7;color:#fff;padding:.75rem 1.6rem;border-radius:10px;font-size:.92rem;font-weight:700;text-decoration:none;box-shadow:0 4px 12px #0284c74d;transition:all .15s}.btn-cad-download:hover{background:#0369a1;box-shadow:0 6px 16px #0284c766;transform:translateY(-1px)}.media-lightbox-container.pdf-container{width:90vw;max-width:1200px;height:90vh;background:#fff}.media-lightbox-container.pdf-container .lightbox-header{background:#f8fafc;color:#0f172a;border-bottom:1px solid #e2e8f0}.media-lightbox-container.pdf-container .lightbox-header h4{color:#0f2942}.media-lightbox-container.pdf-container .btn-close-lightbox{color:#64748b}.media-lightbox-container.pdf-container .lightbox-content{background:#f1f5f9;flex:1;height:calc(100% - 110px)}.media-lightbox-container.pdf-container .lightbox-footer{background:#f8fafc;border-top:1px solid #e2e8f0}.planning-wbs-container{display:flex;flex-direction:column;gap:16px;width:100%}.planning-guide-wrapper{background:#fff;border:1px solid #bfdbfe;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px -2px #2563eb14;transition:all .2s ease}.planning-guide-header{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;background:linear-gradient(135deg,#eff6ff,#dbeafe);cursor:pointer;border-bottom:1px solid #bfdbfe}.planning-guide-title{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:700;color:#1e40af}.planning-guide-toggle-btn{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:600;color:#1d4ed8;background:#fff;border:1px solid #bfdbfe;padding:4px 12px;border-radius:20px;cursor:pointer;transition:all .15s ease}.planning-guide-toggle-btn:hover{background:#dbeafe}.planning-guide-body{padding:16px 20px;background:#fff;animation:fadeIn .2s ease-out}.planning-guide-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width: 1100px){.planning-guide-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.planning-guide-grid{grid-template-columns:1fr}}.guide-card{display:flex;flex-direction:column;gap:6px;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;border-left:3px solid #2563eb}.guide-card-header{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#0f172a}.guide-card-icon{color:#2563eb}.guide-card-text{font-size:11.5px;line-height:1.5;color:#475569}.guide-card-formula{margin-top:4px;padding:4px 8px;background:#e2e8f0;border-radius:4px;font-family:monospace;font-size:11px;font-weight:600;color:#1e293b}.planning-stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}@media (max-width: 1024px){.planning-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 640px){.planning-stats-grid{grid-template-columns:repeat(2,1fr)}}.planning-stat-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0000000a}.stat-card-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card-info{display:flex;flex-direction:column;min-width:0}.stat-card-label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.stat-card-value{font-size:18px;font-weight:800;color:#0f172a;line-height:1.2}.stat-card-sub{font-size:10.5px;color:#94a3b8;margin-top:1px}.planning-actions-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap}.actions-left-group,.actions-right-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.btn-plan-action{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;font-size:12.5px;font-weight:600;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#334155;cursor:pointer;transition:all .15s ease;white-space:nowrap}.btn-plan-action:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.btn-plan-action.primary{background:#0284c7;color:#fff;border-color:#0284c7}.btn-plan-action.primary:hover{background:#0369a1}.btn-plan-action.template{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.btn-plan-action.template:hover{background:#dcfce7;border-color:#86efac}.plan-search-box{display:flex;align-items:center;position:relative;min-width:220px}.plan-search-input{width:100%;padding:6px 10px 6px 30px;font-size:12.5px;border:1px solid #cbd5e1;border-radius:6px;background:#f8fafc}.plan-search-input:focus{outline:none;background:#fff;border-color:#0284c7}.plan-filter-select{padding:6px 10px;font-size:12px;font-weight:500;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155}.wbs-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000a}.wbs-table-wrapper{overflow-x:auto}.wbs-table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.wbs-table th{background:#f8fafc;padding:10px 12px;font-weight:700;color:#475569;border-bottom:2px solid #e2e8f0;white-space:nowrap}.wbs-table th.center,.wbs-table td.center{text-align:center}.wbs-table th.right,.wbs-table td.right{text-align:right}.wbs-table td{padding:8px 12px;border-bottom:1px solid #f1f5f9;color:#1e293b;vertical-align:middle}.wbs-table tr:hover{background-color:#f8fafc}.wbs-row.level-1{background-color:#f1f5f9;font-weight:700;border-top:1px solid #e2e8f0}.wbs-row.level-1 td{color:#0f172a}.wbs-row.level-2{background-color:#fff;font-weight:600}.wbs-row.milestone{background-color:#fffbeb}.wbs-code-cell{font-family:monospace;font-size:12px;font-weight:700;color:#0284c7;white-space:nowrap}.wbs-name-cell{display:flex;align-items:center;gap:6px;min-width:260px}.tree-toggle-icon{cursor:pointer;color:#64748b;display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:4px}.tree-toggle-icon:hover{background:#e2e8f0;color:#0f172a}.milestone-badge{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:4px;font-size:10px;font-weight:700;background:#fef3c7;color:#b45309;border:1px solid #fde68a}.dept-category-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:4px;font-size:10.5px;font-weight:600}.dept-category-badge.structural{background:#e2e8f0;color:#334155}.dept-category-badge.architectural{background:#e0f2fe;color:#0369a1}.dept-category-badge.interior{background:#fce7f3;color:#be185d}.dept-category-badge.mechanical{background:#e0e7ff;color:#4338ca}.dept-category-badge.electrical{background:#fef9c3;color:#a16207}.dept-category-badge.infrastructure{background:#dcfce7;color:#15803d}.dept-category-badge.landscape{background:#d1fae5;color:#065f46}.dept-category-badge.general{background:#f1f5f9;color:#64748b}.status-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:12px;font-size:11px;font-weight:600}.status-pill.not_started{background:#f1f5f9;color:#64748b}.status-pill.in_progress{background:#e0f2fe;color:#0284c7}.status-pill.completed{background:#dcfce7;color:#16a34a}.status-pill.delayed{background:#fee2e2;color:#dc2626}.table-progress-box{display:flex;align-items:center;gap:6px;min-width:80px}.table-progress-bar{flex:1;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.table-progress-fill{height:100%;background:#0284c7;border-radius:3px}.table-action-btns{display:flex;align-items:center;justify-content:flex-end;gap:4px}.table-icon-btn{padding:4px;background:none;border:1px solid transparent;border-radius:4px;color:#64748b;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.table-icon-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#e2e8f0}.table-icon-btn.danger:hover{background:#fef2f2;color:#ef4444;border-color:#fecaca}.plan-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1050;display:flex;align-items:center;justify-content:center;padding:24px 16px;animation:fadeIn .15s ease-out}.plan-modal-card{background:#fff;border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;width:95vw;max-width:1040px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .2s ease-out}.plan-modal-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.plan-modal-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:#0f172a}.plan-modal-body{padding:24px;overflow-y:auto;overflow-x:hidden;display:flex;flex-direction:column;gap:16px;box-sizing:border-box;width:100%}.plan-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px;width:100%;box-sizing:border-box}.plan-form-group{display:flex;flex-direction:column;gap:6px;min-width:0;width:100%;box-sizing:border-box}.plan-form-group.full{grid-column:span 2}.plan-form-label{font-size:12px;font-weight:600;color:#334155;display:flex;align-items:center;gap:5px;white-space:nowrap}.plan-form-input,.plan-form-select,.plan-form-textarea{width:100%;min-width:0;box-sizing:border-box;padding:8px 12px;font-size:13px;border:1px solid #cbd5e1;border-radius:8px;color:#1e293b;background:#fff;transition:all .15s ease}.plan-form-input:focus,.plan-form-select:focus,.plan-form-textarea:focus{outline:none;border-color:#0284c7;box-shadow:0 0 0 3px #0284c726}.man-hours-calc-box{grid-column:span 2;background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;padding:16px 20px;display:flex;flex-direction:column;gap:12px;width:100%;box-sizing:border-box;min-width:0}.calc-box-title{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;font-size:13px;font-weight:700;color:#0369a1}.calc-box-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;box-sizing:border-box}@media (max-width: 768px){.calc-box-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.plan-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;background:#f8fafc;border-top:1px solid #e2e8f0}.variable-picker-container{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:10px;margin-bottom:6px}.variable-picker-top{display:flex;flex-direction:column;gap:8px}.variable-picker-header{display:flex;align-items:center;justify-content:space-between}.variable-picker-title{display:flex;align-items:center;gap:6px;font-size:.78rem;font-weight:700;color:#0f172a}.variable-picker-count{font-size:.7rem;font-weight:600;color:#64748b}.variable-search-box{position:relative;display:flex;align-items:center}.var-search-icon{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.var-search-input{width:100%;padding:6px 30px;font-size:.8rem;border:1px solid #cbd5e1;border-radius:6px;outline:none;background:#fff;transition:all .15s}.var-search-input:focus{border-color:#059669;box-shadow:0 0 0 2px #0596691f}.var-search-clear{position:absolute;right:8px;background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:3px;border-radius:4px;display:flex;align-items:center;justify-content:center}.var-search-clear:hover{color:#0f172a;background:#e2e8f0}.variable-cat-filters{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.var-cat-btn{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:.72rem;font-weight:600;border:1px solid #cbd5e1;background:#fff;color:#475569;border-radius:5px;cursor:pointer;transition:all .15s}.var-cat-btn:hover{background:#f1f5f9;color:#0f172a}.var-cat-btn.active{background:#059669;color:#fff;border-color:#059669}.variable-chips-grid{display:flex;flex-wrap:wrap;gap:6px;max-height:125px;min-height:40px;overflow-y:auto;scrollbar-gutter:stable;padding:4px 2px}.var-chip-btn{display:inline-flex;align-items:center;gap:4px;padding:5px 9px;font-size:.74rem;font-weight:600;border-radius:6px;cursor:pointer;transition:background-color .12s ease,border-color .12s ease,box-shadow .12s ease;border:1px solid transparent;-webkit-user-select:none;user-select:none;box-sizing:border-box}.var-chip-btn .var-chip-plus{font-weight:800;opacity:.7}.var-chip-btn.parties{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.var-chip-btn.parties:hover{background:#dbeafe;border-color:#93c5fd;box-shadow:0 1px 3px #1d4ed826}.var-chip-btn.project{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.var-chip-btn.project:hover{background:#d1fae5;border-color:#6ee7b7;box-shadow:0 1px 3px #04785726}.var-chip-btn.financial{background:#fefce8;color:#a16207;border-color:#fef08a}.var-chip-btn.financial:hover{background:#fef9c3;border-color:#fde047;box-shadow:0 1px 3px #a1620726}.var-chip-btn.timeline{background:#faf5ff;color:#7e22ce;border-color:#e9d5ff}.var-chip-btn.timeline:hover{background:#f3e8ff;border-color:#d8b4fe;box-shadow:0 1px 3px #7e22ce26}.var-chip-btn.legal{background:#fff1f2;color:#be123c;border-color:#fecdd3}.var-chip-btn.legal:hover{background:#ffe4e6;border-color:#fda4af;box-shadow:0 1px 3px #be123c26}.var-no-match{font-size:.76rem;color:#94a3b8;padding:8px;text-align:center;width:100%}.variable-preview-bar{background:#fff;border:1px solid #e2e8f0;border-radius:6px;padding:0 10px;font-size:.72rem;color:#64748b;height:32px;min-height:32px;max-height:32px;box-sizing:border-box;display:flex;align-items:center;overflow:hidden}.var-preview-active,.var-preview-hint{display:flex;align-items:center;gap:6px;width:100%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.var-preview-tag{font-family:monospace;font-weight:700;color:#059669;background:#ecfdf5;padding:1px 5px;border-radius:4px;flex-shrink:0}.var-preview-arrow{color:#94a3b8;flex-shrink:0}.var-preview-text{color:#0f172a;flex-shrink:0}.var-preview-desc{color:#64748b;font-style:italic;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contract-parties-table-wrapper{margin:12px 0 16px;width:100%;box-sizing:border-box}.contract-parties-table{width:100%;border-collapse:collapse;border:1.5px solid #0f172a;background:#fff;font-family:inherit;font-size:.84rem;line-height:1.55;box-sizing:border-box}.contract-parties-table thead tr th{border:1.5px solid #0f172a;background:#f8fafc;color:#0f172a;font-weight:800;font-size:.86rem;letter-spacing:.05em;padding:8px 14px;text-align:left;text-transform:uppercase;width:50%;box-sizing:border-box}.contract-parties-table tbody tr td{border:1.5px solid #0f172a;padding:12px 14px;vertical-align:top;width:50%;background:#fff;box-sizing:border-box}.party-field-row{display:flex;align-items:flex-start;margin-bottom:6px;font-size:.83rem;line-height:1.45}.party-field-row:last-child{margin-bottom:0}.party-label{width:62px;min-width:62px;font-weight:700;color:#334155}.party-colon{width:14px;min-width:14px;text-align:center;font-weight:700;color:#0f172a}.party-value{flex:1;color:#0f172a;word-break:break-word}.party-value.fw-bold{font-weight:700}.parties-tag-raw{display:inline-block;font-family:monospace;font-size:.8rem;font-weight:700;color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;padding:1px 5px;border-radius:4px}.parties-tag-sample{display:inline-block;font-weight:700;color:#065f46;background:#ecfdf5;border-bottom:1px solid #10b981;padding:1px 4px;border-radius:3px}.parties-tbl-empty{color:#94a3b8;font-style:italic}@media print{.contract-parties-table-wrapper{margin:10px 0}.contract-parties-table{border:1.5px solid #000000!important}.contract-parties-table thead tr th{border:1.5px solid #000000!important;background:#f1f5f9!important;color:#000!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.contract-parties-table tbody tr td{border:1.5px solid #000000!important;color:#000!important}.party-label,.party-colon,.party-value{color:#000!important}}.contracts-manager-container{display:flex;flex-direction:column;gap:16px;width:100%}.contracts-tools-nav{display:flex;align-items:center;gap:6px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:6px;overflow-x:auto;box-shadow:0 1px 3px #0f172a08}.contracts-tool-tab-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;font-size:.8125rem;font-weight:600;color:#64748b;border:none;background:transparent;border-radius:8px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.contracts-tool-tab-btn:hover{background:#f8fafc;color:#0f172a}.contracts-tool-tab-btn.active{background:#ecfdf5;color:#047857;font-weight:700;box-shadow:0 1px 2px #0478571a}.contracts-tool-tab-btn .tab-badge-prep{font-size:.65rem;font-weight:600;background:#f1f5f9;color:#94a3b8;padding:1px 6px;border-radius:4px}.contract-empty-card{background:#fff;border:1px dashed #cbd5e1;border-radius:12px;padding:40px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.contract-empty-icon{width:60px;height:60px;border-radius:50%;background:#ecfdf5;color:#059669;display:flex;align-items:center;justify-content:center}.contract-empty-title{font-size:1.1rem;font-weight:700;color:#0f172a}.contract-empty-desc{font-size:.84rem;color:#64748b;max-width:520px;line-height:1.5}.btn-contract-create{display:inline-flex;align-items:center;gap:8px;background:#059669;color:#fff;border:none;border-radius:8px;padding:10px 20px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 4px #05966933}.btn-contract-create:hover{background:#047857;transform:translateY(-1px)}.contract-hero-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 1px 4px #0f172a0a}.contract-hero-left{display:flex;align-items:center;gap:16px}.contract-hero-icon{width:48px;height:48px;border-radius:10px;background:#ecfdf5;color:#059669;display:flex;align-items:center;justify-content:center}.contract-hero-no{font-size:.75rem;font-weight:700;color:#059669;letter-spacing:.05em;text-transform:uppercase}.contract-hero-title{font-size:1.15rem;font-weight:700;color:#0f172a;margin:2px 0}.contract-hero-sub{font-size:.8125rem;color:#64748b;display:flex;align-items:center;gap:8px}.contract-status-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:700}.contract-status-badge.draft{background:#f1f5f9;color:#475569}.contract-status-badge.pending_signature{background:#fef3c7;color:#b45309}.contract-status-badge.active{background:#dcfce7;color:#15803d}.contract-status-badge.completed{background:#e0e7ff;color:#4338ca}.contract-status-badge.cancelled{background:#fee2e2;color:#b91c1c}.contract-hero-actions{display:flex;align-items:center;gap:8px}.btn-contract-action{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:.8125rem;font-weight:600;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;transition:all .15s ease}.btn-contract-action:hover{background:#f8fafc;color:#0f172a}.btn-contract-action.primary{background:#059669;color:#fff;border-color:#059669}.btn-contract-action.primary:hover{background:#047857}.contract-details-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 1024px){.contract-details-grid{grid-template-columns:1fr}}.contract-info-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 1px 3px #0f172a08}.contract-info-card-header{display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid #f1f5f9;font-size:.9rem;font-weight:700;color:#0f172a}.contract-info-card-header svg{color:#059669}.contract-info-row{display:flex;flex-direction:column;gap:3px}.contract-info-label{font-size:.72rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.contract-info-val{font-size:.875rem;font-weight:600;color:#0f172a}.contract-info-val.highlight-green{font-size:1.15rem;font-weight:800;color:#059669}.contract-info-meta-split{display:grid;grid-template-columns:1fr 1fr;gap:10px}.contract-scope-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 1px 3px #0f172a08}.contract-scope-title{font-size:.9rem;font-weight:700;color:#0f172a;margin-bottom:10px;display:flex;align-items:center;gap:8px}.contract-scope-content{font-size:.84rem;color:#334155;line-height:1.6;white-space:pre-wrap;background:#f8fafc;padding:14px;border-radius:8px;border:1px solid #e2e8f0}.contract-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:2500}.contract-modal-content{background:#fff;border-radius:14px;width:760px;max-width:95vw;max-height:90vh;box-shadow:0 12px 30px #0003;display:flex;flex-direction:column;overflow:hidden}.contract-modal-content form{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.contract-modal-header{padding:18px 24px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#fff;flex-shrink:0}.contract-modal-title{font-size:1.05rem;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px}.contract-modal-body{flex:1;min-height:0;padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:20px}.contract-form-section-title{font-size:.8125rem;font-weight:700;color:#059669;text-transform:uppercase;letter-spacing:.04em;padding-bottom:6px;border-bottom:1px solid #e2e8f0;margin-bottom:4px}.contract-form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}.contract-form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}.contract-form-group{display:flex;flex-direction:column;gap:6px}.contract-form-label{font-size:.78rem;font-weight:600;color:#334155}.contract-form-input,.contract-form-select,.contract-form-textarea{padding:9px 12px;font-size:.84rem;border:1px solid #cbd5e1;border-radius:8px;outline:none;font-family:inherit;transition:all .15s}.contract-form-input:focus,.contract-form-select:focus,.contract-form-textarea:focus{border-color:#059669;box-shadow:0 0 0 2px #05966926}.contract-modal-footer{flex-shrink:0;padding:16px 24px;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:flex-end;gap:12px}.contract-print-sheet{background:#fff;padding:40px;color:#0f172a;font-family:Times New Roman,Times,serif;line-height:1.6}.print-doc-header{text-align:center;margin-bottom:30px;border-bottom:2px solid #0f172a;padding-bottom:15px}.print-doc-title{font-size:1.3rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.print-doc-sub{font-size:.9rem;font-weight:700;color:#334155;margin-top:4px}.print-article{margin-bottom:18px}.print-article-title{font-weight:700;font-size:.95rem;margin-bottom:4px;text-decoration:underline}.print-article-body{font-size:.875rem;text-align:justify}.print-signatures-block{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:50px;padding-top:20px;border-top:1px solid #cbd5e1}.print-sig-role{font-weight:700;font-size:.9rem;margin-bottom:6px}.print-sig-name{font-size:.875rem}.contract-articles-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0f172a08;display:flex;flex-direction:column;gap:20px}.contract-articles-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;padding-bottom:16px;border-bottom:1px solid #f1f5f9}.articles-header-left{display:flex;align-items:center;gap:12px}.articles-header-icon{width:42px;height:42px;border-radius:10px;background:#ecfdf5;display:flex;align-items:center;justify-content:center;flex-shrink:0}.articles-header-title{font-size:1.05rem;font-weight:700;color:#0f172a;margin:0}.articles-header-sub{font-size:.8125rem;color:#64748b;margin:2px 0 0}.articles-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.articles-list{display:flex;flex-direction:column;gap:12px}.article-item-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px 18px;transition:all .15s ease}.article-item-card:hover{background:#fff;border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a0a}.article-item-card.custom-article{background:#fffbeb;border-color:#fde68a}.article-item-card.custom-article:hover{background:#fff;border-color:#f59e0b}.article-item-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.article-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.article-no-pill{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#059669;color:#fff;border-radius:6px;font-size:.75rem;font-weight:700}.article-item-card.custom-article .article-no-pill{background:#d97706}.article-title-text{font-size:.88rem;font-weight:700;color:#0f172a;margin:0}.badge-custom-article{background:#fef3c7;color:#b45309;border:1px solid #fde68a;font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.03em}.badge-standard-article{background:#f1f5f9;color:#475569;font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:4px}.article-actions-row{display:flex;align-items:center;gap:6px}.btn-article-icon{background:transparent;border:none;color:#64748b;cursor:pointer;padding:5px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s}.btn-article-icon:hover{background:#e2e8f0;color:#0f172a}.btn-article-icon.delete:hover{background:#fee2e2;color:#dc2626}.article-item-body{font-size:.84rem;color:#334155;line-height:1.6;white-space:pre-wrap;padding-left:36px}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-top:10px}.template-card{border:2px solid #e2e8f0;border-radius:10px;padding:16px;background:#fff;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;gap:8px}.template-card:hover{border-color:#059669;background:#f8fafc}.template-card.selected{border-color:#059669;background:#ecfdf5}.template-card-title{font-size:.92rem;font-weight:700;color:#0f172a}.template-card-desc{font-size:.78rem;color:#64748b;line-height:1.4}.template-card-meta{font-size:.75rem;font-weight:600;color:#059669;margin-top:auto}@media print{body *{visibility:hidden}.contract-print-sheet,.contract-print-sheet *{visibility:visible}.contract-print-sheet{position:absolute;left:0;top:0;width:100%;padding:0}}.dept-workspace-page{padding:1.25rem 2rem;width:100%;max-width:100%;box-sizing:border-box;min-height:calc(100vh - 80px)}.workspace-top-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:1rem}.top-bar-left{display:flex;align-items:center;gap:1.25rem;flex-wrap:wrap}.btn-back-to-list{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem .95rem;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#334155;font-size:.84rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 1px 3px #00000005}.btn-back-to-list:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a}.workspace-breadcrumbs{display:flex;align-items:center;gap:.45rem;font-size:.82rem;color:#64748b}.workspace-breadcrumbs .sep{color:#cbd5e1}.workspace-breadcrumbs .link{cursor:pointer;color:#0284c7;font-weight:600}.workspace-breadcrumbs .link:hover{text-decoration:underline}.workspace-breadcrumbs .current{color:#0f2942;font-weight:700}.top-bar-right{display:flex;align-items:center}.btn-view-main-project{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .95rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-view-main-project:hover{background:#fff;border-color:#0284c7;color:#0284c7}.project-title-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:1.5rem 1.75rem;margin-bottom:1.5rem;box-shadow:0 2px 8px #00000008}.title-card-main{display:flex;align-items:flex-start;gap:1.25rem;margin-bottom:1.25rem}.dept-avatar-badge{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.title-details{flex:1}.title-tags-row{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem;flex-wrap:wrap}.project-code-tag{font-size:.75rem;font-weight:800;background:#f1f5f9;color:#0284c7;padding:.2rem .55rem;border-radius:6px;font-family:monospace}.project-type-tag{font-size:.72rem;font-weight:600;background:#f8fafc;color:#475569;border:1px solid #e2e8f0;padding:.2rem .5rem;border-radius:6px}.dept-label-tag{font-size:.72rem;font-weight:700;padding:.2rem .55rem;border-radius:6px;border:1px solid}.project-main-name{font-size:1.55rem;font-weight:800;color:#0a2540;margin:0 0 .3rem;line-height:1.25}.project-desc-text{font-size:.88rem;color:#64748b;margin:0;line-height:1.45}.project-meta-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1rem;padding-top:1.25rem;border-top:1px solid #f1f5f9}.meta-strip-item{display:flex;align-items:center;gap:.65rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.65rem .85rem}.meta-icon{color:#64748b;flex-shrink:0}.meta-label{display:block;font-size:.7rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.3px;margin-bottom:.15rem}.meta-val{display:block;font-size:.85rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-item{min-width:220px}.mini-progress-bar{height:5px;background:#e2e8f0;border-radius:4px;overflow:hidden}.mini-progress-fill{height:100%;border-radius:4px}.workspace-content-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:2rem;box-shadow:0 2px 8px #00000008}.workspace-banner{display:flex;align-items:center;gap:1.25rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;margin-bottom:2rem}.banner-icon-box{width:60px;height:60px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.banner-heading{font-size:1.25rem;font-weight:800;color:#0a2540;margin:0 0 .35rem}.banner-desc{font-size:.88rem;color:#475569;margin:0;line-height:1.5}.modules-preview-section{margin-bottom:2rem}.section-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:700;color:#0f172a;margin:0 0 1.25rem}.preview-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.preview-card{background:#fff;border:1.5px dashed #cbd5e1;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;transition:all .2s}.preview-card:hover{border-color:#0284c7;background:#f0f9ff;transform:translateY(-2px)}.preview-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.85rem}.card-icon-pill{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center}.prep-badge{font-size:.7rem;font-weight:600;background:#f1f5f9;color:#64748b;padding:.2rem .5rem;border-radius:6px}.preview-card-title{font-size:.95rem;font-weight:700;color:#0f172a;margin:0 0 .4rem}.preview-card-desc{font-size:.82rem;color:#64748b;line-height:1.45;margin:0 0 1rem;flex:1}.preview-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.75rem;border-top:1px solid #f1f5f9;font-size:.75rem}.step-indicator{color:#94a3b8;font-weight:600}.ready-indicator{font-weight:700}.workspace-info-box{display:flex;align-items:flex-start;gap:1rem;background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;padding:1.25rem}.info-icon{flex-shrink:0;margin-top:2px}.info-title{font-size:.92rem;font-weight:700;color:#0369a1;margin:0 0 .35rem}.info-text{font-size:.84rem;color:#475569;line-height:1.5;margin:0}.dept-projects-page{padding:1.25rem 2rem;width:100%;max-width:100%;box-sizing:border-box;min-height:calc(100vh - 80px)}.dept-header-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:1.5rem 1.75rem;margin-bottom:1.25rem;box-shadow:0 2px 8px #00000008}.dept-header-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#64748b;margin-bottom:.75rem}.dept-header-breadcrumb .separator{color:#cbd5e1}.dept-header-breadcrumb .current{color:#0f2942;font-weight:700}.dept-header-main{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.25rem}.dept-header-left{display:flex;align-items:flex-start;gap:1.15rem;flex:1;min-width:320px}.dept-header-info{flex:1;display:flex;flex-direction:column}.dept-icon-wrapper{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;margin-top:2px}.dept-title-row{display:flex;align-items:center;gap:.6rem;margin-bottom:.35rem;flex-wrap:wrap}.dept-title{font-size:1.35rem;font-weight:800;color:#0a2540;margin:0;line-height:1.2}.dept-badge{font-size:.72rem;font-weight:700;padding:.2rem .55rem;border-radius:6px;border:1px solid;letter-spacing:.3px}.dept-status-segmented-tabs{display:inline-flex;align-items:center;background:#e2e8f0;padding:3px;border-radius:8px;gap:2px;margin-left:.35rem}.dept-seg-btn{border:none;background:transparent;color:#64748b;font-weight:500;font-size:.8rem;padding:4px 12px;border-radius:6px;box-shadow:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .15s ease}.dept-seg-btn.active{background:#fff;color:#1d4ed8;font-weight:700;box-shadow:0 1px 3px #0000001a}.dept-seg-count{font-size:.72rem;padding:1px 6px;border-radius:10px;font-weight:700;line-height:1.2}.dept-seg-btn.active .dept-seg-count{background:#eff6ff;color:#2563eb}.dept-seg-btn:not(.active) .dept-seg-count{background:#cbd5e1;color:#475569}.dept-leadership-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.55rem .85rem;margin:.35rem 0 .45rem;padding:.35rem .75rem;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;font-size:.8rem;line-height:1.4}.dept-lead-item{display:inline-flex;align-items:center;gap:.35rem}.dept-lead-item.personnel{flex-wrap:wrap}.dept-lead-label{display:inline-flex;align-items:center;gap:.3rem;font-weight:600;color:#475569;font-size:.78rem}.dept-lead-icon{flex-shrink:0}.dept-lead-icon.to{color:#2563eb}.dept-lead-icon.dept{color:#0d9488}.dept-lead-icon.team{color:#ea580c}.dept-lead-name{font-weight:700;color:#0f172a}.dept-lead-name.active{color:#0a2540}.dept-lead-name.empty{font-weight:500;color:#94a3b8;font-style:italic}.dept-lead-sep{color:#cbd5e1;font-weight:700;-webkit-user-select:none;user-select:none}.dept-personnel-badges{display:inline-flex;align-items:center;flex-wrap:wrap;gap:.3rem}.dept-personnel-chip{display:inline-block;background:#fff;border:1px solid #cbd5e1;color:#1e293b;font-weight:600;padding:1px 7px;border-radius:4px;font-size:.75rem;box-shadow:0 1px 2px #00000008}.dept-lead-manage-btn{display:inline-flex;align-items:center;gap:.3rem;background:#fff;border:1px solid #cbd5e1;color:#0284c7;padding:2px 8px;border-radius:6px;font-size:.74rem;font-weight:600;cursor:pointer;margin-left:auto;transition:all .15s ease}.dept-lead-manage-btn:hover{background:#0284c7;color:#fff;border-color:#0284c7;box-shadow:0 2px 6px #0284c740}.dept-subtitle{font-size:.84rem;color:#64748b;margin:0}.dept-header-right{display:flex;align-items:center;gap:.75rem}.dept-stats-pill{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.5rem 1rem;display:flex;flex-direction:column;align-items:center;min-width:120px}.dept-stats-pill .stat-number{font-size:1.25rem;font-weight:800;line-height:1}.dept-stats-pill .stat-label{font-size:.72rem;color:#64748b;font-weight:600;margin-top:.25rem}.dept-filters-bar{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:.75rem 1rem;margin-bottom:1.25rem;box-shadow:0 1px 4px #00000005;flex-wrap:wrap;gap:.75rem}.search-input-wrapper{display:flex;align-items:center;gap:.5rem;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:.45rem .75rem;min-width:300px;flex:1;max-width:450px}.search-icon{color:#64748b;flex-shrink:0}.search-input-wrapper input{border:none;background:transparent;outline:none;font-size:.86rem;width:100%;color:#0f172a}.clear-btn{border:none;background:transparent;color:#94a3b8;font-size:1.1rem;cursor:pointer;padding:0}.filters-right{display:flex;align-items:center;gap:.6rem}.select-wrapper{position:relative;display:flex;align-items:center}.select-icon{position:absolute;left:.65rem;color:#64748b;pointer-events:none}.filter-select{padding:.45rem .85rem;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;font-size:.84rem;color:#334155;outline:none;cursor:pointer;transition:all .2s}.select-wrapper .filter-select{padding-left:2rem}.filter-select:hover{background:#fff;border-color:#94a3b8}.refresh-btn{width:36px;height:36px;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.refresh-btn:hover{background:#fff;border-color:#0284c7;color:#0284c7}.dept-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.dept-project-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:1.25rem;box-shadow:0 2px 6px #00000005;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;transition:all .22s ease;position:relative}.dept-project-card:hover{transform:translateY(-3px);border-color:#93c5fd;box-shadow:0 10px 20px -5px #0284c71f}.card-top-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;gap:.5rem}.card-top-left-badges{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.project-code-badge{font-size:.72rem;font-weight:800;background:#f1f5f9;color:#0284c7;padding:.2rem .5rem;border-radius:6px;font-family:monospace}.dept-proposal-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.71rem;font-weight:700;padding:.18rem .5rem;border-radius:6px;line-height:1.2;letter-spacing:.2px;transition:all .15s ease;white-space:nowrap}.dept-proposal-badge .status-dot{width:6.5px;height:6.5px;border-radius:50%;flex-shrink:0}.dept-proposal-badge.approved{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.dept-proposal-badge.approved .status-dot{background:#10b981}.dept-proposal-badge.working{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.dept-proposal-badge.working .status-dot{background:#f59e0b}.dept-proposal-badge.pending{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.dept-proposal-badge.pending .status-dot{background:#3b82f6}.dept-proposal-badge.cancelled{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.dept-proposal-badge.cancelled .status-dot{background:#ef4444}.dept-proposal-badge.no-proposal{background:#f8fafc;color:#64748b;border:1px dashed #cbd5e1}.dept-proposal-badge.no-proposal .status-dot{background:#94a3b8}.dept-proposal-badge.default{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.dept-proposal-badge.default .status-dot{background:#64748b}.proposal-badge-count{font-size:.68rem;opacity:.85;margin-left:1px}.proposal-meta-item{color:#334155;background:#f8fafc;padding:.25rem .5rem;border-radius:6px;border:1px solid #f1f5f9}.project-type-tag{font-size:.72rem;font-weight:600;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;padding:.15rem .45rem;border-radius:6px;white-space:nowrap}.card-top-right-wrap{display:flex;align-items:center;gap:.55rem;flex-shrink:0}.pcard-switch-wrap{display:inline-flex;align-items:center;gap:5px;cursor:pointer;-webkit-user-select:none;user-select:none}.pcard-switch-label{font-size:.7rem;font-weight:700;letter-spacing:.5px;cursor:pointer;-webkit-user-select:none;user-select:none}.dept-project-card.is-passive{opacity:.88;background:#fbfcfe;border-color:#e2e8f0}.dept-project-card.is-passive:hover{opacity:1}.project-card-name{font-size:1.05rem;font-weight:800;color:#0f172a;margin:0 0 .75rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-card-meta{display:flex;flex-direction:column;gap:.4rem;margin-bottom:1rem}.meta-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#64748b}.meta-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.project-progress-wrapper{background:#f8fafc;border-radius:8px;padding:.6rem .75rem;margin-bottom:1rem}.progress-label-row{display:flex;align-items:center;justify-content:space-between;font-size:.75rem;margin-bottom:.35rem}.progress-title{display:flex;align-items:center;gap:.3rem;color:#475569;font-weight:600}.progress-pct{font-weight:800;color:#0f172a}.progress-track{height:6px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;border-radius:4px;transition:width .3s ease}.project-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.75rem;border-top:1px solid #f1f5f9}.action-hint{font-size:.74rem;color:#94a3b8;font-weight:500}.btn-open-workspace{display:inline-flex;align-items:center;gap:.35rem;border:none;background:transparent;font-size:.84rem;font-weight:700;cursor:pointer;padding:.2rem 0;transition:transform .15s}.dept-project-card:hover .btn-open-workspace{transform:translate(3px)}.dept-loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5rem 1rem;gap:1rem;color:#64748b;font-size:.92rem;font-weight:600}.dept-empty-card{background:#fff;border-radius:16px;border:1px dashed #cbd5e1;padding:4rem 2rem;text-align:center;max-width:600px;margin:2rem auto}.empty-icon-box{margin-bottom:1rem}.dept-empty-card h3{font-size:1.15rem;font-weight:700;color:#1e293b;margin:0 0 .5rem}.dept-empty-card p{font-size:.88rem;color:#64748b;line-height:1.5;margin:0 0 1.5rem}.btn-create-project{display:inline-flex;align-items:center;gap:.5rem;background:#0a2540;color:#fff;border:none;padding:.65rem 1.25rem;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;transition:background .2s}.btn-create-project:hover{background:#0369a1}.dept-team-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1050;padding:1.5rem}.dept-team-modal{background:#fff;border-radius:16px;width:100%;max-width:580px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003;border:1px solid #e2e8f0;overflow:hidden;animation:modalFadeIn .2s cubic-bezier(.16,1,.3,1)}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.dept-team-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.15rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.dept-team-modal-title{display:flex;align-items:center;gap:.65rem}.dept-team-modal-title h3{margin:0;font-size:1.1rem;font-weight:700;color:#0f2942}.dept-team-modal-close{background:transparent;border:none;color:#64748b;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s}.dept-team-modal-close:hover{background:#e2e8f0;color:#0f172a}.dept-team-modal-body{padding:1.25rem 1.5rem;overflow-y:auto;display:flex;flex-direction:column;gap:1.15rem;max-height:calc(90vh - 140px)}.dept-modal-info-box{display:flex;align-items:flex-start;gap:.75rem;background:#eff6ff;border:1px solid #bfdbfe;padding:.85rem 1rem;border-radius:10px}.dept-modal-info-box .info-icon{color:#2563eb;margin-top:2px;flex-shrink:0}.dept-modal-info-box .info-title{font-size:.78rem;font-weight:700;color:#1e40af;text-transform:uppercase;letter-spacing:.3px;margin-bottom:2px}.dept-modal-info-box .info-desc{font-size:.85rem;color:#1e293b}.dept-modal-info-box .info-sub{font-size:.78rem;color:#64748b}.dept-modal-field{display:flex;flex-direction:column;gap:.4rem}.dept-modal-label-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.dept-modal-label{display:flex;align-items:center;gap:.4rem;font-size:.86rem;font-weight:700;color:#334155}.modal-personnel-search{display:flex;align-items:center;gap:.35rem;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:6px;padding:2px 8px;color:#64748b}.modal-personnel-search input{border:none;background:transparent;outline:none;font-size:.78rem;color:#0f172a;width:120px}.dept-modal-select{width:100%;padding:.6rem .85rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.88rem;color:#0f172a;background:#fff;outline:none;transition:border-color .15s}.dept-modal-select:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c71a}.dept-modal-hint{font-size:.75rem;color:#64748b}.dept-modal-personnel-list{max-height:200px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:10px;background:#fff;display:flex;flex-direction:column}.personnel-checkbox-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .85rem;border-bottom:1px solid #f1f5f9;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s}.personnel-checkbox-item:last-child{border-bottom:none}.personnel-checkbox-item:hover{background:#f8fafc}.personnel-checkbox-item.selected{background:#f0f9ff}.personnel-checkbox-item input[type=checkbox]{cursor:pointer;accent-color:#0284c7;width:16px;height:16px}.personnel-item-info{display:flex;flex-direction:column;gap:1px}.personnel-item-info .name{font-size:.86rem;font-weight:600;color:#0f172a}.personnel-item-info .meta{font-size:.75rem;color:#64748b}.empty-personnel-note{padding:1.5rem;text-align:center;color:#94a3b8;font-size:.85rem}.dept-team-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;background:#f8fafc}.dept-team-modal-footer .btn-cancel{padding:.55rem 1rem;background:#fff;border:1px solid #cbd5e1;color:#475569;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s}.dept-team-modal-footer .btn-cancel:hover{background:#f1f5f9;color:#0f172a}.dept-team-modal-footer .btn-save{padding:.55rem 1.25rem;border:none;color:#fff;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;transition:opacity .15s;box-shadow:0 2px 6px #0000001f}.dept-team-modal-footer .btn-save:hover{opacity:.92}.dept-team-modal-footer .btn-save:disabled,.dept-team-modal-footer .btn-cancel:disabled{opacity:.6;cursor:not-allowed}.dept-view-toggle{display:inline-flex;align-items:center;background:#f1f5f9;padding:3px;border-radius:8px;border:1px solid #e2e8f0;gap:2px}.dept-view-btn{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;color:#64748b;font-size:.775rem;font-weight:600;padding:4px 10px;border-radius:6px;cursor:pointer;transition:all .15s ease}.dept-view-btn:hover{color:#0f2942}.dept-view-btn.active{background:#fff;color:#0284c7;font-weight:700;box-shadow:0 1px 3px #00000014}.dept-projects-list-table-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 2px 8px #00000008;overflow:hidden;margin-top:.5rem;width:100%}.dept-projects-table{width:100%;border-collapse:collapse;font-size:.85rem;text-align:left}.dept-projects-table thead th{background:#f8fafc;color:#475569;font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.5px;padding:.85rem 1rem;border-bottom:1px solid #e2e8f0;white-space:nowrap}.dept-projects-table tbody td{padding:.85rem 1rem;border-bottom:1px solid #f1f5f9;vertical-align:middle;color:#334155}.dept-project-table-row{cursor:pointer;transition:background-color .15s ease}.dept-project-table-row:hover{background-color:#f8fafc}.dept-project-table-row.is-passive{background-color:#fafafa;opacity:.65}.dept-project-table-row.is-passive:hover{opacity:.9;background-color:#f1f5f9}.table-project-name{font-size:.92rem;font-weight:700;color:#0f2942;transition:color .15s}.dept-project-table-row:hover .table-project-name{color:#0284c7}.table-cell-with-icon{display:flex;align-items:center;gap:6px;font-size:.825rem;color:#475569}.table-progress-cell{display:flex;align-items:center;gap:10px}.table-progress-track{flex:1;height:6px;background:#e2e8f0;border-radius:9999px;overflow:hidden;min-width:60px}.table-progress-fill{height:100%;border-radius:9999px;transition:width .3s ease}.table-progress-text{font-size:.775rem;font-weight:700;color:#0f2942;min-width:32px;text-align:right}.table-open-btn{display:inline-flex;align-items:center;gap:4px;background:#f0f9ff;border:1px solid #bae6fd;color:#0284c7;padding:4px 10px;border-radius:6px;font-size:.775rem;font-weight:700;cursor:pointer;transition:all .15s ease}.table-open-btn:hover{background:#0284c7;color:#fff;border-color:#0284c7}.dept-takeoff-page{padding:1.25rem 2rem;width:100%;max-width:100%;box-sizing:border-box;min-height:calc(100vh - 80px)}.takeoff-hero-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:14px;padding:1.75rem;margin-bottom:1.5rem;box-shadow:0 4px 16px #00000008;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.takeoff-hero-content{display:flex;align-items:flex-start;gap:1.25rem;flex:1;min-width:300px}.takeoff-hero-icon-box{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 6px 16px #0000001f}.takeoff-hero-text h2{font-size:1.25rem;font-weight:800;color:#0f172a;margin:0 0 .4rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.takeoff-status-badge{font-size:.72rem;font-weight:700;padding:.2rem .6rem;border-radius:9999px;background:#fef3c7;color:#d97706;border:1px solid #fde68a}.takeoff-hero-text p{font-size:.88rem;color:#475569;line-height:1.5;margin:0}.takeoff-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem;margin-bottom:1.75rem}.takeoff-feature-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;display:flex;gap:1rem;align-items:flex-start;transition:all .2s ease;box-shadow:0 2px 6px #00000005}.takeoff-feature-card:hover{transform:translateY(-2px);border-color:#cbd5e1;box-shadow:0 6px 16px #0000000f}.takeoff-feature-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.takeoff-feature-body h3{font-size:.95rem;font-weight:700;color:#1e293b;margin:0 0 .35rem;display:flex;align-items:center;justify-content:space-between}.takeoff-feature-body p{font-size:.82rem;color:#64748b;line-height:1.45;margin:0}.takeoff-feature-tag{font-size:.68rem;font-weight:600;padding:.15rem .45rem;border-radius:4px;background:#f1f5f9;color:#64748b}.takeoff-projects-section{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.5rem;box-shadow:0 2px 8px #00000008}.takeoff-section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:1rem}.takeoff-section-title{display:flex;align-items:center;gap:.6rem}.takeoff-section-title h3{font-size:1.05rem;font-weight:800;color:#0f172a;margin:0}.takeoff-section-count{font-size:.75rem;font-weight:700;padding:.15rem .55rem;border-radius:9999px;background:#e2e8f0;color:#475569}.takeoff-search-box{display:flex;align-items:center;gap:.5rem;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:.45rem .85rem;width:260px}.takeoff-search-box input{border:none;background:transparent;outline:none;font-size:.84rem;color:#1e293b;width:100%}.takeoff-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.takeoff-project-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.15rem;display:flex;flex-direction:column;justify-content:space-between;gap:.85rem;transition:all .2s}.takeoff-project-card.clickable{cursor:pointer;border:1px solid #e2e8f0}.takeoff-project-card.clickable:hover{border-color:#3b82f6;transform:translateY(-3px);box-shadow:0 10px 24px -4px #3b82f61f,0 4px 8px -2px #0000000d}.takeoff-project-card.clickable:hover .takeoff-project-name{color:#2563eb}.takeoff-project-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.takeoff-project-code{font-size:.72rem;font-weight:700;color:#0284c7;background:#f0f9ff;border:1px solid #bae6fd;padding:.15rem .45rem;border-radius:4px;display:inline-block;margin-bottom:.35rem}.takeoff-project-name{font-size:.95rem;font-weight:700;color:#0f172a;margin:0;line-height:1.3;transition:color .15s ease}.takeoff-project-details{display:flex;flex-direction:column;gap:.35rem;font-size:.8rem;color:#64748b}.takeoff-project-detail-row{display:flex;align-items:center;gap:.45rem}.takeoff-project-footer{padding-top:.75rem;border-top:1px dashed #e2e8f0;display:flex;align-items:center;justify-content:space-between;font-size:.78rem}.takeoff-project-status{display:inline-flex;align-items:center;gap:.35rem;font-weight:600;color:#f59e0b}.takeoff-project-card.is-passive{background:#fbfcfd;border-color:#e2e8f0;opacity:.88}.takeoff-project-card.is-passive:hover{opacity:1;border-color:#94a3b8;box-shadow:0 6px 16px #0000000d}.takeoff-project-status.ready{color:#2563eb;background:#eff6ff;padding:.2rem .5rem;border-radius:6px;font-size:.74rem}.takeoff-project-status.passive{color:#64748b;background:#f1f5f9;padding:.2rem .5rem;border-radius:6px;font-size:.74rem}.takeoff-open-btn{display:inline-flex;align-items:center;gap:.25rem;background:#f8fafc;color:#1e293b;border:1px solid #cbd5e1;padding:.35rem .65rem;border-radius:6px;font-size:.76rem;font-weight:600;cursor:pointer;transition:all .15s ease}.takeoff-project-card.clickable:hover .takeoff-open-btn{background:#2563eb;color:#fff;border-color:#2563eb;box-shadow:0 2px 6px #2563eb40}.takeoff-notice-pill{display:inline-flex;align-items:center;gap:.4rem;font-size:.76rem;color:#64748b;font-style:italic}.takeoff-workspace-view{display:flex;flex-direction:column;gap:1.25rem;animation:fadeIn .2s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.takeoff-ws-topbar{display:flex;align-items:center;gap:1.25rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.75rem 1.25rem;box-shadow:0 1px 3px #00000005}.takeoff-back-nav-btn{display:inline-flex;align-items:center;gap:.45rem;background:#f1f5f9;border:1px solid #cbd5e1;color:#334155;font-size:.82rem;font-weight:600;padding:.45rem .85rem;border-radius:6px;cursor:pointer;transition:all .15s ease}.takeoff-back-nav-btn:hover{background:#e2e8f0;color:#0f172a}.takeoff-ws-breadcrumbs{display:flex;align-items:center;gap:.45rem;font-size:.82rem;color:#64748b;flex-wrap:wrap}.takeoff-ws-breadcrumbs .separator{color:#cbd5e1}.takeoff-ws-breadcrumbs .link{cursor:pointer;color:#475569;transition:color .15s ease}.takeoff-ws-breadcrumbs .link:hover{color:#2563eb;text-decoration:underline}.takeoff-ws-breadcrumbs .current{color:#0f172a;font-weight:600}.takeoff-ws-project-hero{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;box-shadow:0 2px 8px #00000008}.takeoff-ws-hero-left{display:flex;align-items:center;gap:1.25rem;flex:1;min-width:320px}.takeoff-ws-icon-box{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0}.takeoff-ws-hero-details{display:flex;flex-direction:column;gap:.4rem}.takeoff-ws-title-row{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.takeoff-ws-code{font-size:.74rem;font-weight:700;color:#0284c7;background:#f0f9ff;border:1px solid #bae6fd;padding:.2rem .5rem;border-radius:4px}.takeoff-ws-title{font-size:1.2rem;font-weight:800;color:#0f172a;margin:0}.takeoff-ws-status-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;font-weight:700;padding:.2rem .65rem;border-radius:9999px;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.takeoff-ws-draft-badge{font-size:.7rem;font-weight:600;padding:.15rem .5rem;border-radius:4px;background:#fef3c7;color:#b45309;border:1px solid #fde68a}.takeoff-ws-meta-row{display:flex;align-items:center;gap:1.25rem;font-size:.8rem;color:#64748b;flex-wrap:wrap}.takeoff-ws-meta-item{display:inline-flex;align-items:center;gap:.35rem}.takeoff-ws-meta-item strong{color:#475569}.takeoff-ws-hero-actions{display:flex;align-items:center;gap:.65rem}.takeoff-btn-primary{display:inline-flex;align-items:center;gap:.4rem;background:#2563eb;color:#fff;border:none;padding:.55rem 1rem;border-radius:8px;font-size:.84rem;font-weight:600;cursor:pointer;box-shadow:0 2px 8px #2563eb40;transition:all .15s ease}.takeoff-btn-primary:disabled{background:#94a3b8;box-shadow:none;cursor:not-allowed;opacity:.8}.takeoff-btn-secondary{display:inline-flex;align-items:center;gap:.4rem;background:#f8fafc;color:#334155;border:1px solid #cbd5e1;padding:.55rem .9rem;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .15s ease}.takeoff-btn-secondary:hover{background:#e2e8f0;color:#0f172a}.takeoff-ws-tabs-bar{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.4rem;overflow-x:auto}.takeoff-ws-tabs{display:flex;gap:.5rem}.takeoff-ws-tab{display:inline-flex;align-items:center;gap:.5rem;padding:.55rem 1rem;background:transparent;border:1px solid transparent;border-radius:8px;font-size:.84rem;font-weight:600;color:#64748b;cursor:pointer;transition:all .15s ease;white-space:nowrap}.takeoff-ws-tab:hover{background:#f8fafc;color:#1e293b}.takeoff-ws-tab.active{background:#f1f5f9;border-color:#cbd5e1;color:#0f172a;box-shadow:0 1px 3px #0000000a}.takeoff-ws-tab .tab-icon{display:inline-flex}.takeoff-ws-tab .tab-count{font-size:.7rem;background:#e2e8f0;color:#475569;padding:.1rem .45rem;border-radius:9999px;font-weight:700}.takeoff-ws-tab.active .tab-count{background:#cbd5e1;color:#0f172a}.takeoff-ws-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.takeoff-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.1rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 4px #00000005}.takeoff-kpi-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.takeoff-kpi-body{display:flex;flex-direction:column}.takeoff-kpi-label{font-size:.74rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.02em}.takeoff-kpi-val{font-size:1.25rem;font-weight:800;color:#0f172a;margin:.15rem 0}.takeoff-kpi-val span{font-size:.78rem;font-weight:600;color:#64748b}.takeoff-kpi-sub{font-size:.72rem;color:#94a3b8}.takeoff-ws-sheet-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px #00000008;overflow:hidden}.takeoff-sheet-toolbar{padding:.85rem 1.25rem;border-bottom:1px solid #e2e8f0;background:#fafafa;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.takeoff-sheet-toolbar-left{display:flex;align-items:center;gap:.75rem}.takeoff-sheet-title{display:flex;align-items:center;gap:.5rem}.takeoff-sheet-title h3{font-size:.95rem;font-weight:700;color:#0f172a;margin:0}.takeoff-sheet-tag{font-size:.68rem;font-weight:700;padding:.15rem .45rem;border-radius:4px;background:#e0f2fe;color:#0369a1}.takeoff-sheet-toolbar-right{display:flex;align-items:center;gap:.65rem}.takeoff-sheet-search{display:flex;align-items:center;gap:.45rem;background:#fff;border:1px solid #cbd5e1;border-radius:6px;padding:.35rem .75rem;width:220px}.takeoff-sheet-search input{border:none;background:transparent;outline:none;font-size:.78rem;color:#1e293b;width:100%}.takeoff-sheet-btn{display:inline-flex;align-items:center;gap:.35rem;background:#fff;border:1px solid #cbd5e1;color:#475569;padding:.38rem .7rem;border-radius:6px;font-size:.76rem;font-weight:600;cursor:pointer}.takeoff-sheet-btn:disabled{opacity:.6;cursor:not-allowed}.takeoff-table-wrapper{overflow-x:auto;min-height:380px}.takeoff-table{width:100%;border-collapse:collapse;font-size:.8rem}.takeoff-table th{background:#f8fafc;color:#475569;font-weight:700;font-size:.76rem;padding:.7rem .85rem;border-bottom:1px solid #e2e8f0;border-right:1px solid #f1f5f9;text-align:left;white-space:nowrap}.takeoff-table th:last-child{border-right:none}.takeoff-empty-workspace{padding:3rem 2rem;display:flex;flex-direction:column;align-items:center;text-align:center;background:linear-gradient(180deg,#fff,#f8fafc)}.takeoff-empty-hero{max-width:600px;display:flex;flex-direction:column;align-items:center;margin-bottom:2.25rem}.takeoff-empty-icon-wrap{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:1.25rem;box-shadow:0 8px 20px #0000001a}.takeoff-empty-hero h2{font-size:1.35rem;font-weight:800;color:#0f172a;margin:0 0 .5rem}.takeoff-empty-lead{font-size:.9rem;color:#475569;line-height:1.55;margin:0 0 1rem}.takeoff-ready-chip{display:inline-flex;align-items:center;gap:.45rem;font-size:.78rem;font-weight:600;padding:.35rem .85rem;border-radius:9999px;background:#fef3c7;color:#92400e;border:1px solid #fde68a}.takeoff-upcoming-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;width:100%;max-width:900px;text-align:left}.takeoff-upcoming-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:1.25rem;box-shadow:0 2px 6px #00000005;transition:all .2s ease}.takeoff-upcoming-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0000000d}.takeoff-up-icon{width:38px;height:38px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:.75rem}.takeoff-upcoming-card h4{font-size:.88rem;font-weight:700;color:#0f172a;margin:0 0 .35rem}.takeoff-upcoming-card p{font-size:.78rem;color:#64748b;line-height:1.45;margin:0}.takeoff-loading-state,.takeoff-not-found-state{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:3.5rem 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#64748b}.takeoff-loading-spinner{width:38px;height:38px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}.takeoff-empty-icon{color:#94a3b8;margin-bottom:1rem}.takeoff-not-found-state h3{font-size:1.15rem;font-weight:700;color:#0f172a;margin:0 0 .4rem}.takeoff-not-found-state p{font-size:.86rem;color:#64748b;margin:0 0 1.25rem}.takeoff-back-btn{display:inline-flex;align-items:center;gap:.45rem;background:#2563eb;color:#fff;border:none;padding:.55rem 1rem;border-radius:8px;font-size:.82rem;font-weight:600;cursor:pointer;transition:background .15s ease}.takeoff-back-btn:hover{background:#1d4ed8}.takeoff-cards-toolbar{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:.85rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;box-shadow:0 1px 4px #00000005}.toolbar-left-filters{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.toolbar-pafta-filter{display:inline-flex;align-items:center;gap:.4rem;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;padding:.35rem .65rem}.toolbar-pafta-filter select{border:none;background:transparent;outline:none;font-size:.78rem;font-weight:600;color:#334155;cursor:pointer}.toolbar-right-search{display:flex;align-items:center;gap:.75rem}.takeoff-cards-empty-card{background:#fff;border:1px dashed #cbd5e1;border-radius:14px;padding:4rem 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-card-icon-wrap{width:64px;height:64px;border-radius:18px;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:1.25rem;box-shadow:0 8px 20px #00000014}.takeoff-cards-empty-card h3{font-size:1.25rem;font-weight:800;color:#0f172a;margin:0 0 .5rem}.takeoff-cards-empty-card p{font-size:.88rem;color:#64748b;max-width:520px;margin:0 0 1.5rem;line-height:1.5}.takeoff-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.15rem}.takeoff-item-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:.85rem;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #00000005}.takeoff-item-card:hover{transform:translateY(-3px);border-color:#3b82f6;box-shadow:0 10px 24px -4px #3b82f61f,0 4px 8px -2px #0000000a}.takeoff-item-card.is-sealed{border-color:#86efac;background:linear-gradient(180deg,#fff,#f0fdf4)}.takeoff-item-card.is-sealed:hover{border-color:#22c55e;box-shadow:0 10px 24px -4px #22c55e26}.tcard-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tcard-header-left{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.tcard-code{font-size:.74rem;font-weight:800;color:#0284c7;background:#f0f9ff;border:1px solid #bae6fd;padding:.2rem .5rem;border-radius:4px}.tcard-seal-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:.68rem;font-weight:700;padding:.15rem .5rem;border-radius:9999px}.tcard-seal-badge.sealed{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.tcard-seal-badge.draft{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.tcard-header-right{display:flex;align-items:center;gap:.35rem}.tcard-seal-icon-btn{background:#f1f5f9;border:1px solid #cbd5e1;color:#64748b;width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.tcard-seal-icon-btn:hover,.tcard-seal-icon-btn.active{background:#dcfce7;color:#15803d;border-color:#86efac}.tcard-delete-btn{background:transparent;border:1px solid transparent;color:#94a3b8;width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.tcard-delete-btn:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.tcard-title{font-size:.95rem;font-weight:700;color:#0f172a;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tcard-drawing-strip{display:flex;align-items:center;gap:.45rem;background:#f8fafc;border:1px solid #e2e8f0;padding:.4rem .65rem;border-radius:6px;font-size:.78rem}.drawing-label{color:#64748b;font-weight:600}.drawing-val{color:#0369a1;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tcard-metrics-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.tmetric-box{background:#f8fafc;border:1px solid #f1f5f9;border-radius:6px;padding:.45rem .65rem;display:flex;flex-direction:column}.tmetric-box.full{grid-column:span 2;background:#f0fdf4;border-color:#dcfce7}.tmetric-lbl{font-size:.68rem;color:#64748b;font-weight:600}.tmetric-val{font-size:.95rem;font-weight:800;color:#0f172a;margin-top:.15rem}.tmetric-val.qty{color:#0284c7}.tmetric-val.qty .unit{font-size:.75rem;font-weight:600;color:#64748b}.tmetric-val.total{color:#059669;font-size:1.05rem}.tcard-footer{display:flex;align-items:center;justify-content:space-between;padding-top:.65rem;border-top:1px dashed #e2e8f0;gap:.5rem}.tcard-info-text{display:flex;flex-direction:column;gap:.2rem}.line-count-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.74rem;font-weight:600;color:#64748b}.sealed-by-text{font-size:.68rem;color:#059669;font-weight:600}.tcard-open-btn{display:inline-flex;align-items:center;gap:.3rem;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;padding:.4rem .75rem;border-radius:6px;font-size:.78rem;font-weight:700;cursor:pointer;transition:all .15s ease}.takeoff-item-card:hover .tcard-open-btn{background:#2563eb;color:#fff;border-color:#2563eb;box-shadow:0 2px 6px #2563eb40}.takeoff-seal-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1rem;border-radius:8px;font-size:.82rem;font-weight:700;cursor:pointer;transition:all .15s ease}.takeoff-seal-btn.unsealed{background:linear-gradient(135deg,#059669,#047857);color:#fff;border:none;box-shadow:0 2px 8px #05966940}.takeoff-seal-btn.unsealed:hover{background:linear-gradient(135deg,#047857,#065f46)}.takeoff-seal-btn.sealed{background:#dcfce7;color:#15803d;border:1px solid #86efac}.takeoff-seal-btn.sealed:hover{background:#bbf7d0}.takeoff-sheet-poz-header{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;box-shadow:0 2px 8px #00000008}.sheet-poz-left{display:flex;align-items:flex-start;gap:1rem;flex:1;min-width:320px}.sheet-code-badge{font-size:.88rem;font-weight:800;background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd;padding:.45rem .85rem;border-radius:8px;flex-shrink:0}.sheet-poz-info{display:flex;flex-direction:column;gap:.4rem}.sheet-poz-title{font-size:1.15rem;font-weight:800;color:#0f172a;margin:0}.sheet-meta-tags{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.sheet-meta-tag{display:inline-flex;align-items:center;gap:.35rem;font-size:.78rem;color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;padding:.25rem .55rem;border-radius:6px}.sheet-meta-tag.highlight{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.sheet-meta-tag.status.sealed{background:#dcfce7;border-color:#bbf7d0;color:#15803d;font-weight:700}.sheet-meta-tag.status.draft{background:#fef3c7;border-color:#fde68a;color:#b45309;font-weight:700}.sheet-edit-inline-btn{background:transparent;border:none;cursor:pointer;color:#2563eb;padding:2px;display:inline-flex;align-items:center;margin-left:2px}.sheet-poz-right-kpis{display:flex;align-items:center;gap:1rem}.sheet-kpi-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.65rem 1rem;text-align:right;min-width:140px}.sheet-kpi-lbl{font-size:.7rem;color:#64748b;font-weight:600;text-transform:uppercase}.sheet-kpi-val{font-size:1.15rem;font-weight:800;color:#0f172a;margin-top:.15rem}.sheet-kpi-val.primary{color:#0284c7}.sheet-kpi-val.success{color:#059669}.sheet-kpi-val .unit{font-size:.8rem;color:#64748b}.takeoff-sealed-banner{display:inline-flex;align-items:center;gap:.45rem;font-size:.78rem;font-weight:600;padding:.35rem .85rem;background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;border-radius:6px}.professional-table tbody tr.row-minha{background:#fffbfa}.professional-table tbody tr.row-minha:hover{background:#fef2f2}.deduction-pill{font-size:.68rem;font-weight:800;padding:.15rem .45rem;border-radius:4px}.deduction-pill.ilave{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.deduction-pill.minha{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.line-space-badge{display:inline-block;font-size:.68rem;background:#e0f2fe;color:#0369a1;padding:.1rem .4rem;border-radius:4px;margin-top:.2rem}.table-action-icon-btn{background:transparent;border:1px solid transparent;color:#64748b;width:26px;height:26px;border-radius:4px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.table-action-icon-btn.danger:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.tfoot-row td{padding:.65rem .85rem;border-top:1px solid #e2e8f0}.tfoot-row.sub{background:#fafafa;font-size:.82rem}.tfoot-row.grand{background:#f0f9ff;border-top:2px solid #0284c7}.takeoff-add-line-strip{background:#f8fafc;border-top:1px solid #e2e8f0;padding:1.15rem 1.5rem}.add-line-header{display:flex;align-items:center;gap:.45rem;font-size:.84rem;font-weight:700;color:#1e293b;margin-bottom:.85rem}.add-line-fields-row{display:flex;gap:.65rem;align-items:flex-end;flex-wrap:wrap}.add-field{display:flex;flex-direction:column;gap:.3rem}.add-field label{font-size:.72rem;font-weight:600;color:#475569}.add-field input,.add-field select{height:36px;padding:.4rem .65rem;background:#fff;border:1px solid #cbd5e1;border-radius:6px;font-size:.82rem;color:#0f172a;outline:none;box-sizing:border-box}.add-field input:focus,.add-field select:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.add-field.small{width:65px}.add-field.dim{width:75px}.add-field.action-type{width:140px}.toggle-btn-group{display:flex;height:36px;border:1px solid #cbd5e1;border-radius:6px;overflow:hidden;background:#fff}.btn-type{flex:1;border:none;background:transparent;font-size:.74rem;font-weight:700;color:#64748b;cursor:pointer;transition:all .15s ease}.btn-type.ilave.active{background:#059669;color:#fff}.btn-type.minha.active{background:#dc2626;color:#fff}.add-submit{height:36px;padding:0 1rem}.takeoff-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem}.takeoff-modal-content{background:#fff;border-radius:14px;width:100%;max-width:820px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003;overflow:hidden;animation:fadeIn .2s ease-in-out}.takeoff-modal-header{padding:1.25rem 1.75rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:flex-start;justify-content:space-between}.takeoff-modal-header h2{font-size:1.25rem;font-weight:800;color:#0f172a;margin:0 0 .35rem}.takeoff-modal-header p{font-size:.82rem;color:#64748b;margin:0}.modal-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px}.modal-close-btn:hover{background:#f1f5f9;color:#0f172a}.takeoff-modal-tabs{display:flex;border-bottom:1px solid #e2e8f0;background:#f8fafc;padding:0 1.5rem}.modal-tab-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:2px solid transparent;font-size:.85rem;font-weight:600;color:#64748b;cursor:pointer;transition:all .15s ease}.modal-tab-btn:hover{color:#0f172a}.modal-tab-btn.active{color:#2563eb;border-bottom-color:#2563eb;background:#fff}.modal-drawing-selector-card{margin:1rem 1.5rem .5rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:.95rem 1.15rem}.drawing-selector-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.drawing-selector-title{display:flex;align-items:center;gap:.5rem}.drawing-selector-title h4{font-size:.86rem;font-weight:700;color:#0f172a;margin:0}.drawing-dept-badge{font-size:.7rem;font-weight:700;background:#e0f2fe;color:#0369a1;padding:.15rem .5rem;border-radius:9999px;border:1px solid #bae6fd}.drawing-scope-toggles{display:flex;align-items:center;gap:.35rem}.scope-pill-btn{background:#fff;border:1px solid #cbd5e1;color:#64748b;font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:6px;cursor:pointer;transition:all .15s ease}.scope-pill-btn:hover{background:#f1f5f9;color:#1e293b}.scope-pill-btn.active{background:#0284c7;border-color:#0284c7;color:#fff}.drawing-selector-body{display:flex;flex-direction:column;gap:.75rem}.drawing-select-row{display:grid;grid-template-columns:1.4fr 1fr;gap:.85rem}@media (max-width: 768px){.drawing-select-row{grid-template-columns:1fr}}.drawing-select-control,.drawing-manual-control{display:flex;flex-direction:column;gap:.3rem}.drawing-select-control label,.drawing-manual-control label{display:flex;align-items:center;gap:.35rem;font-size:.73rem;font-weight:600;color:#334155}.drawing-archive-select,.drawing-manual-control input{width:100%;height:36px;padding:.4rem .7rem;background:#fff;border:1px solid #cbd5e1;border-radius:6px;font-size:.82rem;color:#0f172a;outline:none;box-sizing:border-box}.drawing-archive-select:focus,.drawing-manual-control input:focus{border-color:#0284c7;box-shadow:0 0 0 2px #0284c726}.drawing-archive-select optgroup{font-weight:700;color:#0369a1;background:#f8fafc}.drawing-archive-select option{font-weight:400;color:#1e293b;padding:4px 6px}.selected-drawing-detail-card{background:#fff;border:1px solid #bae6fd;border-left:4px solid #0284c7;border-radius:8px;padding:.75rem .95rem;display:flex;flex-direction:column;gap:.65rem;box-shadow:0 1px 3px #0000000a}.detail-card-left{display:flex;align-items:flex-start;gap:.75rem}.sheet-icon-wrap{width:34px;height:34px;background:#e0f2fe;color:#0284c7;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.sheet-info-col{flex:1}.sheet-main-line{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem;flex-wrap:wrap}.sheet-no-tag{font-size:.75rem;font-weight:800;background:#0284c7;color:#fff;padding:.15rem .45rem;border-radius:4px}.sheet-title-text{font-size:.88rem;font-weight:700;color:#0f172a}.sheet-badges-row{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;font-size:.72rem}.rev-badge{font-weight:800;background:#f1f5f9;color:#334155;border:1px solid #cbd5e1;padding:.1rem .45rem;border-radius:4px}.badge-en-son-revize{display:inline-flex;align-items:center;gap:.25rem;font-weight:800;background:#dcfce7;color:#15803d;border:1px solid #86efac;padding:.15rem .55rem;border-radius:9999px}.badge-eski-revize{font-weight:700;background:#fef3c7;color:#b45309;border:1px solid #fde68a;padding:.12rem .45rem;border-radius:9999px}.sheet-date-badge{display:inline-flex;align-items:center;gap:.25rem;color:#64748b;font-weight:600}.sheet-scale-badge,.sheet-author-badge{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0;padding:.1rem .4rem;border-radius:4px}.drawing-all-revisions-strip{border-top:1px dashed #e2e8f0;padding-top:.55rem;display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.all-rev-title{font-size:.72rem;font-weight:700;color:#475569}.all-rev-pills{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.rev-pill-btn{display:inline-flex;align-items:center;gap:.35rem;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;padding:.2rem .5rem;font-size:.72rem;cursor:pointer;transition:all .15s ease}.rev-pill-btn:hover{background:#f1f5f9;border-color:#94a3b8}.rev-pill-btn.active{background:#eff6ff;border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f6}.rev-pill-no{font-weight:800;color:#1e293b}.rev-pill-date{color:#64748b;font-size:.68rem}.rev-pill-latest-tag{font-size:.65rem;font-weight:800;background:#dcfce7;color:#166534;padding:.05rem .35rem;border-radius:4px}.drawing-archive-empty-prompt{display:flex;flex-direction:column;gap:.85rem}.empty-prompt-content{display:flex;align-items:center;gap:.85rem;background:#fffbeb;border:1px solid #fef3c7;border-radius:8px;padding:.75rem 1rem}.empty-prompt-icon{width:40px;height:40px;background:#fef3c7;color:#d97706;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.empty-prompt-details{flex:1}.empty-prompt-details h5{font-size:.82rem;font-weight:700;color:#92400e;margin:0 0 .15rem}.empty-prompt-details p{font-size:.75rem;color:#b45309;margin:0}.btn-open-archive-link{display:inline-flex;align-items:center;gap:.35rem;background:#fff;border:1px solid #fde68a;color:#b45309;font-size:.75rem;font-weight:700;padding:.4rem .75rem;border-radius:6px;cursor:pointer;white-space:nowrap;transition:all .15s ease}.btn-open-archive-link:hover{background:#fef3c7;border-color:#f59e0b}.drawing-manual-fallback label{display:block;font-size:.73rem;font-weight:600;color:#334155;margin-bottom:.25rem}.drawing-manual-fallback input{width:100%;height:36px;padding:.4rem .7rem;background:#fff;border:1px solid #cbd5e1;border-radius:6px;font-size:.82rem;color:#0f172a;box-sizing:border-box}.tcard-drawing-linked{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.tcard-rev-badge{font-size:.68rem;font-weight:800;background:#f1f5f9;color:#334155;border:1px solid #cbd5e1;padding:.08rem .35rem;border-radius:4px}.tcard-date-badge{display:inline-flex;align-items:center;gap:.2rem;font-size:.68rem;color:#64748b;font-weight:600}.tcard-latest-badge{display:inline-flex;align-items:center;gap:.2rem;font-size:.65rem;font-weight:800;background:#dcfce7;color:#15803d;border:1px solid #86efac;padding:.08rem .4rem;border-radius:9999px}.tcard-old-badge{font-size:.65rem;font-weight:700;background:#fef3c7;color:#b45309;border:1px solid #fde68a;padding:.08rem .35rem;border-radius:4px}.sheet-pafta-inline-wrap{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.small-modal{max-width:540px!important}.modal-tab-body{padding:1rem 1.5rem;flex:1;overflow-y:auto;min-height:280px;max-height:420px}.modal-poz-search-row{display:flex;align-items:center;gap:.5rem;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:.55rem .85rem;margin-bottom:.85rem}.modal-poz-search-row input{flex:1;border:none;background:transparent;outline:none;font-size:.85rem;color:#0f172a}.selected-poz-pill{font-size:.72rem;font-weight:700;background:#eff6ff;color:#2563eb;padding:.2rem .6rem;border-radius:9999px;border:1px solid #bfdbfe}.modal-poz-list{display:flex;flex-direction:column;gap:.45rem}.modal-poz-row{display:flex;align-items:center;gap:.75rem;padding:.65rem .85rem;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;transition:all .15s ease}.modal-poz-row:hover{background:#f8fafc;border-color:#cbd5e1}.modal-poz-row.selected{background:#eff6ff;border-color:#93c5fd}.modal-poz-row.already-added{opacity:.65}.poz-row-code{font-size:.76rem;font-weight:800;color:#0284c7;background:#f0f9ff;padding:.2rem .45rem;border-radius:4px;min-width:80px}.poz-row-main{flex:1}.poz-row-name{font-size:.84rem;font-weight:600;color:#1e293b}.poz-row-sec{font-size:.7rem;color:#64748b;margin-right:.5rem}.poz-already-tag{font-size:.68rem;font-weight:700;background:#e2e8f0;color:#475569;padding:.1rem .4rem;border-radius:4px}.poz-row-unit{font-size:.78rem;color:#64748b;font-weight:600;width:50px;text-align:center}.poz-row-price{font-size:.85rem;font-weight:700;color:#0f172a;min-width:90px;text-align:right}.custom-poz-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}.custom-poz-grid .form-group{display:flex;flex-direction:column;gap:.35rem}.custom-poz-grid .form-group.full{grid-column:span 3}.custom-poz-grid label{font-size:.76rem;font-weight:600;color:#334155}.custom-poz-grid input,.custom-poz-grid select,.custom-poz-grid textarea{padding:.5rem .75rem;background:#fff;border:1px solid #cbd5e1;border-radius:6px;font-size:.84rem;color:#0f172a;outline:none}.custom-poz-grid input:focus,.custom-poz-grid select:focus,.custom-poz-grid textarea:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.takeoff-modal-footer{padding:1rem 1.75rem;border-top:1px solid #e2e8f0;background:#fafafa;display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.tcard-seal-badge.approved{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.tcard-seal-badge.pending{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.tcard-seal-badge.revision{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.tcard-preparer-strip{display:flex;align-items:center;gap:.45rem;font-size:.76rem;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;padding:.35rem .65rem;border-radius:6px;margin-bottom:.65rem}.tcard-chain-preview{display:flex;flex-direction:column;gap:.35rem;background:#fdfdfd;border:1px solid #f1f5f9;border-radius:6px;padding:.5rem .65rem;margin-bottom:.75rem}.chain-preview-header{display:flex;align-items:center;gap:.35rem;font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.chain-preview-steps{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.chain-chip{display:flex;align-items:center;gap:.3rem;font-size:.72rem;padding:.15rem .45rem;border-radius:4px;background:#f1f5f9;color:#334155;font-weight:600}.chain-chip.approved{background:#dcfce7;color:#15803d}.chain-chip.pending{background:#fff7ed;color:#ea580c;font-weight:700;border:1px solid #fed7aa}.chain-chip.bypassed_leave{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.chain-chip.rejected{background:#fee2e2;color:#b91c1c}.chain-sep{color:#cbd5e1;font-size:.7rem}.takeoff-submit-approval-btn{display:flex;align-items:center;gap:.45rem;padding:.5rem 1rem;background:#2563eb;border:1px solid #1d4ed8;color:#fff;font-size:.82rem;font-weight:700;border-radius:8px;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 6px #2563eb40}.takeoff-submit-approval-btn:hover{background:#1d4ed8;transform:translateY(-1px)}.takeoff-submit-approval-btn.re-submit{background:#dc2626;border-color:#b91c1c}.approval-status-pill{display:flex;align-items:center;gap:.4rem;padding:.45rem .85rem;border-radius:8px;font-size:.8rem;font-weight:700}.approval-status-pill.pending{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.approval-status-pill.approved{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.approval-status-pill.revision{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.btn-approve-inline{display:flex;align-items:center;gap:.35rem;padding:.45rem .85rem;background:#16a34a;color:#fff;border:1px solid #15803d;border-radius:8px;font-size:.8rem;font-weight:700;cursor:pointer}.btn-reject-inline{display:flex;align-items:center;gap:.35rem;padding:.45rem .85rem;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;border-radius:8px;font-size:.8rem;font-weight:700;cursor:pointer}.revision-alert-banner{display:flex;align-items:flex-start;gap:.75rem;background:#fef2f2;border:1px solid #fecaca;border-left:4px solid #ef4444;border-radius:8px;padding:.85rem 1.1rem;margin-bottom:1.25rem;color:#991b1b}.revision-alert-banner h4{margin:0 0 .25rem;font-size:.88rem;font-weight:800}.revision-alert-banner p{margin:0;font-size:.82rem;line-height:1.45}.hierarchy-preview-list{display:flex;flex-direction:column;gap:.65rem;margin:1rem 0}.hierarchy-preview-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem 1rem}.hierarchy-preview-card.bypassed{background:#fffbeb;border-color:#fde68a}.mgr-info-col{display:flex;flex-direction:column}.mgr-step-title{font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase}.mgr-fullname{font-size:.9rem;font-weight:800;color:#0f172a}.mgr-role{font-size:.76rem;color:#475569}.bypassed-badge{background:#fef3c7;color:#b45309;border:1px solid #fde68a;font-size:.74rem;font-weight:700;padding:.25rem .6rem;border-radius:6px;display:flex;align-items:center;gap:.35rem}.dept-tasks-page{padding:1.25rem 2rem;width:100%;max-width:100%;box-sizing:border-box;min-height:calc(100vh - 80px)}.tasks-hero-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:14px;padding:1.5rem 1.75rem;margin-bottom:1.5rem;box-shadow:0 4px 16px #00000008;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.tasks-hero-content{display:flex;align-items:flex-start;gap:1.25rem;flex:1;min-width:320px}.tasks-hero-icon-box{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 6px 16px #0000001f}.tasks-hero-text h2{font-size:1.25rem;font-weight:800;color:#0f172a;margin:0 0 .35rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.tasks-badge{font-size:.72rem;font-weight:700;padding:.2rem .6rem;border-radius:9999px;border:1px solid transparent}.tasks-hero-desc{font-size:.86rem;color:#64748b;margin:0}.tasks-stats-pills{display:flex;gap:1rem;flex-wrap:wrap}.tasks-stat-pill{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #00000005}.tasks-stat-pill:hover,.tasks-stat-pill.active{border-color:#3b82f6;background:#eff6ff;transform:translateY(-1px)}.pill-number-badge{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem}.pill-number-badge.orange{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.pill-number-badge.blue{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.pill-text{display:flex;flex-direction:column}.pill-title{font-size:.84rem;font-weight:700;color:#1e293b}.pill-sub{font-size:.72rem;color:#64748b}.tasks-tabs-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.tasks-tab-buttons{display:flex;gap:.5rem;background:#f1f5f9;padding:.35rem;border-radius:10px}.task-tab-btn{display:flex;align-items:center;gap:.5rem;padding:.55rem 1.1rem;border:none;background:transparent;color:#64748b;font-size:.85rem;font-weight:700;border-radius:8px;cursor:pointer;transition:all .15s ease}.task-tab-btn.active{background:#fff;color:#0f172a;box-shadow:0 2px 6px #0000000f}.tab-counter{background:#e2e8f0;color:#334155;font-size:.75rem;font-weight:800;padding:.1rem .45rem;border-radius:9999px}.task-tab-btn.active .tab-counter{background:#2563eb;color:#fff}.tasks-search-box{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #e2e8f0;padding:.55rem .9rem;border-radius:10px;min-width:300px;box-shadow:0 1px 3px #00000008}.tasks-search-box input{border:none;outline:none;font-size:.85rem;width:100%}.tasks-loading,.tasks-empty-state{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:3.5rem 2rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1rem;color:#64748b}.tasks-empty-state h3{font-size:1.15rem;color:#0f172a;font-weight:700;margin:0}.tasks-empty-state p{font-size:.88rem;max-width:500px;margin:0}.text-emerald{color:#10b981}.tasks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:1.25rem}.task-takeoff-card,.task-leave-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 2px 8px #00000008;transition:all .2s ease}.task-takeoff-card:hover,.task-leave-card:hover{border-color:#cbd5e1;box-shadow:0 6px 20px #0000000f;transform:translateY(-2px)}.task-card-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding-bottom:.75rem;border-bottom:1px dashed #e2e8f0;margin-bottom:.9rem}.task-card-project{display:flex;align-items:center;gap:.5rem}.project-badge{background:#f1f5f9;color:#475569;font-size:.72rem;font-weight:800;padding:.15rem .5rem;border-radius:6px;letter-spacing:.5px}.project-name{font-size:.82rem;font-weight:700;color:#1e293b}.task-status-badge{display:flex;align-items:center;gap:.35rem;font-size:.74rem;font-weight:700;padding:.2rem .6rem;border-radius:9999px}.task-status-badge.pending{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.poz-header-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.4rem;flex-wrap:wrap}.poz-code-pill{background:#f8fafc;border:1px solid #cbd5e1;color:#0f172a;font-family:monospace;font-weight:800;font-size:.85rem;padding:.2rem .6rem;border-radius:6px}.drawing-tag{font-size:.75rem;color:#64748b}.poz-title{font-size:.92rem;font-weight:700;color:#0f172a;margin:0 0 .8rem;line-height:1.4}.takeoff-qty-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.6rem .85rem;display:flex;align-items:center;justify-content:space-between;margin-bottom:.8rem}.qty-label{font-size:.78rem;color:#64748b;font-weight:600}.qty-value{font-size:1.05rem;font-weight:800;color:#0f172a}.qty-unit{font-size:.78rem;font-weight:600;color:#64748b;margin-left:.35rem}.preparer-info-row{display:flex;align-items:center;gap:.45rem;font-size:.78rem;color:#475569;margin-bottom:.85rem}.hierarchy-stepper-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.6rem .75rem;margin-bottom:1rem}.stepper-title{display:flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;color:#475569;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.stepper-chain{display:flex;flex-direction:column;gap:.4rem}.stepper-step{display:flex;align-items:center;gap:.6rem;position:relative}.step-circle{width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:800;flex-shrink:0}.stepper-step.approved .step-circle{background:#dcfce7;color:#15803d}.stepper-step.bypassed_leave .step-circle{background:#fef3c7;color:#b45309}.stepper-step.pending .step-circle{background:#fed7aa;color:#c2410c;box-shadow:0 0 0 3px #ea580c33}.stepper-step.waiting .step-circle{background:#e2e8f0;color:#64748b}.stepper-step.rejected .step-circle{background:#fee2e2;color:#b91c1c}.step-label{display:flex;align-items:center;gap:.4rem;font-size:.76rem;flex-wrap:wrap}.mgr-name{font-weight:700;color:#1e293b}.step-sub.bypassed{color:#d97706;font-weight:700}.step-sub.approved{color:#16a34a;font-weight:600}.step-sub.active{color:#ea580c;font-weight:800}.step-sub.waiting{color:#94a3b8}.task-card-actions{display:flex;align-items:center;gap:.5rem;padding-top:.85rem;border-top:1px solid #f1f5f9;flex-wrap:wrap}.btn-inspect-takeoff{display:flex;align-items:center;gap:.35rem;padding:.45rem .75rem;background:#f1f5f9;border:1px solid #cbd5e1;color:#334155;font-size:.78rem;font-weight:700;border-radius:6px;cursor:pointer;transition:all .15s}.btn-inspect-takeoff:hover{background:#e2e8f0}.btn-reject-takeoff{display:flex;align-items:center;gap:.35rem;padding:.45rem .75rem;background:#fef2f2;border:1px solid #fecaca;color:#dc2626;font-size:.78rem;font-weight:700;border-radius:6px;cursor:pointer;transition:all .15s}.btn-reject-takeoff:hover{background:#fee2e2}.btn-approve-takeoff{display:flex;align-items:center;gap:.35rem;padding:.45rem .9rem;background:#16a34a;border:1px solid #15803d;color:#fff;font-size:.78rem;font-weight:700;border-radius:6px;cursor:pointer;margin-left:auto;transition:all .15s;box-shadow:0 2px 6px #16a34a33}.btn-approve-takeoff:hover{background:#15803d}.personnel-avatar-badge{display:flex;align-items:center;gap:.5rem}.personnel-name{font-size:.92rem;font-weight:800;color:#0f172a}.leave-status-badge{display:flex;align-items:center;gap:.35rem;font-size:.72rem;font-weight:700;background:#eff6ff;color:#2563eb;padding:.2rem .55rem;border-radius:9999px;border:1px solid #bfdbfe}.leave-details-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.85rem}.leave-detail-item{display:flex;flex-direction:column;gap:.2rem}.leave-detail-item.full-width{grid-column:1 / -1}.leave-detail-item .lbl{font-size:.72rem;color:#64748b;font-weight:600}.leave-detail-item .val{font-size:.84rem;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:.4rem}.leave-detail-item .val.highlight{color:#2563eb}.reason-text{background:#f8fafc;border:1px solid #e2e8f0;padding:.4rem .6rem;border-radius:6px;font-weight:500!important;color:#334155!important;font-style:italic}.leave-workflow-hint{display:flex;align-items:flex-start;gap:.45rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;padding:.5rem .65rem;font-size:.75rem;color:#166534;margin-bottom:.85rem;line-height:1.4}.tasks-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.5rem}.tasks-modal-box{background:#fff;border-radius:14px;width:100%;max-width:520px;box-shadow:0 20px 40px #00000040;display:flex;flex-direction:column;overflow:hidden;max-height:90vh}.tasks-modal-box.large{max-width:900px}.tasks-modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.tasks-modal-header h3{margin:0;font-size:1.1rem;font-weight:800;color:#0f172a;display:flex;align-items:center;gap:.5rem}.modal-subtitle{font-size:.8rem;color:#64748b;margin:.2rem 0 0}.modal-close-btn{background:transparent;border:none;font-size:1.2rem;cursor:pointer;color:#64748b}.tasks-modal-body{padding:1.5rem;overflow-y:auto}.tasks-modal-footer{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background:#f8fafc}.btn-outline-secondary{padding:.5rem 1rem;background:#fff;border:1px solid #cbd5e1;color:#334155;border-radius:8px;font-weight:700;font-size:.82rem;cursor:pointer}.btn-outline-primary{padding:.55rem 1.1rem;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;border-radius:8px;font-weight:700;font-size:.85rem;cursor:pointer}.confirm-prompt-box p{font-size:.9rem;line-height:1.5;color:#1e293b;margin:0 0 .5rem}.confirm-prompt-box .sub-hint{font-size:.8rem;color:#64748b}.form-label{display:block;font-size:.8rem;font-weight:700;color:#334155;margin-bottom:.35rem}.form-textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:.6rem;font-size:.85rem;box-sizing:border-box;font-family:inherit;outline:none}.form-textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.cetvel-meta-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.85rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.85rem;margin-bottom:1.25rem}.meta-col{display:flex;flex-direction:column}.meta-lbl{font-size:.72rem;color:#64748b;font-weight:600}.meta-val{font-size:.84rem;font-weight:700;color:#0f172a}.meta-val.highlight{color:#2563eb;font-size:.95rem}.cetvel-table-wrapper{max-height:380px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px}.cetvel-table{width:100%;border-collapse:collapse;font-size:.82rem}.cetvel-table th{background:#f1f5f9;color:#475569;font-weight:700;padding:.6rem .5rem;border-bottom:1px solid #cbd5e1;text-align:left;position:sticky;top:0;z-index:1}.cetvel-table td{padding:.55rem .5rem;border-bottom:1px solid #f1f5f9;color:#1e293b}.cetvel-table tr.is-deduction-row td{background:#fef2f2;color:#991b1b}.addition-tag{background:#dcfce7;color:#166534;padding:.1rem .4rem;border-radius:4px;font-size:.7rem;font-weight:700}.deduction-tag{background:#fee2e2;color:#991b1b;padding:.1rem .4rem;border-radius:4px;font-size:.7rem;font-weight:700}.text-right{text-align:right}.text-center{text-align:center}.text-primary{color:#2563eb}.personnel-leaves-page{padding:1.25rem 2rem;width:100%;max-width:100%;box-sizing:border-box;min-height:calc(100vh - 80px)}.leaves-hero-card{background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid #e2e8f0;border-radius:14px;padding:1.5rem 1.75rem;margin-bottom:1.5rem;box-shadow:0 4px 16px #00000008;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.leaves-hero-content{display:flex;align-items:flex-start;gap:1.25rem;flex:1;min-width:320px}.leaves-hero-icon-box{width:54px;height:54px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,#2563eb,#1e40af);flex-shrink:0;box-shadow:0 6px 16px #2563eb33}.leaves-hero-text h2{font-size:1.25rem;font-weight:800;color:#0f172a;margin:0 0 .35rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.leaves-badge{font-size:.72rem;font-weight:700;padding:.2rem .6rem;border-radius:9999px;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.leaves-hero-desc{font-size:.86rem;color:#64748b;margin:0}.leave-stat-pill{display:flex;align-items:center;gap:.75rem;padding:.6rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 6px #00000005}.leave-stat-pill:hover,.leave-stat-pill.active{border-color:#2563eb;background:#eff6ff}.stat-count-badge{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:1.1rem}.stat-count-badge.orange{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.stat-text{display:flex;flex-direction:column}.stat-title{font-size:.84rem;font-weight:700;color:#1e293b}.stat-sub{font-size:.72rem;color:#64748b}.leaves-nav-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.leaves-tab-buttons{display:flex;gap:.5rem;background:#f1f5f9;padding:.35rem;border-radius:10px}.leave-tab-btn{display:flex;align-items:center;gap:.5rem;padding:.55rem 1.1rem;border:none;background:transparent;color:#64748b;font-size:.85rem;font-weight:700;border-radius:8px;cursor:pointer;transition:all .15s ease}.leave-tab-btn.active{background:#fff;color:#0f172a;box-shadow:0 2px 6px #0000000f}.tab-pill-counter{background:#e2e8f0;color:#334155;font-size:.75rem;font-weight:800;padding:.1rem .45rem;border-radius:9999px}.leave-tab-btn.active .tab-pill-counter{background:#2563eb;color:#fff}.hr-tasks-banner{display:flex;align-items:flex-start;gap:.75rem;background:#eff6ff;border:1px solid #bfdbfe;border-left:4px solid #2563eb;border-radius:8px;padding:.85rem 1.1rem;margin-bottom:1.5rem;color:#1e3a8a}.hr-tasks-banner h4{margin:0 0 .25rem;font-size:.9rem;font-weight:800}.hr-tasks-banner p{margin:0;font-size:.82rem;line-height:1.45}.leaves-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:1.25rem}.leave-task-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #00000008;display:flex;flex-direction:column;justify-content:space-between;transition:all .2s}.leave-task-card:hover{border-color:#cbd5e1;box-shadow:0 6px 20px #0000000f;transform:translateY(-2px)}.ltask-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;padding-bottom:.75rem;border-bottom:1px dashed #e2e8f0;margin-bottom:.85rem}.ltask-user{display:flex;flex-direction:column}.ltask-name{font-size:.95rem;font-weight:800;color:#0f172a}.ltask-dept{font-size:.75rem;color:#64748b}.ltask-status-pill{font-size:.72rem;font-weight:700;padding:.2rem .55rem;border-radius:9999px}.ltask-status-pill.approved{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.ltask-status-pill.prepared{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.ltask-body{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.ltask-row{display:flex;align-items:center;justify-content:space-between;font-size:.82rem}.ltask-row .lbl{color:#64748b;font-weight:600}.ltask-row .val{font-weight:700;color:#1e293b;display:flex;align-items:center;gap:.35rem}.ltask-row .val.highlight{color:#2563eb}.ltask-row .val.manager{color:#166534}.ltask-note-box{background:#f8fafc;border:1px solid #e2e8f0;padding:.45rem .65rem;border-radius:6px;font-size:.76rem;margin-top:.25rem}.ltask-note-box .lbl{font-weight:700;color:#475569;display:block}.ltask-note-box .val{color:#334155;font-style:italic}.ltask-actions{display:flex;align-items:center;gap:.5rem;padding-top:.85rem;border-top:1px solid #f1f5f9}.btn-view-document{display:flex;align-items:center;gap:.35rem;padding:.45rem .75rem;background:#f8fafc;border:1px solid #cbd5e1;color:#334155;font-size:.78rem;font-weight:700;border-radius:6px;cursor:pointer}.btn-view-document:hover{background:#e2e8f0}.btn-send-signature{display:flex;align-items:center;gap:.35rem;padding:.45rem .85rem;background:#2563eb;border:1px solid #1d4ed8;color:#fff;font-size:.78rem;font-weight:700;border-radius:6px;cursor:pointer;margin-left:auto}.btn-complete-signature{display:flex;align-items:center;gap:.35rem;padding:.45rem .85rem;background:#16a34a;border:1px solid #15803d;color:#fff;font-size:.78rem;font-weight:700;border-radius:6px;cursor:pointer;margin-left:auto}.leave-form-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem;max-width:800px;box-shadow:0 4px 16px #00000008}.form-card-header{margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.form-card-header h3{font-size:1.15rem;font-weight:800;color:#0f172a;margin:0 0 .3rem;display:flex;align-items:center;gap:.5rem}.form-card-header p{font-size:.84rem;color:#64748b;margin:0}.leave-request-form{display:flex;flex-direction:column;gap:1.1rem}.form-row.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.field-label{display:block;font-size:.82rem;font-weight:700;color:#334155;margin-bottom:.35rem}.field-input,.field-textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:.6rem .75rem;font-size:.85rem;box-sizing:border-box;outline:none;font-family:inherit}.field-input:focus,.field-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.manager-preview-pill{display:flex;align-items:center;gap:.65rem;background:#f8fafc;border:1px solid #e2e8f0;padding:.55rem .85rem;border-radius:8px}.mgr-sub{font-size:.75rem;color:#64748b;margin-left:.35rem}.form-submit-row{display:flex;justify-content:flex-end;margin-top:.5rem}.btn-submit-request{display:flex;align-items:center;gap:.5rem;padding:.65rem 1.4rem;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.88rem;font-weight:700;cursor:pointer;transition:all .15s}.btn-submit-request:hover{background:#1d4ed8}.leaves-table-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.table-search-box,.table-filter-box{display:flex;align-items:center;gap:.5rem;background:#fff;border:1px solid #e2e8f0;padding:.5rem .85rem;border-radius:8px}.table-search-box input,.table-filter-box select{border:none;outline:none;font-size:.85rem;background:transparent}.leaves-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000005}.leaves-table{width:100%;border-collapse:collapse;font-size:.84rem}.leaves-table th{background:#f8fafc;color:#475569;font-weight:700;padding:.75rem 1rem;border-bottom:1px solid #e2e8f0;text-align:left}.leaves-table td{padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;color:#1e293b}.type-chip{background:#f1f5f9;color:#334155;font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:6px}.status-badge{font-size:.74rem;font-weight:700;padding:.2rem .55rem;border-radius:9999px}.status-badge.completed{background:#dcfce7;color:#15803d}.status-badge.approved{background:#eff6ff;color:#2563eb}.status-badge.prepared{background:#fef3c7;color:#b45309}.status-badge.pending{background:#fff7ed;color:#ea580c}.status-badge.rejected{background:#fee2e2;color:#b91c1c}.btn-icon-table{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;padding:.35rem .55rem;cursor:pointer;color:#334155}.btn-icon-table:hover{background:#e2e8f0}.leaves-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;padding:1.5rem}.leaves-modal-box{background:#fff;border-radius:14px;width:100%;max-width:800px;box-shadow:0 25px 50px #00000040;display:flex;flex-direction:column;overflow:hidden;max-height:95vh}.modal-top-bar{padding:1rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#f8fafc}.modal-top-bar h3{margin:0;font-size:1.05rem;font-weight:800;color:#0f172a}.btn-print-doc{display:flex;align-items:center;gap:.4rem;padding:.45rem .85rem;background:#fff;border:1px solid #cbd5e1;border-radius:6px;font-size:.8rem;font-weight:700;cursor:pointer}.official-leave-document{padding:2rem 2.5rem;overflow-y:auto;background:#fff;font-family:Arial,sans-serif;color:#000}.doc-header{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:2px solid #000000;padding-bottom:1rem;margin-bottom:1.5rem}.doc-company-title h2{font-size:1.25rem;font-weight:900;margin:0 0 .25rem;letter-spacing:.5px}.doc-company-title p{margin:0;font-size:.85rem;font-weight:700}.doc-form-code{display:flex;flex-direction:column;align-items:flex-end;font-size:.75rem;font-weight:700}.doc-subject-banner{background:#f1f5f9;border:1px solid #cbd5e1;text-align:center;padding:.6rem;margin-bottom:1.5rem}.doc-subject-banner h3{margin:0;font-size:1.05rem;font-weight:900;letter-spacing:1px}.doc-section{margin-bottom:1.5rem}.doc-sec-title{font-size:.82rem;font-weight:900;margin:0 0 .5rem;border-bottom:1px solid #e2e8f0;padding-bottom:.25rem}.doc-info-table{width:100%;border-collapse:collapse;font-size:.82rem}.doc-info-table td{border:1px solid #cbd5e1;padding:.55rem .75rem}.doc-lbl{background:#f8fafc;font-weight:700;width:25%}.doc-val{width:25%}.doc-signatures-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin-top:2rem;border-top:1px solid #000000;padding-top:1rem}.doc-sign-box{display:flex;flex-direction:column;align-items:center;text-align:center;border:1px solid #e2e8f0;padding:1rem .5rem;min-height:110px}.sign-title{font-size:.72rem;font-weight:900;margin-bottom:.75rem}.sign-name{font-size:.85rem;font-weight:700;margin-bottom:auto}.sign-status{font-size:.72rem;font-weight:700;color:#64748b}.modal-bottom-actions{padding:1rem 1.5rem;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:flex-end;gap:.75rem;background:#f8fafc}@media print{.no-print{display:none!important}.official-leave-document{padding:0!important}}.contacts-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1050;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .15s ease-out}.contacts-modal-card{background:#fff;border-radius:14px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;width:100%;max-width:900px;height:85vh;max-height:720px;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .2s ease-out}.contacts-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e2e8f0;background-color:#f8fafc}.contacts-header-title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:700;color:#0f172a}.contacts-header-title .header-icon{width:32px;height:32px;border-radius:8px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center}.contacts-top-bar{padding:12px 20px;border-bottom:1px solid #f1f5f9;background:#fff;display:flex;flex-direction:column;gap:12px}.contacts-tabs{display:flex;align-items:center;gap:8px;overflow-x:auto}.contacts-tab{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:12.5px;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;white-space:nowrap;transition:all .15s ease}.contacts-tab:hover{background:#f8fafc;color:#334155;border-color:#cbd5e1}.contacts-tab.active{background:#2563eb;color:#fff;border-color:#2563eb}.contacts-tab .tab-badge{display:inline-flex;align-items:center;justify-content:center;padding:1px 6px;font-size:11px;font-weight:700;border-radius:10px;background:#00000014;color:inherit}.contacts-tab.active .tab-badge{background:#ffffff40;color:#fff}.contacts-search-row{display:flex;align-items:center;gap:10px}.contacts-search-box{flex:1;position:relative;display:flex;align-items:center}.contacts-search-box .search-icon{position:absolute;left:12px;color:#94a3b8;pointer-events:none}.contacts-search-input{width:100%;padding:8px 12px 8px 36px;border-radius:8px;border:1px solid #cbd5e1;font-size:13px;color:#1e293b;background:#f8fafc;transition:all .15s ease}.contacts-search-input:focus{outline:none;background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.contacts-clear-search{position:absolute;right:10px;background:none;border:none;color:#94a3b8;cursor:pointer;padding:2px;border-radius:4px}.btn-new-contact{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background-color:#2563eb;color:#fff;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:background-color .15s ease;white-space:nowrap}.btn-new-contact:hover{background-color:#1d4ed8}.contact-form-card{margin:12px 20px;padding:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:12px;animation:fadeIn .15s ease-out}.contact-form-title{font-size:13.5px;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:6px}.contact-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 14px}.form-field{display:flex;flex-direction:column;gap:4px}.form-field label{font-size:11.5px;font-weight:600;color:#475569}.form-field input,.form-field textarea{padding:7px 10px;font-size:12.5px;border:1px solid #cbd5e1;border-radius:6px;color:#1e293b;background:#fff}.form-field input:focus,.form-field textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.form-field.full-width{grid-column:span 2}.contact-form-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:4px}.contacts-list-container{flex:1;overflow-y:auto;padding:8px 20px 16px}.contacts-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:#94a3b8;gap:10px}.contacts-empty-state h4{font-size:15px;font-weight:600;color:#475569;margin:0}.contacts-empty-state p{font-size:12.5px;margin:0;color:#64748b;text-align:center;max-width:360px}.contacts-grid{display:flex;flex-direction:column;gap:8px}.contact-card-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;transition:all .15s ease}.contact-card-item:hover{border-color:#cbd5e1;box-shadow:0 2px 6px -1px #0000000d;background:#fafafa}.contact-card-left{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.contact-avatar{width:38px;height:38px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0;text-transform:uppercase}.contact-avatar.personal{background:#fef3c7;color:#d97706}.contact-avatar.personnel{background:#e0e7ff;color:#4338ca}.contact-avatar.account{background:#dcfce7;color:#15803d}.contact-info-block{display:flex;flex-direction:column;min-width:0;flex:1}.contact-title-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.contact-name{font-size:13.5px;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.contact-category-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:6px;font-size:11px;font-weight:600}.contact-category-badge.personal{background:#fef3c7;color:#92400e}.contact-category-badge.personnel{background:#eff6ff;color:#1d4ed8}.contact-category-badge.account{background:#f0fdf4;color:#166534}.contact-sub-row{display:flex;align-items:center;gap:14px;margin-top:3px;font-size:12px;color:#64748b;flex-wrap:wrap}.contact-sub-item{display:inline-flex;align-items:center;gap:4px;min-width:0}.contact-sub-item a{color:inherit;text-decoration:none}.contact-sub-item a:hover{color:#2563eb;text-decoration:underline}.contact-card-actions{display:flex;align-items:center;gap:6px;margin-left:12px;flex-shrink:0}.contact-btn-action{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#334155;cursor:pointer;transition:all .15s ease}.contact-btn-action:hover{background:#f1f5f9;color:#0f172a}.contact-btn-action.primary{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.contact-btn-action.primary:hover{background:#2563eb;color:#fff;border-color:#2563eb}.contact-btn-action.select{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.contact-btn-action.select:hover{background:#16a34a;color:#fff;border-color:#16a34a}.contact-btn-action.icon-only{padding:6px;color:#64748b}.contact-btn-action.icon-only:hover{color:#0f172a}.contact-btn-action.danger:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.contacts-modal-footer{padding:12px 20px;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#64748b}.email-center-container{display:flex;height:calc(100vh - 64px);width:100%;background-color:#f8fafc;overflow:hidden;position:relative;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.email-folders-sidebar{width:260px;min-width:240px;background-color:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;height:100%;z-index:10}.email-sidebar-header{padding:18px 16px 14px;border-bottom:1px solid #f1f5f9}.compose-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;padding:12px 18px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;box-shadow:0 4px 12px #2563eb40;transition:all .2s ease}.compose-btn:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);box-shadow:0 6px 16px #2563eb59;transform:translateY(-1px)}.email-folders-list{flex:1;padding:12px 8px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.folder-item{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;border-radius:8px;color:#475569;font-size:13.5px;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;background:transparent;width:100%;text-align:left}.folder-item:hover{background-color:#f1f5f9;color:#0f172a}.folder-item.active{background-color:#eff6ff;color:#2563eb;font-weight:600}.folder-item-left{display:flex;align-items:center;gap:10px}.folder-badge{background-color:#2563eb;color:#fff;font-size:11px;font-weight:700;padding:2px 7px;border-radius:12px}.email-account-card{padding:14px 16px;background-color:#f8fafc;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px}.account-status-row{display:flex;align-items:center;justify-content:space-between}.account-email-text{font-size:12px;font-weight:600;color:#1e293b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-indicator{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;padding:2px 7px;border-radius:10px}.status-indicator.connected{background-color:#dcfce7;color:#15803d}.status-indicator.disconnected{background-color:#fee2e2;color:#b91c1c}.account-actions-row{display:flex;gap:6px;margin-top:4px}.account-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;font-size:11.5px;padding:6px 8px;background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#475569;cursor:pointer;transition:all .15s}.account-action-btn:hover{background-color:#f1f5f9;color:#0f172a;border-color:#94a3b8}.email-list-panel{width:380px;min-width:320px;max-width:440px;background-color:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;height:100%}.email-list-header{padding:14px 16px;border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;gap:10px}.list-header-top{display:flex;align-items:center;justify-content:space-between}.list-folder-title{font-size:16px;font-weight:700;color:#0f172a}.list-header-actions{display:flex;align-items:center;gap:6px}.icon-btn{background:none;border:none;padding:6px;border-radius:6px;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.icon-btn:hover{background-color:#f1f5f9;color:#0f172a}.email-search-input-wrapper{position:relative;width:100%}.email-search-input-wrapper svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8}.email-search-input{width:100%;padding:8px 12px 8px 32px;font-size:13px;border:1px solid #e2e8f0;border-radius:8px;background-color:#f8fafc;outline:none;transition:all .2s}.email-search-input:focus{border-color:#3b82f6;background-color:#fff;box-shadow:0 0 0 3px #3b82f626}.folder-count-label{font-size:13px;font-weight:500;color:#94a3b8;margin-left:8px}.email-list-toolbar{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background-color:#f8fafc;border-top:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;gap:8px}.select-all-label{display:inline-flex;align-items:center;gap:7px;font-size:12px;font-weight:600;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none}.custom-checkbox{width:15px;height:15px;cursor:pointer;accent-color:#2563eb}.select-all-text{font-size:12px}.btn-mark-all-seen{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;font-size:11.5px;font-weight:600;color:#2563eb;cursor:pointer;transition:all .15s ease}.btn-mark-all-seen:hover{background-color:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.bulk-selection-bar{display:flex;align-items:center;justify-content:space-between;padding:7px 12px;background:#eff6ff;border-bottom:1px solid #bfdbfe;animation:fadeIn .15s ease}.bulk-selection-info{font-size:12px;color:#1e40af;font-weight:600}.bulk-selection-actions{display:flex;align-items:center;gap:6px}.bulk-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:5px;border:1px solid #93c5fd;background:#fff;color:#1e40af;font-size:11px;font-weight:600;cursor:pointer;transition:background .15s ease}.bulk-btn:hover{background:#dbeafe}.bulk-btn.danger{border-color:#fca5a5;color:#dc2626}.bulk-btn.danger:hover{background:#fee2e2}.bulk-btn.cancel{border:none;background:transparent;color:#64748b;padding:4px}.bulk-btn.cancel:hover{color:#0f172a}.email-items-container{flex:1;overflow-y:auto}.email-item{padding:12px 14px;border-bottom:1px solid #f1f5f9;cursor:pointer;position:relative;transition:background-color .15s;display:flex;flex-direction:row;align-items:flex-start;gap:10px}.item-select-checkbox{display:flex;align-items:center;justify-content:center;padding-top:2px;cursor:pointer;opacity:.3;transition:opacity .15s ease}.email-item:hover .item-select-checkbox,.item-select-checkbox.checked{opacity:1}.item-select-checkbox input{width:14px;height:14px;cursor:pointer;accent-color:#2563eb}.email-item-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.email-item:hover{background-color:#f8fafc}.email-item.selected{background-color:#eff6ff;border-left:3px solid #2563eb}.email-item.unread{background-color:#fafafa}.email-item-header{display:flex;align-items:center;justify-content:space-between}.email-sender-name{font-size:13.5px;color:#334155;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-item.unread .email-sender-name{font-weight:700;color:#0f172a}.email-date{font-size:11px;color:#94a3b8;white-space:nowrap}.email-subject{font-size:13px;color:#475569;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-item.unread .email-subject{font-weight:600;color:#1e293b}.email-snippet{font-size:12px;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.email-item-badges{display:flex;align-items:center;gap:6px;margin-top:2px}.unread-dot{width:7px;height:7px;background-color:#2563eb;border-radius:50%;display:inline-block}.email-detail-panel{flex:1;background-color:#fff;display:flex;flex-direction:column;height:100%;overflow:hidden}.email-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#94a3b8;gap:12px;padding:40px;text-align:center}.email-empty-state h3{font-size:18px;font-weight:600;color:#64748b}.email-empty-state p{font-size:13.5px;max-width:320px}.email-detail-actions-bar{padding:10px 20px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background-color:#fafbfc;flex-wrap:wrap;gap:8px;min-height:48px}.detail-actions-group{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.email-action-btn,.action-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;padding:6px 14px!important;font-size:12px!important;font-weight:600!important;color:#334155!important;background:#fff!important;border:1px solid #cbd5e1!important;border-radius:6px!important;cursor:pointer!important;white-space:nowrap!important;width:auto!important;height:auto!important;min-height:32px!important;line-height:1.2!important;box-shadow:0 1px 2px #0000000a!important;transition:all .15s ease!important}.email-action-btn:hover,.action-btn:hover{background-color:#f1f5f9!important;color:#0f172a!important;border-color:#94a3b8!important}.email-action-btn.danger,.action-btn.danger{color:#ef4444!important;border-color:#fca5a5!important}.email-action-btn.danger:hover,.action-btn.danger:hover{background-color:#fee2e2!important;color:#b91c1c!important;border-color:#ef4444!important}.email-detail-scrollable{flex:1;overflow-y:auto;padding:24px 32px}.email-detail-subject{font-size:20px;font-weight:700;color:#0f172a;margin-bottom:16px;line-height:1.35}.email-detail-sender-row{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #f1f5f9}.sender-avatar-info{display:flex;align-items:center;gap:12px}.avatar-circle{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700}.sender-text-info .sender-full-name{font-size:14px;font-weight:700;color:#0f172a}.sender-text-info .sender-email-addr{font-size:12.5px;color:#64748b}.sender-text-info .recipient-info{font-size:11.5px;color:#94a3b8;margin-top:2px}.email-detail-date{font-size:12px;color:#94a3b8;white-space:nowrap}.attachments-wrapper{margin-bottom:24px;padding:12px 16px;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.attachments-title{font-size:12.5px;font-weight:600;color:#475569;margin-bottom:8px;display:flex;align-items:center;gap:6px}.attachments-grid{display:flex;flex-wrap:wrap;gap:8px}.attachment-chip{display:flex;align-items:center;gap:8px;padding:6px 12px;background:#fff;border:1px solid #cbd5e1;border-radius:6px;font-size:12px;color:#334155;cursor:pointer;transition:all .15s}.attachment-chip:hover{border-color:#2563eb;background-color:#eff6ff;color:#1d4ed8}.email-body-content{font-size:14px;color:#1e293b;line-height:1.65;word-break:break-word}.email-body-content img{max-width:100%;height:auto}.email-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}.email-modal-card{background-color:#fff;border-radius:14px;width:100%;max-width:780px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003;overflow:hidden;animation:modalPopIn .2s ease-out}@keyframes modalPopIn{0%{opacity:0;transform:scale(.97) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{padding:16px 20px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background-color:#f8fafc}.modal-title{font-size:16px;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px}.modal-body{padding:20px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:14px}.modal-footer{padding:14px 20px;border-top:1px solid #e2e8f0;background-color:#f8fafc;display:flex;align-items:center;justify-content:flex-end;gap:10px}.form-label{font-size:13px;font-weight:600;color:#334155}.form-input,.form-textarea{width:100%;padding:9px 12px;font-size:13.5px;border:1px solid #cbd5e1;border-radius:8px;outline:none;transition:all .15s;background-color:#fff;color:#0f172a}.form-input:focus,.form-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.btn-primary{background-color:#2563eb;color:#fff;font-weight:600;padding:9px 18px;border-radius:8px;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;font-size:13.5px;transition:background-color .15s}.btn-primary:hover{background-color:#1d4ed8}.btn-secondary{background-color:#fff;color:#475569;font-weight:500;padding:9px 16px;border-radius:8px;border:1px solid #cbd5e1;cursor:pointer;font-size:13.5px;transition:all .15s}.btn-secondary:hover{background-color:#f1f5f9;color:#0f172a}.signature-badge-card{padding:12px 16px;border-radius:10px;background:linear-gradient(135deg,#eff6ff,#f0fdf4);border:1px solid #bfdbfe;display:flex;flex-direction:column;gap:6px}.signature-badge-header{display:flex;align-items:center;justify-content:space-between}.badge-pill-success{background-color:#dcfce7;color:#15803d;font-size:11px;font-weight:700;padding:3px 8px;border-radius:12px}.badge-pill-neutral{background-color:#f1f5f9;color:#475569;font-size:11px;font-weight:600;padding:3px 8px;border-radius:12px}.chat-center-container{display:flex;height:calc(100vh - var(--header-height, 64px) - 1.25rem);background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 4px 16px #0f172a0a;margin:0 1rem 1rem}.chat-sidebar{width:340px;flex-shrink:0;display:flex;flex-direction:column;border-right:1px solid #e2e8f0;background:#f8fafc}.chat-sidebar-header{padding:16px;border-bottom:1px solid #e2e8f0;background:#fff}.chat-sidebar-title-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.chat-sidebar-title{font-size:1.05rem;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px}.chat-header-actions{display:flex;align-items:center;gap:6px}.chat-btn-action-icon{width:32px;height:32px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;color:#334155;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.chat-btn-action-icon:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a}.chat-btn-action-icon.primary{background:#2563eb;border-color:#2563eb;color:#fff}.chat-btn-action-icon.primary:hover{background:#1d4ed8}.chat-search-input-box{position:relative;display:flex;align-items:center}.chat-search-input-box svg{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.chat-search-input{width:100%;padding:8px 12px 8px 32px;font-size:.8125rem;background:#f1f5f9;border:1px solid transparent;border-radius:8px;outline:none;transition:all .2s ease}.chat-search-input:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.chat-tab-filters{display:flex;gap:4px;padding:8px 12px;background:#fff;border-bottom:1px solid #e2e8f0;overflow-x:auto}.chat-filter-tab{padding:4px 10px;font-size:.75rem;font-weight:600;border-radius:6px;border:none;background:transparent;color:#64748b;cursor:pointer;white-space:nowrap;transition:all .15s}.chat-filter-tab:hover{background:#f1f5f9;color:#1e293b}.chat-filter-tab.active{background:#eff6ff;color:#2563eb}.chat-channels-scroll{flex:1;overflow-y:auto;padding:8px}.chat-channel-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:8px;cursor:pointer;transition:background .15s ease;margin-bottom:4px;position:relative}.chat-channel-item:hover{background:#edf2f7}.chat-channel-item.active{background:#e2e8f0}.chat-item-icon-wrapper{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem}.chat-item-icon-wrapper.project{background:#fef3c7;color:#d97706}.chat-item-icon-wrapper.department{background:#e0e7ff;color:#4f46e5}.chat-item-icon-wrapper.general{background:#dbeafe;color:#2563eb}.chat-item-icon-wrapper.direct{background:#dcfce7;color:#16a34a;border-radius:50%;font-weight:700;font-size:.85rem}.chat-item-content{flex:1;min-width:0}.chat-item-top-row{display:flex;align-items:center;justify-content:space-between;margin-bottom:2px}.chat-item-name{font-size:.84rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-item-time{font-size:.7rem;color:#94a3b8;flex-shrink:0}.chat-item-bottom-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.chat-item-last-msg{font-size:.75rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.chat-unread-badge{background:#2563eb;color:#fff;font-size:.6875rem;font-weight:700;padding:1px 6px;border-radius:9999px;flex-shrink:0}.chat-main-area{flex:1;display:flex;flex-direction:column;background:#fff;min-width:0}.chat-main-header{height:64px;padding:0 20px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#fff;flex-shrink:0}.chat-header-info{display:flex;align-items:center;gap:12px;min-width:0}.chat-header-title{font-size:1rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-header-sub{font-size:.75rem;color:#64748b;display:flex;align-items:center;gap:6px}.chat-header-badge{font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase}.chat-header-badge.project{background:#fef3c7;color:#92400e}.chat-header-badge.department{background:#e0e7ff;color:#3730a3}.chat-header-badge.general{background:#dbeafe;color:#1e40af}.chat-header-badge.direct{background:#dcfce7;color:#166534}.chat-main-messages-flow{flex:1;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:14px;background:#f8fafc}.chat-date-separator{display:flex;align-items:center;justify-content:center;margin:12px 0;position:relative}.chat-date-separator:before{content:"";position:absolute;left:0;right:0;height:1px;background:#e2e8f0}.chat-date-badge{position:relative;background:#fff;border:1px solid #e2e8f0;padding:2px 12px;border-radius:9999px;font-size:.72rem;font-weight:600;color:#64748b;box-shadow:0 1px 2px #00000008}.chat-message-row{display:flex;gap:12px;max-width:85%}.chat-message-row.mine{align-self:flex-end;flex-direction:row-reverse}.chat-message-row.system{align-self:center;max-width:90%;margin:8px 0}.chat-message-avatar{width:34px;height:34px;border-radius:50%;background:#cbd5e1;color:#1e293b;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.75rem;flex-shrink:0}.chat-message-avatar.mine{background:#2563eb;color:#fff}.chat-message-bubble{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px 14px;box-shadow:0 1px 3px #0f172a08;position:relative}.chat-message-row.mine .chat-message-bubble{background:#eff6ff;border-color:#bfdbfe}.chat-message-meta{display:flex;align-items:center;gap:8px;margin-bottom:4px}.chat-message-sender-name{font-size:.78rem;font-weight:700;color:#0f172a}.chat-message-sender-role{font-size:.6875rem;color:#64748b;background:#f1f5f9;padding:1px 6px;border-radius:4px}.chat-message-time{font-size:.6875rem;color:#94a3b8;margin-left:auto}.chat-message-text{font-size:.84rem;color:#1e293b;line-height:1.45;white-space:pre-wrap;word-break:break-word}.chat-attachment-image-box{margin-top:8px;border-radius:8px;overflow:hidden;max-width:320px;border:1px solid #e2e8f0;cursor:pointer}.chat-attachment-img{width:100%;height:auto;max-height:240px;object-fit:cover;display:block}.chat-attachment-file-box{margin-top:8px;display:flex;align-items:center;gap:10px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:8px 12px;text-decoration:none;color:inherit;transition:background .15s}.chat-attachment-file-box:hover{background:#f1f5f9}.chat-file-icon{color:#2563eb;flex-shrink:0}.chat-file-info{display:flex;flex-direction:column;min-width:0}.chat-file-name{font-size:.8125rem;font-weight:600;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-file-size{font-size:.7rem;color:#64748b}.chat-message-actions{display:flex;align-items:center;gap:8px;margin-top:6px;padding-top:6px;border-top:1px dashed rgba(226,232,240,.8)}.chat-action-link-btn{font-size:.72rem;font-weight:600;color:#2563eb;background:transparent;border:none;cursor:pointer;display:flex;align-items:center;gap:4px;padding:2px 4px;border-radius:4px;transition:background .15s}.chat-action-link-btn:hover{background:#2563eb14}.chat-system-bubble{background:#e2e8f0;border-radius:9999px;padding:4px 16px;font-size:.75rem;color:#475569;text-align:center;display:flex;align-items:center;gap:6px}.chat-input-wrapper{padding:14px 20px;background:#fff;border-top:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px}.chat-quick-emojis-row{display:flex;align-items:center;gap:6px}.chat-quick-emoji-btn{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;font-size:.85rem;padding:2px 6px;cursor:pointer;transition:all .15s}.chat-quick-emoji-btn:hover{background:#e2e8f0;transform:scale(1.1)}.chat-input-box-row{display:flex;align-items:flex-end;gap:10px}.chat-btn-attach{width:40px;height:40px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s;flex-shrink:0}.chat-btn-attach:hover{background:#f1f5f9;color:#0f172a;border-color:#94a3b8}.chat-textarea-container{flex:1;position:relative}.chat-input-textarea{width:100%;resize:none;min-height:40px;max-height:120px;padding:9px 12px;font-size:.84rem;border:1px solid #cbd5e1;border-radius:8px;outline:none;font-family:inherit;line-height:1.4;transition:border-color .2s,box-shadow .2s}.chat-input-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.chat-btn-send{width:40px;height:40px;border-radius:8px;border:none;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .15s,transform .1s;flex-shrink:0}.chat-btn-send:hover:not(:disabled){background:#1d4ed8;transform:translateY(-1px)}.chat-btn-send:disabled{background:#94a3b8;cursor:not-allowed;opacity:.6}.chat-info-sidebar{width:280px;border-left:1px solid #e2e8f0;background:#f8fafc;display:flex;flex-direction:column;flex-shrink:0}.chat-info-header{padding:16px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;font-size:.9rem;font-weight:700;color:#0f172a}.chat-info-scroll{flex:1;overflow-y:auto;padding:16px}.chat-info-section{margin-bottom:20px}.chat-info-section-title{font-size:.75rem;font-weight:700;text-transform:uppercase;color:#64748b;margin-bottom:8px;letter-spacing:.05em}.chat-info-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px;font-size:.8125rem;color:#334155}.chat-member-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid #f1f5f9}.chat-member-avatar{width:28px;height:28px;border-radius:50%;background:#e2e8f0;color:#334155;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700}.chat-member-name{font-size:.8125rem;font-weight:600;color:#0f172a}.chat-member-role-tag{font-size:.65rem;color:#64748b}.chat-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a66;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:2000}.chat-modal-content{background:#fff;border-radius:12px;width:480px;max-width:95vw;box-shadow:0 10px 25px #00000026;overflow:hidden;display:flex;flex-direction:column}.chat-modal-header{padding:16px 20px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.chat-modal-title{font-size:1rem;font-weight:700;color:#0f172a}.chat-modal-body{padding:20px;display:flex;flex-direction:column;gap:14px}.chat-form-group{display:flex;flex-direction:column;gap:6px}.chat-form-label{font-size:.8125rem;font-weight:600;color:#334155}.chat-form-input,.chat-form-select,.chat-form-textarea{padding:8px 12px;font-size:.84rem;border:1px solid #cbd5e1;border-radius:8px;outline:none;font-family:inherit}.chat-form-input:focus,.chat-form-select:focus,.chat-form-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.chat-modal-footer{padding:14px 20px;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.chat-contact-picker-list{max-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:6px}.chat-contact-picker-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;border:1px solid #e2e8f0;cursor:pointer;transition:all .15s}.chat-contact-picker-item:hover{background:#eff6ff;border-color:#bfdbfe}.weather-bg-container{position:relative;width:100%;border-radius:16px;overflow:hidden;transition:all .6s cubic-bezier(.4,0,.2,1);box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a}.bg-clear{background:linear-gradient(135deg,#0ea5e9,#38bdf8)}.bg-cloudy{background:linear-gradient(135deg,#64748b,#94a3b8)}.bg-rainy{background:linear-gradient(135deg,#334155,#475569)}.bg-snowy{background:linear-gradient(135deg,#cbd5e1,#f1f5f9)}.bg-stormy{background:linear-gradient(135deg,#0f172a,#1e293b)}.weather-effect{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:1}.chart-glass-layer{position:relative;z-index:10;height:100%;width:100%;background:#ffffffd9;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);margin:0;padding:1.5rem;display:flex;flex-direction:column}.rain:after{content:"";position:absolute;width:100%;height:100%;top:0;left:0;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.4) 1px,transparent 1px);background-size:40px 40px;animation:rain-animation 1s linear infinite;opacity:.6}@keyframes rain-animation{0%{transform:translateY(-40px) rotate(15deg)}to{transform:translateY(0) rotate(15deg)}}.clouds-animation{background:radial-gradient(circle at 20% 30%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,255,255,.1) 0%,transparent 50%);animation:clouds-drift 30s linear infinite alternate}@keyframes clouds-drift{0%{transform:translate(-5%,-5%) scale(1.1)}to{transform:translate(5%,5%) scale(1.2)}}.snow:after{content:"•";position:absolute;top:-20px;left:0;width:100%;height:100%;font-size:24px;color:#fff;opacity:.6;text-shadow:50px 100px white,150px 250px white,250px 50px white,350px 300px white,450px 150px white,100px 400px white;animation:snow-animation 5s linear infinite}@keyframes snow-animation{0%{transform:translateY(-100px)}to{transform:translateY(400px)}}.sun-rays{background:radial-gradient(circle at 85% 15%,rgba(255,249,196,.3) 0%,transparent 60%);animation:sun-pulse 6s ease-in-out infinite alternate}@keyframes sun-pulse{0%{opacity:.3;transform:scale(1)}to{opacity:.6;transform:scale(1.2)}}.chart-glass-layer .recharts-text{fill:#334155!important;font-weight:600!important}.chart-glass-layer .recharts-cartesian-grid line{stroke:#00000014!important}.weather-tooltip{background:#fffffff2;border:1px solid rgba(226,232,240,.8);border-radius:12px;box-shadow:0 10px 15px -3px #0000001a;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:12px;min-width:160px}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1050;padding:20px}.visits-modal-container{background:#fff;border-radius:16px;width:100%;max-width:1100px;height:85vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden}.visits-modal-header{padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.visits-modal-header h2{margin:0;font-size:1.25rem;font-weight:800;color:#1e293b}.visits-modal-header .btn-close{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:0;line-height:1}.visits-modal-header .btn-close:hover{color:#ef4444}.visits-modal-body{display:flex;flex:1;overflow:hidden}.visits-sidebar{width:320px;border-right:1px solid #e2e8f0;background:#fdfdfd;display:flex;flex-direction:column;padding:1rem;overflow-y:auto}.visit-list-item{padding:1rem;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:.5rem;cursor:pointer;transition:all .2s;background:#fff}.visit-list-item:hover{border-color:#cbd5e1;box-shadow:0 4px 6px -1px #0000000d}.visit-list-item.active{border-color:#3b82f6;background:#eff6ff;box-shadow:0 0 0 1px #3b82f6}.visits-content{flex:1;padding:1.5rem;overflow-y:auto;background:#fff}.visit-detail-card{max-width:800px;margin:0 auto}.print-container{padding:40px;background:#fff;color:#000;font-family:Arial,sans-serif}.print-header{text-align:center;margin-bottom:30px;border-bottom:2px solid #000;padding-bottom:20px}.print-header h2{margin:0 0 15px;text-transform:uppercase}.print-meta{display:flex;justify-content:space-between;font-size:14px}.print-table{width:100%;border-collapse:collapse}.print-table th,.print-table td{border:1px solid #000;padding:12px;text-align:left}.print-table th{background:#f0f0f0;font-weight:700}.print-footer{margin-top:40px;text-align:center;font-size:12px;color:#666;border-top:1px solid #ccc;padding-top:10px}.projects-container{display:flex;flex-direction:column;height:auto;overflow:visible}.projects-sticky-header{position:sticky;top:0;z-index:995;background:#fff;margin-bottom:0}.projects-main-card{background:#fff;border:1px solid var(--border-color, #e2e8f0);border-radius:12px;box-shadow:var(--shadow-sm, 0 1px 3px rgba(0, 0, 0, .05));display:flex;flex-direction:column;position:relative;overflow:visible!important}.projects-toolbar{background:#fff;padding:.75rem 1.25rem;border-bottom:1px solid var(--border-color, #e2e8f0);display:flex;gap:1.5rem;align-items:center;border-top-left-radius:12px;border-top-right-radius:12px}.toolbar-actions{display:flex;align-items:center;gap:1rem}.projects-title-section h2{font-size:1.5rem;font-weight:700;color:var(--text-heading, #1e293b);margin:0;display:flex;align-items:center;gap:.75rem}.projects-content{padding:0}.project-grid-wrapper{padding:1.5rem}.empty-state{text-align:center;padding:4rem 2rem}.projects-content::-webkit-scrollbar{width:6px}.projects-content::-webkit-scrollbar-track{background:transparent}.projects-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:10px}.projects-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.search-wrapper{position:relative;flex:1}.search-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#94a3b8;font-size:.9rem;pointer-events:none;z-index:2}.modern-search-input{width:100%;padding:.6rem 1rem .6rem 2.5rem;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;font-size:.9rem;transition:all .2s ease;color:#1e293b}.modern-search-input:focus{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 4px #3b82f61a;outline:none}.view-mode-group{display:flex;background:#f1f5f9;padding:3px;border-radius:10px;border:1px solid #e2e8f0;gap:2px}.view-mode-btn{padding:.4rem .6rem;border:none;background:transparent;border-radius:7px;cursor:pointer;font-size:.85rem;transition:all .2s;color:#64748b;display:flex;align-items:center;justify-content:center}.view-mode-btn.active{background:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.projects-tabs-container{background:#fff;padding:0 1.25rem;border-bottom:1px solid var(--border-color, #e2e8f0)}.projects-tabs{gap:1.5rem;overflow-x:auto}.projects-tabs::-webkit-scrollbar{display:none}.projects-tab-btn{background:transparent;border:none;padding:.8rem .5rem;font-size:.9rem;font-weight:600;color:#64748b;position:relative;cursor:pointer;transition:all .2s;white-space:nowrap}.projects-tab-btn:hover{color:#0f172a}.projects-tab-btn.active{color:#3b82f6}.projects-tab-btn.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;background-color:#3b82f6;border-top-left-radius:3px;border-top-right-radius:3px}.project-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem}.modern-project-card{background:#fff;border:1px solid var(--border-color, #e2e8f0);border-radius:16px;padding:1.5rem;display:flex;flex-direction:column;transition:all .3s cubic-bezier(.16,1,.3,1);position:relative;box-shadow:0 2px 8px #0000000a,0 1px 2px #00000005}.modern-project-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px -8px #0000001a,0 0 0 1px var(--brand-primary, #3b82f6)}.card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.card-title{font-size:1.25rem;font-weight:700;color:var(--text-primary, #0f172a);margin:0;line-height:1.3}.status-row{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem}.customer-pill{display:flex;align-items:center;gap:.5rem;background:#f1f5f9;padding:.375rem .75rem;border-radius:20px;font-size:.8125rem;color:#475569;font-weight:500;border:1px solid #e2e8f0}.modern-badge{padding:.375rem .75rem;border-radius:8px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}.specs-container{display:grid;grid-template-columns:1fr 1fr;gap:1rem;padding:1rem 0;border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;margin-bottom:1.25rem}.spec-box{display:flex;flex-direction:column;gap:.25rem}.spec-label{font-size:.75rem;color:var(--text-muted, #94a3b8);font-weight:500}.spec-value{font-size:.9375rem;font-weight:600;color:var(--text-primary, #1e293b)}.commitment-tags{display:flex;flex-wrap:wrap;gap:.35rem}.mini-tag{background:#f8fafc;border:1px solid #e2e8f0;color:#64748b;font-size:.7rem;padding:2px 8px;border-radius:4px;font-weight:500}.card-footer-actions{margin-top:auto;display:flex;gap:.75rem;padding-top:1rem}.modern-table{width:100%;border-collapse:collapse;font-size:.875rem}.table-responsive .table{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;border-collapse:separate;border-spacing:0}.table-responsive .table thead th{background:#f8fafc;color:#64748b;font-weight:700;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;padding:1rem;border-bottom:1px solid #e2e8f0;border-top:none}.table-responsive .table tbody td{padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;color:#334155;font-size:.875rem;vertical-align:middle}.table-responsive .table tbody tr:hover td{background-color:#f8fafc}.table .fw-bold.text-dark{color:#1e293b!important;font-weight:600!important}.table .text-muted.small{color:#64748b!important}.table .btn-sm{padding:.25rem .4rem;font-size:.75rem;line-height:1;border-radius:6px}.table .btn-sm span{font-size:.8rem}.project-name-cell{font-weight:600;color:var(--brand-primary, #3b82f6);text-decoration:none;transition:color .2s}.project-name-cell:hover{color:var(--brand-primary-dark, #1d4ed8);text-decoration:underline}.timeline-cell{display:flex;flex-direction:column;gap:.25rem}.date-text{font-weight:600;color:#1e293b;font-family:var(--font-mono, monospace)}@media (max-width: 1024px){.projects-toolbar{flex-wrap:wrap;gap:1rem}.search-wrapper{order:3;flex:1 1 100%}}@media (max-width: 640px){.project-card-grid{grid-template-columns:1fr}.hide-mobile{display:none}.projects-toolbar{padding:.75rem;gap:.75rem}.toolbar-actions{gap:.5rem}}.project-cancelled{opacity:.8!important;background-color:#fdfdfd!important;box-shadow:none!important;border:1px dashed #cbd5e1!important;position:relative;overflow:hidden!important;transition:all .3s ease}.project-cancelled:after{content:"İPTAL";position:absolute;top:2rem;right:-2rem;background:#ef4444;color:#fff;font-weight:800;font-size:.75rem;letter-spacing:2px;padding:.25rem 3rem;transform:rotate(45deg);opacity:.8;box-shadow:0 2px 4px #0000001a;pointer-events:none}.project-cancelled:hover{opacity:1!important;border:1px solid #ef4444!important}.table-responsive .table tbody tr.project-cancelled td{background-color:#fff9f9!important;position:relative;z-index:1;opacity:.8}.quick-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.quick-modal{animation:modalScaleIn .2s ease-out}@keyframes modalScaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.project-title-link{transition:color .15s ease-in-out}.project-title-link:hover{color:var(--brand-primary, #3b82f6)!important}.projects-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;width:100%}.project-card-uniform{background:#fff;border:1px solid var(--border-color, #e2e8f0);border-radius:16px;padding:1.25rem;display:flex;flex-direction:column;height:100%;position:relative;overflow:hidden;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 8px #00000008,0 1px 2px #00000005;box-sizing:border-box}.project-card-uniform:hover{transform:translateY(-4px);border-color:#0284c7;box-shadow:0 14px 30px -6px #0284c724,0 4px 12px -2px #0000000d}.project-card-uniform:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#0284c7,#06b6d4);opacity:.9}.pcard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem;height:28px}.pcard-code-badge{background:#f1f5f9;color:#334155;font-size:.75rem;font-family:var(--font-mono, monospace);font-weight:700;padding:3px 8px;border-radius:6px;border:1px solid #e2e8f0;letter-spacing:.5px}.pcard-switch-wrap{display:flex;align-items:center;gap:6px}.pcard-switch-wrap .form-check-input{cursor:pointer;margin:0;transform:scale(.85)}.pcard-switch-label{font-size:.7rem;font-weight:700;letter-spacing:.5px;cursor:pointer}.pcard-title-wrap{margin-bottom:.85rem}.pcard-title{margin:0 0 .4rem;font-size:1.05rem;font-weight:700;line-height:1.35;color:#0f2942;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;height:44px}.pcard-title a{color:inherit;text-decoration:none;transition:color .15s ease}.pcard-title a:hover{color:#0284c7}.pcard-meta-row{display:flex;align-items:center;gap:6px;height:24px;overflow:hidden}.pcard-meta-pill{display:inline-flex;align-items:center;gap:4px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;padding:2px 8px;font-size:.72rem;color:#475569;font-weight:500;white-space:nowrap;max-width:175px;overflow:hidden;text-overflow:ellipsis}.pcard-specs-box{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:8px 12px;margin-bottom:.75rem;height:64px;box-sizing:border-box}.pcard-spec-item{display:flex;flex-direction:column;justify-content:center}.pcard-spec-label{font-size:.62rem;font-weight:700;color:#94a3b8;letter-spacing:.5px;text-transform:uppercase;margin-bottom:2px}.pcard-spec-value{font-size:.85rem;font-weight:700;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pcard-timeline-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:8px 12px;margin-bottom:.75rem;height:68px;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box}.pcard-timeline-dates{display:flex;align-items:center;justify-content:space-between;font-size:.74rem;color:#334155;font-weight:600;font-family:var(--font-mono, monospace);margin-bottom:4px}.pcard-timeline-badge{font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:6px;text-align:center;display:block}.pcard-no-timeline{display:flex;align-items:center;justify-content:center;height:100%;color:#94a3b8;font-size:.75rem;font-weight:600}.pcard-commitments-box{background:#fff;border:1px solid #f1f5f9;border-radius:10px;padding:8px 10px;margin-bottom:.75rem;height:66px;display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box}.pcard-sub-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.pcard-sub-label{font-size:.62rem;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.pcard-tags-wrap{display:flex;align-items:center;gap:4px;overflow:hidden}.pcard-mini-tag{font-size:.62rem;font-weight:600;padding:1px 6px;border-radius:4px;color:#fff;white-space:nowrap}.pcard-footer{margin-top:auto;padding-top:.85rem;border-top:1px solid #f1f5f9;display:flex;align-items:center;gap:8px;height:52px;box-sizing:border-box}.pcard-detail-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff!important;font-weight:700;font-size:.82rem;padding:.5rem .8rem;border-radius:8px;text-decoration:none;border:none;box-shadow:0 2px 6px #0284c733;transition:all .2s ease}.pcard-detail-btn:hover{background:linear-gradient(135deg,#0369a1,#075985);transform:translateY(-1px);box-shadow:0 4px 12px #0284c74d}.pcard-icon-btn{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-size:.85rem;cursor:pointer;transition:all .15s ease;color:#475569}.pcard-icon-btn:hover{background:#fff;border-color:#cbd5e1;transform:translateY(-1px)}.pcard-icon-btn.delete-btn:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.project-card-uniform.project-cancelled{opacity:.82;background:#fafafa;border:1px dashed #cbd5e1}.project-card-uniform.project-cancelled:before{background:#ef4444}.project-card-uniform.project-cancelled:after{content:"İPTAL";position:absolute;top:1.5rem;right:-2rem;background:#ef4444;color:#fff;font-weight:800;font-size:.65rem;letter-spacing:2px;padding:.2rem 2.5rem;transform:rotate(45deg);opacity:.85;box-shadow:0 2px 4px #0000001a;pointer-events:none}@media (max-width: 768px){.projects-cards-grid{grid-template-columns:1fr}}.up-usage-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1050;padding:16px;animation:upUsageFadeIn .2s ease-out}@keyframes upUsageFadeIn{0%{opacity:0}to{opacity:1}}.up-usage-modal{background:#fff;border-radius:14px;width:100%;max-width:820px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;overflow:hidden;border:1px solid #e2e8f0}.up-usage-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #f1f5f9;background:#f8fafc}.up-usage-title-wrap{display:flex;align-items:center;gap:14px}.up-usage-icon-box{width:40px;height:40px;border-radius:10px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center;border:1px solid #dbeafe}.up-usage-title{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 4px}.up-usage-subtitle{margin:0;font-size:.85rem;color:#64748b;display:flex;align-items:center;gap:8px}.up-usage-code-tag{background:#e2e8f0;color:#334155;padding:2px 8px;border-radius:4px;font-family:monospace;font-weight:600;font-size:.8rem}.up-usage-name-text{font-weight:500;color:#1e293b}.up-usage-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.up-usage-close-btn:hover{background:#e2e8f0;color:#0f172a}.up-usage-body{padding:22px 24px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:20px}.up-usage-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:#64748b;gap:12px}.up-usage-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#2563eb;border-radius:50%;animation:upUsageSpin .7s linear infinite}@keyframes upUsageSpin{to{transform:rotate(360deg)}}.up-usage-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.up-usage-stat-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;transition:all .2s ease}.up-usage-stat-card.active{background:#fff;border-color:#cbd5e1;box-shadow:0 1px 3px #0000000d}.stat-icon-wrap{width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center}.stat-icon-wrap.blue{background:#eff6ff;color:#2563eb}.stat-icon-wrap.green{background:#ecfdf5;color:#059669}.stat-icon-wrap.purple{background:#faf5ff;color:#7c3aed}.stat-details{display:flex;flex-direction:column}.stat-value{font-size:1.25rem;font-weight:700;color:#0f172a;line-height:1.2}.stat-label{font-size:.75rem;color:#64748b;font-weight:500}.up-usage-empty{text-align:center;padding:36px 20px;background:#f8fafc;border-radius:12px;border:1px dashed #cbd5e1}.up-usage-empty-icon{width:52px;height:52px;border-radius:50%;background:#ecfdf5;color:#059669;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}.up-usage-empty h4{font-size:1rem;font-weight:700;color:#1e293b;margin:0 0 6px}.up-usage-empty p{font-size:.85rem;color:#64748b;max-width:480px;margin:0 auto;line-height:1.5}.up-usage-section{display:flex;flex-direction:column;gap:10px}.up-usage-section-header{display:flex;align-items:center;gap:8px;color:#1e293b}.up-usage-section-header h4{font-size:.95rem;font-weight:600;margin:0}.up-usage-table-wrap{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.up-usage-table{width:100%;border-collapse:collapse;font-size:.85rem;text-align:left}.up-usage-table thead th{background:#f8fafc;color:#475569;font-weight:600;padding:10px 14px;border-bottom:1px solid #e2e8f0;font-size:.78rem;text-transform:uppercase;letter-spacing:.03em}.up-usage-table tbody td{padding:10px 14px;border-bottom:1px solid #f1f5f9;color:#334155}.up-usage-table tbody tr:last-child td{border-bottom:none}.up-usage-table tbody tr:hover{background:#f8fafc}.text-primary{color:#2563eb!important}.up-usage-badge{display:inline-block;padding:2px 8px;border-radius:9999px;font-size:.72rem;font-weight:600}.badge-success{background:#dcfce7;color:#15803d}.badge-info{background:#dbeafe;color:#1d4ed8}.badge-warning{background:#fef3c7;color:#b45309}.badge-danger{background:#fee2e2;color:#b91c1c}.up-usage-footer{padding:14px 24px;border-top:1px solid #f1f5f9;background:#f8fafc;display:flex;justify-content:flex-end}.up-usage-btn-close{padding:8px 18px;background:#fff;border:1px solid #cbd5e1;color:#475569;font-size:.85rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .15s ease}.up-usage-btn-close:hover{background:#f1f5f9;color:#0f172a}.up-delete-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:16px;animation:upDeleteFadeIn .2s ease-out}@keyframes upDeleteFadeIn{0%{opacity:0}to{opacity:1}}.up-delete-modal{background:#fff;border-radius:14px;width:100%;max-width:620px;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;overflow:hidden;border:1px solid #e2e8f0}.up-delete-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid #f1f5f9}.up-delete-header.warning{background:#fffbeb;border-bottom-color:#fef3c7}.up-delete-header.danger{background:#fef2f2;border-bottom-color:#fee2e2}.up-delete-title-wrap{display:flex;align-items:center;gap:14px}.up-delete-icon-box{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center}.up-delete-icon-box.warning{background:#fef3c7;color:#d97706;border:1px solid #fde68a}.up-delete-icon-box.danger{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.up-delete-title{font-size:1.15rem;font-weight:700;margin:0 0 4px;color:#0f172a}.up-delete-subtitle{margin:0;font-size:.85rem;display:flex;align-items:center;gap:8px}.up-delete-code{background:#0000000f;padding:2px 7px;border-radius:4px;font-family:monospace;font-weight:600;font-size:.8rem;color:#334155}.up-delete-name{font-weight:500;color:#475569}.up-delete-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:6px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.up-delete-close-btn:hover{background:#0000000d;color:#0f172a}.up-delete-body{padding:22px 24px;display:flex;flex-direction:column;gap:16px}.up-delete-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px;gap:10px;color:#64748b}.up-delete-spinner{width:28px;height:28px;border:3px solid #e2e8f0;border-top-color:#d97706;border-radius:50%;animation:upDeleteSpin .7s linear infinite}@keyframes upDeleteSpin{to{transform:rotate(360deg)}}.up-delete-alert-banner{display:flex;gap:14px;background:#fff7ed;border:1px solid #ffedd5;border-left:4px solid #f97316;border-radius:8px;padding:14px 16px}.alert-banner-icon{color:#ea580c;flex-shrink:0;margin-top:2px}.alert-banner-text strong{color:#9a3412;font-size:.95rem;display:block;margin-bottom:4px}.alert-banner-text p{margin:0;font-size:.88rem;color:#7c2d12;line-height:1.5}.up-delete-explanation{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px 16px}.up-delete-explanation p{margin:0;font-size:.86rem;color:#475569;line-height:1.5}.up-delete-view-usage-link{display:inline-flex;align-items:center;gap:8px;background:transparent;border:1px dashed #cbd5e1;padding:10px 14px;border-radius:8px;color:#2563eb;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;width:fit-content}.up-delete-view-usage-link:hover{background:#eff6ff;border-color:#93c5fd}.up-delete-safe{padding:10px 0}.up-delete-safe-text{font-size:1rem;color:#1e293b;margin:0 0 8px;line-height:1.5}.up-delete-safe-subtext{font-size:.85rem;color:#64748b;margin:0}.up-delete-footer{padding:16px 24px;background:#f8fafc;border-top:1px solid #f1f5f9}.up-delete-actions-split{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.up-delete-actions-right{display:flex;align-items:center;gap:10px}.up-btn-cancel{padding:9px 18px;background:#fff;border:1px solid #cbd5e1;color:#475569;font-size:.88rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .15s ease}.up-btn-cancel:hover{background:#f1f5f9;color:#0f172a}.up-btn-recommend-archive{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:#0284c7;border:1px solid #0284c7;color:#fff;font-size:.88rem;font-weight:600;border-radius:8px;cursor:pointer;box-shadow:0 1px 3px #0284c74d;transition:all .15s ease}.up-btn-recommend-archive:hover{background:#0369a1;border-color:#0369a1}.up-btn-force-delete{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;background:transparent;border:1px solid #fca5a5;color:#dc2626;font-size:.78rem;font-weight:500;border-radius:6px;cursor:pointer;transition:all .15s ease}.up-btn-force-delete:hover{background:#fee2e2}.up-btn-danger-delete{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:#dc2626;border:1px solid #dc2626;color:#fff;font-size:.88rem;font-weight:600;border-radius:8px;cursor:pointer;transition:all .15s ease}.up-btn-danger-delete:hover{background:#b91c1c;border-color:#b91c1c}.unit-prices-page{padding:1.25rem 2rem;width:100%;max-width:100%;box-sizing:border-box;min-height:calc(100vh - 80px);background:#f8fafc}.up-header-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:1.5rem 1.75rem;margin-bottom:1.25rem;box-shadow:0 2px 8px #00000008}.up-header-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:#64748b;margin-bottom:.75rem}.up-header-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.up-header-breadcrumb a:hover{color:#1d5e7b}.up-header-breadcrumb .separator{color:#cbd5e1}.up-header-breadcrumb .current{color:#0f2942;font-weight:700}.up-header-main{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1.25rem}.up-header-left{display:flex;align-items:flex-start;gap:1.15rem;flex:1;min-width:320px}.up-icon-wrapper{width:50px;height:50px;border-radius:12px;background:linear-gradient(135deg,#1d5e7b,#0f2942);display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 4px 12px #1d5e7b40;margin-top:2px}.up-header-info{flex:1;display:flex;flex-direction:column}.up-title-row{display:flex;align-items:center;gap:.6rem;margin-bottom:.35rem;flex-wrap:wrap}.up-title{font-size:1.35rem;font-weight:800;color:#0a2540;margin:0;line-height:1.2}.up-badge{font-size:.72rem;font-weight:700;padding:.25rem .6rem;border-radius:6px;border:1px solid rgba(29,94,123,.25);background:#1d5e7b14;color:#1d5e7b;letter-spacing:.3px}.up-subtitle{font-size:.85rem;color:#64748b;margin:0;line-height:1.4}.up-header-right{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.up-stats-group{display:flex;align-items:center;gap:.6rem}.up-stat-pill{display:flex;flex-direction:column;align-items:center;padding:.4rem .85rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;min-width:75px}.up-stat-num{font-size:1.15rem;font-weight:800;line-height:1.2;color:#0f2942}.up-stat-label{font-size:.68rem;color:#64748b;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.up-action-buttons{display:flex;align-items:center;gap:.6rem}.up-btn-bulk-print{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1rem;border-radius:8px;font-size:.85rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#0284c7,#0369a1);border:none;cursor:pointer;box-shadow:0 2px 8px #0369a140;transition:all .2s}.up-btn-bulk-print:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0369a159}.up-btn-ai{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1.1rem;border-radius:8px;font-size:.85rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;cursor:pointer;box-shadow:0 2px 8px #6366f140;transition:all .2s}.up-btn-ai:hover{transform:translateY(-1px);box-shadow:0 4px 12px #6366f159}.up-btn-new{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem 1.15rem;border-radius:8px;font-size:.85rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#1d5e7b,#0f2942);border:none;cursor:pointer;box-shadow:0 2px 8px #1d5e7b4d;transition:all .2s}.up-btn-new:hover{transform:translateY(-1px);box-shadow:0 4px 12px #1d5e7b66}.up-toolbar-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:.85rem 1.25rem;margin-bottom:1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;box-shadow:0 1px 3px #00000005}.up-toolbar-left{display:flex;align-items:center;gap:.85rem;flex:1;min-width:320px}.up-section-select-wrapper{min-width:240px}.up-search-box{position:relative;flex:1;max-width:480px}.up-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.up-search-input{width:100%;padding:.55rem 2.2rem .55rem 2.25rem;font-size:.85rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;outline:none;transition:all .15s;box-sizing:border-box}.up-search-input:focus{border-color:#1d5e7b;box-shadow:0 0 0 3px #1d5e7b1f}.up-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;color:#94a3b8;cursor:pointer;padding:2px;border-radius:4px}.up-search-clear:hover{color:#ef4444}.up-toolbar-right{display:flex;align-items:center;gap:.6rem}.up-btn-tree-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.45rem .75rem;border-radius:6px;font-size:.8rem;font-weight:500;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;cursor:pointer;transition:all .15s}.up-btn-tree-toggle:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.up-main-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 2px 8px #00000008;overflow:hidden;margin-bottom:2rem}.up-tree-container{padding:1.25rem 1.5rem}.up-section-item{margin-bottom:.6rem}.up-section-header{display:flex;align-items:center;padding:.75rem 1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;transition:all .15s ease;position:relative;-webkit-user-select:none;user-select:none}.up-section-header:hover{border-color:#cbd5e1;box-shadow:0 2px 6px #00000008;background:#fafbfc}.up-section-header.expanded{border-color:#94a3b8;box-shadow:0 2px 8px #0000000a}.up-section-chevron{display:inline-flex;align-items:center;justify-content:center;color:#64748b;margin-right:.6rem;transition:transform .2s ease}.up-section-chevron.expanded{transform:rotate(90deg);color:#1d5e7b}.up-section-icon-box{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;margin-right:.75rem;flex-shrink:0}.up-section-code{font-size:.75rem;font-weight:700;background:#f1f5f9;color:#334155;padding:.2rem .55rem;border-radius:5px;margin-right:.75rem;letter-spacing:.3px;border:1px solid #e2e8f0}.up-section-name{font-size:.95rem;font-weight:700;color:#1e293b;flex:1}.up-section-badges{display:flex;align-items:center;gap:.45rem;margin-left:.75rem}.up-badge-total{font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:12px;background:#e0f2fe;color:#0284c7;border:1px solid #bae6fd}.up-badge-active{font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:12px;background:#ecfdf5;color:#059669;border:1px solid #a7f3d0;display:inline-flex;align-items:center;gap:.25rem}.up-badge-draft{font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:12px;background:#fffbeb;color:#d97706;border:1px solid #fde68a;display:inline-flex;align-items:center;gap:.25rem}.up-section-content{margin-top:.35rem;margin-bottom:.85rem;border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto;background:#fff;box-shadow:0 2px 6px #00000005}.up-table{width:100%;border-collapse:collapse;font-size:.83rem;margin:0}.up-table thead{background:#f8fafc;border-bottom:1px solid #e2e8f0}.up-table th{padding:.65rem .85rem;font-size:.72rem;font-weight:700;text-transform:uppercase;color:#64748b;letter-spacing:.4px;white-space:nowrap;vertical-align:middle}.up-table tbody tr{border-bottom:1px solid #f1f5f9;transition:background-color .15s ease;cursor:pointer}.up-table tbody tr:hover{background-color:#f8fafc}.up-table tbody tr:last-child{border-bottom:none}.up-table td{padding:.65rem .85rem;color:#334155;vertical-align:middle}.up-table tbody tr.row-selected{background-color:#f0f7fa!important;box-shadow:inset 4px 0 #1d5e7b}.up-table tbody tr.row-selected:hover{background-color:#e4f0f6!important}.up-table tbody tr.row-selected td{color:#0f172a!important}.up-table tbody tr.row-selected .up-poz-code{color:#1d5e7b!important;font-weight:800}.up-table tbody tr.row-selected .up-poz-name{color:#0a2540!important;font-weight:700}.up-table tbody tr.row-selected .up-poz-desc{color:#475569!important;font-weight:400}.up-table tbody tr.row-selected .up-price-sub{color:#334155!important;font-weight:500}.up-table tbody tr.row-selected .up-price-total{color:#1d5e7b!important;font-weight:800}.up-table tbody tr.row-selected .up-action-btn{background:#fff;color:#475569;border-color:#cbd5e1}.up-table tbody tr.row-selected .up-action-btn:hover{background:#f1f5f9;color:#0f172a}.up-poz-code{font-weight:700;color:#1d5e7b;font-size:.85rem;letter-spacing:.2px}.up-poz-title-cell{display:flex;align-items:center;gap:.6rem}.up-poz-img{width:32px;height:32px;border-radius:6px;object-fit:cover;border:1px solid #e2e8f0;flex-shrink:0}.up-poz-name{font-weight:600;color:#0f172a;line-height:1.3}.up-poz-desc{font-size:.75rem;color:#64748b;margin-top:2px;line-height:1.3}.up-price-total{font-weight:700;color:#0f2942;font-size:.88rem}.up-price-sub{font-size:.8rem;color:#64748b}.up-action-group{display:flex;align-items:center;justify-content:flex-end;gap:.35rem}.up-action-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .15s}.up-action-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.up-action-btn.send:hover{color:#0284c7;border-color:#7dd3fc;background:#f0f9ff}.up-action-btn.view:hover{color:#1d5e7b;border-color:#93c5fd;background:#eff6ff}.up-action-btn.edit:hover{color:#d97706;border-color:#fde68a;background:#fffbeb}.up-action-btn.copy:hover{color:#7c3aed;border-color:#ddd6fe;background:#f5f3ff}.up-action-btn.delete:hover{color:#dc2626;border-color:#fca5a5;background:#fef2f2}.up-empty-state{text-align:center;padding:3.5rem 1.5rem;color:#64748b}.up-empty-icon-wrap{width:56px;height:56px;border-radius:14px;background:#f1f5f9;display:inline-flex;align-items:center;justify-content:center;color:#94a3b8;margin-bottom:1rem}.up-empty-title{font-size:1.05rem;font-weight:700;color:#1e293b;margin-bottom:.35rem}.up-empty-desc{font-size:.85rem;color:#64748b;max-width:400px;margin:0 auto}.contract-templates-page{padding:0 0 40px;display:flex;flex-direction:column;gap:20px}.templates-header{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:20px;background:#fff;padding:24px 28px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0f172a0a}.templates-header-left{max-width:800px}.templates-breadcrumb{display:flex;align-items:center;gap:8px;font-size:.8125rem;color:#64748b;margin-bottom:8px}.templates-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.templates-breadcrumb a:hover{color:#059669}.templates-breadcrumb .sep{color:#cbd5e1}.templates-breadcrumb .current{color:#059669;font-weight:600}.templates-title-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.templates-title{font-size:1.5rem;font-weight:800;color:#0f172a;letter-spacing:-.02em;margin:0}.templates-badge{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0;font-size:.72rem;font-weight:700;padding:3px 10px;border-radius:9999px;text-transform:uppercase}.templates-subtitle{font-size:.875rem;color:#64748b;line-height:1.5;margin:6px 0 0}.btn-create-template{display:inline-flex;align-items:center;gap:8px;background:#059669;color:#fff;border:none;padding:10px 18px;border-radius:9px;font-size:.84rem;font-weight:700;cursor:pointer;transition:all .15s;box-shadow:0 2px 6px #05966933}.btn-create-template:hover{background:#047857;transform:translateY(-1px)}.templates-tabs-bar{display:flex;gap:8px;background:#f1f5f9;padding:5px;border-radius:10px;width:fit-content}.templates-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;font-size:.8125rem;font-weight:600;border:none;background:transparent;color:#475569;border-radius:7px;cursor:pointer;transition:all .15s}.templates-tab-btn:hover{color:#0f172a}.templates-tab-btn.active{background:#fff;color:#059669;font-weight:700;box-shadow:0 1px 3px #00000014}.templates-layout{display:grid;grid-template-columns:340px 1fr;gap:20px}@media (max-width: 900px){.templates-layout{grid-template-columns:1fr}}.templates-sidebar{display:flex;flex-direction:column;gap:12px}.templates-sidebar-title{font-size:.8125rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.05em;padding-left:4px}.templates-cards-list{display:flex;flex-direction:column;gap:10px}.template-selector-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;cursor:pointer;transition:all .15s;display:flex;flex-direction:column;gap:8px}.template-selector-card:hover{border-color:#94a3b8;transform:translateY(-1px);box-shadow:0 2px 6px #0f172a0d}.template-selector-card.active{border-color:#059669;background:#f0fdf4;box-shadow:0 2px 8px #0596691a}.template-card-top{display:flex;align-items:center;justify-content:space-between}.template-type-tag{font-size:.7rem;font-weight:700;color:#059669;background:#ecfdf5;padding:2px 8px;border-radius:4px}.template-default-badge{font-size:.68rem;font-weight:700;color:#4338ca;background:#e0e7ff;padding:2px 6px;border-radius:4px}.template-card-name{font-size:.94rem;font-weight:700;color:#0f172a;margin:0;line-height:1.35}.template-card-summary{font-size:.78rem;color:#64748b;margin:0;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.template-card-footer{display:flex;align-items:center;justify-content:space-between;margin-top:6px;padding-top:8px;border-top:1px solid #f1f5f9}.template-articles-count{display:flex;align-items:center;gap:4px;font-size:.75rem;font-weight:600;color:#475569}.template-card-arrow{color:#94a3b8}.template-selector-card.active .template-card-arrow{color:#059669}.template-detail-panel{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px;display:flex;flex-direction:column;gap:20px;box-shadow:0 1px 3px #0f172a0a}.template-detail-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid #f1f5f9}.detail-header-left{max-width:650px}.detail-header-badge{display:inline-block;font-size:.72rem;font-weight:700;color:#059669;background:#ecfdf5;padding:3px 8px;border-radius:4px;margin-bottom:6px}.detail-header-title{font-size:1.25rem;font-weight:800;color:#0f172a;margin:0}.detail-header-desc{font-size:.84rem;color:#64748b;margin:4px 0 0;line-height:1.5}.detail-header-actions{display:flex;align-items:center;gap:8px}.btn-add-article-tpl{display:inline-flex;align-items:center;gap:6px;background:#059669;color:#fff;border:none;padding:8px 14px;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s}.btn-add-article-tpl:hover{background:#047857}.btn-delete-tpl{background:#fff;border:1px solid #cbd5e1;color:#dc2626;padding:8px 10px;border-radius:8px;cursor:pointer;transition:all .15s}.btn-delete-tpl:hover{background:#fee2e2;border-color:#fca5a5}.template-articles-list{display:flex;flex-direction:column;gap:12px}.articles-list-heading{display:flex;align-items:center;gap:8px;font-size:.9rem;font-weight:700;color:#0f172a;margin-bottom:4px}.template-article-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px 16px;transition:all .15s}.template-article-item:hover{background:#fff;border-color:#cbd5e1}.article-item-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.article-title-wrap{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.article-no-box{width:24px;height:24px;border-radius:5px;background:#059669;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700}.article-name{font-size:.88rem;font-weight:700;color:#0f172a}.mandatory-tag{background:#e2e8f0;color:#475569;font-size:.68rem;font-weight:600;padding:2px 6px;border-radius:4px}.custom-tag{background:#fef3c7;color:#b45309;font-size:.68rem;font-weight:600;padding:2px 6px;border-radius:4px}.article-btns{display:flex;align-items:center;gap:4px}.btn-article-tool{background:transparent;border:none;color:#64748b;padding:5px;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.btn-article-tool:hover{background:#e2e8f0;color:#0f172a}.btn-article-tool.delete:hover{background:#fee2e2;color:#dc2626}.article-item-text{font-size:.84rem;color:#334155;line-height:1.6;white-space:pre-wrap;padding-left:32px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a80;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:2500}.modal-card{background:#fff;border-radius:14px;width:600px;max-width:95vw;max-height:90vh;box-shadow:0 12px 30px #0003;display:flex;flex-direction:column;overflow:hidden}.modal-header{padding:16px 20px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.modal-title{font-size:1rem;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px}.btn-close-modal{background:transparent;border:none;cursor:pointer;color:#64748b;padding:4px;border-radius:6px}.modal-body{padding:20px;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.form-label{font-size:.8rem;font-weight:600;color:#334155}.form-input,.form-select,.form-textarea{padding:9px 12px;font-size:.84rem;border:1px solid #cbd5e1;border-radius:8px;outline:none;font-family:inherit;transition:all .15s}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:#059669;box-shadow:0 0 0 2px #05966926}.modal-footer{padding:14px 20px;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:flex-end;gap:10px}.btn-cancel{background:#fff;border:1px solid #cbd5e1;color:#475569;padding:8px 14px;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer}.btn-submit{display:inline-flex;align-items:center;gap:6px;background:#059669;color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:.8125rem;font-weight:700;cursor:pointer;transition:all .15s}.btn-submit:hover{background:#047857}.templates-empty-box{background:#fff;border:2px dashed #cbd5e1;border-radius:14px;padding:60px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px;color:#64748b}.templates-empty-box h3{font-size:1.1rem;color:#0f172a;margin:0}.templates-empty-box p{font-size:.85rem;max-width:450px;margin:0}.btn-preview-tpl{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#0f172a;border:1px solid #cbd5e1;padding:8px 14px;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:all .15s ease}.btn-preview-tpl:hover{background:#f8fafc;border-color:#94a3b8;color:#059669}.btn-card-preview-mini{display:inline-flex;align-items:center;gap:4px;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;padding:3px 8px;border-radius:5px;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s ease}.btn-card-preview-mini:hover{background:#059669;color:#fff;border-color:#059669}.template-preview-modal-card{width:900px;max-width:96vw;height:92vh;max-height:92vh;display:flex;flex-direction:column}.preview-header-controls{display:flex;align-items:center;gap:12px}.preview-toggle-group{display:inline-flex;background:#f1f5f9;border-radius:8px;padding:2px;border:1px solid #e2e8f0}.preview-toggle-btn{border:none;background:transparent;padding:5px 11px;font-size:.75rem;font-weight:600;color:#64748b;border-radius:6px;cursor:pointer;transition:all .15s ease}.preview-toggle-btn.active{background:#fff;color:#059669;box-shadow:0 1px 3px #00000014}.btn-print-preview{display:inline-flex;align-items:center;gap:6px;background:#059669;color:#fff;border:none;padding:6px 14px;border-radius:8px;font-size:.8125rem;font-weight:700;cursor:pointer;transition:all .15s ease}.btn-print-preview:hover{background:#047857}.preview-modal-body{background:#f1f5f9;padding:24px;overflow-y:auto;display:flex;justify-content:center}.template-print-sheet{background:#fff;width:100%;max-width:800px;min-height:1000px;padding:48px;box-shadow:0 4px 18px #00000014;border:1px solid #e2e8f0;border-radius:4px;color:#0f172a;font-family:Times New Roman,Times,serif;line-height:1.6;box-sizing:border-box}.print-company-name{font-size:.85rem;font-weight:700;letter-spacing:.08em;color:#475569;margin-bottom:6px;text-transform:uppercase}.print-doc-header{text-align:center;margin-bottom:30px;border-bottom:2px solid #0f172a;padding-bottom:16px}.print-doc-title{font-size:1.25rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#0f172a}.print-doc-sub{font-size:.85rem;font-weight:700;color:#475569;margin-top:4px}.print-articles-container{display:flex;flex-direction:column;gap:16px}.print-article{margin-bottom:12px}.print-article-title{font-weight:700;font-size:.95rem;margin-bottom:5px;text-decoration:underline;color:#0f172a}.print-article-body{font-size:.88rem;text-align:justify;line-height:1.65;white-space:pre-wrap}.print-empty-notice{text-align:center;padding:40px;color:#94a3b8;font-style:italic}.tpl-preview-tag-filled{background:#ecfdf5;color:#065f46;padding:1px 6px;border-radius:4px;font-weight:700;border-bottom:1px solid #10b981}.tpl-preview-tag-raw{background:#eff6ff;color:#1e40af;font-family:monospace;padding:1px 5px;border-radius:4px;font-weight:700;border:1px solid #bfdbfe}.print-signatures-block{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:60px;padding-top:20px;border-top:1px solid #cbd5e1}.print-sig-col{text-align:center}.print-sig-role{font-weight:700;font-size:.88rem;margin-bottom:6px}.print-sig-name{font-size:.85rem;color:#334155}.print-sig-space{height:60px}@media print{body *{visibility:hidden}.template-print-sheet,.template-print-sheet *{visibility:visible}.template-print-sheet{position:absolute;left:0;top:0;width:100%;max-width:100%;padding:20mm;box-shadow:none;border:none}}.pp-page-container{padding:1.5rem 2rem;max-width:1600px;margin:0 auto;min-height:100vh;background-color:#f8fafc}.pp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.pp-header-title{display:flex;align-items:center;gap:.85rem}.pp-header-icon{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#059669,#047857);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #05966940}.pp-header-text h1{font-size:1.45rem;font-weight:700;color:#0f172a;margin:0}.pp-header-text p{font-size:.875rem;color:#64748b;margin:.2rem 0 0}.pp-header-actions{display:flex;align-items:center;gap:.75rem}.btn-primary-pp{display:inline-flex;align-items:center;gap:.5rem;background:#059669;color:#fff;padding:.65rem 1.15rem;border-radius:10px;font-size:.875rem;font-weight:600;border:none;cursor:pointer;box-shadow:0 4px 6px -1px #05966933;transition:all .2s ease}.btn-primary-pp:hover{background:#047857;transform:translateY(-1px)}.pp-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1.5rem}.pp-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.1rem 1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #00000005}.pp-stat-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pp-stat-info{display:flex;flex-direction:column}.pp-stat-label{font-size:.8rem;font-weight:600;color:#64748b}.pp-stat-value{font-size:1.25rem;font-weight:700;color:#0f172a;margin-top:.2rem}.pp-filter-bar{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1rem 1.25rem;margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.pp-filter-left{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.pp-filter-select{padding:.55rem .85rem;border-radius:8px;border:1px solid #cbd5e1;font-size:.875rem;color:#1e293b;outline:none;background-color:#f8fafc}.pp-type-tabs{display:flex;gap:.35rem;background:#f1f5f9;padding:.3rem;border-radius:10px}.pp-type-tab-btn{padding:.45rem .95rem;font-size:.825rem;font-weight:600;border:none;border-radius:7px;cursor:pointer;background:transparent;color:#64748b;transition:all .2s ease}.pp-type-tab-btn.active{background:#fff;color:#059669;box-shadow:0 2px 4px #0000000f}.pp-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #00000005}.pp-table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}.pp-table th{background:#f8fafc;color:#475569;font-weight:600;padding:.85rem 1rem;border-bottom:1px solid #e2e8f0}.pp-table td{padding:.95rem 1rem;border-bottom:1px solid #f1f5f9;color:#1e293b;vertical-align:middle}.pp-table tr:hover td{background-color:#f8fafc}.status-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .65rem;border-radius:20px;font-size:.75rem;font-weight:600}.status-badge.draft{background:#fef3c7;color:#d97706}.status-badge.approved{background:#dcfce7;color:#15803d}.status-badge.paid{background:#e0e7ff;color:#4338ca}.type-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.2rem .55rem;border-radius:6px;font-size:.725rem;font-weight:600}.type-badge.client{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.type-badge.subcontractor{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:1rem}.modal-content-pp{background:#fff;border-radius:16px;width:100%;max-width:580px;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.modal-header-pp{padding:1.25rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.modal-header-pp h3{margin:0;font-size:1.15rem;font-weight:700;color:#0f172a}.modal-body-pp{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.form-group-pp{display:flex;flex-direction:column;gap:.35rem}.form-group-pp label{font-size:.8125rem;font-weight:600;color:#334155}.form-group-pp input,.form-group-pp select,.form-group-pp textarea{padding:.65rem .85rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.875rem;color:#0f172a;outline:none}.modal-footer-pp{padding:1rem 1.5rem;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:.75rem}.pp-detail-container{padding:1.5rem 2rem;max-width:1600px;margin:0 auto;min-height:100vh;background-color:#f8fafc}.pp-detail-top-nav{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap;gap:1rem}.btn-back-pp{display:inline-flex;align-items:center;gap:.4rem;background:#fff;border:1px solid #cbd5e1;color:#334155;padding:.5rem .95rem;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-back-pp:hover{background:#f1f5f9}.pp-detail-banner{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem;margin-bottom:1.5rem;box-shadow:0 1px 3px #00000005}.pp-banner-main{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem}.pp-banner-title-area{display:flex;align-items:center;gap:1rem}.pp-banner-icon{width:52px;height:52px;border-radius:14px;background:linear-gradient(135deg,#059669,#047857);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #05966940;flex-shrink:0}.pp-banner-title-text h1{font-size:1.35rem;font-weight:700;color:#0f172a;margin:0;display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.pp-banner-meta{display:flex;align-items:center;gap:1rem;margin-top:.35rem;font-size:.85rem;color:#64748b;flex-wrap:wrap}.pp-financial-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.85rem;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:1rem}.pp-fin-box{display:flex;flex-direction:column}.pp-fin-label{font-size:.75rem;font-weight:600;color:#64748b}.pp-fin-val{font-size:1.15rem;font-weight:700;color:#0f172a;margin-top:.2rem}.pp-detail-tabs-nav{display:flex;gap:.5rem;border-bottom:2px solid #e2e8f0;margin-bottom:1.5rem;overflow-x:auto}.pp-detail-tab-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;font-size:.9rem;font-weight:600;color:#64748b;background:none;border:none;border-bottom:3px solid transparent;cursor:pointer;margin-bottom:-2px;transition:all .2s ease;white-space:nowrap}.pp-detail-tab-btn:hover{color:#059669}.pp-detail-tab-btn.active{color:#059669;border-bottom-color:#059669}@media print{body *{visibility:hidden}.pp-print-area,.pp-print-area *{visibility:visible}.pp-print-area{position:absolute;left:0;top:0;width:100%}.no-print{display:none!important}}.ta-page-container{padding:1.5rem 2rem;max-width:1600px;margin:0 auto;min-height:100vh;background-color:#f8fafc}.ta-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.ta-header-title{display:flex;align-items:center;gap:.85rem}.ta-header-icon{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0284c740}.ta-header-text h1{font-size:1.45rem;font-weight:700;color:#0f172a;margin:0}.ta-header-text p{font-size:.875rem;color:#64748b;margin:.2rem 0 0}.ta-main-tabs{display:flex;gap:.5rem;background:#f1f5f9;padding:.35rem;border-radius:12px;margin-bottom:1.5rem;width:fit-content;flex-wrap:wrap}.ta-main-tab-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.875rem;font-weight:600;border:none;border-radius:9px;cursor:pointer;background:transparent;color:#64748b;transition:all .2s ease}.ta-main-tab-btn.active{background:#fff;color:#0284c7;box-shadow:0 2px 6px #0000000f}.ta-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem}.ta-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.1rem 1.25rem;display:flex;align-items:center;gap:1rem;box-shadow:0 1px 3px #00000005}.ta-stat-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.ta-stat-info{display:flex;flex-direction:column}.ta-stat-label{font-size:.785rem;font-weight:600;color:#64748b}.ta-stat-value{font-size:1.25rem;font-weight:700;color:#0f172a;margin-top:.2rem}.urgency-badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:4px;font-size:.725rem;font-weight:700;text-transform:uppercase}.urgency-badge.critical{background:#fee2e2;color:#dc2626}.urgency-badge.high{background:#ffedd5;color:#ea580c}.urgency-badge.normal{background:#f1f5f9;color:#475569}.urgency-badge.low{background:#f0fdf4;color:#16a34a}.decision-badge{display:inline-flex;align-items:center;gap:.35rem;padding:3px 8px;border-radius:6px;font-size:.75rem;font-weight:700}.decision-badge.approved_a{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.decision-badge.approved_b_conditional{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.decision-badge.rejected_c{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}.decision-badge.pending{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.site-daily-reports-page{padding:1.5rem;max-width:1600px;margin:0 auto;min-height:calc(100vh - 70px);background-color:#f8fafc}.site-header-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem 1.75rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.25rem;box-shadow:0 1px 3px #0000000d;margin-bottom:1.25rem}.site-header-info{display:flex;align-items:center;gap:1.25rem}.site-header-badge{width:52px;height:52px;border-radius:12px;background:linear-gradient(135deg,#ea580c,#c2410c);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #ea580c4d;flex-shrink:0}.site-header-crumbs{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#64748b;margin-bottom:.25rem}.site-header-crumbs .current{color:#0f172a;font-weight:600}.site-header-title{font-size:1.45rem;font-weight:700;color:#0f172a;margin:0 0 .25rem}.site-header-desc{font-size:.85rem;color:#64748b;margin:0}.site-project-selector-box{display:flex;flex-direction:column;gap:.35rem;min-width:320px}.site-project-selector-box .selector-label{display:flex;align-items:center;gap:.4rem;font-size:.78rem;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.03em}.site-project-select{padding:.65rem .9rem;border-radius:8px;border:1px solid #cbd5e1;background:#f8fafc;color:#0f172a;font-size:.9rem;font-weight:600;outline:none;cursor:pointer;transition:all .2s ease}.site-project-select:focus{border-color:#ea580c;background:#fff;box-shadow:0 0 0 3px #ea580c26}.site-project-summary-bar{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.85rem 1.5rem;display:flex;align-items:center;gap:2rem;flex-wrap:wrap;margin-bottom:1.5rem;box-shadow:0 1px 2px #00000008}.summary-item{display:flex;flex-direction:column;gap:.2rem}.summary-label{font-size:.72rem;font-weight:600;color:#64748b;text-transform:uppercase}.summary-value{font-size:.9rem;font-weight:600;color:#1e293b}.summary-value.highlight{color:#0f172a;font-weight:700}.site-reports-container{background:transparent}.site-loading-box,.site-empty-box{background:#fff;border:1px dashed #cbd5e1;border-radius:12px;padding:3.5rem 2rem;text-align:center;color:#64748b;margin-top:1.5rem}.site-empty-box h3{font-size:1.15rem;font-weight:700;color:#1e293b;margin-bottom:.5rem}.label-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172a99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;justify-content:center;align-items:center;z-index:9999;animation:fadeInModal .25s ease-out}.label-modal-content{width:95vw;max-width:1000px;height:90vh;max-height:800px;background:#ffffffd9;border:1px solid rgba(255,255,255,.4);box-shadow:0 20px 40px -10px #0003;border-radius:20px;display:flex;flex-direction:column;overflow:hidden;font-family:Inter,system-ui,sans-serif}.label-modal-header{padding:1.25rem 2rem;border-bottom:1px solid rgba(0,0,0,.08);display:flex;justify-content:space-between;align-items:center}.label-modal-header h2{margin:0;font-size:1.5rem;font-weight:800;letter-spacing:-.02em;color:#0f172a}.label-modal-close{background:none;border:none;font-size:1.75rem;color:#64748b;cursor:pointer;padding:0;line-height:1}.label-modal-close:hover{color:#0f172a}.label-modal-body{flex:1;display:flex;overflow:hidden;background:#f8fafc}.label-preview-panel{flex:1.2;padding:2rem;display:flex;flex-direction:column;justify-content:center;align-items:center;border-right:1px solid rgba(0,0,0,.08);overflow-y:auto}.preview-title{font-size:.8rem;font-weight:700;text-transform:uppercase;color:#64748b;letter-spacing:.1em;margin-bottom:1.5rem}.live-label-container{background:#fff;border:1px solid #cbd5e1;box-shadow:0 8px 16px -4px #0000000f;border-radius:8px;box-sizing:border-box;position:relative;overflow:hidden;transition:all .3s ease}.label-settings-panel{flex:1;padding:2rem;overflow-y:auto;background:#fff;display:flex;flex-direction:column;gap:1.5rem}.settings-section-title{font-size:.9rem;font-weight:700;color:#0f172a;border-left:3px solid #2563eb;padding-left:8px;margin-bottom:.75rem;margin-top:.5rem}.form-group-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group-label{display:block;font-size:.8rem;font-weight:600;color:#475569;margin-bottom:.25rem}.form-group-input{width:100%;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;color:#0f172a;outline:none;transition:border .2s}.form-group-input:focus{border-color:#2563eb}.settings-checkbox-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.checkbox-option{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:500;color:#334155;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-option input{width:16px;height:16px;cursor:pointer}.a4-grid-preview{display:grid;border:1px solid #cbd5e1;background:#f8fafc;padding:6px;gap:4px;border-radius:8px;margin-top:.5rem;max-width:180px}.a4-grid-cell{border:1px dashed #94a3b8;aspect-ratio:1.5 / 1;border-radius:4px;cursor:pointer;background:#fff;transition:all .2s;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:#64748b}.a4-grid-cell.selected{background:#eff6ff;border-color:#2563eb;color:#2563eb}.a4-grid-cell.disabled{background:#e2e8f0;border-style:solid;border-color:#cbd5e1;color:#94a3b8;cursor:not-allowed}.label-modal-footer{padding:1.25rem 2rem;border-top:1px solid rgba(0,0,0,.08);display:flex;justify-content:space-between;align-items:center;background:#fff}@keyframes fadeInModal{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:scale(1)}}.accounts-container{width:100%;max-width:100%;margin:0;padding:0;box-sizing:border-box;font-family:var(--font-sans, "Plus Jakarta Sans", "Inter", system-ui, sans-serif);color:#0f172a;display:flex;flex-direction:column;height:calc(100vh - 105px);max-height:calc(100vh - 105px);overflow:hidden}.accounts-top-section{flex-shrink:0}.accounts-breadcrumb{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:#64748b;margin-bottom:.5rem}.accounts-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.accounts-breadcrumb a:hover,.accounts-breadcrumb .active{color:#0f172a}.accounts-header-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.55rem 1rem;margin-bottom:.65rem;box-shadow:0 1px 2px #0f172a0a}.accounts-header-left{display:flex;align-items:center;gap:10px}.accounts-header-icon{width:32px;height:32px;border-radius:8px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.accounts-header-text{display:flex;flex-direction:column}.accounts-header-title{font-size:1.12rem;font-weight:800;color:#0f172a;letter-spacing:-.01em;margin:0;display:flex;align-items:center;gap:8px;line-height:1.2}.accounts-header-badge{font-size:.68rem;font-weight:700;background:#f1f5f9;color:#475569;padding:2px 7px;border-radius:12px;border:1px solid #e2e8f0}.accounts-header-subtitle{font-size:.74rem;color:#64748b;margin:1px 0 0}.accounts-header-actions{display:flex;align-items:center;gap:8px}.accounts-btn-primary{display:inline-flex;align-items:center;gap:6px;background:#0f2942;color:#fff;font-size:.78rem;font-weight:600;padding:6px 13px;border-radius:6px;border:none;cursor:pointer;box-shadow:0 1px 2px #0f294226;transition:all .15s ease;text-decoration:none}.accounts-btn-primary:hover{background:#0b1f32;transform:translateY(-1px);box-shadow:0 2px 6px #0f294233}.accounts-btn-secondary{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#475569;font-size:.78rem;font-weight:600;padding:6px 12px;border-radius:6px;border:1px solid #cbd5e1;cursor:pointer;transition:all .15s ease;text-decoration:none}.accounts-btn-secondary:hover{background:#f8fafc;color:#0f172a;border-color:#94a3b8}.accounts-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;margin-bottom:.4rem}@media (max-width: 1200px){.accounts-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.accounts-stats-grid{grid-template-columns:1fr}}.accounts-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem .85rem;display:flex;align-items:center;gap:10px;box-shadow:0 1px 2px #0f172a05;transition:all .15s ease}.accounts-stat-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0f172a0d}.accounts-stat-card.danger{border-left:3.5px solid #ef4444}.accounts-stat-card.success{border-left:3.5px solid #10b981}.accounts-stat-card.neutral{border-left:3.5px solid #0f2942}.accounts-stat-card.info{border-left:3.5px solid #2563eb}.accounts-stat-icon-wrapper{width:30px;height:30px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.accounts-stat-icon-wrapper.blue{background:#eff6ff;color:#2563eb;border:1px solid #dbeafe}.accounts-stat-icon-wrapper.red{background:#fef2f2;color:#dc2626;border:1px solid #fee2e2}.accounts-stat-icon-wrapper.green{background:#f0fdf4;color:#16a34a;border:1px solid #dcfce7}.accounts-stat-icon-wrapper.navy{background:#f1f5f9;color:#0f2942;border:1px solid #e2e8f0}.accounts-stat-content{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px}.accounts-stat-label-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.accounts-stat-label{font-size:.67rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.accounts-stat-pill{font-size:.62rem;font-weight:700;padding:1px 5px;border-radius:4px;background:#f1f5f9;color:#475569;white-space:nowrap;border:1px solid #e2e8f0}.accounts-stat-pill.red{background:#fef2f2;color:#dc2626;border-color:#fecaca}.accounts-stat-pill.green{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.accounts-stat-value{font-size:1.08rem;font-weight:800;color:#0f172a;letter-spacing:-.01em;line-height:1.15;font-family:var(--font-mono, monospace);white-space:nowrap}.accounts-stat-unit{font-size:.72rem;font-weight:600;color:#64748b;margin-left:2px}.accounts-stat-value.red{color:#dc2626}.accounts-stat-value.green{color:#16a34a}.accounts-stat-value.navy{color:#0f2942}.accounts-filter-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.65rem .9rem;margin-bottom:.65rem;display:flex;flex-direction:column;gap:.55rem;box-shadow:0 1px 2px #0f172a05}.accounts-filter-tabs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;border-bottom:1px solid #f1f5f9;padding-bottom:.75rem}.accounts-filter-tab{padding:5px 12px;border-radius:99px;font-size:.78rem;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:6px}.accounts-filter-tab:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.accounts-filter-tab.active{background:#0f2942;color:#fff;border-color:#0f2942}.accounts-filter-tab .tab-count{background:#0000000f;padding:1px 6px;border-radius:99px;font-size:.7rem}.accounts-filter-tab.active .tab-count{background:#fff3;color:#fff}.accounts-filter-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.accounts-search-wrapper{flex:1;min-width:280px;position:relative;display:flex;align-items:center}.accounts-search-input{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:8px 12px 8px 36px;font-size:.84rem;color:#0f172a;background:#fff;outline:none;transition:all .15s ease;box-sizing:border-box}.accounts-search-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.accounts-search-icon{position:absolute;left:11px;color:#94a3b8;pointer-events:none;display:flex;align-items:center}.accounts-search-clear{position:absolute;right:10px;background:none;border:none;color:#94a3b8;cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;justify-content:center}.accounts-search-clear:hover{color:#0f172a}.accounts-select-filter{border:1px solid #cbd5e1;border-radius:8px;padding:8px 12px;font-size:.84rem;font-weight:500;color:#0f172a;background:#fff;outline:none;cursor:pointer;transition:all .15s;min-width:170px}.accounts-select-filter:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.accounts-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0f172a08;flex:1;min-height:0;display:flex;flex-direction:column}.accounts-table-wrapper{width:100%;flex:1;min-height:0;overflow-y:auto;overflow-x:auto}.accounts-table-wrapper::-webkit-scrollbar{width:6px;height:6px}.accounts-table-wrapper::-webkit-scrollbar-track{background:#f8fafc}.accounts-table-wrapper::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.accounts-table-wrapper::-webkit-scrollbar-thumb:hover{background:#94a3b8}.accounts-table{width:100%;border-collapse:collapse;text-align:left;font-size:.84rem}.accounts-table thead{background:#f8fafc;border-bottom:1px solid #e2e8f0}.accounts-table th{padding:12px 14px;font-size:.72rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:10;background:#f8fafc;box-shadow:inset 0 -1px #e2e8f0}.accounts-table th.text-end{text-align:right}.accounts-table td{padding:12px 14px;border-bottom:1px solid #f1f5f9;color:#334155;vertical-align:middle}.accounts-table tbody tr:hover{background:#f8fafc}.accounts-table tbody tr:last-child td{border-bottom:none}.account-type-badge{display:inline-flex;align-items:center;gap:5px;font-size:.73rem;font-weight:600;padding:3px 8px;border-radius:6px;white-space:nowrap}.account-type-badge.customer{background:#eff6ff;color:#1e40af;border:1px solid #bfdbfe}.account-type-badge.supplier{background:#faf5ff;color:#6b21a8;border:1px solid #e9d5ff}.account-type-badge.subcontractor{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.account-type-badge.other{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.account-currency-pill{font-size:.68rem;font-weight:700;padding:2px 6px;border-radius:4px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;margin-left:5px;font-family:var(--font-mono, monospace)}.account-code-cell{font-family:var(--font-mono, monospace);font-weight:700;font-size:.8rem;color:#0f2942;background:#f8fafc;padding:3px 7px;border-radius:5px;border:1px solid #e2e8f0;display:inline-block;white-space:nowrap}.account-name-cell{display:flex;flex-direction:column;gap:2px}.account-link{color:#0f172a;font-weight:700;text-decoration:none;transition:color .15s}.account-link:hover{color:#2563eb;text-decoration:underline}.account-meta-text{font-size:.72rem;color:#94a3b8}.balance-cell{text-align:right;font-family:var(--font-mono, monospace);font-weight:700;font-size:.875rem;white-space:nowrap}.balance-cell.danger{color:#dc2626}.balance-cell.success{color:#16a34a}.balance-cell.muted{color:#94a3b8}.balance-badge{font-size:.68rem;font-weight:700;padding:1px 5px;border-radius:4px;margin-left:5px;vertical-align:middle}.balance-badge.b{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.balance-badge.a{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.accounts-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.accounts-action-btn{width:30px;height:30px;border-radius:6px;border:1px solid transparent;background:transparent;color:#64748b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;text-decoration:none}.accounts-action-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#e2e8f0}.accounts-action-btn.detail:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.accounts-action-btn.print:hover{background:#f8fafc;color:#334155;border-color:#cbd5e1}.accounts-action-btn.clone:hover{background:#f0f9ff;color:#0284c7;border-color:#bae6fd}.accounts-action-btn.edit:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.accounts-action-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.accounts-empty-state{padding:3.5rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.accounts-empty-icon{width:56px;height:56px;border-radius:14px;background:#f1f5f9;color:#94a3b8;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.accounts-empty-title{font-size:1.1rem;font-weight:700;color:#0f172a;margin:0 0 6px}.accounts-empty-desc{font-size:.84rem;color:#64748b;margin:0 0 1.25rem;max-width:400px}.accounts-loading-state{padding:3.5rem 1.5rem;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.smtp-settings-container{padding:1.5rem;max-width:1200px;margin:0 auto}.smtp-header{display:flex;align-items:flex-start;gap:1.25rem;background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;padding:1.75rem;border-radius:12px;margin-bottom:1.75rem;box-shadow:0 4px 6px -1px #0000001a}.smtp-header-icon{background:#3b82f633;color:#60a5fa;padding:.75rem;border-radius:10px;display:flex;align-items:center;justify-content:center}.smtp-header h2{margin:0 0 .4rem;font-size:1.35rem;font-weight:700;color:#f8fafc}.smtp-header p{margin:0;font-size:.88rem;color:#94a3b8;line-height:1.5}.smtp-alert-banner{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.5rem;font-size:.92rem;font-weight:500}.smtp-alert-banner.success{background-color:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.smtp-alert-banner.error{background-color:#fef2f2;border:1px solid #fecaca;color:#991b1b}.smtp-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:1.75rem}@media (max-width: 900px){.smtp-grid{grid-template-columns:1fr}}.smtp-form-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.75rem;box-shadow:0 1px 3px #0000000d}.smtp-preset-section{background:linear-gradient(135deg,#f0fdf4,#ecfdf5);border:1px solid #a7f3d0;border-radius:10px;padding:1.15rem 1.25rem;margin-bottom:1.5rem}.smtp-preset-label{display:flex;align-items:center;gap:.5rem;font-size:.9rem;font-weight:700;color:#065f46;margin-bottom:.65rem}.smtp-preset-select{width:100%;height:42px;padding:.5rem .85rem;border:1.5px solid #059669;border-radius:8px;font-size:.92rem;font-weight:600;background-color:#fff;color:#064e3b;cursor:pointer;transition:all .2s ease}.smtp-preset-select:focus{outline:none;border-color:#047857;box-shadow:0 0 0 3px #10b98133}.smtp-preset-hint{display:flex;align-items:flex-start;gap:.5rem;margin-top:.75rem;padding:.6rem .85rem;background:#ffffffd9;border-radius:6px;font-size:.82rem;color:#047857;line-height:1.4;border-left:3px solid #10b981}.smtp-card-title{display:flex;align-items:center;gap:.5rem;font-size:1.02rem;font-weight:600;color:#1e293b;margin-bottom:1.25rem;padding-bottom:.6rem;border-bottom:1px solid #f1f5f9}.smtp-card-title.mt-4{margin-top:1.5rem}.smtp-fields-row{display:flex;gap:1rem;margin-bottom:1.2rem}@media (max-width: 600px){.smtp-fields-row{flex-direction:column;gap:1rem}}.smtp-field-group{display:flex;flex-direction:column;gap:.4rem}.smtp-field-group.flex-1{flex:1}.smtp-field-group.flex-2{flex:2}.smtp-field-group label{font-size:.84rem;font-weight:600;color:#475569}.smtp-field-group .req{color:#ef4444;margin-left:2px}.smtp-field-group input,.smtp-field-group select{height:40px;padding:.5rem .85rem;border:1px solid #cbd5e1;border-radius:7px;font-size:.9rem;background-color:#f8fafc;color:#0f172a;transition:all .2s ease}.smtp-field-group input:focus,.smtp-field-group select:focus{outline:none;border-color:#3b82f6;background-color:#fff;box-shadow:0 0 0 3px #3b82f626}.smtp-password-wrapper{position:relative;display:flex;align-items:center}.smtp-password-wrapper input{width:100%;padding-right:2.5rem}.smtp-pw-toggle{position:absolute;right:.75rem;background:none;border:none;color:#64748b;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}.smtp-pw-toggle:hover{color:#0f172a}.smtp-form-actions{margin-top:2rem;padding-top:1.25rem;border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end}.smtp-save-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.92rem;font-weight:600;cursor:pointer;transition:background .2s}.smtp-save-btn:hover:not(:disabled){background:#1d4ed8}.smtp-save-btn:disabled{opacity:.65;cursor:not-allowed}.smtp-sidebar{display:flex;flex-direction:column;gap:1.5rem}.smtp-test-card,.smtp-guide-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;box-shadow:0 1px 3px #0000000d}.smtp-test-desc{font-size:.85rem;color:#64748b;margin:0 0 1rem;line-height:1.45}.smtp-test-btn{width:100%;margin-top:1rem;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1rem;background:#f8fafc;color:#1e293b;border:1px solid #cbd5e1;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .2s}.smtp-test-btn:hover:not(:disabled){background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}.smtp-test-btn:disabled{opacity:.65;cursor:not-allowed}.smtp-test-result{margin-top:1rem;padding:.85rem 1rem;border-radius:8px;font-size:.84rem;display:flex;align-items:flex-start;gap:.6rem;line-height:1.45}.smtp-test-result.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.smtp-test-result.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.smtp-tips-list{margin:0;padding-left:1.2rem;font-size:.82rem;color:#475569;display:flex;flex-direction:column;gap:.85rem;line-height:1.5}.smtp-tips-list code{background:#f1f5f9;padding:2px 6px;border-radius:4px;color:#0f172a;font-family:monospace}:root{--spec-bg-card: rgba(255, 255, 255, .7);--spec-border-color: rgba(229, 231, 235, .8);--spec-shadow: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .03);--spec-shadow-hover: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -2px rgba(0, 0, 0, .04);--spec-bg-active: rgba(59, 130, 246, .05);--spec-border-active: #3b82f6;--spec-text-main: #1f2937;--spec-text-muted: #6b7280}.dark-mode,[data-theme=dark]{--spec-bg-card: rgba(31, 41, 55, .7);--spec-border-color: rgba(75, 85, 99, .5);--spec-shadow: 0 4px 6px -1px rgba(0, 0, 0, .2);--spec-shadow-hover: 0 10px 15px -3px rgba(0, 0, 0, .3);--spec-bg-active: rgba(59, 130, 246, .15);--spec-border-active: #60a5fa;--spec-text-main: #f3f4f6;--spec-text-muted: #9ca3af}.specifications-page{padding:1.5rem;height:calc(100vh - 40px);display:flex;flex-direction:column;gap:1.5rem;box-sizing:border-box;background-color:var(--bg-main, #f9fafb);overflow:hidden}.specifications-page .page-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.specifications-page .page-header h1{font-size:1.75rem;font-weight:800;color:var(--spec-text-main);margin:0;letter-spacing:-.025em}.specifications-page .page-header .subtitle{font-size:.875rem;color:var(--spec-text-muted);margin:.25rem 0 0}.specifications-page .page-content{display:flex;flex:1;gap:1.5rem;overflow:hidden;height:100%}.specifications-page .left-panel{flex:0 0 380px;display:flex;flex-direction:column;gap:1rem;overflow:hidden}.specifications-page .right-panel{flex:1;overflow-y:auto;background:var(--spec-bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--spec-border-color);border-radius:12px;box-shadow:var(--spec-shadow);display:flex;flex-direction:column}.filter-card{background:var(--spec-bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--spec-border-color);border-radius:12px;padding:1rem;box-shadow:var(--spec-shadow);display:flex;flex-direction:column;gap:.75rem}.search-box{display:flex;align-items:center;background:var(--bg-input, #ffffff);border:1px solid var(--spec-border-color);border-radius:8px;padding:.5rem .75rem;gap:.5rem;transition:border-color .2s,box-shadow .2s}.search-box:focus-within{border-color:var(--spec-border-active);box-shadow:0 0 0 3px #3b82f626}.search-box input{border:none;background:transparent;outline:none;width:100%;color:var(--spec-text-main);font-size:.875rem}.filter-row{display:flex;gap:.5rem}.filter-group{flex:1;display:flex;flex-direction:column;gap:.25rem}.filter-group label{font-size:.75rem;font-weight:600;color:var(--spec-text-muted)}.filter-group select{padding:.5rem;border:1px solid var(--spec-border-color);border-radius:8px;background-color:var(--bg-input, #ffffff);color:var(--spec-text-main);font-size:.825rem;outline:none;cursor:pointer}.specifications-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding-right:4px}.spec-item-card{background:var(--spec-bg-card);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--spec-border-color);border-radius:12px;padding:1rem;box-shadow:var(--spec-shadow);cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s,background-color .2s;display:flex;flex-direction:column;gap:.75rem}.spec-item-card:hover{transform:translateY(-2px);box-shadow:var(--spec-shadow-hover);border-color:var(--spec-border-active)}.spec-item-card.active{background-color:var(--spec-bg-active);border-color:var(--spec-border-active);box-shadow:0 0 0 1px var(--spec-border-active)}.spec-card-header{display:flex;justify-content:space-between;align-items:center}.type-badge{font-size:.75rem;font-weight:700;padding:.25rem .6rem;border-radius:9999px;text-transform:uppercase;letter-spacing:.025em}.status-dot{font-size:.75rem;font-weight:600;display:flex;align-items:center;gap:.35rem;color:var(--spec-text-muted)}.status-dot:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%}.status-dot.draft:before{background-color:#9ca3af}.status-dot.approved:before{background-color:#f59e0b}.status-dot.published:before{background-color:#10b981}.spec-card-title{font-size:.95rem;font-weight:700;color:var(--spec-text-main);margin:0;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.spec-card-footer{display:flex;justify-content:space-between;font-size:.75rem;color:var(--spec-text-muted)}.project-link{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:180px}.no-selection-card{display:flex;align-items:center;justify-content:center;height:100%;padding:3rem;text-align:center}.no-selection-content{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:320px}.no-selection-content .big-icon{font-size:4rem;animation:float 3s ease-in-out infinite}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.no-selection-content h3{font-size:1.25rem;font-weight:700;color:var(--spec-text-main);margin:0}.no-selection-content p{font-size:.875rem;color:var(--spec-text-muted);margin:0;line-height:1.5}.spec-view-card{display:flex;flex-direction:column;height:100%}.view-header{padding:1.5rem;border-bottom:1px solid var(--spec-border-color);display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;background:#ffffff4d}.spec-metadata{display:flex;flex-direction:column;gap:.5rem;flex:1}.metadata-badges{display:flex;align-items:center;gap:.5rem}.status-badge{font-size:.75rem;font-weight:700;padding:.2rem .5rem;border-radius:4px;color:#fff}.status-badge.draft{background-color:#6b7280}.status-badge.approved{background-color:#d97706}.status-badge.published{background-color:#059669}.spec-title{font-size:1.5rem;font-weight:800;color:var(--spec-text-main);margin:0;letter-spacing:-.02em}.metadata-row{display:flex;gap:1.5rem;font-size:.8rem;color:var(--spec-text-muted)}.view-actions{display:flex;gap:.5rem}.action-btn-icon{padding:.5rem .8rem;font-size:.875rem;font-weight:600;border-radius:8px;cursor:pointer;display:flex;align-items:center;gap:.25rem;transition:background-color .2s,transform .1s}.action-btn-icon:active{transform:scale(.97)}.spec-body-content{padding:2rem;flex:1;overflow-y:auto;background-color:#fff;color:#1f2937;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}.clause-view-row{display:flex;gap:12px;margin-bottom:1rem;align-items:flex-start;padding:6px 10px;border-radius:6px;transition:background-color .15s}.clause-view-row:hover{background-color:#f3f4f699}.clause-view-row.level-0{background-color:#3b82f60a;border-left:3px solid #3b82f6;margin-top:1.25rem;padding:10px 14px}.clause-view-row.level-0 .clause-num-view{color:#1d4ed8;font-size:1.05rem;font-weight:800}.clause-view-row.level-0 .clause-text-view{font-weight:700;font-size:1.05rem;color:#111827}.clause-view-row.level-1{border-left:2px solid rgba(156,163,175,.4)}.clause-num-view{font-weight:700;min-width:70px;color:#374151;font-size:.925rem;white-space:nowrap}.clause-text-view{margin:0;font-size:.925rem;line-height:1.6;color:#1f2937;flex:1;white-space:pre-line}.form-card{padding:1.5rem;display:flex;flex-direction:column;gap:1.25rem}.form-card .card-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--spec-border-color);padding-bottom:.75rem}.form-card .card-header h2{font-size:1.25rem;font-weight:800;margin:0;color:var(--spec-text-main)}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--spec-text-muted)}.clause-edit-row{display:flex;gap:8px;align-items:flex-start;background:var(--bg-card, #ffffff);border:1px solid var(--spec-border-color);border-radius:8px;padding:10px 12px;box-shadow:0 1px 3px #0000000a;transition:all .2s ease;position:relative}.clause-edit-row:focus-within{border-color:var(--spec-border-active);box-shadow:0 0 0 2px #3b82f626}.clause-level-indicator{display:flex;align-items:center;align-self:stretch;padding-right:4px}.clause-level-line{width:3px;height:100%;border-radius:2px;background-color:var(--spec-border-active);opacity:.6}.clause-number-badge{font-weight:700;font-size:.875rem;color:var(--spec-text-main);background:#3b82f614;border:1px solid rgba(59,130,246,.2);padding:4px 8px;border-radius:6px;white-space:nowrap;margin-top:4px}.clause-level-0 .clause-number-badge{background:#3b82f626;border-color:#3b82f6;color:#1d4ed8;font-weight:800}.clause-textarea,.clause-editable-div{flex:1;min-height:60px;max-height:180px;overflow-y:auto;padding:8px 12px;border-radius:6px;border:1px solid var(--spec-border-color);font-family:inherit;font-size:.925rem;line-height:1.5;color:var(--spec-text-main);background-color:var(--bg-input, #ffffff);outline:none;box-sizing:border-box}.clause-editable-div:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.clause-editable-div[data-placeholder]:empty:before{content:attr(data-placeholder);color:#94a3b8;font-style:italic}.clause-actions-toolbar{display:flex;flex-direction:column;gap:3px;align-items:center}.clause-actions-row{display:flex;gap:3px}.clause-tool-btn{padding:4px 7px;font-size:.75rem;border-radius:5px;border:1px solid var(--spec-border-color);background:#fff;color:var(--spec-text-main);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .15s ease}.clause-tool-btn:hover:not(:disabled){background:#f3f4f6;border-color:#9ca3af}.clause-tool-btn:disabled{opacity:.35;cursor:not-allowed}.clause-sub-add-btn{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8;font-weight:600;font-size:.725rem;padding:3px 6px}.clause-sub-add-btn:hover{background:#dbeafe!important}.clause-delete-btn{background:#fef2f2;border-color:#fecaca;color:#dc2626}.clause-delete-btn:hover{background:#fee2e2!important}.fmt-actions-row{margin-bottom:2px;background:#f8fafc;padding:2px;border-radius:6px;border:1px solid #e2e8f0}.fmt-btn{font-family:inherit;padding:2px 6px!important;font-size:.775rem!important;border:1px solid #cbd5e1!important}.fmt-btn:hover{background:#e2e8f0!important;border-color:#94a3b8!important}.signatories-editor-panel{background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:1rem 1.5rem;display:flex;flex-direction:column;gap:.75rem}.sig-panel-title-bar{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;font-weight:800;color:#0f172a;padding-bottom:.5rem;border-bottom:1px solid #cbd5e1}.sig-panel-reset-btn{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;padding:4px 8px;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer}.sig-panel-reset-btn:hover{background:#dbeafe}.sig-panel-close-btn{background:#f1f5f9;border:1px solid #cbd5e1;color:#475569;padding:4px 8px;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer}.sig-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem}.sig-panel-col{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.85rem 1rem;display:flex;flex-direction:column;gap:.6rem}.sig-col-header{font-size:.8rem;font-weight:800;color:#1e293b;border-bottom:1px solid #f1f5f9;padding-bottom:4px}.sig-form-group{display:flex;flex-direction:column;gap:2px}.sig-form-group label{font-size:.725rem;font-weight:700;color:#64748b}.sig-form-group input{padding:6px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:.825rem;color:#0f172a;outline:none}.sig-form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.print-header-only,.print-signatures-section,.print-footer-only{display:none!important}@media print{@page{size:A4 portrait;margin:10mm 12mm 14mm;@bottom-right{content:"Sayfa " counter(page) " / " counter(pages);font-size:8.5pt;font-weight:800;font-family:inherit;color:#0f172a}@bottom-left{content:"Costtree Maliyet Yönetim Sistemi";font-size:8pt;font-family:inherit;color:#64748b}}.no-print,.sidebar,.navbar,.topbar,.header,.spec-list-card,.clauses-editor-section,.print-footer-only,nav,aside,header{display:none!important}html,body,#root,div,main,section,article{height:auto!important;min-height:auto!important;max-height:none!important;overflow:visible!important;position:static!important;float:none!important}body{margin:0!important;padding:0!important;background:#fff!important;color:#0f172a!important}.spec-view-card{position:static!important;display:block!important;width:100%!important;height:auto!important;min-height:auto!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;box-shadow:none!important;border:none!important;background:#fff!important;color:#0f172a!important}.print-header-only{display:block!important;margin-bottom:1.1rem!important;width:100%!important}.print-header-table{border:1.5px solid #0f172a!important;border-radius:4px!important;margin-bottom:.85rem!important;background-color:#fff!important;width:100%!important;overflow:hidden!important}.print-header-logo-row{display:flex!important;justify-content:space-between!important;align-items:center!important;padding:10px 14px!important;border-bottom:1.5px solid #0f172a!important;background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.print-company-info{display:flex!important;flex-direction:column!important}.print-company-logo{max-height:75px!important;max-width:300px!important;object-fit:contain!important;display:block!important}.print-header-company-name{font-size:1.2rem!important;font-weight:900!important;letter-spacing:.02em!important;color:#0f172a!important}.print-header-company-title{font-size:.775rem!important;font-weight:800!important;color:#0f172a!important;margin-top:1px!important}.print-header-address{font-size:.65rem!important;color:#475569!important;margin-top:1px!important}.print-doc-meta{font-size:.7rem!important;color:#334155!important;text-align:right!important;line-height:1.35!important}.print-header-meta-grid{display:grid!important;grid-template-columns:1fr 1fr!important;width:100%!important;background:#fff!important}.print-meta-item{padding:6px 10px!important;font-size:.8rem!important;display:flex!important;flex-direction:column!important;gap:2px!important;box-sizing:border-box!important}.print-meta-item:nth-child(1),.print-meta-item:nth-child(2){border-bottom:1px solid #0f172a!important}.print-meta-item:nth-child(odd){border-right:1px solid #0f172a!important}.print-meta-label{font-size:.65rem!important;font-weight:800!important;color:#64748b!important;letter-spacing:.03em!important}.print-meta-value{font-size:.825rem!important;font-weight:800!important;color:#0f172a!important}.print-title-container{text-align:center!important;margin-top:.85rem!important;margin-bottom:1.1rem!important}.print-document-title{font-size:1.2rem!important;font-weight:900!important;color:#0f172a!important;margin:0 0 5px!important;letter-spacing:.01em!important;line-height:1.3!important;padding:0 1rem!important}.print-title-underline{width:80px!important;height:3px!important;background-color:#0f172a!important;margin:0 auto!important;border-radius:2px!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.spec-body-content{border:none!important;padding:0!important;margin:0!important;background:transparent!important;color:#0f172a!important;display:block!important}.spec-view-clauses{width:100%!important}.clause-view-row{margin-bottom:.65rem!important;break-inside:avoid!important;page-break-inside:avoid!important;display:flex!important;gap:8px!important;align-items:flex-start!important;padding:0!important;background:transparent!important;border:none!important}.clause-view-row.level-0{margin-top:.85rem!important;margin-bottom:.5rem!important;padding:5px 8px!important;background-color:#f1f5f9!important;border-left:4px solid #0f172a!important;border-radius:4px!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;break-after:avoid!important;page-break-after:avoid!important}.clause-view-row.level-0 .clause-num-view{color:#0f172a!important;font-size:.95rem!important;font-weight:900!important}.clause-view-row.level-0 .clause-text-view{color:#0f172a!important;font-size:.95rem!important;font-weight:800!important}.clause-num-view{font-size:.875rem!important;font-weight:800!important;color:#0f172a!important;min-width:65px!important;display:inline-block!important}.clause-text-view{font-size:.875rem!important;line-height:1.5!important;color:#1e293b!important;margin:0!important;flex:1!important}.print-layout-table{width:100%!important;border-collapse:collapse!important;border:none!important;table-layout:fixed!important}.print-layout-table>thead{display:table-header-group!important}.print-layout-table>tfoot{display:table-footer-group!important}.print-layout-table>tbody{display:table-row-group!important}.print-layout-table td{border:none!important;padding:0!important}.print-signatures-section{display:block!important;position:static!important;width:100%!important;box-sizing:border-box!important;background-color:#fff!important;border-top:1.5px solid #0f172a!important;padding-top:6px!important;margin-top:12px!important;margin-bottom:0!important;break-inside:avoid!important;page-break-inside:avoid!important}.print-signatures-title{font-size:.775rem!important;font-weight:800!important;color:#0f172a!important;text-align:center!important;letter-spacing:.05em!important;margin-bottom:.75rem!important}.print-signatures-grid{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1rem!important;width:100%!important}.signature-box{border:1px solid #0f172a!important;border-radius:5px!important;padding:8px 12px!important;display:flex!important;flex-direction:column!important;gap:4px!important;background-color:#fff!important;box-sizing:border-box!important;height:142px!important;position:relative!important;overflow:visible!important;break-inside:avoid!important;page-break-inside:avoid!important}.sig-role{font-size:.775rem!important;font-weight:900!important;color:#0f172a!important;border-bottom:1px solid #cbd5e1!important;padding-bottom:3px!important;margin-bottom:3px!important;text-transform:uppercase!important;letter-spacing:.025em!important}.sig-field{font-size:.725rem!important;color:#334155!important;line-height:1.4!important}.sig-label{font-weight:700!important;color:#0f172a!important;display:inline-block!important;width:100px!important}.sig-stamp-area{margin-top:.4rem!important;height:52px!important;border:1px dashed #94a3b8!important;border-radius:4px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:.675rem!important;font-weight:700!important;color:#64748b!important;text-transform:uppercase!important;letter-spacing:.04em!important;position:relative!important;overflow:visible!important;padding:2px!important;box-sizing:border-box!important;z-index:5!important}.print-stamp-img{position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;max-width:none!important;max-height:none!important;object-fit:contain!important;z-index:10!important;mix-blend-mode:multiply!important;pointer-events:none!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.print-footer-only{display:flex!important;justify-content:space-between!important;align-items:center!important;font-size:.725rem!important;color:#64748b!important;border-top:1px dashed #cbd5e1!important;padding-top:4px!important;margin-top:6px!important;background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.print-footer-page-counter{display:inline-block!important;font-weight:800!important;color:#0f172a!important}.print-footer-page-counter .current-page:after{counter-increment:page;content:counter(page)}}.a4-header-block{display:block!important;width:100%!important;margin-bottom:1rem!important}.a4-signatures-section{display:block!important;visibility:visible!important;opacity:1!important;width:100%!important;margin-top:auto!important;padding-top:12px!important;border-top:1.5px solid #0f172a!important;background-color:#fff!important}.pdf-preview-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172ae0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:99999;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:20px;box-sizing:border-box;overflow-y:auto}.pdf-preview-header-bar{width:100%;max-width:820px;display:flex;justify-content:space-between;align-items:center;background:#1e293b;border:1px solid #334155;padding:14px 24px;border-radius:14px;color:#fff;margin-bottom:24px;box-shadow:0 12px 30px -5px #00000080;position:sticky;top:0;z-index:100}.pdf-preview-title{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.15rem;letter-spacing:.01em}.pdf-preview-actions{display:flex;gap:12px;align-items:center}.pdf-download-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;padding:9px 20px;border-radius:8px;font-weight:800;font-size:.925rem;cursor:pointer;display:flex;align-items:center;gap:8px;box-shadow:0 4px 14px #10b98159;transition:transform .15s ease,box-shadow .15s ease}.pdf-download-btn:hover{transform:translateY(-1px);box-shadow:0 6px 18px #10b98173}.pdf-close-btn{background:#334155;color:#cbd5e1;border:none;padding:9px 16px;border-radius:8px;font-weight:700;font-size:.9rem;cursor:pointer;transition:background .15s ease,color .15s ease}.pdf-close-btn:hover{background:#475569;color:#fff}.a4-preview-container{display:flex;flex-direction:column;gap:32px;align-items:center;padding-bottom:50px}.a4-preview-page{width:794px;min-height:1123px;height:1123px;background:#fff;color:#0f172a;box-shadow:0 25px 50px -12px #0009;border-radius:4px;padding:38px 45px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.a4-page-content-wrapper{flex:1;display:flex;flex-direction:column}.a4-page-footer{margin-top:auto;border-top:1px dashed #cbd5e1;padding-top:8px;display:flex;justify-content:space-between;align-items:center;font-size:.775rem;color:#64748b;font-weight:600}.cash-management-page{padding:2rem;margin:0 auto}.cash-management-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.cash-management-page h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.filter-bar{display:flex;gap:.75rem;flex-wrap:wrap}.view-toggle{display:flex;gap:.25rem;background:var(--bg-secondary);padding:.25rem;border-radius:var(--radius-md);border:1px solid var(--border-color)}.view-btn{background:transparent;border:none;padding:.5rem .75rem;border-radius:var(--radius-sm);cursor:pointer;font-size:1.25rem;line-height:1;color:var(--text-secondary);transition:all .2s;display:flex;align-items:center;justify-content:center}.view-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.view-btn.active{background:#fff;color:var(--primary);box-shadow:var(--shadow-sm)}.accounts-list-view{background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;border:1px solid var(--border-color)}.data-table{width:100%;border-collapse:collapse}.data-table th{background:var(--bg-secondary);color:var(--text-secondary);font-weight:600;text-align:left;padding:1rem 1.25rem;font-size:.85rem;border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.05em}.data-table td{padding:1rem 1.25rem;border-bottom:1px solid var(--border-color);font-size:.95rem;color:var(--text-primary);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tr:hover td{background:var(--bg-tertiary)}.text-success{color:#10b981}.text-danger{color:#ef4444}.badge{display:inline-flex;align-items:center;padding:.25rem .6rem;border-radius:999px;font-size:.75rem;font-weight:500}.badge-secondary{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-color)}.btn-ghost{background:transparent;border:none;cursor:pointer;padding:.4rem;border-radius:var(--radius-sm);transition:background .2s;font-size:1.1rem}.btn-ghost:hover{background:var(--bg-secondary)}.accounts-grid{display:flex;flex-direction:column;gap:2rem}.account-type-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm)}.section-title{font-size:1.25rem;font-weight:600;margin:0 0 1rem;color:var(--text-primary)}.accounts-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.account-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1.25rem;text-decoration:none;color:inherit;transition:all .2s;display:flex;flex-direction:column;gap:1rem}.account-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px);border-color:var(--primary)}.account-header{display:flex;align-items:flex-start;gap:1rem}.account-icon{font-size:2rem;flex-shrink:0}.account-info{flex:1}.account-info h3{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:var(--text-primary)}.account-code{font-size:.85rem;color:var(--text-secondary);font-family:monospace}.delete-btn{background:none;border:none;padding:.25rem .5rem;cursor:pointer;font-size:1rem;opacity:.6;transition:all .2s;flex-shrink:0}.delete-btn:hover{opacity:1;color:#ef4444}.account-details{display:flex;flex-direction:column;gap:.5rem;font-size:.9rem}.detail-item{display:flex;gap:.5rem}.detail-item .label{color:var(--text-secondary);font-weight:500}.account-balance{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid var(--border-color)}.balance-label{font-weight:500;color:var(--text-secondary)}.balance-amount{font-size:1.25rem;font-weight:700}.balance-amount.positive{color:#10b981}.balance-amount.negative{color:#ef4444}.loan-modal{border-radius:8px;overflow:hidden;box-shadow:0 4px 20px #00000026}.loan-modal-header{background-color:#6fd8b3;color:#fff;padding:10px 15px;display:flex;justify-content:space-between;align-items:center}.loan-modal-header h3{margin:0;font-size:1.15rem;font-weight:500}.loan-modal-close{background:none;border:none;color:#fff;font-size:24px;cursor:pointer;line-height:1;padding:0}.loan-form-row{display:flex;align-items:center;margin-bottom:12px}.loan-form-row label{width:200px;text-align:right;margin-right:20px;font-weight:600;color:#555;flex-shrink:0}.loan-form-row .form-control,.loan-form-row .form-select{flex:1}.loan-modal .btn-warning{background-color:#f0ad4e!important;border-color:#eea236!important;color:#fff}.loan-modal .btn-success{background-color:#5cb85c!important;border-color:#4cae4c!important;color:#fff}.cash-account-detail-page{padding:2rem;max-width:1400px;margin:0 auto}.cash-account-detail-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.cash-account-detail-page .header-left{display:flex;align-items:center;gap:1rem}.cash-account-detail-page .back-btn{background:var(--bg-secondary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.cash-account-detail-page .back-btn:hover{background:var(--bg-tertiary)}.cash-account-detail-page h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0}.account-code{font-size:.9rem;color:var(--text-secondary);font-family:monospace}.account-info-card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:2rem;box-shadow:var(--shadow-sm)}.info-row{display:flex;gap:2rem;flex-wrap:wrap;margin-bottom:1rem}.info-row:last-child{margin-bottom:0}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-item .label{font-size:.85rem;color:var(--text-secondary);font-weight:500}.info-item .balance,.info-item .amount{font-size:1.5rem;font-weight:700}.info-item .balance.positive,.info-item .amount.positive{color:#10b981}.info-item .balance.negative,.info-item .amount.negative{color:#ef4444}.info-item .balance.blue,.info-item .amount.blue{color:#3b82f6}.transactions-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-sm)}.transactions-section h2{font-size:1.25rem;font-weight:600;margin:0 0 1rem;color:var(--text-primary)}.transactions-table{width:100%;border-collapse:collapse}.transactions-table th{background:var(--bg-secondary);padding:1rem;text-align:left;font-weight:600;font-size:.85rem;color:var(--text-secondary)}.transactions-table td{padding:1rem;border-bottom:1px solid var(--border-color)}.transactions-table tbody tr:hover{background:var(--bg-secondary)}.transactions-table .badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600}.transactions-table .badge.income{background:#10b98120;color:#10b981}.transactions-table .badge.expense{background:#ef444420;color:#ef4444}.transactions-table .badge.transfer{background:#3b82f620;color:#3b82f6}.transactions-table .amount{font-weight:600}.transactions-table .amount.positive{color:#10b981}.transactions-table .amount.negative{color:#ef4444}.transactions-table .actions{display:flex;gap:.5rem;justify-content:flex-end}.action-btn.delete:hover{background:#ef444420;color:#ef4444}.cash-account-detail-page .modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#111827d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem 1rem}.cash-account-detail-page .modal{background:var(--bg-card);border-radius:var(--radius-lg);border:2px solid var(--border-color);max-width:600px;width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a;overflow:hidden}.cash-account-detail-page .modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);flex-shrink:0}.cash-account-detail-page .modal-header h2{margin:0;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.cash-account-detail-page .modal-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;font-size:1.5rem;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-sm);transition:all .2s}.cash-account-detail-page .modal-close:hover{background:var(--bg-secondary);color:var(--text-primary)}.cash-account-detail-page .modal-body{padding:1.5rem;overflow-y:auto;flex:1;min-height:0;max-height:calc(90vh - 200px)}.cash-account-detail-page .modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid var(--border-color);flex-shrink:0;background:var(--bg-card)}.cash-account-detail-page .primary-btn,.cash-account-detail-page .secondary-btn{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.cash-account-detail-page .primary-btn{background:var(--primary);color:#fff}.cash-account-detail-page .primary-btn:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-1px)}.cash-account-detail-page .primary-btn:disabled{opacity:.6;cursor:not-allowed}.cash-account-detail-page .secondary-btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.cash-account-detail-page .secondary-btn:hover{background:var(--bg-tertiary)}.transactions-table .badge.paid{background:#10b98120;color:#10b981}.transactions-table .badge.overdue{background:#ef444420;color:#ef4444;border:1px solid #ef444450}.transactions-table .badge.due-today{background:#f59e0b20;color:#f59e0b;border:1px solid #f59e0b50}.transactions-table .badge.pending{background:#6b728020;color:#6b7280}.row-paid{background-color:#f9fafb}.sm-btn{padding:.4rem .8rem!important;font-size:.8rem!important}.opacity-75{opacity:.75}.fw-bold{font-weight:700}.section-header h2{color:var(--primary)!important}.invoices-page{width:100%;max-width:100%;margin:0;padding:0 0 2rem;box-sizing:border-box;font-family:var(--font-sans, "Plus Jakarta Sans", "Inter", system-ui, sans-serif);color:#0f172a}.invoices-breadcrumb{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:#64748b;margin-bottom:.5rem}.invoices-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.invoices-breadcrumb a:hover,.invoices-breadcrumb .active{color:#0f172a}.invoices-header-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.55rem 1rem;margin-bottom:.65rem;box-shadow:0 1px 2px #0f172a0a;flex-wrap:wrap}.invoices-header-left{display:flex;align-items:center;gap:10px}.invoices-header-icon{width:32px;height:32px;border-radius:8px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.invoices-header-text{display:flex;flex-direction:column}.invoices-header-title{font-size:1.12rem;font-weight:800;color:#0f172a;letter-spacing:-.01em;margin:0;display:flex;align-items:center;gap:8px;line-height:1.2}.invoices-header-badge{font-size:.68rem;font-weight:700;background:#f1f5f9;color:#475569;padding:2px 7px;border-radius:12px;border:1px solid #e2e8f0}.invoices-header-subtitle{font-size:.74rem;color:#64748b;margin:1px 0 0}.invoices-header-actions{display:flex;align-items:center;gap:10px}.invoices-btn-primary{display:inline-flex;align-items:center;gap:6px;background:#0f2942;color:#fff;font-size:.78rem;font-weight:600;padding:6px 13px;border-radius:6px;border:none;cursor:pointer;box-shadow:0 1px 2px #0f294226;transition:all .15s ease;text-decoration:none}.invoices-btn-primary:hover{background:#0b1f32;transform:translateY(-1px);box-shadow:0 2px 6px #0f294233}.invoices-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.65rem;margin-bottom:.65rem}@media (max-width: 1100px){.invoices-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.invoices-stats-grid{grid-template-columns:1fr}}.invoices-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:.5rem .85rem;display:flex;align-items:center;gap:10px;box-shadow:0 1px 2px #0f172a05;transition:all .15s ease}.invoices-stat-card:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #0f172a0d}.invoices-stat-card.neutral{border-left:3.5px solid #0f2942}.invoices-stat-card.info{border-left:3.5px solid #2563eb}.invoices-stat-card.success{border-left:3.5px solid #10b981}.invoices-stat-card.warning{border-left:3.5px solid #f59e0b}.invoices-stat-icon-wrapper{width:30px;height:30px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.invoices-stat-icon-wrapper.navy{background:#f1f5f9;color:#0f2942;border:1px solid #e2e8f0}.invoices-stat-icon-wrapper.blue{background:#eff6ff;color:#2563eb;border:1px solid #dbeafe}.invoices-stat-icon-wrapper.green{background:#f0fdf4;color:#16a34a;border:1px solid #dcfce7}.invoices-stat-icon-wrapper.amber{background:#fffbeb;color:#d97706;border:1px solid #fef3c7}.invoices-stat-content{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px}.invoices-stat-label-row{display:flex;align-items:center;justify-content:space-between;gap:6px}.invoices-stat-label{font-size:.67rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invoices-stat-pill{font-size:.62rem;font-weight:700;padding:1px 5px;border-radius:4px;background:#f1f5f9;color:#475569;white-space:nowrap;border:1px solid #e2e8f0}.invoices-stat-pill.navy{background:#f1f5f9;color:#0f2942}.invoices-stat-pill.blue{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.invoices-stat-pill.green{background:#f0fdf4;color:#16a34a;border-color:#bbf7d0}.invoices-stat-pill.amber{background:#fffbeb;color:#d97706;border-color:#fde68a}.invoices-stat-value{font-size:1.08rem;font-weight:800;color:#0f172a;letter-spacing:-.01em;line-height:1.15;font-family:var(--font-mono, monospace);white-space:nowrap}.invoices-stat-value.navy{color:#0f2942}.invoices-stat-value.blue{color:#2563eb}.invoices-stat-value.green{color:#16a34a}.invoices-stat-value.amber{color:#d97706}.invoices-stat-unit{font-size:.72rem;font-weight:600;color:#64748b;margin-left:2px}.invoices-filter-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.55rem .85rem;margin-bottom:.65rem;display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;box-shadow:0 1px 2px #0f172a05}.invoices-search-wrapper{flex:1;min-width:260px;position:relative;display:flex;align-items:center}.invoices-search-input{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:7px 12px 7px 34px;font-size:.82rem;color:#0f172a;background:#fff;outline:none;transition:all .15s ease;box-sizing:border-box}.invoices-search-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.invoices-search-icon{position:absolute;left:10px;color:#94a3b8;pointer-events:none}.invoices-search-clear{position:absolute;right:8px;background:none;border:none;color:#94a3b8;cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;justify-content:center}.invoices-search-clear:hover{color:#0f172a}.invoices-status-tabs{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.invoices-status-label{font-size:.72rem;font-weight:700;color:#64748b;text-transform:uppercase;margin-right:2px}.invoices-status-tab{padding:4px 10px;border-radius:99px;font-size:.75rem;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .15s ease}.invoices-status-tab:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.invoices-status-tab.active{background:#0f2942;color:#fff;border-color:#0f2942}.invoices-status-tab.active.unpaid{background:#dc2626;color:#fff;border-color:#dc2626}.invoices-status-tab.active.partial{background:#ea580c;color:#fff;border-color:#ea580c}.invoices-status-tab.active.paid{background:#16a34a;color:#fff;border-color:#16a34a}.invoices-table-card{background:#fff;border:1px solid var(--border-color, #e2e8f0);border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #0000000a}.invoices-main-table{width:100%;border-collapse:collapse;text-align:left}.invoices-main-table th{background:#f8fafc;padding:.85rem 1rem;font-size:.78rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e2e8f0}.invoices-main-table td{padding:.9rem 1rem;border-bottom:1px solid #f1f5f9;font-size:.88rem;color:#1e293b;vertical-align:middle}.invoices-main-table tr.invoice-row:hover{background:#f8fafc}.invoice-code-badge{font-family:monospace;font-weight:700;color:#2563eb;background:#eff6ff;padding:.25rem .5rem;border-radius:6px;font-size:.84rem;border:1px solid #dbeafe}.text-overdue{color:#dc2626;font-weight:600}.partner-name-cell{display:flex;align-items:center;gap:.4rem}.partner-name{font-weight:600;color:#1e293b}.project-cell-badge{display:inline-block;background:#f1f5f9;padding:.2rem .55rem;border-radius:6px;font-size:.8rem;color:#475569;font-weight:500}.amount-cell{font-family:monospace;font-weight:700;text-align:right;font-size:.92rem}.amount-cell.grand-total{color:#0f172a}.amount-cell.paid-amount{color:#10b981}.amount-cell.remaining-amount{color:#f59e0b}.inv-badge{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .65rem;border-radius:999px;font-size:.76rem;font-weight:600}.inv-badge.paid{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.inv-badge.partial{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.inv-badge.unpaid{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.inv-badge.cancelled{background:#f1f5f9;color:#64748b;border:1px solid #cbd5e1}.action-buttons-cell{display:flex;align-items:center;justify-content:center;gap:.35rem}.tbl-action-btn{background:none;border:1px solid #e2e8f0;border-radius:6px;padding:.35rem;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.tbl-action-btn:hover{background:#f1f5f9;color:#1e293b}.tbl-action-btn.view:hover{color:#2563eb;border-color:#bfdbfe;background:#eff6ff}.tbl-action-btn.delete:hover{color:#dc2626;border-color:#fecaca;background:#fef2f2}.empty-invoices-state{padding:4rem 2rem;text-align:center;color:#64748b}.empty-icon-box{width:80px;height:80px;background:#f8fafc;color:#94a3b8;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;margin-bottom:1rem}.empty-invoices-state h3{font-size:1.25rem;font-weight:700;color:#1e293b;margin-bottom:.4rem}.empty-invoices-state p{font-size:.9rem;margin-bottom:1.5rem;max-width:440px;margin-left:auto;margin-right:auto}.invoices-page .modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1200;display:flex;align-items:center;justify-content:center;padding:1.5rem}.invoice-modal{background:#fff;border-radius:14px;width:95vw;max-width:1350px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003;overflow:hidden}.invoice-detail-modal{background:#fff;border-radius:14px;width:90vw;max-width:950px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 40px #0003;overflow:hidden}.modal-header{padding:1.25rem 1.75rem;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.modal-header h2{font-size:1.25rem;font-weight:700;color:#1e293b;margin:0}.modal-subtitle-code{font-size:.9rem;color:#64748b;font-family:monospace;margin-left:.5rem}.modal-close{background:none;border:none;color:#94a3b8;cursor:pointer;padding:.35rem;display:flex;align-items:center;border-radius:6px;transition:all .15s}.modal-close:hover{background:#e2e8f0;color:#1e293b}.invoice-form-wrapper{display:flex;flex-direction:column;overflow:hidden;height:100%}.modal-body{padding:1.5rem 1.75rem;overflow-y:auto;flex:1}.modal-footer{padding:1rem 1.75rem;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;justify-content:flex-end;gap:.75rem}.invoice-type-selector{background:#f8fafc;padding:1rem;border-radius:10px;border:1px solid #e2e8f0}.type-label{display:block;font-size:.82rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.4px;margin-bottom:.65rem}.type-options{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}.type-option{display:flex;align-items:center;gap:.65rem;background:#fff;border:2px solid #e2e8f0;border-radius:8px;padding:.65rem 1rem;cursor:pointer;transition:all .15s}.type-option.selected{border-color:#2563eb;background:#eff6ff}.type-option input{display:none}.type-text{font-weight:600;font-size:.9rem;color:#1e293b}.type-desc{font-size:.75rem;color:#64748b;margin-left:auto}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group label{font-size:.82rem;font-weight:600;color:#475569}.form-group input,.form-group textarea{padding:.55rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.88rem;outline:none}.form-group input:focus,.form-group textarea:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb26}.invoice-items-section{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.invoice-items-section .section-header{padding:.75rem 1rem;background:#f8fafc;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0}.invoice-items-section .section-header h3{font-size:.92rem;font-weight:700;color:#1e293b;margin:0}.add-item-btn{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;padding:.35rem .75rem;border-radius:6px;font-size:.82rem;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:.35rem}.add-item-btn:hover{background:#dbeafe}.items-table{width:100%;border-collapse:collapse}.items-table th{background:#f1f5f9;padding:.65rem .5rem;font-size:.75rem;font-weight:700;color:#475569;text-transform:uppercase}.items-table td{padding:.5rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.items-table input{width:100%;padding:.4rem .5rem;border:1px solid #cbd5e1;border-radius:4px;font-size:.85rem}.remove-item-btn{background:none;border:none;color:#ef4444;cursor:pointer;padding:.25rem;font-size:1rem}.detail-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem 1.5rem;background:#f8fafc;padding:1.25rem;border-radius:10px;border:1px solid #e2e8f0}.detail-meta-item{display:flex;align-items:baseline;gap:.5rem;font-size:.88rem}.detail-meta-item.full-width{grid-column:1 / -1}.detail-meta-item .label{font-weight:600;color:#64748b;min-width:130px}.detail-meta-item .value{color:#0f172a}.detail-items-table{width:100%;border-collapse:collapse;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}.detail-items-table th{background:#f8fafc;padding:.75rem .85rem;font-size:.78rem;font-weight:700;color:#475569;border-bottom:2px solid #e2e8f0}.detail-items-table td{padding:.75rem .85rem;border-bottom:1px solid #f1f5f9;font-size:.86rem}.item-poz-badge{font-size:.75rem;color:#0284c7;background:#f0f9ff;display:inline-block;padding:.15rem .4rem;border-radius:4px;margin-top:.2rem}.detail-summary-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:1.25rem;max-width:360px;margin-left:auto;display:flex;flex-direction:column;gap:.5rem}.summary-row{display:flex;justify-content:space-between;font-size:.86rem;color:#64748b}.summary-row .summary-val{font-family:monospace;font-weight:600;color:#1e293b}.summary-row.grand{border-top:1px dashed #cbd5e1;padding-top:.5rem;font-size:.95rem;font-weight:700;color:#0f172a}.summary-row.grand .summary-val{color:#2563eb;font-size:1.05rem}.summary-row.paid .summary-val{color:#10b981}.summary-row.remaining .summary-val{color:#f59e0b}.error-message{background:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:.65rem 1rem;border-radius:6px;font-size:.85rem}@media (max-width: 1024px){.invoice-stats-grid{grid-template-columns:repeat(2,1fr)}.form-grid{grid-template-columns:1fr 1fr}}@media (max-width: 768px){.invoice-tabs-wrapper,.invoice-stats-grid,.form-grid{grid-template-columns:1fr}.filter-card{flex-direction:column;align-items:stretch}}.invoices-subtabs-bar{display:flex;align-items:center;gap:8px;background:#f1f5f9;padding:4px;border-radius:8px;margin-bottom:.65rem;border:1px solid #e2e8f0;width:fit-content}.subtab-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border-radius:6px;border:none;background:transparent;font-size:.78rem;font-weight:600;color:#64748b;cursor:pointer;transition:all .15s ease}.subtab-btn:hover{color:#0f172a;background:#ffffff80}.subtab-btn.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0f172a14;font-weight:700}.subtab-badge{font-size:.65rem;font-weight:700;padding:1px 6px;border-radius:10px;background:#e2e8f0;color:#475569}.subtab-btn.active .subtab-badge{background:#2563eb;color:#fff}.subtab-badge.pending-glow{background:#f59e0b;color:#fff;animation:pulse-glow 2s infinite}@keyframes pulse-glow{0%{box-shadow:0 0 #f59e0bb3}70%{box-shadow:0 0 0 6px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}.triage-security-banner{display:flex;align-items:center;gap:10px;padding:.65rem 1rem;border-radius:8px;background:#f8fafc;border:1px solid #cbd5e1;margin-bottom:.65rem;font-size:.76rem;color:#334155}.triage-security-banner strong{color:#0f172a}.profile-badge{display:inline-flex;align-items:center;gap:4px;font-size:.66rem;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase}.profile-badge.commercial{background:#f3e8ff;color:#7e22ce;border:1px solid #e9d5ff}.profile-badge.basic{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.countdown-badge{display:inline-flex;align-items:center;gap:4px;font-size:.68rem;font-weight:700;padding:2px 7px;border-radius:12px}.countdown-badge.safe{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.countdown-badge.warning{background:#fffbeb;color:#b45309;border:1px solid #fde68a;animation:pulse-glow 1.5s infinite}.countdown-badge.expired{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.countdown-badge.neutral{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.cari-match-tag{display:inline-flex;align-items:center;gap:4px;font-size:.67rem;font-weight:600;padding:1px 6px;border-radius:4px;margin-top:2px}.cari-match-tag.matched{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.cari-match-tag.unmatched{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.triage-status-pill{display:inline-flex;align-items:center;gap:4px;font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:6px}.triage-status-pill.pending{background:#fffbeb;color:#b45309;border:1px solid #fde68a}.triage-status-pill.processed{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.triage-status-pill.cancelled{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.triage-btn-inspect{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#2563eb;color:#fff;border:none;border-radius:6px;font-size:.72rem;font-weight:700;cursor:pointer;transition:all .15s ease}.triage-btn-inspect:hover{background:#1d4ed8}.triage-btn-reject{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;background:#fff;color:#dc2626;border:1px solid #fca5a5;border-radius:6px;font-size:.72rem;font-weight:600;cursor:pointer;transition:all .15s ease}.triage-btn-reject:hover{background:#fef2f2;border-color:#dc2626}.inspection-modal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}@media (max-width: 900px){.inspection-modal-grid{grid-template-columns:1fr}}.inspection-panel{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px}.inspection-panel-title{font-size:.82rem;font-weight:700;color:#1e293b;margin:0 0 10px;display:flex;align-items:center;gap:6px;border-bottom:1px solid #e2e8f0;padding-bottom:6px}.inspection-meta-row{display:flex;align-items:center;justify-content:space-between;font-size:.76rem;margin-bottom:6px}.inspection-meta-row .label{color:#64748b;font-weight:500}.inspection-meta-row .value{color:#0f172a;font-weight:600;text-align:right}.expenses-page{width:100%;max-width:100%;margin:0;padding:0 0 2rem;box-sizing:border-box}.expenses-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.expenses-page .header-left{display:flex;align-items:center;gap:1rem}.expenses-page .back-btn{background:var(--bg-secondary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.expenses-page .back-btn:hover{background:var(--bg-tertiary)}.expenses-page h1{font-size:1.75rem;font-weight:700;color:var(--text-primary);margin:0}.filter-bar{display:flex;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap;align-items:center}.filter-group{display:flex;gap:.5rem;align-items:center}.filter-label{font-size:.85rem;font-weight:600;color:var(--text-secondary);margin-right:.5rem}.filter-btn{background:var(--bg-secondary);border:1px solid var(--border-color);padding:.5rem 1rem;border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;transition:all .2s}.filter-btn:hover{background:var(--bg-tertiary)}.filter-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.expenses-list{background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.expenses-table{width:100%;border-collapse:collapse}.expenses-table th{background:var(--bg-secondary);padding:1rem;text-align:left;font-weight:600;font-size:.85rem;color:var(--text-secondary);white-space:nowrap}.expenses-table td{padding:1rem;border-bottom:1px solid var(--border-color);vertical-align:middle}.expenses-table tbody tr:hover{background:var(--bg-secondary)}.expenses-table .expense-no{font-weight:600;color:var(--primary)}.expenses-table .amount{font-weight:600;text-align:right;color:var(--text-primary)}.expenses-table .actions{display:flex;gap:.5rem;justify-content:flex-end}.action-btn{background:none;border:none;padding:.25rem .5rem;cursor:pointer;font-size:1rem;border-radius:var(--radius-sm);transition:all .2s}.action-btn.delete:hover:not(:disabled){background:#ef444420;color:#ef4444}.action-btn:disabled{opacity:.4;cursor:not-allowed}.badge{display:inline-block;padding:.25rem .75rem;border-radius:var(--radius-sm);font-size:.85rem;font-weight:600}.badge.paid{background:#10b98120;color:#10b981}.badge.unpaid{background:#ef444420;color:#ef4444}.expenses-page .modal-overlay{padding:2rem 1.5rem!important;align-items:flex-start!important;justify-content:center!important}.expense-modal{width:95vw!important;max-width:1400px!important;height:90vh!important;max-height:90vh!important;margin:0 auto!important;border-radius:8px!important;display:flex;flex-direction:column}.expense-modal .modal-header{flex-shrink:0;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border-color);background:var(--bg-card)}.expense-modal .modal-body{overflow-y:auto!important;overflow-x:hidden;flex:1;padding:1.25rem 1.5rem;min-height:0;display:flex;flex-direction:column;min-height:600px;max-height:calc(90vh - 200px)}.expense-modal .modal-footer{flex-shrink:0;padding:1rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-card)}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:500;font-size:.9rem;color:var(--text-secondary)}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:.95rem;background:var(--bg-primary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary)}.form-group.full-width{grid-column:1 / -1}.empty-state{text-align:center;padding:4rem 2rem;color:var(--text-secondary)}.empty-state p{font-size:1.1rem;margin-bottom:1.5rem}.error-message{background:#ef444420;color:#ef4444;padding:1rem;border-radius:var(--radius-md);margin-bottom:1rem;border:1px solid #ef4444}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem}.loading-spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}.primary-btn,.secondary-btn{padding:.75rem 1.5rem;border-radius:var(--radius-md);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.primary-btn{background:var(--primary);color:#fff}.primary-btn:hover:not(:disabled){background:var(--primary-dark, #2563eb);transform:translateY(-1px)}.primary-btn:disabled{opacity:.6;cursor:not-allowed}.secondary-btn{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color)}.secondary-btn:hover{background:var(--bg-tertiary)}.form-group input:disabled,.form-group select:disabled{background:var(--bg-secondary);cursor:not-allowed;opacity:.7}.wm-container{padding:1.5rem 2rem;max-width:1440px;margin:0 auto;font-family:inherit;color:#1e293b}.wm-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:.75rem;font-size:.85rem;color:#64748b}.wm-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.wm-breadcrumb a:hover{color:#0f2942}.wm-subdiscipline-badge{display:inline-flex;align-items:center;gap:6px;background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;padding:2px 8px;border-radius:9999px;font-size:.75rem;font-weight:600;margin-left:6px}.wm-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem;gap:1rem;flex-wrap:wrap}.wm-header-left{display:flex;align-items:center;gap:14px}.wm-header-icon{width:48px;height:48px;border-radius:14px;background:linear-gradient(135deg,#0284c7,#0369a1);display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 4px 14px #0284c740;flex-shrink:0}.wm-header-title{margin:0 0 4px;font-size:1.65rem;font-weight:800;color:#0f2942;letter-spacing:-.02em}.wm-header-desc{margin:0;font-size:.9rem;color:#64748b}.wm-header-actions{display:flex;align-items:center;gap:10px}.wm-btn{display:inline-flex;align-items:center;gap:8px;padding:.55rem 1rem;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s;border:1px solid transparent}.wm-btn-primary{background:#0284c7;color:#fff}.wm-btn-primary:hover{background:#0369a1;box-shadow:0 4px 12px #0284c740}.wm-btn-emerald{background:#059669;color:#fff}.wm-btn-emerald:hover{background:#047857;box-shadow:0 4px 12px #05966940}.wm-btn-secondary{background:#fff;border-color:#cbd5e1;color:#334155}.wm-btn-secondary:hover{background:#f8fafc;border-color:#94a3b8}.wm-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:1rem;margin-bottom:1.5rem}.wm-stat-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:1.1rem 1.25rem;display:flex;align-items:center;gap:14px;box-shadow:0 1px 3px #0000000a;transition:transform .15s,box-shadow .15s}.wm-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000f}.wm-stat-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.wm-stat-val{font-size:1.4rem;font-weight:800;color:#0f2942;line-height:1.2}.wm-stat-label{font-size:.8rem;color:#64748b;font-weight:500}.wm-tabs-bar{display:flex;align-items:center;gap:6px;border-bottom:2px solid #e2e8f0;margin-bottom:1.5rem}.wm-tab-item{display:flex;align-items:center;gap:8px;padding:.75rem 1.25rem;background:transparent;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:.92rem;font-weight:600;color:#64748b;cursor:pointer;transition:all .2s}.wm-tab-item:hover{color:#0f2942}.wm-tab-item.active{color:#0284c7;border-bottom-color:#0284c7}.wm-tab-badge{background:#f1f5f9;color:#475569;padding:2px 7px;border-radius:9999px;font-size:.75rem;font-weight:700}.wm-tab-item.active .wm-tab-badge{background:#e0f2fe;color:#0369a1}.wm-filter-bar{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:.85rem 1.15rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.25rem;flex-wrap:wrap}.wm-search-input{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:.45rem .85rem;flex:1;min-width:240px}.wm-search-input input{border:none;background:transparent;outline:none;font-size:.875rem;color:#1e293b;width:100%}.wm-filter-group{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.wm-select{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:.45rem .85rem;font-size:.875rem;color:#1e293b;outline:none;cursor:pointer}.wm-toggle-chip{display:inline-flex;align-items:center;gap:6px;padding:.45rem .85rem;border-radius:8px;font-size:.825rem;font-weight:600;cursor:pointer;border:1px solid #cbd5e1;background:#fff;color:#475569;transition:all .15s}.wm-toggle-chip.active{background:#fef2f2;border-color:#fca5a5;color:#dc2626}.wm-warehouses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem}.wm-wh-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;padding:1.35rem;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 1px 3px #00000008;transition:all .2s;position:relative}.wm-wh-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000000f;border-color:#cbd5e1}.wm-wh-type-badge{display:inline-flex;align-items:center;gap:5px;font-size:.75rem;font-weight:700;padding:3px 9px;border-radius:6px;margin-bottom:8px}.wm-wh-type-badge.central{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.wm-wh-type-badge.site{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.wm-wh-title{font-size:1.05rem;font-weight:700;color:#0f2942;margin:0 0 6px;line-height:1.4}.wm-wh-location{display:flex;align-items:center;gap:6px;font-size:.825rem;color:#64748b;margin-bottom:12px}.wm-wh-project{display:flex;align-items:center;gap:6px;font-size:.825rem;color:#2563eb;background:#eff6ff;padding:5px 8px;border-radius:6px;margin-bottom:12px;font-weight:500}.wm-wh-stats-box{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f8fafc;border-radius:8px;padding:8px 12px;margin-bottom:14px}.wm-wh-stat-item{display:flex;flex-direction:column}.wm-wh-stat-item-label{font-size:.725rem;color:#64748b}.wm-wh-stat-item-val{font-size:.95rem;font-weight:700;color:#1e293b}.wm-wh-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid #f1f5f9}.wm-wh-btn-view{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:#0284c7;background:#e0f2fe;padding:6px 12px;border-radius:6px;border:none;cursor:pointer;transition:background .15s}.wm-wh-btn-view:hover{background:#bae6fd}.wm-wh-icon-btn{background:transparent;border:1px solid #e2e8f0;color:#64748b;width:32px;height:32px;border-radius:6px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.wm-wh-icon-btn:hover{background:#f8fafc;color:#1e293b;border-color:#cbd5e1}.wm-wh-icon-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.wm-table-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 3px #00000008}.wm-table{width:100%;border-collapse:collapse;font-size:.875rem;text-align:left}.wm-table th{background:#f8fafc;color:#475569;font-weight:600;padding:.85rem 1rem;border-bottom:1px solid #e2e8f0;white-space:nowrap}.wm-table td{padding:.9rem 1rem;border-bottom:1px solid #f1f5f9;color:#334155;vertical-align:middle}.wm-table tr:hover td{background:#f8fafc}.wm-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:9999px;font-size:.75rem;font-weight:700;white-space:nowrap}.wm-badge-success{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.wm-badge-warning{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.wm-badge-danger{background:#fef2f2;color:#dc2626;border:1px solid #fca5a5}.wm-badge-info{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.wm-mov-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:6px;font-size:.775rem;font-weight:700}.wm-mov-badge.in{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.wm-mov-badge.out{background:#fef2f2;color:#dc2626;border:1px solid #fca5a5}.wm-mov-badge.transfer{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.wm-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem}.wm-modal-content{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.wm-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.wm-modal-title{margin:0;font-size:1.2rem;font-weight:700;color:#0f2942}.wm-modal-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .15s}.wm-modal-close:hover{background:#f1f5f9;color:#334155}.wm-modal-body{padding:1.5rem}.wm-form-group{margin-bottom:1.1rem}.wm-form-label{display:block;font-size:.825rem;font-weight:600;color:#334155;margin-bottom:5px}.wm-form-input,.wm-form-select,.wm-form-textarea{width:100%;box-sizing:border-box;padding:.6rem .85rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.875rem;color:#1e293b;outline:none;transition:border-color .15s,box-shadow .15s}.wm-form-input:focus,.wm-form-select:focus,.wm-form-textarea:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c726}.wm-form-textarea{min-height:75px;resize:vertical}.wm-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:1.25rem 1.5rem;border-top:1px solid #e2e8f0;background:#f8fafc;border-bottom-left-radius:16px;border-bottom-right-radius:16px}.wm-type-selector{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-bottom:1.25rem}.wm-type-btn{padding:.65rem .5rem;border-radius:8px;font-size:.825rem;font-weight:600;cursor:pointer;border:1px solid #e2e8f0;background:#fff;color:#475569;text-align:center;transition:all .15s;display:flex;flex-direction:column;align-items:center;gap:4px}.wm-type-btn.in.active{background:#ecfdf5;border-color:#059669;color:#059669;box-shadow:0 0 0 2px #05966933}.wm-type-btn.out.active{background:#fef2f2;border-color:#dc2626;color:#dc2626;box-shadow:0 0 0 2px #dc262633}.wm-type-btn.transfer.active{background:#eff6ff;border-color:#2563eb;color:#2563eb;box-shadow:0 0 0 2px #2563eb33}.wm-empty-state{text-align:center;padding:4rem 1.5rem;background:#fff;border-radius:14px;border:1px dashed #cbd5e1}.wm-empty-icon{width:64px;height:64px;border-radius:50%;background:#f1f5f9;display:inline-flex;align-items:center;justify-content:center;color:#94a3b8;margin-bottom:1rem}.wm-empty-title{margin:0 0 6px;font-size:1.15rem;font-weight:700;color:#1e293b}.wm-empty-desc{margin:0 auto;max-width:440px;font-size:.875rem;color:#64748b;line-height:1.5}.cash-flow-page{width:100%;max-width:100%;margin:0;padding:0 0 2.5rem;box-sizing:border-box;font-family:var(--font-sans, "Plus Jakarta Sans", "Inter", system-ui, sans-serif);color:#0f172a}.cash-flow-breadcrumb{display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:600;color:#64748b;margin-bottom:.5rem}.cash-flow-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.cash-flow-breadcrumb a:hover,.cash-flow-breadcrumb .active{color:#0f172a}.cash-flow-header-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.65rem 1.15rem;margin-bottom:.75rem;box-shadow:0 1px 2px #0f172a0a;flex-wrap:wrap}.cash-flow-header-left{display:flex;align-items:center;gap:12px}.cash-flow-header-icon{width:36px;height:36px;border-radius:8px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cash-flow-header-text{display:flex;flex-direction:column}.cash-flow-header-title{font-size:1.15rem;font-weight:800;color:#0f172a;letter-spacing:-.01em;margin:0;display:flex;align-items:center;gap:8px;line-height:1.2}.cash-flow-header-badge{font-size:.68rem;font-weight:700;background:#f1f5f9;color:#475569;padding:2px 7px;border-radius:12px;border:1px solid #e2e8f0}.cash-flow-header-subtitle{font-size:.75rem;color:#64748b;margin:2px 0 0}.cash-flow-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.cash-flow-btn-primary{display:inline-flex;align-items:center;gap:6px;background:#0f2942;color:#fff;font-size:.78rem;font-weight:600;padding:7px 14px;border-radius:6px;border:none;cursor:pointer;box-shadow:0 1px 2px #0f294226;transition:all .15s ease;text-decoration:none}.cash-flow-btn-primary:hover{background:#0b1f32;transform:translateY(-1px);box-shadow:0 2px 6px #0f294233}.cash-flow-btn-secondary{display:inline-flex;align-items:center;gap:6px;background:#fff;color:#334155;font-size:.78rem;font-weight:600;padding:6px 12px;border-radius:6px;border:1px solid #cbd5e1;cursor:pointer;transition:all .15s ease}.cash-flow-btn-secondary:hover:not(:disabled){background:#f8fafc;color:#0f172a;border-color:#94a3b8}.cash-flow-btn-secondary:disabled{opacity:.6;cursor:not-allowed}.cash-flow-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:.75rem}@media (max-width: 900px){.cash-flow-stats-grid{grid-template-columns:1fr}}.cash-flow-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.9rem 1.15rem;box-shadow:0 1px 2px #0f172a08;display:flex;align-items:center;justify-content:space-between;position:relative;overflow:hidden;transition:all .2s ease}.cash-flow-kpi-card:hover{border-color:#cbd5e1;box-shadow:0 3px 8px #0f172a0f}.cash-flow-kpi-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%}.cash-flow-kpi-card.income:before{background:#10b981}.cash-flow-kpi-card.expense:before{background:#f43f5e}.cash-flow-kpi-card.net:before{background:#3b82f6}.cash-flow-kpi-info{display:flex;flex-direction:column}.cash-flow-kpi-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b;margin-bottom:.25rem}.cash-flow-kpi-value{font-size:1.45rem;font-weight:800;letter-spacing:-.02em;line-height:1.15}.cash-flow-kpi-card.income .cash-flow-kpi-value{color:#059669}.cash-flow-kpi-card.expense .cash-flow-kpi-value{color:#e11d48}.cash-flow-kpi-card.net .cash-flow-kpi-value.positive{color:#059669}.cash-flow-kpi-card.net .cash-flow-kpi-value.negative{color:#e11d48}.cash-flow-kpi-sub{font-size:.7rem;color:#94a3b8;margin-top:.2rem}.cash-flow-kpi-icon-box{width:42px;height:42px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.cash-flow-kpi-icon-box.income{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.cash-flow-kpi-icon-box.expense{background:#fff1f2;color:#e11d48;border:1px solid #fecdd3}.cash-flow-kpi-icon-box.net{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.cash-flow-control-bar{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:.75rem 1rem;margin-bottom:.75rem;box-shadow:0 1px 2px #0f172a0a;display:flex;flex-direction:column;gap:.75rem}.cash-flow-tabs-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;padding-bottom:.75rem;border-bottom:1px solid #f1f5f9}.cash-flow-period-tabs{display:inline-flex;background:#f1f5f9;padding:3px;border-radius:8px;gap:3px}.cash-flow-period-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:6px;font-size:.78rem;font-weight:600;color:#64748b;border:none;background:transparent;cursor:pointer;transition:all .15s ease}.cash-flow-period-btn:hover{color:#0f172a}.cash-flow-period-btn.active{background:#fff;color:#0f172a;font-weight:700;box-shadow:0 1px 3px #0f172a14}.cash-flow-period-badge{font-size:.68rem;font-weight:700;padding:1px 6px;border-radius:10px;background:#e2e8f0;color:#475569}.cash-flow-period-btn.active .cash-flow-period-badge{background:#eff6ff;color:#2563eb}.cash-flow-filters-row{display:flex;align-items:center;justify-content:space-between;gap:.65rem;flex-wrap:wrap}.cash-flow-filters-left{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap;flex:1}.cash-flow-search-box{position:relative;min-width:220px;flex:1;max-width:320px}.cash-flow-search-box svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.cash-flow-search-input{width:100%;height:34px;padding:0 10px 0 32px;border-radius:6px;border:1px solid #cbd5e1;background:#f8fafc;font-size:.8rem;color:#1e293b;box-sizing:border-box;transition:all .15s ease}.cash-flow-search-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.cash-flow-filter-select{height:34px;padding:0 10px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;font-size:.8rem;color:#334155;font-weight:500;cursor:pointer;transition:all .15s ease}.cash-flow-filter-select:focus{outline:none;border-color:#3b82f6}.cash-flow-date-group{display:flex;align-items:center;gap:5px;background:#f8fafc;padding:2px 8px;border:1px solid #cbd5e1;border-radius:6px;height:34px;box-sizing:border-box}.cash-flow-date-group svg{color:#64748b}.cash-flow-date-input{border:none;background:transparent;font-size:.78rem;color:#334155;font-weight:500;padding:2px 4px;outline:none}.cash-flow-date-separator{color:#94a3b8;font-size:.8rem}.cash-flow-reset-btn{display:inline-flex;align-items:center;gap:4px;height:34px;padding:0 10px;border-radius:6px;border:1px dashed #cbd5e1;background:#fff;color:#64748b;font-size:.78rem;font-weight:600;cursor:pointer;transition:all .15s ease}.cash-flow-reset-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#94a3b8}.cash-flow-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0f172a08;overflow:hidden}.cash-flow-table-wrapper{overflow-x:auto;width:100%}.cash-flow-table{width:100%;border-collapse:collapse;text-align:left}.cash-flow-table th{background:#f8fafc;padding:10px 14px;font-size:.74rem;font-weight:700;text-transform:uppercase;color:#475569;letter-spacing:.04em;border-bottom:1px solid #e2e8f0;white-space:nowrap}.cash-flow-table td{padding:11px 14px;font-size:.82rem;border-bottom:1px solid #f1f5f9;color:#1e293b;vertical-align:middle}.cash-flow-table tbody tr{transition:background .12s ease}.cash-flow-table tbody tr:hover{background:#f8fafc}.cash-flow-table tbody tr:last-child td{border-bottom:none}.cash-flow-type-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:16px;font-size:.72rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}.cash-flow-type-badge.income{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.cash-flow-type-badge.expense{background:#fff1f2;color:#e11d48;border:1px solid #fecdd3}.cash-flow-freq-badge{display:inline-block;padding:2px 7px;border-radius:4px;font-size:.72rem;font-weight:600;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;white-space:nowrap}.cash-flow-status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:16px;font-size:.72rem;font-weight:700;white-space:nowrap}.cash-flow-status-badge.pending{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.cash-flow-status-badge.partially_paid{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.cash-flow-status-badge.paid{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.cash-flow-status-badge.cancelled{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.cash-flow-amount-cell{font-size:.86rem;font-weight:800;text-align:right;white-space:nowrap}.cash-flow-amount-cell.income{color:#059669}.cash-flow-amount-cell.expense{color:#e11d48}.cash-flow-remaining-hint{display:block;font-size:.7rem;color:#64748b;font-weight:500;margin-top:2px}.cash-flow-actions{display:flex;align-items:center;justify-content:center;gap:5px}.cash-flow-action-btn{width:30px;height:30px;border-radius:6px;border:1px solid #e2e8f0;background:#fff;color:#64748b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.cash-flow-action-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.cash-flow-action-btn.pay{background:#ecfdf5;border-color:#a7f3d0;color:#059669}.cash-flow-action-btn.pay:hover{background:#d1fae5;color:#047857;border-color:#6ee7b7}.cash-flow-action-btn.delete:hover{background:#fff1f2;border-color:#fecdd3;color:#e11d48}.cash-flow-empty-state{padding:3.5rem 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.cash-flow-empty-icon{width:54px;height:54px;border-radius:12px;background:#f1f5f9;color:#94a3b8;display:flex;align-items:center;justify-content:center;margin-bottom:1rem}.cash-flow-empty-title{font-size:1rem;font-weight:700;color:#1e293b;margin:0 0 .35rem}.cash-flow-empty-desc{font-size:.8rem;color:#64748b;max-width:400px;margin:0 0 1.25rem;line-height:1.4}.cash-flow-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.cash-flow-modal{background:#fff;border-radius:12px;width:100%;max-width:620px;max-height:90vh;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;overflow:hidden;border:1px solid #e2e8f0}.cash-flow-modal-header{padding:1rem 1.25rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#f8fafc}.cash-flow-modal-title{font-size:1rem;font-weight:700;color:#0f172a;margin:0;display:flex;align-items:center;gap:8px}.cash-flow-modal-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:6px;transition:all .15s}.cash-flow-modal-close:hover{background:#e2e8f0;color:#0f172a}.cash-flow-modal-body{padding:1.25rem;overflow-y:auto}.cash-flow-modal-footer{padding:.85rem 1.25rem;border-top:1px solid #e2e8f0;background:#f8fafc;display:flex;justify-content:flex-end;gap:8px}.cash-flow-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.9rem}.cash-flow-form-grid .full-width{grid-column:1 / -1}.cash-flow-form-group{display:flex;flex-direction:column;gap:4px}.cash-flow-form-group label{font-size:.78rem;font-weight:600;color:#334155}.cash-flow-form-group input,.cash-flow-form-group select,.cash-flow-form-group textarea{width:100%;padding:7px 10px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;font-size:.82rem;color:#1e293b;box-sizing:border-box;transition:border-color .15s,box-shadow .15s}.cash-flow-form-group input:focus,.cash-flow-form-group select:focus,.cash-flow-form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.cash-flow-error-banner{background:#fff1f2;border:1px solid #fecdd3;color:#e11d48;padding:8px 12px;border-radius:6px;font-size:.78rem;font-weight:600;margin-bottom:1rem}.cash-flow-loading-box{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1rem;color:#64748b;gap:.75rem}.cash-flow-loading-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#3b82f6;border-radius:50%;animation:cashFlowSpin .7s linear infinite}@keyframes cashFlowSpin{to{transform:rotate(360deg)}}.pcm-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1.5rem;animation:pcmFadeIn .2s ease-out}@keyframes pcmFadeIn{0%{opacity:0}to{opacity:1}}.pcm-modal-container{background:#fff;border-radius:16px;width:100%;max-width:860px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;overflow:hidden;font-family:var(--font-sans, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)}.pcm-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.75rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.pcm-header-left{display:flex;align-items:center;gap:1rem}.pcm-avatar{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;font-weight:700;font-size:1.1rem;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px -1px #2563eb33;letter-spacing:.5px}.pcm-person-title{display:flex;align-items:center;gap:.6rem}.pcm-person-title h2{margin:0;font-size:1.25rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}.pcm-reg-badge{background:#e0f2fe;color:#0369a1;font-size:.75rem;font-weight:600;padding:.2rem .55rem;border-radius:6px;font-family:var(--font-mono, monospace)}.pcm-person-meta{display:flex;align-items:center;gap:.5rem;margin-top:.2rem;font-size:.85rem;color:#64748b}.pcm-badge-sub{background:#fef3c7;color:#b45309;font-size:.75rem;font-weight:600;padding:.15rem .5rem;border-radius:9999px}.pcm-close-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:.4rem;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.pcm-close-btn:hover{background:#e2e8f0;color:#334155}.pcm-progress-card{padding:1rem 1.75rem;background:#fff;border-bottom:1px solid #f1f5f9}.pcm-progress-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.pcm-progress-label{display:flex;align-items:baseline;gap:.6rem}.pcm-pct-text{font-size:1.5rem;font-weight:800;color:#0f172a;font-family:var(--font-mono, monospace)}.pcm-pct-desc{font-size:.85rem;color:#64748b;font-weight:500}.pcm-progress-tags{display:flex;gap:.5rem}.pcm-tag{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .6rem;border-radius:6px;font-size:.78rem;font-weight:600}.pcm-tag.info{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.pcm-tag.doc{background:#faf5ff;color:#7c3aed;border:1px solid #e9d5ff}.pcm-progress-bar-bg{width:100%;height:8px;background:#e2e8f0;border-radius:9999px;overflow:hidden}.pcm-progress-bar-fill{height:100%;border-radius:9999px;transition:width .4s cubic-bezier(.4,0,.2,1),background-color .3s ease}.pcm-body{flex:1;overflow-y:auto;padding:0;background:#f8fafc}.pcm-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 1rem;gap:.75rem;color:#64748b}.pcm-spin{animation:pcmSpin 1s linear infinite}@keyframes pcmSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.pcm-success-screen{padding:4rem 2rem;text-align:center;background:#fff;display:flex;flex-direction:column;align-items:center}.pcm-success-icon-wrap{width:80px;height:80px;border-radius:50%;background:#ecfdf5;display:flex;align-items:center;justify-content:center;margin-bottom:1.25rem}.pcm-success-screen h3{font-size:1.4rem;font-weight:700;color:#0f172a;margin:0 0 .5rem}.pcm-success-screen p{color:#64748b;font-size:.95rem;max-width:460px;line-height:1.5;margin:0 0 1.5rem}.pcm-success-score{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534;padding:.5rem 1.25rem;border-radius:9999px;font-size:.95rem;margin-bottom:2rem}.pcm-finish-btn{background:#10b981;color:#fff;border:none;padding:.75rem 1.75rem;border-radius:10px;font-weight:600;font-size:.95rem;display:flex;align-items:center;gap:.5rem;cursor:pointer;box-shadow:0 4px 6px -1px #10b98140;transition:background .15s ease}.pcm-finish-btn:hover{background:#059669}.pcm-wizard-grid{display:grid;grid-template-columns:280px 1fr;min-height:380px;background:#fff}.pcm-sidebar-steps{background:#f8fafc;border-right:1px solid #e2e8f0;padding:1.25rem;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;max-height:480px}.pcm-sidebar-title{display:flex;align-items:center;justify-content:space-between;font-size:.8rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;padding-bottom:.5rem;border-bottom:1px solid #e2e8f0}.pcm-step-counter{font-family:var(--font-mono, monospace);background:#e2e8f0;color:#334155;padding:.15rem .45rem;border-radius:4px;font-size:.75rem}.pcm-step-items{display:flex;flex-direction:column;gap:.4rem}.pcm-step-item{display:flex;align-items:center;gap:.65rem;padding:.55rem .75rem;border-radius:8px;border:1px solid transparent;background:transparent;text-align:left;cursor:pointer;transition:all .15s ease;width:100%}.pcm-step-item:hover{background:#f1f5f9}.pcm-step-item.active{background:#fff;border-color:#3b82f6;box-shadow:0 1px 3px #0000000d}.pcm-step-status-icon{width:22px;height:22px;border-radius:50%;background:#e2e8f0;color:#64748b;font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pcm-step-item.active .pcm-step-status-icon{background:#2563eb;color:#fff}.pcm-step-item.completed .pcm-step-status-icon{background:#10b981;color:#fff}.pcm-step-info{display:flex;flex-direction:column;min-width:0}.pcm-step-name{font-size:.83rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pcm-step-item.active .pcm-step-name{color:#2563eb}.pcm-step-type{font-size:.72rem;color:#94a3b8}.pcm-card-content{padding:2rem 2.25rem;background:#fff;overflow-y:auto;max-height:480px}.pcm-step-detail{display:flex;flex-direction:column;gap:1.25rem}.pcm-step-header{display:flex;align-items:center;gap:1rem}.step-type-icon{padding:.6rem;border-radius:12px;box-sizing:content-box}.step-type-icon.kimlik{background:#eff6ff;color:#2563eb}.step-type-icon.contact{background:#f0fdf4;color:#16a34a}.step-type-icon.personal{background:#faf5ff;color:#9333ea}.step-type-icon.health{background:#fef2f2;color:#dc2626}.step-type-icon.address{background:#fff7ed;color:#ea580c}.step-type-icon.finance{background:#ecfeff;color:#0891b2}.step-type-icon.doc-icon{background:#fdf2f8;color:#db2777}.step-type-icon.default{background:#f1f5f9;color:#475569}.pcm-cat-pill{display:inline-block;font-size:.72rem;font-weight:700;color:#2563eb;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.2rem}.pcm-cat-pill.doc{color:#db2777}.pcm-step-header h3{margin:0;font-size:1.25rem;font-weight:700;color:#0f172a}.pcm-step-instruction{font-size:.9rem;color:#64748b;line-height:1.5;margin:0;background:#f8fafc;padding:.85rem 1.1rem;border-radius:10px;border-left:3px solid #3b82f6}.pcm-input-group{display:flex;flex-direction:column;gap:.45rem}.pcm-input-group label{font-size:.85rem;font-weight:600;color:#334155}.pcm-input,.pcm-select,.pcm-textarea{width:100%;padding:.75rem 1rem;border:1.5px solid #cbd5e1;border-radius:10px;font-size:.95rem;color:#0f172a;background:#fff;transition:border-color .15s ease,box-shadow .15s ease;font-family:inherit;box-sizing:border-box}.pcm-input:focus,.pcm-select:focus,.pcm-textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.pcm-dropzone{border:2px dashed #cbd5e1;border-radius:12px;background:#f8fafc;padding:1.75rem 1rem;text-align:center;cursor:pointer;transition:all .15s ease}.pcm-dropzone:hover{border-color:#3b82f6;background:#eff6ff}.pcm-dropzone-label{display:flex;flex-direction:column;align-items:center;gap:.6rem;cursor:pointer}.pcm-upload-icon{color:#3b82f6}.pcm-upload-title{font-weight:600;font-size:.95rem;color:#1e293b}.pcm-upload-hint{font-size:.8rem;color:#94a3b8;margin-top:.2rem}.pcm-file-chosen{display:flex;flex-direction:column;align-items:center;gap:.2rem}.pcm-chosen-name{font-weight:700;color:#2563eb;font-size:.95rem}.pcm-chosen-size{font-size:.78rem;color:#64748b;font-family:var(--font-mono, monospace)}.pcm-change-hint{font-size:.75rem;color:#94a3b8;text-decoration:underline;margin-top:.4rem}.pcm-doc-dates{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.pcm-feedback-box{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500}.pcm-feedback-box.success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.pcm-feedback-box.error{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.pcm-footer{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.75rem;background:#f8fafc;border-top:1px solid #e2e8f0}.pcm-footer-right{display:flex;align-items:center;gap:.75rem}.pcm-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.15rem;border-radius:9px;font-size:.9rem;font-weight:600;cursor:pointer;border:none;transition:all .15s ease}.pcm-btn:disabled{opacity:.5;cursor:not-allowed}.pcm-btn-back{background:#fff;border:1px solid #cbd5e1;color:#475569}.pcm-btn-back:hover:not(:disabled){background:#f1f5f9;color:#1e293b}.pcm-btn-skip{background:#f1f5f9;color:#475569}.pcm-btn-skip:hover:not(:disabled){background:#e2e8f0;color:#1e293b}.pcm-btn-primary{background:#2563eb;color:#fff;box-shadow:0 4px 6px -1px #2563eb33}.pcm-btn-primary:hover:not(:disabled){background:#1d4ed8}.plist-completion-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.3rem .6rem;border-radius:6px;font-size:.78rem;font-weight:700;font-family:var(--font-mono, monospace);cursor:pointer;border:1px solid transparent;transition:all .15s ease}.plist-completion-badge.full{background:#ecfdf5;color:#059669;border-color:#a7f3d0}.plist-completion-badge.full:hover{background:#d1fae5}.plist-completion-badge.good{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.plist-completion-badge.good:hover{background:#dbeafe}.plist-completion-badge.warning{background:#fffbeb;color:#d97706;border-color:#fde68a;animation:pcmPulse 2s infinite}.plist-completion-badge.warning:hover{background:#fef3c7}.plist-completion-badge.danger{background:#fef2f2;color:#dc2626;border-color:#fecaca;animation:pcmPulse 1.8s infinite}.plist-completion-badge.danger:hover{background:#fee2e2}@keyframes pcmPulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}.pcm-confirm-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1100;padding:1.5rem;animation:pcmFadeIn .18s ease-out;border-radius:16px}.pcm-confirm-dialog{background:#fff;border-radius:14px;width:100%;max-width:480px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;border:1px solid #e2e8f0;overflow:hidden;animation:pcmConfirmPop .2s cubic-bezier(.16,1,.3,1)}@keyframes pcmConfirmPop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}.pcm-confirm-header{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.35rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.pcm-confirm-header-left{display:flex;align-items:center;gap:.75rem}.pcm-confirm-icon-circle{width:36px;height:36px;border-radius:10px;background:#eff6ff;color:#2563eb;display:flex;align-items:center;justify-content:center}.pcm-confirm-title{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a}.pcm-confirm-body{padding:1.35rem}.pcm-confirm-personnel-row{font-size:.85rem;color:#64748b;margin-bottom:.6rem}.pcm-confirm-personnel-row strong{color:#1e293b}.pcm-confirm-prompt{font-size:.9rem;color:#334155;margin-bottom:1rem;line-height:1.5}.pcm-confirm-card{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;padding:1rem}.pcm-confirm-label{font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:#64748b;margin-bottom:.45rem}.pcm-confirm-value{font-size:1.05rem;font-weight:700;color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:.65rem .85rem;word-break:break-all;white-space:pre-wrap;max-height:160px;overflow-y:auto}.pcm-confirm-doc-details{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;padding:.75rem .85rem}.pcm-confirm-doc-name{font-size:.95rem;font-weight:700;color:#1e40af;word-break:break-all}.pcm-confirm-doc-meta{font-size:.8rem;color:#3b82f6;margin-top:.25rem}.pcm-confirm-footer{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;padding:1rem 1.35rem;background:#f8fafc;border-top:1px solid #e2e8f0}.personnel-page{width:100%;max-width:100%;margin:0;padding:0 0 3rem;box-sizing:border-box}.personnel-page .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.25rem;flex-wrap:wrap;gap:1rem}.personnel-page .header-left{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.personnel-page .header-actions{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.breadcrumbs{font-size:.875rem;color:var(--text-muted)}.breadcrumbs span{color:var(--text-primary)}.breadcrumbs .current{font-weight:500}.card{background-color:var(--bg-card);border-radius:12px;box-shadow:var(--shadow-sm);padding:1.5rem}.profile-banner{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:2rem;margin-bottom:2rem}.profile-main{display:flex;align-items:center;gap:1.5rem}.avatar-wrapper{width:80px;height:80px;border-radius:50%;overflow:hidden;background-color:var(--primary-light);display:flex;align-items:center;justify-content:center;flex-shrink:0}.avatar-img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-size:2.5rem;color:var(--primary)}.profile-identity h1{font-size:1.5rem;font-weight:700;margin:0 0 .5rem;display:flex;align-items:center;gap:1rem}.status-badge{font-size:.75rem;padding:.25rem .75rem;border-radius:99px;vertical-align:middle}.profile-subtitle{display:flex;gap:.75rem;margin-top:.5rem}.info-pill{font-size:.875rem;color:var(--text-secondary);background-color:var(--bg-card-hover);padding:.25rem .75rem;border-radius:6px}.profile-quick-stats{display:flex;gap:2rem;padding-left:2rem;border-left:1px solid var(--border-color)}.stat-item{display:flex;flex-direction:column}.stat-item label{font-size:.75rem;color:var(--text-muted);margin-bottom:.25rem}.stat-item span{font-size:1rem;font-weight:600;color:var(--text-primary)}.info-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;align-items:start}.info-row{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--border-color)}.info-row:last-child{border-bottom:none}.info-row .label{color:var(--text-secondary);font-size:.9rem}.info-row .value{color:var(--text-primary);font-weight:500;text-align:right}.info-row .money{color:var(--success);font-weight:600}.detail-section h3{margin-top:0;margin-bottom:1rem;font-size:1.1rem;color:var(--primary);border-bottom:2px solid var(--border-color);padding-bottom:.5rem;display:inline-block}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.table-wrapper{overflow-x:auto}.empty-state{text-align:center;padding:2rem;color:var(--text-muted);font-style:italic}@media (max-width: 768px){.profile-banner{flex-direction:column;align-items:flex-start;gap:1.5rem}.profile-quick-stats{width:100%;padding-left:0;border-left:none;border-top:1px solid var(--border-color);padding-top:1.5rem;justify-content:space-between}.info-cards-grid{grid-template-columns:1fr}}.highlight-card{background:linear-gradient(135deg,var(--bg-card),var(--bg-card-hover));border:1px solid var(--primary-light)}.earnings-summary{display:flex;flex-direction:column;gap:1rem;align-items:center;padding:1rem 0}.earnings-summary .big-number{font-size:2.5rem;font-weight:800;color:var(--success)}.earnings-breakdown{width:100%;display:flex;flex-direction:column;gap:.5rem;background:var(--bg-background);padding:1rem;border-radius:8px}.breakdown-item{display:flex;justify-content:space-between;font-size:.9rem;color:var(--text-secondary)}.breakdown-item span:last-child{font-weight:600;color:var(--text-primary)}.skill-badge{display:inline-flex;align-items:center;font-size:.75rem;background-color:var(--bg-card-hover);color:var(--text-secondary);border:1px solid var(--border-color);padding:2px 8px;border-radius:12px;white-space:nowrap}.person-name{display:flex;align-items:center;gap:1rem}.person-name .avatar{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;background-color:var(--primary-light);color:var(--primary);transition:transform .3s cubic-bezier(.175,.885,.32,1.275),box-shadow .3s ease;cursor:pointer;position:relative;z-index:1;transform-origin:left center}.person-name .avatar:hover{transform:scale(3.5);z-index:9999;box-shadow:0 8px 16px #0000004d}.person-name .avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.personnel-form-page{width:100%;max-width:100%;margin:0;padding:0 0 3rem;box-sizing:border-box}.pform-breadcrumb{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:600;color:#64748b;margin-bottom:.75rem}.pform-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.pform-breadcrumb a:hover,.pform-breadcrumb .active{color:#0f172a}.pform-header{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-bottom:1.5rem;flex-wrap:wrap;background:#fff;padding:1.25rem 1.75rem;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0f172a0a}.pform-header-left{display:flex;align-items:center;gap:14px}.pform-icon-badge{width:46px;height:46px;border-radius:12px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pform-title{font-size:1.45rem;font-weight:800;color:#0f172a;letter-spacing:-.02em;margin:0 0 2px}.pform-subtitle{font-size:.82rem;color:#64748b;margin:0}.pform-header-actions{display:flex;align-items:center;gap:10px}.pform-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0f172a08;margin-bottom:1.25rem;overflow:hidden}.pform-card-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.5rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.pform-card-title{display:flex;align-items:center;gap:10px;font-size:.95rem;font-weight:700;color:#0f172a;margin:0}.pform-card-badge{font-size:.7rem;font-weight:600;padding:2px 8px;border-radius:6px;background:#e2e8f0;color:#475569}.pform-card-body{padding:1.5rem}.pform-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25rem}.pform-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.pform-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:1.25rem}.pform-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.25rem}.pform-grid-5{display:grid;grid-template-columns:repeat(5,1fr);gap:1.25rem}.pform-two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-items:start}.pform-col{display:flex;flex-direction:column;gap:1.25rem}@media (max-width: 1400px){.pform-grid-5{grid-template-columns:repeat(3,1fr)}}@media (max-width: 1200px){.pform-grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1100px){.pform-two-col{grid-template-columns:1fr}}@media (max-width: 900px){.pform-grid-5{grid-template-columns:repeat(2,1fr)}.pform-grid-3,.pform-grid-2{grid-template-columns:1fr}}@media (max-width: 600px){.pform-grid-5,.pform-grid-4{grid-template-columns:1fr}}.pform-group{display:flex;flex-direction:column;gap:6px}.pform-group.full-width{grid-column:1 / -1}.pform-label{font-size:.73rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.05em;margin:0;display:flex;align-items:center;gap:4px}.pform-label .required{color:#ef4444}.pform-input,.pform-select,.pform-textarea{width:100%;border:1px solid #cbd5e1;border-radius:8px;padding:9px 13px;font-size:.875rem;font-weight:500;color:#0f172a;background:#fff;transition:all .15s ease;outline:none;box-sizing:border-box}.pform-input:focus,.pform-select:focus,.pform-textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.pform-input:disabled,.pform-select:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}.pform-hint{font-size:.73rem;color:#64748b;margin:0}.pform-avatar-box{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;padding:1.25rem 1.5rem;background:#f8fafc;border-radius:12px;border:1px dashed #cbd5e1;margin-bottom:1.5rem;flex-wrap:wrap}.pform-avatar-left{display:flex;align-items:center;gap:1.25rem}.pform-avatar-preview{width:88px;height:88px;border-radius:50%;overflow:hidden;background:#e2e8f0;border:3px solid #ffffff;box-shadow:0 2px 10px #0f172a1f;display:flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;position:relative}.pform-avatar-preview img{width:100%;height:100%;object-fit:cover}.pform-avatar-placeholder{font-size:2.2rem;color:#64748b}.pform-avatar-controls{display:flex;flex-direction:column;gap:8px;flex:1}.pform-avatar-btns{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pform-btn-primary{display:inline-flex;align-items:center;gap:8px;background:#0f2942;color:#fff;font-size:.84rem;font-weight:600;padding:9px 18px;border-radius:8px;border:none;cursor:pointer;box-shadow:0 2px 4px #0f294226;transition:all .15s;text-decoration:none}.pform-btn-primary:hover{background:#0b1f32;transform:translateY(-1px);box-shadow:0 4px 8px #0f294233}.pform-btn-secondary{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#475569;font-size:.84rem;font-weight:600;padding:9px 16px;border-radius:8px;border:1px solid #cbd5e1;cursor:pointer;transition:all .15s;text-decoration:none}.pform-btn-secondary:hover{background:#f8fafc;color:#0f172a;border-color:#94a3b8}.pform-btn-sm{padding:6px 12px;font-size:.78rem;border-radius:6px}.pform-footer-sticky{position:sticky;bottom:0;background:#fffffff2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #e2e8f0;padding:.875rem 1.5rem;margin-top:1.5rem;border-radius:12px;display:flex;align-items:center;justify-content:space-between;z-index:50;box-shadow:0 4px 20px #0f172a14}.personnel-list-container{width:100%;max-width:100%;margin:0;padding:0 0 2rem;box-sizing:border-box;font-family:var(--font-sans, "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif);color:#0f172a}.plist-breadcrumb{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:600;color:#64748b;margin-bottom:.75rem;font-family:inherit}.plist-breadcrumb a{color:#64748b;text-decoration:none;transition:color .15s}.plist-breadcrumb a:hover,.plist-breadcrumb .active{color:#0f172a}.plist-header-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0f172a0a;padding:1rem 1.5rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap;font-family:inherit}.plist-title-group{display:flex;align-items:center;gap:12px}.plist-title-icon{width:40px;height:40px;border-radius:10px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;display:flex;align-items:center;justify-content:center;flex-shrink:0}.plist-title{font-size:1.35rem;font-weight:800;color:#0f172a;letter-spacing:-.02em;margin:0;font-family:inherit}.plist-stats-group{display:inline-flex;align-items:center;gap:8px}.plist-stat-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600;padding:3px 10px;border-radius:9999px;line-height:1.4;font-family:inherit}.plist-stat-badge.active{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.plist-stat-badge.inactive{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.plist-stat-badge.partner{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.plist-stat-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.plist-stat-dot.active{background:#10b981;box-shadow:0 0 0 2px #10b98133}.plist-stat-dot.inactive{background:#94a3b8}.plist-stat-dot.partner{background:#d97706;box-shadow:0 0 0 2px #d9770633}.plist-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.plist-btn-primary{display:inline-flex;align-items:center;gap:7px;background:#0f2942;color:#fff;font-size:.8125rem;font-weight:600;padding:8px 16px;border-radius:8px;border:none;cursor:pointer;box-shadow:0 2px 4px #0f29421f;transition:all .15s;text-decoration:none;font-family:inherit}.plist-btn-primary:hover{background:#0b1f32;transform:translateY(-1px);box-shadow:0 4px 8px #0f29422e}.plist-btn-secondary{display:inline-flex;align-items:center;gap:7px;background:#fff;color:#475569;font-size:.8125rem;font-weight:600;padding:8px 14px;border-radius:8px;border:1px solid #cbd5e1;cursor:pointer;transition:all .15s;text-decoration:none;font-family:inherit}.plist-btn-secondary:hover{background:#f8fafc;color:#0f172a;border-color:#94a3b8}.plist-filter-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0f172a08;padding:.75rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-wrap:wrap;font-family:inherit}.plist-search-box{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:7px 12px;flex:1;min-width:260px;max-width:480px;transition:all .15s}.plist-search-box:focus-within{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.plist-search-input{border:none;background:transparent;outline:none;font-size:.84rem;font-weight:500;color:#0f172a;width:100%;font-family:inherit}.plist-search-input::placeholder{color:#94a3b8}.plist-sort-group{display:flex;align-items:center;gap:8px}.plist-sort-label{font-size:.75rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap;margin:0;font-family:inherit}.plist-sort-select{border:1px solid #cbd5e1;border-radius:8px;padding:6px 12px;font-size:.8125rem;font-weight:600;color:#334155;background:#fff;outline:none;cursor:pointer;font-family:inherit}.plist-sort-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#475569;cursor:pointer;transition:all .15s}.plist-sort-btn:hover{background:#f8fafc;color:#0f172a}.plist-table-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0f172a0a;overflow:hidden}.plist-table-card .table-responsive{overflow-x:auto;width:100%}.plist-table{width:100%;border-collapse:collapse;font-family:var(--font-sans, "Plus Jakarta Sans", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif)!important;text-align:left;margin:0}.plist-table thead th{background:#f8fafc!important;color:#475569!important;font-weight:700!important;font-size:.72rem!important;text-transform:uppercase!important;letter-spacing:.05em!important;padding:12px 16px!important;border-bottom:1px solid #e2e8f0!important;white-space:nowrap!important;font-family:inherit!important}.plist-table tbody tr{transition:background .12s ease;border-bottom:1px solid #f1f5f9}.plist-table tbody tr:hover{background-color:#f8fafc}.plist-table tbody tr:last-child{border-bottom:none}.plist-table tbody td{padding:12px 16px!important;font-size:.84rem!important;color:#334155!important;vertical-align:middle!important;font-family:inherit!important;border-bottom:1px solid #f1f5f9}.plist-person-cell{display:flex;align-items:center;gap:12px}.plist-avatar{width:38px;height:38px;border-radius:50%;overflow:hidden;background:#eff6ff;color:#2563eb;border:2px solid #ffffff;box-shadow:0 1px 3px #0f172a14;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-weight:700;font-size:.85rem}.plist-avatar img{width:100%;height:100%;object-fit:cover}.plist-name-col{display:flex;flex-direction:column;gap:3px}.plist-name-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.plist-id-badge{font-family:var(--font-mono, "IBM Plex Mono", monospace)!important;font-size:.72rem!important;font-weight:700!important;color:#0f2942!important;background:#f1f5f9;border:1px solid #cbd5e1;padding:1px 7px;border-radius:5px;letter-spacing:.03em;white-space:nowrap;line-height:1.4;display:inline-flex;align-items:center}.plist-id-badge.partner{color:#92400e!important;background:#fef3c7!important;border-color:#fcd34d!important;font-weight:800!important}.plist-insurance-badge{font-size:.68rem!important;font-weight:700!important;padding:1px 7px;border-radius:5px;display:inline-flex;align-items:center;gap:3px;white-space:nowrap;background:#fef3c7;color:#b45309;border:1px solid #fde68a}.plist-insurance-badge.ins-4a{background:#e0f2fe;color:#0369a1;border:1px solid #bae6fd}.plist-insurance-badge.ins-4b{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.plist-insurance-badge.ins-muaf{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}.plist-name-link{font-size:.875rem!important;font-weight:700!important;color:#0f172a!important;text-decoration:none!important;transition:color .15s ease;font-family:inherit!important;display:inline-block}.plist-name-link:hover{color:#2563eb!important}.plist-age-badge{font-size:.7rem!important;font-weight:700!important;padding:1px 7px;border-radius:6px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;white-space:nowrap;line-height:1.4;font-family:var(--font-sans, inherit)!important;display:inline-flex;align-items:center}.plist-partner-badge{font-size:.7rem!important;font-weight:800!important;padding:1px 8px;border-radius:6px;background:#fef3c7;color:#92400e;border:1px solid #fcd34d;white-space:nowrap;line-height:1.4;display:inline-flex;align-items:center;gap:4px;box-shadow:0 1px 2px #b4530914}.plist-meta-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.plist-tc-no{font-size:.72rem!important;color:#64748b!important;font-family:var(--font-mono, "IBM Plex Mono", monospace)!important;letter-spacing:.03em;display:inline-block}.plist-birth-date{font-size:.72rem!important;color:#94a3b8!important;font-family:inherit!important;letter-spacing:.02em;display:inline-block}.plist-role-col{display:flex;flex-direction:column;gap:2px}.plist-dept-text{font-size:.84rem!important;font-weight:600!important;color:#0f172a!important;font-family:inherit!important;display:block}.plist-dept-text.partner{color:#92400e!important;font-weight:700!important}.plist-pos-text{font-size:.75rem!important;color:#64748b!important;font-family:inherit!important;display:block}.plist-pos-text.partner{color:#b45309!important;font-weight:700!important}.plist-depts-wrap{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.plist-dept-tag{display:inline-flex;align-items:center;gap:5px;font-size:.81rem!important;font-weight:600!important;color:#1e293b!important;background:#f1f5f9;border:1px solid #e2e8f0;padding:2px 7px;border-radius:6px;line-height:1.25}.plist-dept-tag.partner{background:#fffbeb!important;border-color:#fde68a!important;color:#92400e!important}.plist-dept-tag.manager{background:#eff6ff!important;border-color:#bfdbfe!important;color:#1e40af!important}.plist-dept-icon{color:#64748b;flex-shrink:0}.plist-dept-tag.manager .plist-dept-icon{color:#2563eb}.plist-dept-tag.partner .plist-dept-icon{color:#d97706}.plist-manager-tag{font-size:.65rem!important;font-weight:700!important;background:#dbeafe;color:#1e40af;padding:1px 5px;border-radius:4px;display:inline-flex;align-items:center;gap:2px}.plist-dept-tag.partner .plist-manager-tag{background:#fef3c7;color:#92400e}.plist-contact-col{display:flex;flex-direction:column;gap:4px;font-size:.78rem!important;color:#475569!important;font-family:inherit!important}.plist-contact-item{display:flex;align-items:center;gap:6px;white-space:nowrap;font-family:inherit!important}.plist-bank-col{display:flex;flex-direction:column;gap:2px}.plist-bank-name{font-size:.8125rem!important;font-weight:600!important;color:#0f172a!important;font-family:inherit!important}.plist-iban-row{display:flex;align-items:center;gap:6px}.plist-iban-text{font-size:.72rem!important;font-family:var(--font-mono, "IBM Plex Mono", monospace)!important;color:#64748b!important;letter-spacing:.02em}.plist-copy-btn{border:none;background:transparent;cursor:pointer;color:#94a3b8;padding:0;display:inline-flex;align-items:center;transition:color .15s}.plist-copy-btn:hover{color:#2563eb}.plist-skills-wrap{display:flex;flex-wrap:wrap;gap:4px;max-width:240px}.plist-skill-badge{font-size:.7rem!important;font-weight:600!important;padding:2px 7px;border-radius:6px;background:#f1f5f9;color:#334155;border:1px solid #e2e8f0;white-space:nowrap;font-family:inherit!important}.plist-skill-more{font-size:.68rem!important;font-weight:700!important;padding:2px 6px;border-radius:6px;background:#eff6ff;color:#2563eb;font-family:inherit!important}.plist-status-pill{display:inline-flex;align-items:center;gap:5px;font-size:.72rem!important;font-weight:700!important;padding:3px 9px;border-radius:9999px;white-space:nowrap;font-family:inherit!important}.plist-status-pill.active{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.plist-status-pill.on_leave{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.plist-status-pill.inactive{background:#f1f5f9;color:#64748b;border:1px solid #cbd5e1}.plist-status-pill.terminated{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.plist-status-pill.partner{background:#fef3c7;color:#92400e;border:1px solid #fcd34d;font-weight:800!important}.plist-work-days-cell{display:flex;flex-direction:column;gap:4px;align-items:flex-start}.plist-date-text{font-size:.8125rem!important;font-weight:600!important;color:#334155!important;white-space:nowrap;font-family:inherit!important}.plist-active-days-badge{font-size:.7rem!important;font-weight:700!important;padding:1.5px 6.5px;border-radius:5px;background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;white-space:nowrap;display:inline-flex;align-items:center;gap:3.5px;font-family:var(--font-sans, inherit)!important;line-height:1.35;box-shadow:0 1px 2px #00000005}.plist-active-days-badge.future{background:#f8fafc;color:#64748b;border-color:#e2e8f0}.plist-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}.plist-action-icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease;text-decoration:none}.plist-action-icon-btn:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.plist-action-icon-btn.edit:hover{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.plist-action-icon-btn.delete:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.simple-editor-container{border:1px solid #d1d5db;border-radius:6px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.simple-editor-toolbar{background:#f9fafb;border-bottom:1px solid #e5e7eb;padding:8px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.editor-btn{background:transparent;border:1px solid transparent;border-radius:4px;cursor:pointer;padding:4px 8px;font-size:14px;color:#374151;display:flex;align-items:center;justify-content:center;min-width:32px}.editor-btn:hover{background:#e5e7eb}.editor-btn.active{background:#dbeafe;color:#1e40af;border-color:#bfdbfe}.editor-color-picker{width:32px;height:32px;padding:0;border:none;background:transparent;cursor:pointer}.simple-editor-content{padding:12px;min-height:100px;outline:none;overflow-y:auto;font-family:Calibri,Segoe UI,sans-serif;font-size:14px;line-height:1.5}.simple-editor-content[data-placeholder]:empty:before{content:attr(data-placeholder);color:#9ca3af;cursor:text}.dossier-container{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.dossier-summary-card{background:#fff;border-radius:12px;padding:1.5rem;border:1px solid #e2e8f0;box-shadow:0 2px 4px #00000008;display:flex;flex-direction:column;gap:1rem}.summary-top-row{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.summary-title-group h3{margin:0 0 4px;font-size:1.25rem;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:8px}.summary-title-group p{margin:0;font-size:.875rem;color:#64748b}.summary-badges{display:flex;gap:12px;align-items:center}.summary-badge-item{display:flex;flex-direction:column;align-items:center;background:#f8fafc;padding:8px 16px;border-radius:8px;border:1px solid #e2e8f0;min-width:90px}.summary-badge-item .num{font-size:1.3rem;font-weight:700;color:#0f172a}.summary-badge-item .num.success{color:#16a34a}.summary-badge-item .num.warning{color:#ea580c}.summary-badge-item .lbl{font-size:.75rem;color:#64748b;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.dossier-progress-wrap{display:flex;flex-direction:column;gap:6px}.dossier-progress-label{display:flex;justify-content:space-between;font-size:.85rem;font-weight:600;color:#334155}.dossier-progress-track{height:10px;background:#e2e8f0;border-radius:999px;overflow:hidden}.dossier-progress-bar{height:100%;background:linear-gradient(90deg,#3b82f6,#10b981);border-radius:999px;transition:width .4s ease}.dossier-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.dossier-section-header h4{margin:0;font-size:1.1rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:8px}.dossier-section-header .sub{font-size:.85rem;color:#64748b}.dossier-status-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:600;white-space:nowrap}.dossier-status-pill.missing{background:#fee2e2;color:#dc2626}.dossier-status-pill.draft,.dossier-status-pill.ready_for_signature{background:#fef3c7;color:#b45309}.dossier-status-pill.uploaded,.dossier-status-pill.verified{background:#dcfce7;color:#15803d}.dossier-table{width:100%;border-collapse:collapse;background:#fff}.dossier-table th{background:#f8fafc;color:#475569;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:12px 14px;border-bottom:2px solid #e2e8f0;text-align:left}.dossier-table td{padding:12px 14px;font-size:.875rem;border-bottom:1px solid #f1f5f9;vertical-align:middle;color:#1e293b}.dossier-table tbody tr:hover{background:#f8fafc}.dossier-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end}.action-icon-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:6px;font-size:.8rem;font-weight:500;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;transition:all .15s ease;text-decoration:none}.action-icon-btn:hover{background:#f1f5f9;border-color:#94a3b8}.action-icon-btn.primary{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.action-icon-btn.primary:hover{background:#dbeafe;border-color:#93c5fd}.action-icon-btn.success{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}.action-icon-btn.success:hover{background:#dcfce7;border-color:#86efac}.action-icon-btn.danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.action-icon-btn.danger:hover{background:#fee2e2;border-color:#fca5a5}.file-upload-zone{border:2px dashed #cbd5e1;border-radius:8px;padding:24px;text-align:center;background:#f8fafc;cursor:pointer;transition:border-color .2s}.file-upload-zone:hover{border-color:#3b82f6;background:#eff6ff}.spin{animation:spin 1s linear infinite}.dept-history-container{padding:.5rem 0 2rem}.dept-history-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:2rem}.dept-stat-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem 1.5rem;display:flex;align-items:center;gap:1.25rem;box-shadow:0 1px 3px #0000000d;transition:transform .15s ease,box-shadow .15s ease}.dept-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.dept-stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.dept-stat-icon.blue{background:#eff6ff;color:#2563eb}.dept-stat-icon.green{background:#ecfdf5;color:#059669}.dept-stat-icon.purple{background:#f5f3ff;color:#7c3aed}.dept-stat-info label{display:block;font-size:.8rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em;margin-bottom:.25rem}.dept-stat-info .value{font-size:1.25rem;font-weight:800;color:#0f172a;line-height:1.2}.dept-history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.dept-history-header h3{margin:0;font-size:1.15rem;font-weight:700;color:#1e293b;display:flex;align-items:center;gap:.5rem}.dept-history-add-btn{display:inline-flex;align-items:center;gap:.5rem;background:#2563eb;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;box-shadow:0 2px 6px #2563eb40;transition:background .15s ease,transform .1s ease}.dept-history-add-btn:hover{background:#1d4ed8;transform:translateY(-1px)}.dept-timeline{position:relative;padding-left:2rem;margin-top:1rem}.dept-timeline:before{content:"";position:absolute;top:15px;bottom:15px;left:8px;width:3px;background:#cbd5e1;border-radius:2px}.dept-timeline-item{position:relative;margin-bottom:1.5rem}.dept-timeline-item:last-child{margin-bottom:0}.dept-timeline-node{position:absolute;left:-2rem;top:18px;width:20px;height:20px;border-radius:50%;background:#fff;border:4px solid #94a3b8;box-sizing:border-box;z-index:2;transition:all .2s ease}.dept-timeline-item.active .dept-timeline-node{border-color:#10b981;box-shadow:0 0 0 4px #10b98133;background:#fff}.dept-history-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem 1.5rem;box-shadow:0 1px 4px #0000000a;transition:border-color .15s ease,box-shadow .15s ease}.dept-timeline-item.active .dept-history-card{border-left:4px solid #10b981;background:linear-gradient(to right,#f0fdf4,#fff 25%)}.dept-timeline-item.inactive .dept-history-card{border-left:4px solid #94a3b8;background:#f8fafc}.dept-history-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;flex-wrap:wrap}.dept-title-group{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.dept-name{font-size:1.1rem;font-weight:800;color:#0f172a}.dept-role-badge{font-size:.75rem;font-weight:700;padding:3px 8px;border-radius:6px;text-transform:uppercase;letter-spacing:.03em}.dept-role-badge.primary{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}.dept-role-badge.additional{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.dept-role-badge.manager{background:#f3e8ff;color:#6b21a8;border:1px solid #e9d5ff}.dept-status-badge{font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:8px;display:inline-flex;align-items:center;gap:5px}.dept-status-badge.active{background:#dcfce7;color:#15803d;border:1px solid #bbf7d0}.dept-status-badge.completed{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.dept-position-text{font-size:.95rem;font-weight:600;color:#334155;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.dept-meta-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem;background:#ffffffb3;padding:.75rem 1rem;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:.75rem}.dept-meta-item{font-size:.85rem;color:#475569;display:flex;align-items:center;gap:.4rem}.dept-meta-item strong{color:#0f172a}.dept-notes-box{margin-top:.5rem;padding:.6rem .85rem;background:#f8fafc;border-left:3px solid #cbd5e1;border-radius:4px;font-size:.85rem;color:#475569}.dept-actions{display:flex;gap:.5rem}.dept-action-btn{background:none;border:1px solid #cbd5e1;border-radius:6px;padding:4px 8px;cursor:pointer;font-size:.8rem;display:inline-flex;align-items:center;gap:4px;color:#475569;transition:all .15s ease}.dept-action-btn:hover{background:#f1f5f9;color:#0f172a}.dept-action-btn.delete:hover{background:#fee2e2;color:#b91c1c;border-color:#fca5a5}.dept-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.dept-modal{background:#fff;border-radius:16px;width:100%;max-width:580px;box-shadow:0 20px 25px -5px #0003;overflow:hidden;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.dept-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0;background:#f8fafc}.dept-modal-header h4{margin:0;font-size:1.1rem;font-weight:700;color:#0f172a}.dept-modal-close{background:none;border:none;font-size:1.25rem;color:#64748b;cursor:pointer;padding:4px;border-radius:6px}.dept-modal-close:hover{color:#0f172a;background:#e2e8f0}.dept-modal-body{padding:1.5rem;max-height:75vh;overflow-y:auto}.dept-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.dept-form-group{margin-bottom:1rem}.dept-form-group.full{grid-column:1 / -1}.dept-form-group label{display:block;font-size:.85rem;font-weight:600;color:#334155;margin-bottom:.35rem}.dept-form-group input,.dept-form-group select,.dept-form-group textarea{width:100%;padding:.6rem .85rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.9rem;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}.dept-form-group input:focus,.dept-form-group select:focus,.dept-form-group textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.dept-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e2e8f0;background:#f8fafc}.dept-btn-cancel{padding:.6rem 1.2rem;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#475569;font-weight:600;cursor:pointer}.dept-btn-cancel:hover{background:#f1f5f9}.dept-btn-save{padding:.6rem 1.4rem;background:#2563eb;border:1px solid #2563eb;border-radius:8px;color:#fff;font-weight:600;cursor:pointer;box-shadow:0 2px 6px #2563eb40}.dept-btn-save:hover{background:#1d4ed8}.offboarding-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1050;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .2s ease-out}.offboarding-modal{background:#fff;border-radius:14px;box-shadow:0 25px 50px -12px #00000040;width:100%;max-width:900px;max-height:92vh;display:flex;flex-direction:column;overflow:hidden;animation:slideUp .25s cubic-bezier(.16,1,.3,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.offboarding-modal-header{background:linear-gradient(135deg,#1e293b,#0f172a);color:#fff;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.1)}.offboarding-modal-header .header-info h3{margin:0;font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:10px}.offboarding-modal-header .header-info p{margin:4px 0 0;font-size:.85rem;color:#94a3b8}.offboarding-close-btn{background:transparent;border:none;color:#cbd5e1;font-size:1.5rem;cursor:pointer;line-height:1;border-radius:6px;padding:4px 8px;transition:all .15s}.offboarding-close-btn:hover{background:#ffffff26;color:#fff}.offboarding-stepper{display:flex;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:0 16px}.offboarding-step-item{flex:1;padding:14px 12px;display:flex;align-items:center;justify-content:center;gap:8px;font-size:.85rem;font-weight:600;color:#64748b;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s;-webkit-user-select:none;user-select:none}.offboarding-step-item.active{color:#b91c1c;border-bottom-color:#b91c1c;background:#fff}.offboarding-step-item.completed{color:#15803d}.step-badge{width:24px;height:24px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;background:#e2e8f0;color:#475569}.offboarding-step-item.active .step-badge{background:#dc2626;color:#fff}.offboarding-step-item.completed .step-badge{background:#22c55e;color:#fff}.offboarding-modal-body{padding:24px;overflow-y:auto;flex:1}.offboarding-alert-banner{padding:14px 16px;border-radius:8px;margin-bottom:20px;display:flex;align-items:flex-start;gap:12px;font-size:.88rem;line-height:1.5}.offboarding-alert-banner.warning{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.offboarding-alert-banner.info{background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1}.offboarding-alert-banner.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.offboarding-section-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:18px 20px;margin-bottom:16px;box-shadow:0 1px 3px #0000000d}.offboarding-section-title{font-size:.95rem;font-weight:700;color:#1e293b;margin-top:0;margin-bottom:14px;display:flex;align-items:center;justify-content:space-between}.offboarding-section-title span.badge{font-size:.75rem;padding:3px 8px;border-radius:6px;font-weight:600}.offboarding-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.offboarding-form-group{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.offboarding-form-group label{font-size:.82rem;font-weight:600;color:#334155}.offboarding-form-group input[type=date],.offboarding-form-group select,.offboarding-form-group textarea{padding:10px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:.88rem;color:#1e293b;background-color:#fff;transition:border-color .15s,box-shadow .15s;font-family:inherit}.offboarding-form-group input:focus,.offboarding-form-group select:focus,.offboarding-form-group textarea:focus{outline:none;border-color:#ef4444;box-shadow:0 0 0 3px #ef444426}.offboarding-toggle-label{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:.88rem;font-weight:500;color:#1e293b;transition:background .15s}.offboarding-toggle-label:hover{background:#f1f5f9}.offboarding-toggle-label input[type=checkbox]{width:18px;height:18px;accent-color:#dc2626;cursor:pointer}.offboarding-table{width:100%;border-collapse:collapse;font-size:.84rem;margin-top:8px}.offboarding-table th{background:#f1f5f9;color:#475569;font-weight:600;text-align:left;padding:8px 12px;border-bottom:1px solid #cbd5e1}.offboarding-table td{padding:10px 12px;border-bottom:1px solid #e2e8f0;color:#334155}.offboarding-table tr:hover td{background:#f8fafc}.offboarding-doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}.offboarding-doc-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:14px;display:flex;flex-direction:column;justify-content:space-between;transition:all .15s}.offboarding-doc-card:hover{border-color:#94a3b8;background:#fff;box-shadow:0 2px 6px #0000000d}.offboarding-doc-card .doc-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:10px}.offboarding-doc-card .doc-head h5{margin:0;font-size:.88rem;font-weight:700;color:#0f172a}.offboarding-doc-card .doc-head p{margin:2px 0 0;font-size:.75rem;color:#64748b}.offboarding-doc-card .doc-actions{display:flex;gap:8px;margin-top:10px}.offboarding-modal-footer{padding:16px 24px;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between}.offboarding-modal-footer .footer-left{display:flex;gap:8px}.offboarding-modal-footer .footer-right{display:flex;gap:10px}.btn-offboard-terminate{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;font-weight:700;padding:10px 20px;border-radius:8px;border:none;cursor:pointer;box-shadow:0 2px 6px #dc262659;display:inline-flex;align-items:center;gap:8px;transition:all .15s}.btn-offboard-terminate:hover:not(:disabled){background:linear-gradient(135deg,#b91c1c,#991b1b);box-shadow:0 4px 10px #dc262673}.btn-offboard-terminate:disabled{opacity:.6;cursor:not-allowed}.btn-offboard-reactivate{background:#10b981;color:#fff;font-weight:600;padding:10px 18px;border-radius:8px;border:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px}.btn-offboard-reactivate:hover:not(:disabled){background:#059669}.dept-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;width:100vw;height:100vh;background-color:#fff;z-index:99999;display:flex;align-items:stretch;justify-content:stretch;padding:0;margin:0;animation:deptModalFadeIn .15s ease-out}@keyframes deptModalFadeIn{0%{opacity:0}to{opacity:1}}.dept-modal-container{background:#fff;border-radius:0;width:100vw;height:100vh;max-width:100vw;max-height:100vh;display:flex;flex-direction:column;box-shadow:none;border:none;overflow:hidden;animation:none}.dept-modal-header{padding:1.1rem 2.5rem;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;background:#fff;flex-shrink:0}.dept-modal-header-left{display:flex;align-items:center;gap:1rem}.dept-modal-header-icon{width:44px;height:44px;border-radius:12px;background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dept-modal-title{margin:0;font-size:1.15rem;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dept-modal-title .badge-required{font-size:.72rem;font-weight:700;background:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:2px 8px;border-radius:6px;letter-spacing:.2px}.dept-sync-badge{font-size:.7rem;font-weight:600;background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0;padding:2px 7px;border-radius:6px;display:inline-flex;align-items:center;gap:4px}.dept-sync-badge .spin{animation:deptSpin 1s linear infinite}@keyframes deptSpin{to{transform:rotate(360deg)}}.dept-modal-subtitle{margin:3px 0 0;font-size:.82rem;color:#64748b;line-height:1.4}.dept-modal-close-btn{background:transparent;border:1px solid transparent;border-radius:8px;color:#64748b;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.dept-modal-close-btn:hover{background:#e2e8f0;color:#0f172a}.dept-modal-toolbar{padding:.85rem 2.5rem;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:1.25rem;flex-wrap:wrap}.dept-modal-search{position:relative;flex:1;min-width:260px}.dept-modal-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none}.dept-modal-search-input{width:100%;padding:.55rem 2.2rem .55rem 2.4rem;border:1px solid #cbd5e1;border-radius:8px;font-size:.85rem;color:#0f172a;background:#f8fafc;outline:none;transition:all .15s ease}.dept-modal-search-input:focus{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.dept-modal-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:2px;border-radius:4px}.dept-modal-search-clear:hover{color:#0f172a;background:#e2e8f0}.dept-modal-filters{display:flex;align-items:center;gap:.5rem}.dept-modal-filter-btn{font-size:.78rem;font-weight:600;padding:5px 12px;border-radius:20px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .15s ease}.dept-modal-filter-btn:hover{background:#f1f5f9;color:#1e293b}.dept-modal-filter-btn.active{background:#eff6ff;color:#2563eb;border-color:#bfdbfe}.dept-modal-multiselect-toggle{display:flex;align-items:center;gap:8px;font-size:.8rem;color:#475569;cursor:pointer;-webkit-user-select:none;user-select:none}.dept-modal-body{flex:1;overflow-y:auto;padding:1.75rem 2.5rem 2.5rem;background:#f8fafc;display:flex;flex-direction:column;gap:1.75rem}.org-section-header{display:flex;align-items:center;gap:8px;font-size:.92rem;font-weight:700;color:#334155;margin-bottom:1rem}.org-hierarchy-view{display:flex;flex-direction:column;gap:2rem}.dept-hub-block{display:flex;flex-direction:column;gap:1rem}.dept-hub-card{background:linear-gradient(135deg,#fff,#f0f7ff);border:1.5px solid #bfdbfe;border-radius:16px;box-shadow:0 4px 16px -2px #2563eb14;position:relative;overflow:hidden;cursor:pointer;transition:all .2s ease}.dept-hub-card:before{content:"";position:absolute;top:0;left:0;bottom:0;width:6px;background:#2563eb}.dept-hub-card:hover{border-color:#93c5fd;box-shadow:0 8px 24px -2px #2563eb26}.dept-hub-card.selected{border-color:#2563eb;background:linear-gradient(135deg,#fff,#e0edff);box-shadow:0 0 0 2px #2563eb33,0 8px 24px -2px #2563eb26}.dept-hub-card-inner{padding:1.25rem 1.5rem 1.25rem 1.75rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.dept-hub-main{display:flex;align-items:flex-start;gap:1.15rem;flex:1;min-width:280px}.dept-hub-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;flex-shrink:0;box-shadow:0 4px 12px #2563eb40}.dept-hub-info{display:flex;flex-direction:column;gap:4px}.dept-hub-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.dept-hub-pill{font-size:.6875rem;font-weight:800;letter-spacing:.04em;color:#1d4ed8;background:#dbeafe;padding:3px 9px;border-radius:6px;display:inline-flex;align-items:center}.dept-hub-title{font-size:1.25rem;font-weight:800;color:#0f172a;margin:0;letter-spacing:-.01em}.dept-hub-desc{font-size:.82rem;color:#475569;margin:0;line-height:1.4}.dept-hub-meta{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.dept-hub-manager-card{background:#fff;border:1px solid #cbd5e1;padding:6px 12px;border-radius:8px;display:flex;flex-direction:column;gap:2px;min-width:190px;box-shadow:0 1px 3px #0000000a}.dept-hub-manager-label{font-size:.62rem;font-weight:800;color:#3b82f6;letter-spacing:.03em}.dept-hub-manager-name{font-size:.84rem;font-weight:800;color:#0f172a}.dept-hub-stats{display:flex;flex-direction:column;gap:5px}.dept-hub-stat-item{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#334155;background:#fff;padding:3px 9px;border-radius:6px;border:1px solid #e2e8f0}.dept-hub-actions{display:flex;align-items:center}.dept-hub-direct-staff{padding:.85rem 1.5rem 1rem 1.75rem;background:#fff9;border-top:1px solid #e2e8f0}.dept-sub-container{margin-left:1.25rem;padding-left:1.25rem;border-left:2px dashed #93c5fd;position:relative;display:flex;flex-direction:column;gap:.85rem}.dept-sub-header{display:flex;flex-direction:column;gap:3px}.dept-sub-header-title{display:flex;align-items:center;gap:8px;font-size:.88rem;font-weight:800;color:#1e3a8a}.dept-tree-icon{color:#2563eb}.dept-sub-count{font-size:.76rem;font-weight:700;color:#64748b}.dept-sub-hint{font-size:.75rem;color:#64748b}.dept-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.25rem}.sub-grid{grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1rem}.dept-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;transition:all .2s ease;overflow:hidden;box-shadow:0 1px 3px #00000008;display:flex;flex-direction:column;cursor:pointer;position:relative}.dept-card:hover{border-color:#cbd5e1;box-shadow:0 6px 16px #0000000f;transform:translateY(-1px)}.dept-card.selected{border-color:#2563eb;background:#fff;box-shadow:0 0 0 2px #2563eb33,0 6px 18px #2563eb1a}.dept-card-stripe{height:5px;width:100%}.dept-card-body{padding:1rem 1.15rem;display:flex;flex-direction:column;flex:1;gap:.65rem}.dept-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.dept-card-top-left{display:flex;align-items:flex-start;gap:.75rem;flex:1}.dept-icon-wrapper{width:38px;height:38px;border-radius:9px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1rem;flex-shrink:0;box-shadow:0 2px 6px #0000001a}.dept-icon-wrapper.sub{width:34px;height:34px;font-size:.9rem;border-radius:8px}.dept-card-title-meta{display:flex;flex-direction:column;gap:2px}.dept-name{font-size:.96rem;font-weight:750;color:#0f172a;margin:2px 0 0;line-height:1.3}.dept-code-tag{font-size:.6875rem;font-weight:700;font-family:var(--font-mono, monospace);padding:1.5px 6px;border-radius:4px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.dept-sub-badge{font-size:.65rem;font-weight:700;color:#2563eb;background:#eff6ff;padding:1.5px 6px;border-radius:4px;border:1px solid #bfdbfe;display:inline-flex;align-items:center;gap:3px}.dept-parent-tag{font-size:.65rem;font-weight:700;color:#1e40af;background:#dbeafe;padding:1.5px 6px;border-radius:4px;border:1px solid #bfdbfe;display:inline-flex;align-items:center;gap:3px}.dept-desc{font-size:.77rem;color:#64748b;line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dept-manager-box{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;padding:6px 10px;border-radius:7px}.dept-manager-label{font-size:.62rem;font-weight:700;color:#94a3b8;text-transform:uppercase;display:block;letter-spacing:.2px}.dept-manager-name{font-size:.78rem;font-weight:700;color:#0f172a}.dept-select-action-btn{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:7px;font-size:.78rem;font-weight:600;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;transition:all .15s ease;white-space:nowrap}.dept-select-action-btn:hover{background:#eff6ff;color:#2563eb;border-color:#93c5fd}.dept-select-action-btn.active{background:#2563eb;color:#fff;border-color:#2563eb;box-shadow:0 2px 6px #2563eb40}.dept-select-action-btn.active-manager{background:#f59e0b;color:#fff;border-color:#d97706;box-shadow:0 2px 6px #f59e0b59}.dept-card.selected.is-manager-selected,.dept-hub-card.selected.is-manager-selected{border-color:#f59e0b;box-shadow:0 0 0 2px #f59e0b40,0 6px 18px #f59e0b1f}.dept-role-selector-box{background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:8px;margin-top:4px;animation:deptRoleFade .18s ease-out}.dept-role-selector-box.in-hub{background:#fff;border-color:#bfdbfe;margin:0 1.75rem 1rem}@keyframes deptRoleFade{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dept-role-selector-header{display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.dept-role-selector-title{font-size:.76rem;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:.2px}.dept-role-active-indicator{font-size:.72rem;font-weight:700;padding:2px 8px;border-radius:6px;display:inline-flex;align-items:center;gap:4px}.dept-role-active-indicator.indicator-manager{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.dept-role-active-indicator.indicator-personnel{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.dept-role-segmented{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#e2e8f0;padding:3px;border-radius:8px}.dept-role-segment-btn{border:none;background:transparent;color:#64748b;font-size:.8rem;font-weight:700;padding:6px 12px;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:all .15s ease}.dept-role-segment-btn:hover{color:#0f172a}.dept-role-segment-btn.active-personnel{background:#2563eb;color:#fff;box-shadow:0 2px 4px #2563eb33}.dept-role-segment-btn.active-manager{background:#f59e0b;color:#fff;box-shadow:0 2px 4px #f59e0b40}.dept-role-manager-alert{display:flex;align-items:center;gap:6px;font-size:.74rem;font-weight:600;color:#b45309;background:#fffbeb;border:1px solid #fde68a;padding:6px 10px;border-radius:6px;line-height:1.35}.dept-card-personnel-section{padding-top:.5rem;border-top:1px solid #f1f5f9;display:flex;flex-direction:column;gap:6px}.dept-personnel-header{display:flex;align-items:center;justify-content:space-between}.dept-personnel-label{font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.3px;display:flex;align-items:center;gap:5px}.dept-card-count-badge{font-size:.7rem;font-weight:600;display:inline-flex;align-items:center;gap:4px;padding:1.5px 6px;border-radius:5px;background:#f1f5f9;color:#475569}.dept-card-count-badge.has-members{background:#eff6ff;color:#1d4ed8;border:1px solid #dbeafe}.dept-personnel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;max-height:160px;overflow-y:auto;padding-right:2px}.dept-person-chip{display:flex;align-items:center;gap:7px;padding:4px 8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;transition:all .15s ease}.dept-person-chip:hover{background:#fff;border-color:#cbd5e1}.dept-person-chip.is-manager{background:#fffbeb;border-color:#fde68a}.dept-person-avatar{width:26px;height:26px;border-radius:50%;background:#e2e8f0;color:#334155;font-size:.68rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.dept-person-avatar img{width:100%;height:100%;object-fit:cover}.dept-person-meta{display:flex;flex-direction:column;overflow:hidden;min-width:0;flex:1}.dept-person-name{font-size:.76rem;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dept-person-role{font-size:.68rem;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dept-person-no{font-size:.62rem;font-weight:600;color:#2563eb;background:#eff6ff;padding:1px 4px;border-radius:3px;align-self:flex-start}.dept-personnel-empty{font-size:.74rem;color:#94a3b8;font-style:italic;padding:4px 0}.dept-independent-section{display:flex;flex-direction:column;gap:1rem;padding-top:1.5rem;border-top:1.5px solid #e2e8f0}.dept-independent-header{display:flex;flex-direction:column;gap:3px}.dept-independent-title{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:800;color:#0f172a}.dept-independent-desc{font-size:.78rem;color:#64748b;margin:0}.dept-empty-results{text-align:center;padding:3rem 1rem;display:flex;flex-direction:column;align-items:center;justify-content:center}.dept-empty-title{font-size:.95rem;font-weight:700;color:#1e293b;margin-top:10px}.dept-empty-desc{font-size:.82rem;color:#64748b;margin-top:4px}.dept-modal-footer{padding:1rem 2.5rem;background:#fff;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap;flex-shrink:0;box-shadow:0 -4px 12px #0f172a0a}.dept-modal-footer-selection{display:flex;align-items:center;gap:8px;flex:1}.dept-modal-selected-badge{display:inline-flex;align-items:center;gap:8px;background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe;padding:4px 10px;border-radius:8px;font-weight:600;font-size:.82rem;transition:all .15s ease}.dept-modal-selected-badge.badge-is-manager{background:#fffbeb;border-color:#fde68a;color:#b45309}.dept-modal-badge-role-toggle{border:none;background:#fff;border-radius:6px;padding:2px 7px;display:inline-flex;align-items:center;gap:4px;cursor:pointer;font-size:.72rem;font-weight:700;color:inherit;box-shadow:0 1px 2px #0000000f;border:1px solid rgba(0,0,0,.08);transition:all .15s ease}.dept-modal-badge-role-toggle:hover{background:#f8fafc;transform:scale(1.02)}.dept-modal-badge-name{font-weight:700}.dept-modal-badge-remove{background:transparent;border:none;color:#ef4444;cursor:pointer;font-size:1rem;line-height:1;padding:0 2px;font-weight:700}.dept-modal-badge-remove:hover{color:#b91c1c}.dept-modal-footer-actions{display:flex;align-items:center;gap:.75rem}.dept-modal-btn-cancel{padding:8px 16px;border:1px solid #cbd5e1;background:#fff;color:#475569;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease}.dept-modal-btn-cancel:hover{background:#f1f5f9;color:#0f172a}.dept-modal-btn-confirm{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;border:none;background:#2563eb;color:#fff;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .15s ease;box-shadow:0 2px 4px #2563eb33}.dept-modal-btn-confirm:hover:not(:disabled){background:#1d4ed8}.dept-modal-btn-confirm:disabled{background:#94a3b8;cursor:not-allowed;opacity:.7}.pform-dept-field-wrapper{display:flex;flex-direction:column;gap:8px}.pform-dept-unselected-box{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border:1.5px dashed #f59e0b;background:#fffbeb;border-radius:10px;gap:1rem;transition:all .15s ease}.pform-dept-unselected-box.has-error{border-color:#ef4444;background:#fef2f2}.pform-dept-unselected-info{display:flex;align-items:center;gap:.75rem}.pform-dept-btn-open-modal{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;background:#2563eb;color:#fff;border:none;border-radius:8px;font-size:.85rem;font-weight:600;cursor:pointer;box-shadow:0 2px 6px #2563eb40;transition:all .15s ease;white-space:nowrap}.pform-dept-btn-open-modal:hover{background:#1d4ed8;transform:translateY(-1px)}.pform-dept-selected-card{display:flex;align-items:center;justify-content:space-between;padding:.85rem 1.15rem;border:1.5px solid #bfdbfe;background:#eff6ff;border-radius:10px;gap:1rem}.pform-dept-selected-left{display:flex;align-items:center;gap:.85rem}.pform-dept-selected-icon{width:40px;height:40px;border-radius:10px;background:#dbeafe;color:#1d4ed8;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pform-dept-selected-name{font-size:.95rem;font-weight:700;color:#1e3a8a;display:flex;align-items:center;gap:8px}.pform-dept-selected-meta{font-size:.78rem;color:#3b82f6;display:flex;align-items:center;gap:6px;margin-top:2px}.pform-dept-selected-actions{display:flex;align-items:center;gap:8px}.pform-dept-btn-change{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#fff;color:#1d4ed8;border:1px solid #bfdbfe;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .15s ease}.pform-dept-btn-change:hover{background:#f8faff;border-color:#2563eb;color:#2563eb}.pform-dept-btn-remove{background:transparent;border:none;color:#ef4444;font-size:1.2rem;font-weight:700;cursor:pointer;padding:2px 6px;border-radius:4px}.pform-dept-btn-remove:hover{background:#fee2e2}.special-service-page{padding:1.5rem 2rem;width:100%;max-width:100%;margin:0;box-sizing:border-box;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.special-service-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid rgba(226,232,240,.8)}.special-service-header h1{font-size:2rem;font-weight:800;color:#0f172a;margin:0 0 .5rem;display:flex;align-items:center;gap:12px}.special-service-header p{color:#64748b;font-size:1rem;margin:0}.badge-prep{display:inline-flex;align-items:center;gap:6px;background:#eff6ff;color:#0284c7;border:1px solid #bae6fd;padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.25rem;margin-bottom:2rem}.kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.25rem 1.5rem;box-shadow:0 4px 6px -1px #0000000d;display:flex;align-items:center;gap:1rem}.kpi-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:#f8fafc}.kpi-label{font-size:.85rem;color:#64748b;font-weight:500}.kpi-value{font-size:1.4rem;font-weight:700;color:#0f172a;margin-top:2px}.banner-box{background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:20px;padding:2.5rem;color:#fff;margin-bottom:2.5rem;position:relative;overflow:hidden;box-shadow:0 10px 25px -5px #0f172a4d}.banner-box:before{content:"";position:absolute;top:-50px;right:-50px;width:250px;height:250px;background:radial-gradient(circle,#38bdf826,#0000 70%);border-radius:50%}.banner-content{position:relative;z-index:1;max-width:700px}.banner-icon{font-size:2.5rem;margin-bottom:1rem}.banner-content h2{font-size:1.6rem;font-weight:700;margin-bottom:.75rem;color:#f8fafc}.banner-content p{color:#94a3b8;line-height:1.6;font-size:1rem;margin-bottom:1.5rem}.banner-actions{display:flex;gap:1rem}.btn-banner-primary{background:#0284c7;color:#fff;border:none;padding:10px 22px;border-radius:10px;font-weight:600;cursor:pointer;transition:all .2s}.btn-banner-primary:hover{background:#0369a1;transform:translateY(-2px)}.categories-section h3{font-size:1.25rem;font-weight:700;color:#0f172a;margin-bottom:1.25rem}.categories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.category-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;justify-content:space-between}.category-card:hover{border-color:#cbd5e1;box-shadow:0 12px 20px -5px #00000014;transform:translateY(-4px)}.category-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem}.category-icon{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem}.tag-soon{background:#f1f5f9;color:#64748b;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:12px}.category-title{font-size:1.1rem;font-weight:700;color:#0f172a;margin-bottom:.5rem}.category-desc{font-size:.9rem;color:#64748b;line-height:1.5;margin-bottom:1.5rem}.category-footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #f1f5f9;padding-top:1rem;color:#0284c7;font-size:.88rem;font-weight:600}.ia-calc-page{padding:1.5rem 2rem;width:100%;max-width:100%;margin:0;box-sizing:border-box;animation:fadeIn .35s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.ia-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.ia-header h1{font-size:1.8rem;font-weight:800;color:#0f172a;margin:0 0 .25rem;display:flex;align-items:center;gap:10px}.ia-header p{color:#64748b;font-size:.95rem;margin:0}.ia-source-card{background:#f8fafc;border:1px solid #e2e8f0;border-left:4px solid #0284c7;padding:12px 18px;border-radius:10px;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center;font-size:.88rem;color:#334155}.ia-source-title{font-weight:700;color:#0f172a}.ia-source-text{color:#475569;margin-top:2px}.ia-nav-tabs{display:flex;gap:8px;border-bottom:2px solid #e2e8f0;margin-bottom:1.5rem;overflow-x:auto}.ia-tab-btn{padding:10px 18px;border:none;background:transparent;color:#64748b;font-weight:600;font-size:.92rem;border-bottom:3px solid transparent;margin-bottom:-2px;cursor:pointer;white-space:nowrap;transition:all .2s}.ia-tab-btn:hover{color:#0f172a;background:#f1f5f9;border-radius:6px 6px 0 0}.ia-tab-btn.active{color:#0284c7;border-bottom-color:#0284c7;font-weight:700}.ia-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.75rem;box-shadow:0 4px 6px -1px #0000000d}.ia-calc-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}@media (max-width: 992px){.ia-calc-grid{grid-template-columns:1fr}}.ia-result-panel{background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:16px;padding:1.75rem;color:#fff}.ia-result-title{font-size:1.1rem;font-weight:700;color:#f8fafc;margin-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:.75rem}.ia-metric-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.05);font-size:.9rem}.ia-metric-label{color:#94a3b8}.ia-metric-value{font-weight:600;color:#f8fafc}.ia-grand-total{margin-top:1.5rem;padding:1.25rem;background:#0284c733;border:1px solid rgba(56,189,248,.4);border-radius:12px;text-align:center}.ia-grand-total-label{font-size:.85rem;color:#7dd3fc;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.ia-grand-total-val{font-size:2rem;font-weight:800;color:#fff;margin-top:4px}.btn-reset-official{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0;padding:8px 16px;border-radius:8px;font-weight:700;font-size:.85rem;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .2s}.btn-reset-official:hover{background:#dcfce7;color:#14532d}@media print{body:has(.ia-calc-page) *{visibility:hidden}.ia-calc-page,.ia-calc-page *{visibility:visible}.ia-calc-page{position:absolute;left:0;top:0;width:100%;max-width:100%;padding:0}.ia-nav-tabs,.btn-reset-official,.page-header button{display:none!important}}.proj-select-container{position:relative;width:100%}.proj-select-trigger{width:100%;padding:10px 14px;border-radius:10px;border:1px solid #7dd3fc;background:#fff;font-weight:600;color:#0c4a6e;cursor:pointer;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px 2px #0000000d;transition:all .2s}.proj-select-trigger:hover{border-color:#0284c7;background:#f0f9ff}.proj-dropdown-menu{position:absolute;top:105%;left:0;right:0;z-index:100;background:#fff;border:1px solid #cbd5e1;border-radius:12px;box-shadow:0 10px 25px -5px #00000026;padding:10px;max-height:350px;display:flex;flex-direction:column;gap:8px}.proj-search-input{width:100%;padding:9px 12px;border-radius:8px;border:1px solid #cbd5e1;font-size:.88rem;box-sizing:border-box;outline:none}.proj-search-input:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c726}.proj-list{overflow-y:auto;max-height:260px;display:flex;flex-direction:column;gap:4px}.proj-item{padding:8px 12px;border-radius:8px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:background .15s}.proj-item:hover{background:#f1f5f9}.proj-item.selected{background:#e0f2fe}.badge-active{background:#dcfce7;color:#15803d;border:1px solid #86efac;padding:2px 8px;border-radius:6px;font-size:.75rem;font-weight:700}.badge-passive{background:#f1f5f9;color:#64748b;border:1px solid #cbd5e1;padding:2px 8px;border-radius:6px;font-size:.75rem;font-weight:700}.gazette-container{background:#fff;border:3px double #b91c1c;border-radius:12px;padding:1.75rem;font-family:Times New Roman,Times,serif,Arial,sans-serif;color:#0f172a}.gazette-header{text-align:center;border-bottom:2px solid #b91c1c;padding-bottom:1rem;margin-bottom:1.5rem}.gazette-ministry{font-size:1.15rem;font-weight:800;color:#b91c1c;text-transform:uppercase;letter-spacing:.02em}.gazette-title{font-size:1.1rem;font-weight:800;color:#b91c1c;margin-top:6px;text-transform:uppercase}.gazette-article{font-size:.92rem;line-height:1.5;color:#1e293b;background:#fff5f5;border:1px solid #fecaca;border-left:4px solid #b91c1c;padding:10px 14px;border-radius:6px;margin-bottom:1.5rem;font-family:inherit}.gazette-table{width:100%;border-collapse:collapse;border:2px solid #000;font-family:inherit}.gazette-table th{border:2px solid #000;padding:10px;background:#f8fafc;color:#b91c1c;font-weight:800;font-size:1rem;text-transform:uppercase}.gazette-group-header-row{border:2px solid #000;background:#fff}.gazette-group-title-input{font-size:1rem;font-weight:800;color:#b91c1c;font-family:inherit;border:1px solid transparent;width:100%;padding:4px 8px;box-sizing:border-box}.gazette-group-title-input:hover,.gazette-group-title-input:focus{border-color:#b91c1c;background:#fff5f5;border-radius:4px}.gazette-unit-cost-input{font-size:1rem;font-weight:800;color:#b91c1c;font-family:inherit;border:1px solid transparent;width:140px;text-align:right;padding:4px 8px;box-sizing:border-box}.gazette-unit-cost-input:hover,.gazette-unit-cost-input:focus{border-color:#b91c1c;background:#fff5f5;border-radius:4px}.gazette-subitem-input{font-size:.92rem;color:#0f172a;font-family:inherit;border:1px solid transparent;width:95%;padding:3px 6px;box-sizing:border-box}.gazette-subitem-input:hover,.gazette-subitem-input:focus{border-color:#cbd5e1;background:#f8fafc;border-radius:4px}.letterhead-page{display:flex;flex-direction:column;min-height:calc(100vh - 60px);background-color:#cbd5e1;font-family:inherit;color:#1e293b}.lh-header-bar{background:#fff;border-bottom:1px solid #cbd5e1;padding:10px 24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;position:sticky;top:0;z-index:40;box-shadow:0 1px 4px #0000000f}.lh-header-left{display:flex;align-items:center;gap:14px}.lh-back-btn{display:inline-flex;align-items:center;gap:6px;color:#0284c7;text-decoration:none;font-size:.88rem;font-weight:600;padding:6px 12px;border-radius:8px;background:#f0f9ff;border:1px solid #bae6fd;transition:all .15s ease}.lh-back-btn:hover{background:#e0f2fe;color:#0369a1}.lh-doc-title-input{font-size:1.15rem;font-weight:700;color:#0f172a;border:1px solid transparent;padding:6px 10px;border-radius:8px;background:transparent;outline:none;transition:all .2s;min-width:240px}.lh-doc-title-input:hover,.lh-doc-title-input:focus{background:#f8fafc;border-color:#cbd5e1}.lh-header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lh-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;font-size:.88rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:all .15s ease}.lh-btn-secondary{background:#fff;border-color:#cbd5e1;color:#334155}.lh-btn-secondary:hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}.lh-btn-primary{background:#0284c7;color:#fff;border-color:#0284c7}.lh-btn-primary:hover{background:#0369a1;border-color:#0369a1}.lh-btn-word{background:#1e3a8a;color:#fff;border-color:#1e3a8a}.lh-btn-word:hover{background:#1e40af}.lh-btn-print{background:#0f766e;color:#fff;border-color:#0f766e}.lh-btn-print:hover{background:#115e59}.lh-word-ribbon{background:#f8fafc;border-bottom:1px solid #cbd5e1;padding:8px 24px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;position:sticky;top:57px;z-index:30;box-shadow:0 1px 3px #0000000a}.lh-ribbon-group{display:flex;align-items:center;gap:4px;background:#fff;padding:4px 6px;border-radius:8px;border:1px solid #e2e8f0}.lh-select{height:32px;padding:0 8px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;font-size:.85rem;font-weight:500;color:#334155;outline:none;cursor:pointer}.lh-select:focus{border-color:#0284c7}.lh-tool-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid transparent;background:transparent;color:#475569;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .15s}.lh-tool-btn:hover{background:#f1f5f9;color:#0f172a}.lh-tool-btn.active{background:#e0f2fe;color:#0284c7;border-color:#bae6fd}.lh-color-picker-wrap{position:relative;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px}.lh-color-picker-wrap input[type=color]{position:absolute;opacity:0;width:100%;height:100%;cursor:pointer}.lh-color-badge{width:18px;height:18px;border-radius:4px;border:1px solid #94a3b8;display:inline-block}.lh-page-info-badge{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700;color:#0369a1;background:#e0f2fe;padding:4px 10px;border-radius:6px;border:1px solid #bae6fd}.lh-workspace{flex:1;display:flex;flex-direction:column;align-items:center;padding:36px 20px 100px;overflow-x:auto}.lh-pages-stack{display:flex;flex-direction:column;align-items:center;gap:36px;width:100%}.lh-page-sheet{background:#fff;box-shadow:0 12px 30px -6px #0000002e,0 8px 16px -8px #0000001f;border-radius:4px;position:relative;box-sizing:border-box;display:flex;flex-direction:column;transition:all .2s ease;border:1px solid #e2e8f0}.lh-page-sheet.active-sheet{box-shadow:0 0 0 2px #0284c7,0 16px 36px -6px #0284c740}.lh-sheet-corner-badge{position:absolute;top:-14px;right:18px;background:#0f172a;color:#fff;font-size:.75rem;font-weight:700;padding:3px 10px;border-radius:12px;box-shadow:0 2px 5px #0003;display:flex;align-items:center;gap:6px;z-index:10}.lh-sheet-actions{position:absolute;top:-14px;left:18px;display:flex;align-items:center;gap:6px;z-index:10}.lh-sheet-action-btn{background:#fff;border:1px solid #cbd5e1;color:#475569;border-radius:6px;padding:2px 8px;font-size:.75rem;font-weight:600;cursor:pointer;box-shadow:0 1px 3px #00000014;display:inline-flex;align-items:center;gap:4px;transition:all .15s}.lh-sheet-action-btn:hover{background:#f1f5f9;color:#0f172a;border-color:#94a3b8}.lh-sheet-action-btn.delete-btn:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.lh-margin-standard{padding:44px 52px}.lh-margin-narrow{padding:24px 28px}.lh-margin-wide{padding:56px 64px}.lh-letterhead-header{margin-bottom:16px;padding-bottom:12px;position:relative;flex-shrink:0}.lh-header-style-1{display:flex;justify-content:space-between;align-items:center;border-bottom:3px solid #0284c7;padding-bottom:12px}.lh-header-style-1 .lh-header-logo-area{display:flex;align-items:center;gap:12px}.lh-header-style-1 .lh-logo-img{max-height:52px;max-width:140px;object-fit:contain}.lh-header-style-1 .lh-company-title{font-size:1.2rem;font-weight:800;color:#0f172a;letter-spacing:-.5px;line-height:1.2}.lh-header-style-1 .lh-company-subtitle{font-size:.8rem;color:#0284c7;font-weight:600}.lh-header-style-1 .lh-header-info-area{text-align:right;font-size:.76rem;color:#475569;line-height:1.4}.lh-header-style-2{text-align:center;border-top:2px solid #0f172a;border-bottom:2px solid #0f172a;padding:12px 0}.lh-header-style-2 .lh-logo-img{max-height:48px;margin-bottom:6px}.lh-header-style-2 .lh-company-title{font-size:1.25rem;font-weight:800;color:#0f172a;letter-spacing:1px;text-transform:uppercase}.lh-header-style-2 .lh-header-info-area{font-size:.75rem;color:#64748b;margin-top:6px;display:flex;justify-content:center;gap:14px;flex-wrap:wrap}.lh-header-style-3{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #cbd5e1;padding-bottom:10px}.lh-header-style-3 .lh-company-title{font-size:1.15rem;font-weight:700;color:#1e293b}.lh-header-style-3 .lh-header-info-area{font-size:.76rem;color:#64748b;margin-top:4px}.lh-header-style-3 .lh-logo-img{max-height:48px}.lh-header-style-4{border-bottom:2px solid #0284c7;padding-bottom:8px;display:flex;justify-content:space-between;align-items:center}.lh-meta-strip{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;font-size:.82rem;color:#475569;margin-bottom:16px;padding:8px 12px;background:#f8fafc;border-radius:6px;border:1px solid #e2e8f0;flex-shrink:0}.lh-meta-item{display:inline-flex;align-items:center;gap:6px}.lh-meta-related{background:#f0f9ff;color:#0369a1;padding:2px 8px;border-radius:4px;border:1px solid #bae6fd;font-weight:600}.lh-editor-body{flex:1;outline:none;font-size:11pt;line-height:var(--lh-line-height, 1.6);color:#1e293b;min-height:450px}.lh-editor-body p{margin-top:0;margin-bottom:var(--lh-paragraph-spacing, 10px)}.lh-editor-body table{width:100%;border-collapse:collapse;margin:14px 0}.lh-editor-body table th,.lh-editor-body table td{border:1px solid #cbd5e1;padding:8px 10px}.lh-letterhead-footer{margin-top:auto;padding-top:10px;border-top:1px solid #cbd5e1;display:flex;justify-content:space-between;align-items:flex-end;font-size:.76rem;color:#64748b;flex-shrink:0;gap:16px;position:relative}.lh-footer-left{flex:1;min-width:0;line-height:1.45;outline:none;cursor:text;padding:3px 6px;border-radius:4px;transition:all .15s;word-break:break-word}.lh-footer-left:hover,.lh-footer-left:focus{background:#f1f5f9;box-shadow:0 0 0 1px #0284c7}.lh-footer-right{text-align:right;flex-shrink:0;display:flex;align-items:center;gap:12px;line-height:1.45}.lh-footer-right-text{outline:none;cursor:text;padding:3px 6px;border-radius:4px;transition:all .15s;white-space:nowrap}.lh-footer-right-text:hover,.lh-footer-right-text:focus{background:#f1f5f9;box-shadow:0 0 0 1px #0284c7}.lh-footer-page-badge{background:#f1f5f9;padding:3px 8px;border-radius:4px;font-weight:700;color:#0f172a;white-space:nowrap;font-size:.74rem;border:1px solid #e2e8f0}.lh-add-page-btn-container{display:flex;justify-content:center;margin-top:12px;width:100%}.lh-add-page-btn{display:inline-flex;align-items:center;gap:8px;background:#fff;color:#0284c7;border:2px dashed #0284c7;padding:12px 24px;border-radius:10px;font-weight:700;font-size:.95rem;cursor:pointer;box-shadow:0 4px 12px #0284c71f;transition:all .2s ease}.lh-add-page-btn:hover{background:#f0f9ff;border-color:#0369a1;color:#0369a1;transform:translateY(-2px);box-shadow:0 6px 16px #0284c733}.lh-settings-modal{position:fixed;top:0;right:0;width:440px;height:100vh;background:#fff;box-shadow:-4px 0 24px #0000002e;z-index:100;display:flex;flex-direction:column;animation:slideInRight .25s ease-out}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}.lh-settings-header{padding:16px 20px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.lh-settings-header h3{margin:0;font-size:1.1rem;font-weight:700}.lh-drawer-tabs{display:flex;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:0 10px;overflow-x:auto}.lh-drawer-tab{padding:10px 12px;font-size:.8rem;font-weight:600;color:#64748b;border:none;background:transparent;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;transition:all .15s}.lh-drawer-tab:hover{color:#0f172a}.lh-drawer-tab.active{color:#0284c7;border-bottom-color:#0284c7;font-weight:700}.lh-settings-content{flex:1;overflow-y:auto;padding:20px}.lh-form-group{margin-bottom:14px}.lh-form-group label{display:block;font-size:.85rem;font-weight:600;color:#334155;margin-bottom:6px}.lh-form-input{width:100%;padding:8px 12px;border-radius:6px;border:1px solid #cbd5e1;font-size:.9rem;box-sizing:border-box}.lh-form-input:focus{outline:none;border-color:#0284c7}.lh-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.lh-number-preview-box{background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:12px 16px;margin:12px 0 16px}.lh-number-preview-title{font-size:.75rem;font-weight:700;color:#0369a1;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.lh-number-preview-val{font-size:1.15rem;font-weight:800;color:#0284c7;font-family:monospace}.lh-modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172a99;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;z-index:100}.lh-templates-modal{background:#fff;border-radius:14px;width:90%;max-width:920px;max-height:88vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0003}.lh-template-tabs{display:flex;align-items:center;gap:8px;padding:10px 20px;border-bottom:1px solid #e2e8f0;background:#f8fafc;overflow-x:auto}.lh-template-tab{padding:6px 14px;border-radius:20px;font-size:.85rem;font-weight:600;color:#64748b;border:1px solid transparent;background:transparent;cursor:pointer;white-space:nowrap;transition:all .15s}.lh-template-tab:hover{background:#f1f5f9;color:#0f172a}.lh-template-tab.active{background:#0284c7;color:#fff;border-color:#0284c7}.lh-templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;padding:20px;overflow-y:auto}.lh-template-card{border:1px solid #e2e8f0;border-radius:10px;padding:16px;cursor:pointer;transition:all .2s;background:#fff;display:flex;flex-direction:column;position:relative}.lh-template-card:hover{border-color:#0284c7;box-shadow:0 4px 12px #0284c71f;transform:translateY(-2px)}.lh-template-card.is-custom{border-color:#bbf7d0;background:#f0fdf4}.lh-template-card.is-custom:hover{border-color:#16a34a;box-shadow:0 4px 12px #16a34a26}.lh-template-card-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.lh-template-icon{font-size:1.5rem;background:#f0f9ff;padding:6px;border-radius:8px}.lh-template-card-title{font-weight:700;font-size:.95rem;color:#0f172a}.lh-template-card-desc{font-size:.82rem;color:#64748b;margin-top:4px;flex:1}.lh-custom-badge{font-size:.72rem;background:#dcfce7;color:#15803d;font-weight:700;padding:2px 6px;border-radius:4px;border:1px solid #bbf7d0}@media print{body,html{background:#fff!important;margin:0!important;padding:0!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.sidebar,.top-bar,.lh-header-bar,.lh-word-ribbon,.lh-settings-modal,.lh-modal-backdrop,.lh-sheet-corner-badge,.lh-sheet-actions,.lh-add-page-btn-container,.sidebar-collapsed,.app-layout aside,header{display:none!important}.main-content,.letterhead-page,.lh-workspace,.lh-pages-stack{padding:0!important;margin:0!important;background:#fff!important;overflow:visible!important;display:block!important;gap:0!important}.lh-page-sheet{width:100%!important;height:100vh!important;min-height:100vh!important;max-height:100vh!important;box-shadow:none!important;border:none!important;border-radius:0!important;padding:10mm 15mm!important;margin:0!important;page-break-after:always!important;break-after:page!important;box-sizing:border-box!important;display:flex!important;flex-direction:column!important}.lh-editor-body{line-height:var(--lh-line-height, 1.6)!important}.lh-editor-body p{margin-bottom:var(--lh-paragraph-spacing, 10px)!important}.lh-letterhead-footer{border-top:1px solid #cbd5e1!important;padding-top:8px!important}.lh-page-sheet:last-child{page-break-after:avoid!important;break-after:avoid!important}}.deep-well-page{padding:24px 32px;background:#f8fafc;min-height:calc(100vh - 64px);color:#1e293b;font-family:inherit}.deep-well-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:20px 24px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.kpi-icon-circle{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.4rem;flex-shrink:0}.kpi-text-area .kpi-label{font-size:.775rem;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.3px}.kpi-text-area .kpi-number{font-size:1.4rem;font-weight:800;color:#0f172a;margin-top:2px}.kpi-text-area .kpi-sub{font-size:.75rem;color:#64748b}.list-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;padding:16px 20px;border-radius:12px;border:1px solid #e2e8f0;margin-bottom:24px}.search-input-wrapper{display:flex;align-items:center;gap:10px;background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;flex:1;max-width:450px}.search-input-wrapper input{border:none;background:transparent;outline:none;font-size:.875rem;color:#0f172a;width:100%}.list-toolbar-actions{display:flex;align-items:center;gap:12px}.sort-select{padding:8px 12px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:.85rem;color:#334155;outline:none}.projects-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:20px}.project-card-item{background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;overflow:hidden;transition:all .2s ease}.project-card-item:hover{border-color:#38bdf8;box-shadow:0 8px 20px #0284c71a;transform:translateY(-2px)}.card-header-area{padding:16px 20px;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.card-title-group h3{font-size:1.05rem;font-weight:750;color:#0f172a;margin:0;line-height:1.3}.card-client-name{font-size:.825rem;color:#64748b;margin-top:4px;font-weight:500}.well-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;background:#e0f2fe;color:#0284c7;font-size:.75rem;font-weight:700;white-space:nowrap}.card-body-area{padding:16px 20px;flex:1;display:flex;flex-direction:column;gap:14px}.location-row{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#64748b}.specs-mini-table{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;background:#f8fafc;border-radius:10px;padding:12px;border:1px solid #f1f5f9}.spec-cell{text-align:center}.spec-cell .spec-lbl{font-size:.7rem;color:#64748b;font-weight:600;text-transform:uppercase}.spec-cell .spec-val{font-size:1rem;font-weight:800;color:#0f172a;font-family:monospace;margin-top:2px}.spec-cell .spec-sub{font-size:.675rem;color:#64748b}.card-footer-area{padding:12px 20px;background:#f8fafc;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center;gap:8px}.btn-card-action{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:8px;font-size:.8rem;font-weight:600;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;transition:all .2s ease}.btn-card-action:hover{background:#f1f5f9;color:#0f172a;border-color:#94a3b8}.btn-card-primary{background:#0284c7;color:#fff;border:none}.btn-card-icon-only{padding:6px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.btn-card-icon-only:hover{color:#0f172a;background:#f1f5f9}.btn-card-icon-only.btn-delete:hover{color:#ef4444;background:#fee2e2;border-color:#fca5a5}.empty-state-box{background:#fff;border:2px dashed #cbd5e1;border-radius:16px;padding:64px 32px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:16px}.empty-icon-large{width:72px;height:72px;border-radius:50%;background:#e0f2fe;color:#0284c7;display:flex;align-items:center;justify-content:center;font-size:2rem;margin-bottom:16px}.empty-state-box h3{font-size:1.25rem;font-weight:800;color:#0f172a;margin:0}.empty-state-box p{font-size:.875rem;color:#64748b;max-width:460px;margin:8px 0 24px}.presets-strip{display:flex;align-items:center;gap:12px;background:#fff;padding:12px 20px;border-radius:12px;border:1px solid #e2e8f0;margin-bottom:24px;overflow-x:auto}.presets-label{display:flex;align-items:center;gap:6px;font-size:.85rem;font-weight:700;color:#475569;white-space:nowrap}.preset-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;background:#f1f5f9;border:1px solid #e2e8f0;font-size:.8rem;font-weight:600;color:#334155;cursor:pointer;transition:all .2s ease;white-space:nowrap}.preset-chip:hover{background:#e0f2fe;color:#0284c7;border-color:#bae6fd}.deep-well-grid{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:start}@media (max-width: 1200px){.deep-well-grid{grid-template-columns:1fr}}.form-panel-card{background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;overflow:hidden}.tabs-navigation{display:flex;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:8px 12px 0;gap:6px;overflow-x:auto}.tab-button{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px 10px 0 0;border:1px solid transparent;border-bottom:none;background:transparent;color:#64748b;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.tab-button:hover{color:#0f172a;background:#fff9}.tab-button.active{background:#fff;color:#0284c7;border-color:#e2e8f0;border-bottom-color:#fff;font-weight:700;box-shadow:0 -2px 6px #00000005}.tab-pane-content{padding:24px}.form-section-title{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:700;color:#0f172a;margin-bottom:8px;padding-bottom:8px;border-bottom:2px solid #f1f5f9}.form-section-desc{font-size:.825rem;color:#64748b;margin-bottom:20px}.fields-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:20px}.fields-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:20px}@media (max-width: 768px){.fields-grid-2,.fields-grid-3{grid-template-columns:1fr}}.form-group label{font-size:.825rem;font-weight:700;color:#334155}.form-group label small{font-weight:400;color:#64748b;margin-left:4px}.input-with-addon{display:flex;align-items:center;border:1px solid #cbd5e1;border-radius:8px;background:#fff;overflow:hidden;transition:all .2s ease}.input-with-addon:focus-within{border-color:#0284c7;box-shadow:0 0 0 3px #0284c726}.input-with-addon input,.input-with-addon select{flex:1;border:none;padding:9px 12px;font-size:.875rem;color:#0f172a;outline:none;background:transparent;min-width:0}.input-addon{background:#f8fafc;color:#64748b;padding:9px 12px;font-size:.8rem;font-weight:600;border-left:1px solid #e2e8f0;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:all .2s ease}.input-with-addon.is-empty{background-color:#fffdf5!important;border:1.5px solid #f59e0b!important;box-shadow:0 0 0 2px #f59e0b26!important}.input-with-addon.is-empty input{color:#92400e!important;font-weight:500}.input-with-addon.is-empty input::placeholder{color:#d97706!important;opacity:.85;font-style:italic}.input-with-addon.is-empty .input-addon{background-color:#fef3c7!important;color:#92400e!important;border-left:1.5px solid #fde68a!important;font-weight:700!important}.input-with-addon.is-empty:focus-within{border-color:#0284c7!important;box-shadow:0 0 0 3px #0284c740!important;background-color:#fff!important}.input-with-addon.is-empty:focus-within input{color:#0f172a!important}.input-with-addon.is-empty:focus-within .input-addon{background-color:#f8fafc!important;color:#64748b!important;border-left-color:#e2e8f0!important}.form-hint{font-size:.75rem;color:#64748b;line-height:1.3}.form-checkbox-label{display:flex;align-items:center;gap:8px;font-size:.85rem;font-weight:600;color:#1e293b;cursor:pointer;padding:10px 14px;background:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:16px}.form-checkbox-label input{width:16px;height:16px;accent-color:#0284c7}.deepwell-cad-diagram-wrapper{background:linear-gradient(180deg,#fff,#f8fafc);border:1.5px solid #cbd5e1;border-radius:14px;padding:18px 20px;margin-bottom:24px;box-shadow:0 4px 14px #0000000a}.cad-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;gap:10px}.cad-title{display:flex;align-items:center;gap:8px;font-size:.95rem;font-weight:800;color:#0f172a}.cad-subtitle{font-size:.775rem;color:#64748b;margin-top:2px}.cad-status-badge{display:inline-flex;align-items:center;gap:6px;font-size:.75rem;font-weight:800;padding:4px 12px;border-radius:16px;border-width:1px;border-style:solid}.cad-body-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:20px;align-items:stretch}@media (max-width: 900px){.cad-body-grid{grid-template-columns:1fr}}.cad-svg-container{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;overflow:hidden;position:relative;box-shadow:inset 0 2px 6px #00000008;display:flex;align-items:center;justify-content:center}.cad-svg{width:100%;height:auto;min-height:400px;max-height:440px;display:block}.cad-metrics-table{background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;justify-content:space-between;gap:8px}.metrics-table-title{font-size:.825rem;font-weight:800;color:#0f172a;padding-bottom:8px;border-bottom:1.5px solid #e2e8f0;text-transform:uppercase;letter-spacing:.04em}.metric-row{display:flex;justify-content:space-between;align-items:center;padding:5px 8px;border-radius:6px;font-size:.775rem;transition:background .15s ease}.metric-row:hover{background:#f8fafc}.metric-row.highlight-static{background:#f0fdf4;border-left:3px solid #16a34a}.metric-row.highlight-dynamic{background:#f0f9ff;border-left:3px solid #0284c7}.metric-row.highlight-drawdown{background:#fff7ed;border-left:3px solid #ea580c}.metric-row.highlight-pump{background:#f5f3ff;border-left:3px solid #6366f1}.metric-label{color:#334155;font-weight:600;display:flex;align-items:center;gap:6px}.metric-val{font-size:.825rem;color:#0f172a}.metric-status-note{border-radius:8px;padding:8px 12px;border-width:1px;border-style:solid;margin-top:4px}.depth-advisor-card{border-radius:10px;padding:14px 18px;margin-top:16px;margin-bottom:20px;transition:all .25s ease;border-width:1.5px;border-style:solid}.depth-advisor-card.advisor-optimal{background-color:#f0fdf4;border-color:#86efac;color:#14532d}.depth-advisor-card.advisor-warning{background-color:#fffbeb;border-color:#fcd34d;color:#78350f}.depth-advisor-card.advisor-danger,.depth-advisor-card.advisor-inverted_levels{background-color:#fff1f2;border-color:#fda4af;color:#881337}.depth-advisor-card.advisor-info{background-color:#f0f9ff;border-color:#7dd3fc;color:#0369a1}.advisor-header{display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}.advisor-title-group{display:flex;align-items:flex-start;gap:12px;flex:1;min-width:260px}.advisor-icon{margin-top:2px;flex-shrink:0}.advisor-title-group h4{margin:0 0 4px;font-size:.95rem;font-weight:700}.advisor-title-group p{margin:0;font-size:.825rem;line-height:1.4;opacity:.95}.btn-apply-depth{background:#0284c7;color:#fff;border:none;padding:8px 16px;border-radius:8px;font-size:.85rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;gap:6px;box-shadow:0 2px 4px #0284c740;transition:all .2s ease;white-space:nowrap}.btn-apply-depth:hover{background:#0369a1;transform:translateY(-1px);box-shadow:0 4px 8px #0284c759}.btn-apply-depth:active{transform:translateY(0)}.advisor-reasons{margin-top:12px;padding-top:10px;border-top:1px dashed rgba(0,0,0,.1);font-size:.775rem}.advisor-reasons .reasons-label{font-weight:700;margin-bottom:4px;opacity:.85}.advisor-reasons ul{margin:0;padding-left:0;list-style:none;display:flex;flex-direction:column;gap:3px}.water-levels-visual-box{background:linear-gradient(180deg,#f8fafc,#f1f5f9);border:1.5px solid #cbd5e1;border-radius:12px;padding:14px 16px;margin-bottom:20px;box-shadow:inset 0 1px 3px #00000008}.visual-box-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:.85rem;font-weight:700;color:#0f172a}.levels-comparison-grid{display:grid;grid-template-columns:1fr 110px 1fr;gap:12px;align-items:stretch}@media (max-width: 768px){.levels-comparison-grid{grid-template-columns:1fr;gap:12px}}.level-card{background:#fff;border-radius:10px;border:1.5px solid #e2e8f0;padding:10px 12px;display:flex;flex-direction:column;gap:8px;position:relative;transition:all .2s ease}.level-card.static-state{border-color:#86efac;background:linear-gradient(180deg,#fff,#f0fdf4)}.level-card.dynamic-state{border-color:#93c5fd;background:linear-gradient(180deg,#fff,#eff6ff)}.level-card-badge{display:inline-flex;align-items:center;gap:6px;font-size:.725rem;font-weight:700;padding:3px 8px;border-radius:12px;width:fit-content}.badge-static{background:#dcfce7;color:#15803d}.badge-dynamic{background:#dbeafe;color:#1d4ed8}.level-visual-container{height:130px;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:8px;position:relative;overflow:hidden;box-shadow:inset 0 2px 4px #0000000a}.water-surface-line{position:absolute;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:2px 8px;font-size:.7rem;font-weight:700;z-index:5}.line-static{border-top:2.5px dashed #16a34a;color:#166534;background:#dcfce7d9}.line-dynamic{border-top:2.5px solid #2563eb;color:#1e40af;background:#dbeafed9}.water-body{position:absolute;bottom:0;left:0;right:0;transition:height .3s ease}.water-body.static-water{background:linear-gradient(180deg,#4ade8059,#22c55ea6)}.water-body.dynamic-water{background:linear-gradient(180deg,#60a5fa59,#2563ebb3)}.submerged-pump-indicator{position:absolute;left:50%;transform:translate(-50%);width:22px;height:38px;border-radius:3px;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;z-index:4}.pump-idle{background:#64748b;border:1px solid #475569;color:#fff}.pump-running{background:#0f172a;border:1.5px solid #38bdf8;color:#38bdf8;box-shadow:0 0 8px #38bdf880}.drawdown-middle-card{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff;border:1.5px dashed #f97316;border-radius:10px;padding:10px 8px;box-shadow:0 2px 6px #f9731614}.drawdown-val{font-size:1.25rem;font-weight:800;color:#ea580c;font-family:monospace}.drawdown-lbl{font-size:.7rem;color:#9a3412;font-weight:700;margin-top:2px}.results-panel-card{position:sticky;top:24px;background:#fff;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 4px 12px #0000000d;overflow:hidden}.results-header{padding:16px 20px;background:linear-gradient(135deg,#0f172a,#1e293b);color:#fff;display:flex;justify-content:space-between;align-items:center}.results-header h2{font-size:1rem;font-weight:700;margin:0;display:flex;align-items:center;gap:8px}.results-body{padding:20px;display:flex;flex-direction:column;gap:16px}.result-hero-stat{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px 18px;display:flex;justify-content:space-between;align-items:center}.result-hero-stat.highlight-blue{background:#f0f9ff;border-color:#bae6fd}.result-hero-stat.highlight-green{background:#f0fdf4;border-color:#bbf7d0}.stat-label{font-size:.8rem;font-weight:700;color:#475569;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:1.5rem;font-weight:800;color:#0f172a;font-family:monospace}.stat-value small{font-size:.85rem;font-weight:600;color:#64748b;margin-left:2px}.stat-sub{font-size:.75rem;color:#64748b;margin-top:2px}.result-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mini-stat-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px}.mini-stat-label{font-size:.75rem;color:#64748b;font-weight:600}.mini-stat-value{font-size:1.05rem;font-weight:800;color:#1e293b;font-family:monospace;margin-top:2px}.mini-stat-sub{font-size:.7rem;color:#64748b;margin-top:2px}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:.7rem;font-weight:700}.status-badge.badge-danger{background:#fee2e2;color:#b91c1c;border:1px solid #fca5a5}.status-badge.badge-warning{background:#fef3c7;color:#b45309;border:1px solid #fde68a}.status-badge.badge-success{background:#dcfce7;color:#15803d;border:1px solid #86efac}.result-alerts-box{display:flex;flex-direction:column;gap:8px}.alert-item{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-radius:8px;font-size:.775rem;line-height:1.35}.alert-item.alert-danger{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert-item.alert-warning{background:#fffbeb;border:1px solid #fef3c7;color:#92400e}.alert-item.alert-info{background:#f0f9ff;border:1px solid #e0f2fe;color:#0369a1}.alert-item.alert-success{background:#f0fdf4;border:1px solid #dcfce7;color:#166534}.btn-open-report{width:100%;padding:12px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;border:none;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;box-shadow:0 4px 12px #0284c740;transition:all .2s ease}.btn-open-report:hover{background:linear-gradient(135deg,#0369a1,#075985);transform:translateY(-1px)}.deepwell-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172abf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:99999;padding:24px}.deepwell-modal-container{background:#fff;width:100%;max-width:960px;max-height:94vh;border-radius:16px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;overflow:hidden}.deepwell-modal-toolbar{display:flex;justify-content:space-between;align-items:center;padding:14px 24px;background:#0f172a;color:#fff;border-bottom:1px solid #1e293b}.toolbar-title{display:flex;align-items:center;gap:10px;font-weight:700;font-size:.95rem}.toolbar-actions{display:flex;align-items:center;gap:10px}.btn-modal-action{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:6px;background:#ffffff1a;color:#fff;font-size:.8rem;font-weight:600;border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:all .2s ease}.btn-modal-action:hover{background:#fff3}.btn-modal-primary{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:6px;background:#0284c7;color:#fff;font-size:.8rem;font-weight:700;border:none;cursor:pointer;transition:all .2s ease}.btn-modal-primary:hover{background:#0369a1}.btn-modal-close{background:transparent;border:none;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:4px;border-radius:6px;transition:all .2s ease}.btn-modal-close:hover{color:#fff;background:#ffffff1a}.deepwell-report-content{padding:32px 40px;overflow-y:auto;flex:1;background:#fff;color:#0f172a}.report-header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #0f172a;padding-bottom:16px;margin-bottom:20px;gap:16px}.report-logo-badge{font-size:1.4rem;font-weight:900;color:#0284c7;letter-spacing:-.5px}.report-sub-badge{font-size:.75rem;color:#64748b;font-weight:600}.report-title-area{text-align:center;flex:1;padding:0 12px}.report-title-area h1{font-size:1.05rem;font-weight:900;color:#0f172a;margin:0;letter-spacing:.2px}.report-title-area p{font-size:.75rem;color:#64748b;margin:4px 0 0}.report-meta-box{font-size:.75rem;color:#475569;text-align:right;line-height:1.4;min-width:140px}.project-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 24px;background:#f8fafc;padding:12px 16px;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:20px;font-size:.825rem}.project-info-grid .label{color:#64748b;margin-right:6px}.report-kpi-summary{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:24px}.kpi-box{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:10px;text-align:center}.kpi-box .kpi-title{font-size:.7rem;font-weight:700;color:#475569;text-transform:uppercase}.kpi-box .kpi-val{font-size:1.25rem;font-weight:900;margin:4px 0 2px;font-family:monospace}.kpi-box .kpi-val small{font-size:.75rem;font-weight:600}.kpi-box .kpi-sub{font-size:.7rem;color:#64748b}.report-warnings-container{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;padding:12px 16px;margin-bottom:20px}.warning-list{display:flex;flex-direction:column;gap:6px;margin-top:8px}.warning-item{font-size:.775rem;line-height:1.35}.warning-item.warning-danger{color:#991b1b}.warning-item.warning-warning{color:#92400e}.warning-item.warning-info{color:#0369a1}.report-two-col-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px}.section-title{font-size:.875rem;font-weight:800;color:#0f172a;margin:0 0 8px;display:flex;align-items:center;gap:6px}.report-table{width:100%;border-collapse:collapse;font-size:.775rem}.report-table td{padding:6px 8px;border-bottom:1px solid #e2e8f0;color:#334155}.report-table td:last-child{text-align:right}.table-highlight-row{background:#f0f9ff;font-weight:600}.table-total-row{background:#f1f5f9;font-weight:800;border-top:1px solid #cbd5e1;border-bottom:2px solid #94a3b8!important}.status-pill{display:inline-block;padding:1px 6px;border-radius:4px;font-size:.65rem;font-weight:700;margin-left:4px}.pill-optimal,.pill-success{background:#dcfce7;color:#15803d}.pill-low,.pill-warning{background:#fef3c7;color:#b45309}.pill-high,.pill-danger{background:#fee2e2;color:#b91c1c}.report-material-banner{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:12px 16px;margin-bottom:24px;display:grid;grid-template-columns:1fr 1fr;gap:16px;font-size:.8rem}.material-item .title{display:block;font-weight:700;color:#0f172a;margin-bottom:2px}.material-item .desc{color:#475569}.report-bom-section{margin-bottom:24px}.bom-table{width:100%;border-collapse:collapse;font-size:.775rem;margin-top:8px}.bom-table th{background:#0f172a;color:#fff;padding:8px;text-align:left;font-size:.725rem;font-weight:700;text-transform:uppercase}.bom-table td{padding:8px;border-bottom:1px solid #e2e8f0;color:#334155;vertical-align:top}.bom-table tbody tr:nth-child(2n){background:#f8fafc}.category-tag{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.65rem;font-weight:700;background:#e2e8f0;color:#334155}.report-signatures-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px;padding-top:20px;border-top:1px solid #cbd5e1}.signature-box{border:1px dashed #cbd5e1;border-radius:8px;padding:12px;text-align:center}.sig-title{font-size:.75rem;font-weight:700;color:#0f172a}.sig-name{font-size:.7rem;color:#64748b;margin:4px 0 16px}.sig-line{font-size:.7rem;color:#94a3b8}.report-notes-box{background:#f1f5f9;border-left:4px solid #0284c7;padding:10px 14px;font-size:.775rem;margin-bottom:20px;border-radius:0 8px 8px 0}.report-footer{display:flex;justify-content:space-between;font-size:.7rem;color:#94a3b8;margin-top:24px;padding-top:8px;border-top:1px solid #e2e8f0}.catalog-tab-btn:hover{background:#f1f5f9!important}.catalog-tab-btn.active{background:#fff!important}.bom-table input[type=number]{border:1px solid #cbd5e1;background:#fff;transition:all .15s ease}.bom-table input[type=number]:focus{outline:none;border-color:#0284c7;box-shadow:0 0 0 2px #0284c726}.badge-power{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.circulation-page{padding:24px 32px;background:#f8fafc;min-height:calc(100vh - 64px);color:#1e293b;font-family:inherit}.circulation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;background:#fff;padding:20px 24px;border-radius:14px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.header-left{display:flex;align-items:center;gap:16px}.btn-back-link{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:8px;background:#f1f5f9;color:#475569;font-size:.875rem;font-weight:600;text-decoration:none;border:1px solid #cbd5e1;cursor:pointer;transition:all .2s ease}.btn-back-link:hover{background:#e2e8f0;color:#0f172a}.header-title-group h1{font-size:1.45rem;font-weight:800;color:#0f172a;margin:0;display:flex;align-items:center;gap:10px}.header-title-group p{font-size:.85rem;color:#64748b;margin:4px 0 0}.header-actions{display:flex;align-items:center;gap:12px}.btn-secondary-action{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;background:#fff;color:#334155;font-weight:600;font-size:.875rem;border:1px solid #cbd5e1;cursor:pointer;transition:all .2s ease}.btn-secondary-action:hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}.btn-primary-action{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border-radius:10px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;font-weight:700;font-size:.875rem;border:none;cursor:pointer;box-shadow:0 4px 12px #0284c740;transition:all .2s ease}.btn-primary-action:hover{background:linear-gradient(135deg,#0369a1,#075985);box-shadow:0 6px 16px #0284c759;transform:translateY(-1px)}.projects-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}@media (max-width: 1024px){.projects-kpi-grid{grid-template-columns:repeat(2,1fr)}}.project-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 3px #0000000d}.kpi-icon-circle{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-text-area{flex:1}.kpi-label{font-size:.8rem;font-weight:600;color:#64748b;margin-bottom:2px}.kpi-number{font-size:1.45rem;font-weight:800;color:#0f172a;line-height:1.2}.kpi-sub{font-size:.75rem;color:#94a3b8;margin-top:2px}.list-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.search-input-wrapper{position:relative;flex:1;max-width:460px}.search-input-wrapper input{width:100%;padding:10px 14px 10px 38px;border-radius:10px;border:1px solid #cbd5e1;background:#fff;font-size:.875rem;outline:none;transition:all .2s ease}.search-input-wrapper input:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c726}.search-input-wrapper svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#94a3b8}.sort-select{padding:8px 14px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:.85rem;font-weight:600;color:#334155;outline:none;cursor:pointer}.projects-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}.project-card-item{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:18px 20px;box-shadow:0 2px 4px #0000000a;transition:all .2s ease;display:flex;flex-direction:column;justify-content:space-between}.project-card-item:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000014;border-color:#cbd5e1}.card-header-area{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.card-title-group h3{margin:0;font-size:1.05rem;font-weight:700;color:#0f172a}.card-client-name{font-size:.8rem;color:#64748b;margin-top:2px}.system-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;background:#f0fdf4;color:#166534;font-size:.72rem;font-weight:700;border:1px solid #bbf7d0;white-space:nowrap}.card-body-area{margin-bottom:16px}.location-row{display:flex;align-items:center;gap:6px;font-size:.78rem;color:#64748b;margin-bottom:12px}.card-specs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;background:#f8fafc;border:1px solid #f1f5f9;border-radius:10px;padding:10px;margin-bottom:12px;text-align:center}.spec-cell .spec-lbl{font-size:.68rem;font-weight:700;color:#64748b;text-transform:uppercase;margin-bottom:2px}.spec-cell .spec-val{font-size:1.15rem;font-weight:900;line-height:1.15}.spec-cell .spec-sub{font-size:.68rem;color:#94a3b8;margin-top:1px}.card-footer-area{display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #f1f5f9}.card-date{font-size:.75rem;color:#94a3b8}.card-actions-group{display:flex;align-items:center;gap:6px}.btn-card-action{display:inline-flex;align-items:center;gap:4px;padding:6px 12px;border-radius:6px;background:#f1f5f9;color:#334155;font-size:.75rem;font-weight:700;border:1px solid #cbd5e1;cursor:pointer;transition:all .15s ease}.btn-card-action:hover{background:#e2e8f0;color:#0f172a}.btn-card-primary{background:#0284c7;color:#fff;border-color:#0284c7}.btn-card-primary:hover{background:#0369a1;color:#fff}.btn-card-icon-only{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;background:#f8fafc;color:#64748b;border:1px solid #e2e8f0;cursor:pointer;transition:all .15s ease}.btn-card-icon-only:hover{background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.btn-card-icon-only.btn-delete:hover{background:#fef2f2;color:#dc2626;border-color:#fca5a5}.empty-state-box{text-align:center;padding:60px 20px;background:#fff;border:1px dashed #cbd5e1;border-radius:14px}.empty-icon-large{font-size:3rem;margin-bottom:12px}.presets-strip{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:20px}.presets-label{display:flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;color:#475569;white-space:nowrap}.preset-chip{padding:6px 12px;border-radius:8px;background:#f1f5f9;color:#334155;font-size:.78rem;font-weight:600;border:1px solid #e2e8f0;cursor:pointer;white-space:nowrap;transition:all .15s ease}.preset-chip:hover{background:#e2e8f0;color:#0f172a}.preset-chip.active{background:#0284c7;color:#fff;border-color:#0284c7}.circulation-grid{display:grid;grid-template-columns:1fr 380px;gap:24px;align-items:flex-start}@media (max-width: 1200px){.circulation-grid{grid-template-columns:1fr}}.form-panel-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #0000000d}.tabs-navigation{display:flex;background:#f8fafc;border-bottom:1px solid #e2e8f0;overflow-x:auto}.tab-button{padding:12px 18px;border:none;background:transparent;color:#64748b;font-weight:600;font-size:.85rem;cursor:pointer;display:flex;align-items:center;gap:8px;border-bottom:2px solid transparent;white-space:nowrap;transition:all .15s ease}.tab-button:hover{color:#0f172a;background:#f1f5f9}.tab-button.active{color:#0284c7;border-bottom-color:#0284c7;background:#fff;font-weight:700}.tab-content-area{padding:24px}.form-section-title{font-size:1rem;font-weight:800;color:#0f172a;margin:0 0 16px;display:flex;align-items:center;gap:8px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.8rem;font-weight:700;color:#334155}.form-group input,.form-group select,.form-group textarea{padding:9px 12px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:.85rem;color:#0f172a;outline:none;transition:all .15s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c726}.sticky-summary-panel{position:sticky;top:24px}.calc-summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px;box-shadow:0 4px 12px #0000000d}.summary-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.summary-header h3{margin:0;font-size:1rem;font-weight:800;color:#0f172a;display:flex;align-items:center;gap:8px}.summary-kpi-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:16px}.summary-kpi-box{background:#f8fafc;border:1px solid #f1f5f9;border-radius:10px;padding:12px;text-align:center}.summary-kpi-box .lbl{font-size:.7rem;font-weight:700;color:#64748b;text-transform:uppercase;margin-bottom:2px}.summary-kpi-box .val{font-size:1.3rem;font-weight:900;line-height:1.15}.summary-kpi-box .sub{font-size:.7rem;color:#94a3b8;margin-top:2px}.summary-specs-list{display:flex;flex-direction:column;gap:8px;font-size:.8rem;margin-bottom:16px}.spec-row{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid #f8fafc}.spec-row .k{color:#64748b}.spec-row .v{font-weight:700;color:#0f172a}.circulation-diagram-card,.circulation-electrical-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:20px;margin-top:20px;box-shadow:0 1px 3px #0000000d}.diagram-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:10px}.diagram-title-group h4{margin:0;font-size:.95rem;font-weight:800;color:#0f172a}.diagram-title-group p{margin:2px 0 0;font-size:.75rem;color:#64748b}.diagram-badge-group{display:flex;gap:8px}.diagram-badge{padding:4px 10px;border-radius:6px;font-size:.72rem;font-weight:800;font-family:monospace}.badge-blue{background:#eff6ff;color:#0284c7;border:1px solid #bae6fd}.badge-green{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.badge-amber{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.diagram-svg-wrapper{background:#f8fafc;border:1px solid #cbd5e1;border-radius:10px;overflow:hidden;padding:10px}.cad-svg-canvas{width:100%;height:auto;display:block}.mechanical-flow-app-wrapper{display:flex;flex-direction:column;height:calc(100vh - 65px);background:#f8fafc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;overflow:hidden;position:relative}.mechanical-flow-app-wrapper.fullscreen-mode{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:9999}.flow-top-navbar{display:flex;justify-content:space-between;align-items:center;padding:8px 18px;background:#fff;border-bottom:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000a;z-index:30}.navbar-left{display:flex;align-items:center;gap:14px}.btn-nav-back{background:#f1f5f9;border:1px solid #cbd5e1;color:#334155;padding:6px 12px;border-radius:6px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s}.btn-nav-back:hover{background:#e2e8f0;color:#0f172a}.navbar-title-group h2{font-size:15px;font-weight:800;color:#0f172a;margin:0;display:flex;align-items:center;gap:8px}.navbar-title-group p{font-size:11.5px;color:#64748b;margin:1px 0 0}.navbar-tabs-group{display:flex;background:#f1f5f9;padding:3px;border-radius:8px;gap:4px}.nav-tab-btn{border:none;background:transparent;padding:6px 14px;font-size:12.5px;font-weight:600;color:#64748b;border-radius:6px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.nav-tab-btn:hover{color:#0f172a}.nav-tab-btn.active{background:#fff;color:#2563eb;box-shadow:0 1px 3px #0000001a}.navbar-actions-right{display:flex;align-items:center;gap:8px}.btn-nav-action{border:none;padding:7px 13px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s}.btn-add-equipment-top{background:#2563eb;color:#fff;box-shadow:0 2px 4px #2563eb40}.btn-add-equipment-top:hover{background:#1d4ed8;transform:translateY(-1px)}.btn-ai-inspect{background:linear-gradient(135deg,#9333ea,#7e22ce);color:#fff;box-shadow:0 2px 4px #9333ea40}.btn-ai-inspect:hover{opacity:.95;transform:translateY(-1px)}.btn-report-open{background:#0284c7;color:#fff}.btn-report-open:hover{background:#0369a1}.btn-toggle-drawer{background:#f1f5f9;border:1px solid #cbd5e1;color:#475569}.btn-toggle-drawer.active{background:#e0f2fe;color:#0284c7;border-color:#7dd3fc}.btn-fullscreen-toggle{background:#f8fafc;border:1px solid #cbd5e1;color:#475569}.flow-main-layout{flex:1;display:flex;overflow:hidden;position:relative}.canvas-expansive-workspace{position:relative;width:100%;height:100%;display:flex;overflow:hidden}.expansive-canvas-wrapper{width:100%;height:100%;position:absolute;top:0;left:0}.floating-cad-toolbar{position:absolute;top:20px;left:20px;z-index:25;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:8px 6px;display:flex;flex-direction:column;align-items:center;gap:8px;box-shadow:0 4px 12px #00000014}.toolbar-btn{position:relative;width:38px;height:38px;border:none;background:#f8fafc;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:16px;cursor:pointer;transition:all .2s}.toolbar-btn:hover{background:#e2e8f0;transform:scale(1.08)}.toolbar-btn.active{background:#dbeafe;color:#2563eb;border:1px solid #bfdbfe}.btn-primary-tool{background:#2563eb;color:#fff;box-shadow:0 2px 6px #2563eb4d}.btn-primary-tool:hover{background:#1d4ed8}.btn-ai-tool{background:#f5f3ff;color:#7c3aed}.btn-ai-tool:hover{background:#7c3aed;color:#fff}.btn-ai-add-tool{background:#fdf4ff;color:#c026d3}.btn-ai-add-tool:hover{background:#c026d3;color:#fff}.btn-trash-tool:hover{background:#fee2e2;color:#dc2626}.tool-fluid-indicator{width:16px;height:16px;border-radius:50%;border:2px solid #ffffff;box-shadow:0 1px 3px #0003}.toolbar-divider{width:24px;height:1px;background:#e2e8f0;margin:2px 0}.tool-tooltip{position:absolute;left:48px;background:#1e293b;color:#fff;padding:4px 8px;border-radius:6px;font-size:11px;font-weight:700;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-6px);transition:all .15s ease-in-out;box-shadow:0 2px 6px #00000026}.toolbar-btn:hover .tool-tooltip{opacity:1;transform:translate(0)}.toolbar-popover-wrapper{position:relative}.floating-popover-menu{position:absolute;top:0;left:52px;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:12px;box-shadow:0 10px 25px -5px #00000026;z-index:40;min-width:260px}.popover-header{font-size:12px;font-weight:800;color:#475569;text-transform:uppercase;margin-bottom:10px;border-bottom:1px solid #f1f5f9;padding-bottom:6px}.preset-menu-item{display:flex;align-items:flex-start;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;transition:all .15s}.preset-menu-item:hover{background:#f1f5f9}.preset-item-icon{font-size:20px}.preset-item-name{font-size:12px;font-weight:800;color:#0f172a}.preset-item-desc{font-size:10.5px;color:#64748b}.fluid-popover-grid{display:flex;flex-direction:column;gap:4px}.fluid-popover-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:6px;font-size:12px;font-weight:700;cursor:pointer;color:#334155;transition:all .15s}.fluid-popover-item:hover{background:#f1f5f9}.fluid-popover-item.selected{background:#eff6ff;color:#2563eb}.fluid-color-badge{width:12px;height:12px;border-radius:50%}.slide-over-properties-drawer{position:absolute;top:0;right:0;width:360px;height:calc(100% - 44px);background:#fff;border-left:1px solid #e2e8f0;box-shadow:-4px 0 16px #00000014;z-index:25;transform:translate(100%);transition:transform .25s cubic-bezier(.16,1,.3,1);overflow-y:auto}.slide-over-properties-drawer.open{transform:translate(0)}.panel-header-actions{display:flex;align-items:center;gap:8px}.btn-close-drawer{border:none;background:#f1f5f9;color:#64748b;width:24px;height:24px;border-radius:50%;font-size:16px;font-weight:800;display:flex;align-items:center;justify-content:center;cursor:pointer}.btn-close-drawer:hover{background:#e2e8f0;color:#0f172a}.bottom-engineering-hud-bar{position:absolute;bottom:0;left:0;width:100%;height:42px;background:#fff;border-top:1px solid #e2e8f0;display:flex;align-items:center;padding:0 16px;gap:16px;z-index:20;box-shadow:0 -2px 6px #00000008}.hud-kpi-item{display:flex;align-items:center;gap:6px;font-size:12px;color:#334155;white-space:nowrap}.hud-icon{font-size:14px}.hud-label{color:#64748b;font-weight:600}.hud-warning-badge{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:800;cursor:pointer;white-space:nowrap}.btn-hud-expand{margin-left:auto;background:#f1f5f9;border:1px solid #cbd5e1;color:#0284c7;padding:4px 12px;border-radius:6px;font-size:11.5px;font-weight:800;cursor:pointer;white-space:nowrap}.btn-hud-expand:hover{background:#e0f2fe}.equipment-picker-modal{background:#fff;border-radius:16px;width:90%;max-width:950px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 30px -10px #00000040;overflow:hidden}.picker-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.picker-title-group{display:flex;align-items:center;gap:12px}.picker-icon{background:#dbeafe;color:#2563eb;width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:18px}.picker-title-group h3{font-size:16px;font-weight:800;color:#0f172a;margin:0}.picker-title-group p{font-size:12px;color:#64748b;margin:2px 0 0}.picker-search-bar{display:flex;align-items:center;gap:10px;padding:12px 24px 8px;position:relative}.picker-search-bar input{width:100%;padding:10px 14px 10px 36px;border-radius:8px;border:1px solid #cbd5e1;font-size:13px;box-sizing:border-box}.search-icon{position:absolute;left:36px;color:#94a3b8;font-size:14px}.btn-clear-search{position:absolute;right:34px;border:none;background:#f1f5f9;color:#64748b;padding:4px 8px;border-radius:4px;font-size:11px;cursor:pointer}.picker-categories-row{display:flex;gap:6px;padding:6px 24px 12px;overflow-x:auto;border-bottom:1px solid #f1f5f9}.picker-cat-btn{border:1px solid #e2e8f0;background:#f8fafc;color:#475569;padding:6px 12px;border-radius:20px;font-size:11.5px;font-weight:700;cursor:pointer;white-space:nowrap;display:flex;align-items:center;gap:6px;transition:all .15s}.picker-cat-btn:hover{background:#e2e8f0}.picker-cat-btn.active{background:#2563eb;color:#fff;border-color:#2563eb}.picker-items-grid{flex:1;overflow-y:auto;padding:20px 24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;max-height:480px}.picker-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;justify-content:space-between}.picker-card:hover{border-color:#2563eb;transform:translateY(-2px);box-shadow:0 6px 12px #2563eb14}.picker-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.picker-card-icon{font-size:24px;background:#f8fafc;width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;border:1px solid #e2e8f0}.picker-badge-cat{background:#f1f5f9;color:#475569;font-size:10.5px;font-weight:700;padding:2px 6px;border-radius:4px}.picker-card-name{font-size:13.5px;font-weight:800;color:#0f172a;margin:0 0 4px}.picker-card-desc{font-size:11.5px;color:#64748b;margin:0 0 12px;line-height:1.4}.picker-card-footer{display:flex;align-items:center;gap:6px;border-top:1px solid #f8fafc;padding-top:8px}.picker-meta-tag{font-size:10px;font-weight:700;color:#0284c7;background:#e0f2fe;padding:2px 6px;border-radius:4px}.btn-add-circle{margin-left:auto;background:#2563eb;color:#fff;border:none;width:24px;height:24px;border-radius:50%;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center}.picker-footer{display:flex;justify-content:space-between;align-items:center;padding:12px 24px;background:#f8fafc;border-top:1px solid #e2e8f0}.btn-ai-footer-link{border:none;background:transparent;color:#7c3aed;font-size:12.5px;cursor:pointer;display:flex;align-items:center;gap:6px}.btn-ai-footer-link:hover{text-decoration:underline}.picker-empty-state{grid-column:1 / -1;text-align:center;padding:40px}.picker-empty-state span{font-size:40px}.picker-empty-state h4{font-size:15px;color:#1e293b;margin:8px 0}.picker-empty-state p{font-size:12.5px;color:#64748b;max-width:400px;margin:0 auto 16px}.btn-ai-prompt-call{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;border:none;padding:10px 18px;border-radius:8px;font-size:13px;font-weight:800;cursor:pointer}.flow-canvas-container{position:relative;width:100%;height:100%;background:#f8fafc;overflow:hidden}.flow-svg-canvas{width:100%;height:100%;cursor:grab}.flow-svg-canvas:active{cursor:grabbing}.canvas-floating-controls{position:absolute;top:20px;right:20px;z-index:10;display:flex;gap:12px;align-items:center}.control-group{display:flex;align-items:center;gap:4px;background:#fff;border:1px solid #cbd5e1;padding:4px 8px;border-radius:8px;box-shadow:0 2px 4px #0000000f}.control-group button{border:none;background:#f1f5f9;color:#334155;width:26px;height:26px;border-radius:4px;font-weight:800;cursor:pointer}.control-group span{font-size:12px;font-weight:700;color:#475569;padding:0 6px}.connecting-banner{background:#fef08a;border:1px solid #eab308;color:#854d0e;padding:6px 12px;border-radius:8px;font-size:12px;font-weight:700;display:flex;align-items:center;gap:10px;box-shadow:0 2px 4px #00000014}.connecting-banner button{background:#854d0e;color:#fff;border:none;padding:2px 8px;border-radius:4px;cursor:pointer}.flow-node-group{cursor:move;transition:transform .05s ease-out}.flow-node-group.selected rect:first-child{stroke:#2563eb!important;stroke-width:2.5}.btn-node-delete{cursor:pointer;transition:all .15s}.btn-node-delete:hover{fill:#dc2626;transform:scale(1.1)}.node-port-handle{cursor:crosshair;transition:all .2s ease-in-out}.node-port-handle:hover circle:last-of-type{transform:scale(1.3);stroke-width:3px;stroke:#fff;filter:drop-shadow(0 0 6px rgba(37,99,235,.8))}@keyframes pulseTargetRing{0%{r:10px;opacity:1;stroke-width:2px}50%{r:16px;opacity:.6;stroke-width:2.5px}to{r:10px;opacity:1;stroke-width:2px}}.pulse-target-ring{animation:pulseTargetRing 1.2s ease-in-out infinite;pointer-events:none}.valid-target-port{filter:drop-shadow(0 0 8px rgba(37,99,235,.6))}.active-source-port circle:last-of-type{stroke:#f59e0b!important;stroke-width:3px!important;filter:drop-shadow(0 0 8px rgba(245,158,11,.9))!important}@keyframes flowPulse{0%{stroke-dashoffset:32}to{stroke-dashoffset:0}}.flow-pulse-animation{animation:flowPulse 1.2s linear infinite;pointer-events:none}.flow-connection-group{cursor:pointer}.flow-connection-group:hover .pipe-line-path{stroke-width:5}.flow-properties-panel{display:flex;flex-direction:column;padding:16px;gap:14px}.panel-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;padding-bottom:10px}.panel-title{font-size:14px;font-weight:800;color:#0f172a;display:flex;align-items:center;gap:6px}.btn-danger-sm{background:#fee2e2;border:1px solid #fecaca;color:#dc2626;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:700;cursor:pointer}.prop-group{display:flex;flex-direction:column;gap:4px}.prop-group label{font-size:11.5px;font-weight:700;color:#475569}.prop-group input,.prop-group select{padding:7px 10px;border-radius:6px;border:1px solid #cbd5e1;font-size:12.5px}.prop-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:8px}.sub-title{font-size:12px;font-weight:800;color:#1e293b;margin-top:6px;display:flex;align-items:center;gap:6px}.ai-suggestion-box{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:12px;display:flex;flex-direction:column;gap:6px}.ai-suggestion-box.electrical-box{background:#fffbeb;border-color:#fde68a}.suggestion-title{font-size:12px;font-weight:800;color:#166534;display:flex;align-items:center;gap:6px}.suggestion-item{display:flex;justify-content:space-between;font-size:11.5px;color:#334155}.badge-highlight{background:#dbeafe;color:#1d4ed8;padding:2px 6px;border-radius:4px}.tank-fill-section-box{display:flex;flex-direction:column;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:12px;margin-top:4px}.quick-fill-row{display:flex;align-items:center;gap:8px}.quick-fill-label{font-size:11px;font-weight:700;color:#64748b}.quick-fill-buttons{display:flex;gap:4px}.btn-quick-fill{background:#fff;border:1px solid #cbd5e1;color:#334155;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:800;cursor:pointer;transition:all .15s}.btn-quick-fill:hover{background:#f1f5f9;border-color:#94a3b8}.btn-quick-fill.active{background:#2563eb;color:#fff;border-color:#2563eb}.tank-fill-card{background:#fff;border:1px solid #bfdbfe;border-radius:8px;padding:10px;display:flex;flex-direction:column;gap:6px}.fill-note-box{margin-top:6px;border-top:1px solid #f1f5f9;padding-top:6px}.note-text{font-size:11px;line-height:1.4;margin:0;padding:6px 8px;border-radius:6px}.note-success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.note-warning{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.note-danger{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.fittings-counter-list{display:flex;flex-direction:column;gap:6px}.fitting-counter-row{display:flex;justify-content:space-between;align-items:center;padding:6px 8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px}.fit-name{font-size:12px;font-weight:600;color:#334155}.counter-controls{display:flex;align-items:center;gap:6px}.counter-controls button{width:22px;height:22px;border:1px solid #cbd5e1;background:#fff;border-radius:4px;font-weight:800;cursor:pointer}.counter-controls span{font-size:12px;font-weight:800;color:#0f172a;min-width:16px;text-align:center}.overview-card{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f8fafc;padding:10px;border-radius:8px;border:1px solid #e2e8f0}.card-kpi{display:flex;gap:8px;align-items:center}.kpi-icon{font-size:18px}.kpi-label{font-size:10px;font-weight:700;color:#64748b;text-transform:uppercase}.kpi-val{font-size:12.5px;font-weight:800;color:#0f172a}.warnings-container{background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;padding:10px}.warnings-header{font-size:12px;font-weight:800;color:#e11d48;margin-bottom:6px}.warning-item p{font-size:11px;color:#9f1239;margin:4px 0}.helper-info-text{font-size:11px;color:#64748b;line-height:1.5;background:#f1f5f9;padding:8px;border-radius:6px}.flow-electrical-tab{flex:1;overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:20px}.electrical-kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.elec-kpi-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:16px;display:flex;align-items:center;gap:14px;box-shadow:0 2px 4px #0000000a}.elec-kpi-icon{width:44px;height:44px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:22px}.elec-kpi-label{font-size:12px;font-weight:700;color:#64748b}.elec-kpi-val{font-size:18px;font-weight:900;color:#0f172a}.panel-diagram-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.diagram-title{font-size:14px;font-weight:800;color:#0f172a;margin-bottom:16px;display:flex;align-items:center;gap:8px}.single-line-visual{display:flex;flex-direction:column;gap:12px}.main-feed-block{background:#1e293b;color:#fff;padding:12px 16px;border-radius:8px}.feed-header{font-size:13px;font-weight:800}.feed-details{display:flex;gap:20px;font-size:12px;margin-top:4px;color:#94a3b8}.feed-details strong{color:#f59e0b}.busbar-line{background:linear-gradient(90deg,#d97706,#f59e0b,#d97706);color:#fff;padding:8px 16px;border-radius:6px;text-align:center;font-size:12px;font-weight:900;letter-spacing:1px}.branch-loads-container{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.branch-card{background:#f8fafc;border:1px solid #cbd5e1;border-radius:8px;padding:12px}.branch-header{display:flex;align-items:center;gap:8px;border-bottom:1px solid #e2e8f0;padding-bottom:6px;margin-bottom:8px}.branch-num{background:#0284c7;color:#fff;padding:2px 6px;border-radius:4px;font-size:10px;font-weight:800}.branch-name{font-size:12.5px;font-weight:800;color:#0f172a}.branch-body{display:flex;flex-direction:column;gap:4px;font-size:11px}.branch-item{display:flex;justify-content:space-between;color:#475569}.tag-starter{background:#f3e8ff;color:#7e22ce;padding:1px 5px;border-radius:4px}.tag-cable{background:#e0f2fe;color:#0369a1;padding:1px 5px;border-radius:4px}.electrical-table-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.electrical-data-table{width:100%;border-collapse:collapse;font-size:12.5px}.electrical-data-table th{background:#f8fafc;padding:10px 12px;text-align:left;border-bottom:2px solid #e2e8f0;color:#475569}.electrical-data-table td{padding:10px 12px;border-bottom:1px solid #f1f5f9}.badge-power{background:#fef3c7;color:#b45309;padding:2px 6px;border-radius:4px;font-weight:800}.badge-starter-type{padding:2px 6px;border-radius:4px;font-weight:700;font-size:11px}.badge-starter-type.vfd_inverter{background:#dcfce7;color:#15803d}.badge-starter-type.dol{background:#e0f2fe;color:#0369a1}.badge-starter-type.star_delta{background:#f3e8ff;color:#7e22ce}.flow-bom-tab-container{flex:1;overflow-y:auto;padding:24px}.bom-header-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.bom-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.bom-data-table{width:100%;border-collapse:collapse;font-size:13px}.bom-data-table th{background:#f8fafc;padding:12px 16px;text-align:left;border-bottom:2px solid #e2e8f0;color:#475569}.bom-data-table td{padding:12px 16px;border-bottom:1px solid #f1f5f9}.badge-cat{background:#f1f5f9;color:#475569;padding:3px 8px;border-radius:6px;font-size:11px;font-weight:700}.modal-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;display:flex;align-items:center;justify-content:center}.ai-inspector-modal,.ai-extension-modal,.report-modal-container{background:#fff;border-radius:16px;width:90%;max-width:850px;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0003;overflow:hidden}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.modal-title-group{display:flex;align-items:center;gap:12px}.modal-icon{font-size:24px}.modal-title-group h3{font-size:16px;font-weight:800;color:#0f172a;margin:0}.modal-title-group p{font-size:12px;color:#64748b;margin:2px 0 0}.btn-close{border:none;background:transparent;font-size:24px;color:#64748b;cursor:pointer}.modal-body{flex:1;overflow-y:auto;padding:24px}.modal-footer{display:flex;justify-content:flex-end;gap:10px;padding:14px 24px;background:#f8fafc;border-top:1px solid #e2e8f0}.btn-close-modal{background:#f1f5f9;border:1px solid #cbd5e1;color:#475569;padding:8px 16px;border-radius:6px;font-weight:700;cursor:pointer}.audit-start-prompt{text-align:center;padding:30px}.prompt-icon{font-size:48px;margin-bottom:12px}.btn-start-audit{background:linear-gradient(135deg,#9333ea,#7e22ce);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:800;cursor:pointer;margin-top:16px;box-shadow:0 4px 6px #9333ea4d}.score-summary-card{display:flex;align-items:center;gap:20px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px;margin-bottom:20px}.score-circle{background:#1e293b;color:#fff;width:70px;height:70px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center}.score-num{font-size:22px;font-weight:900}.score-label{font-size:10px;color:#94a3b8}.badge-status.safe{background:#dcfce7;color:#15803d;padding:4px 8px;border-radius:6px;font-weight:800}.badge-status.needs_attention{background:#fef9c3;color:#854d0e;padding:4px 8px;border-radius:6px;font-weight:800}.badge-status.critical_missing{background:#fee2e2;color:#b91c1c;padding:4px 8px;border-radius:6px;font-weight:800}.findings-list{display:flex;flex-direction:column;gap:12px;margin-top:12px}.finding-card{background:#fff;border:1px solid #e2e8f0;border-left-width:4px;border-radius:8px;padding:14px}.finding-card.severity-critical{border-left-color:#ef4444}.finding-card.severity-warning{border-left-color:#f59e0b}.finding-card.severity-info{border-left-color:#3b82f6}.finding-header{display:flex;justify-content:space-between;margin-bottom:6px}.badge-severity{font-size:10.5px;font-weight:800;padding:2px 6px;border-radius:4px}.badge-severity.critical{background:#fee2e2;color:#dc2626}.badge-severity.warning{background:#fef3c7;color:#d97706}.badge-severity.info{background:#e0f2fe;color:#0284c7}.finding-title{font-size:13.5px;font-weight:800;color:#0f172a;margin:0 0 4px}.finding-desc{font-size:12px;color:#475569;margin:0 0 8px}.action-box{background:#f1f5f9;padding:6px 10px;border-radius:6px;font-size:11.5px;color:#1e293b}.autofix-action-row{margin-top:10px;display:flex;align-items:center;gap:10px}.btn-autofix{background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;border:none;padding:8px 14px;border-radius:6px;font-size:12px;font-weight:800;cursor:pointer;box-shadow:0 2px 4px #0284c740;transition:all .15s}.btn-autofix:hover{background:#0284c7;transform:translateY(-1px)}.applied-badge-state{display:inline-flex;align-items:center;gap:6px;background:#dcfce7;color:#15803d;border:1px solid #86efac;padding:5px 12px;border-radius:6px;font-size:11.5px;font-weight:800}.finding-card.applied-card{border-left-color:#22c55e!important;background:#f0fdf4;opacity:.92}.btn-apply-all-ai{margin-left:auto;background:linear-gradient(135deg,#16a34a,#15803d);color:#fff;border:none;padding:10px 16px;border-radius:8px;font-size:12.5px;font-weight:800;cursor:pointer;white-space:nowrap;box-shadow:0 4px 6px #16a34a40;transition:all .2s}.btn-apply-all-ai:hover{background:#15803d;transform:scale(1.02)}.btn-re-audit{background:#f1f5f9;border:1px solid #cbd5e1;color:#0284c7;padding:8px 16px;border-radius:6px;font-weight:800;font-size:12px;cursor:pointer}.btn-re-audit:hover{background:#e0f2fe}.prompt-input-row{display:flex;gap:8px;margin-top:6px}.prompt-input-row input{flex:1;padding:10px 14px;border:1px solid #cbd5e1;border-radius:8px;font-size:13px}.btn-generate-ai{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;border:none;padding:10px 18px;border-radius:8px;font-weight:800;cursor:pointer;white-space:nowrap}.quick-prompt-suggestions{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:11.5px;color:#64748b}.quick-prompt-suggestions button{background:#f1f5f9;border:1px solid #cbd5e1;color:#334155;padding:3px 8px;border-radius:12px;font-size:11px;cursor:pointer}.generated-equipment-preview{margin-top:20px;display:flex;flex-direction:column;gap:14px}.preview-header{display:flex;align-items:center;gap:14px;background:#f8fafc;border:1px solid #e2e8f0;padding:14px;border-radius:10px}.eq-icon-badge{font-size:28px;background:#fff;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:8px;border:1px solid #cbd5e1}.calculation-logic-explanation-card{background:#f0fdf4;border:1px solid #86efac;border-radius:10px;padding:16px}.logic-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.logic-header h5{font-size:13px;font-weight:800;color:#166534;margin:0}.ref-tag{font-size:11px;color:#15803d;font-weight:700}.formula-summary-box{background:#fff;padding:8px 12px;border-radius:6px;border:1px solid #bbf7d0;margin-bottom:10px}.formula-summary-box code{font-family:monospace;font-size:12px;color:#0f172a;font-weight:700}.steps-list h6{font-size:12px;font-weight:800;color:#166534;margin:0 0 6px}.steps-list ol{margin:0;padding-left:18px;font-size:12px;color:#334155;line-height:1.6}.safety-note-box{background:#fffbeb;border:1px solid #fde68a;padding:8px 12px;border-radius:6px;font-size:11.5px;color:#92400e;margin-top:10px}.approval-confirmation-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;padding:16px;display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}.approval-text p{font-size:13px;font-weight:700;color:#1e40af;margin:0}.btn-approve-equipment{background:#16a34a;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 2px 4px #16a34a4d}.btn-approve-equipment:hover{background:#15803d}.report-modal-container{max-width:900px}.btn-print-report{background:#16a34a;color:#fff;border:none;padding:7px 14px;border-radius:6px;font-size:12.5px;font-weight:700;cursor:pointer}.report-document-header{display:flex;justify-content:space-between;border-bottom:2px solid #0f172a;padding-bottom:14px;margin-bottom:20px}.report-company-title h2{font-size:16px;font-weight:900;color:#0f172a;margin:0}.report-company-title span{font-size:11px;color:#64748b}.report-section{margin-bottom:20px}.section-heading{font-size:13px;font-weight:800;color:#1e293b;border-bottom:1px solid #e2e8f0;padding-bottom:4px;margin-bottom:10px}.report-grid-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.report-kpi-box{background:#f8fafc;border:1px solid #e2e8f0;padding:8px 12px;border-radius:6px;display:flex;flex-direction:column;gap:2px}.report-kpi-box span{font-size:11px;color:#64748b}.report-kpi-box strong{font-size:13px;color:#0f172a}.report-table{width:100%;border-collapse:collapse;font-size:12px}.report-table th{background:#f1f5f9;border:1px solid #cbd5e1;padding:6px 10px;text-align:left}.report-table td{border:1px solid #e2e8f0;padding:6px 10px}@media print{body:has(.printable-report-body) *{visibility:hidden}.printable-report-body,.printable-report-body *{visibility:visible}.printable-report-body{position:absolute;left:0;top:0;width:100%}.no-print{display:none!important}}.pool-mech-container{padding:24px;background:#f8fafc;min-height:100vh;color:#1e293b;font-family:inherit}.pool-mech-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.pool-mech-title{display:flex;align-items:center;gap:12px}.pool-mech-title h1{margin:0;font-size:1.6rem;font-weight:700;color:#0f172a}.pool-mech-title p{margin:4px 0 0;color:#64748b;font-size:.9rem}.pool-tabs{display:flex;gap:8px;border-bottom:2px solid #e2e8f0;margin-bottom:24px;overflow-x:auto;padding-bottom:4px}.pool-tab-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;background:#fff;border:1px solid #cbd5e1;border-radius:8px 8px 0 0;font-size:.9rem;font-weight:600;color:#475569;cursor:pointer;transition:all .2s ease;white-space:nowrap}.pool-tab-btn:hover{background:#f1f5f9;color:#0284c7}.pool-tab-btn.active{background:#0284c7;color:#fff;border-color:#0284c7;box-shadow:0 4px 6px -1px #0284c733}.pool-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 900px){.pool-grid-2{grid-template-columns:1fr}}.pool-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:20px;box-shadow:0 1px 3px #0000000d}.pool-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;border-bottom:1px solid #f1f5f9;padding-bottom:10px}.pool-card-header h3{margin:0;font-size:1.1rem;font-weight:600;color:#1e293b;display:flex;align-items:center;gap:8px}.form-group{margin-bottom:14px}.form-group label{display:block;font-size:.85rem;font-weight:600;color:#475569;margin-bottom:6px}.form-control{width:100%;padding:8px 12px;border-radius:6px;border:1px solid #cbd5e1;font-size:.9rem;color:#0f172a;background:#fff;transition:border-color .2s;box-sizing:border-box}.form-control:focus{outline:none;border-color:#0284c7;box-shadow:0 0 0 3px #0284c726}.kpi-stat-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:14px;text-align:center}.kpi-stat-val{font-size:1.4rem;font-weight:700;color:#0284c7}.kpi-stat-label{font-size:.8rem;color:#64748b;margin-top:4px}.pool-formula-card{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:12px;padding:16px 20px;margin-top:16px;color:#0369a1}.pool-formula-title{display:flex;align-items:center;gap:8px;font-weight:700;font-size:.95rem;margin-bottom:8px;color:#0284c7}.pool-formula-row{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:6px;font-size:.88rem;padding-bottom:6px;border-bottom:1px dashed #cbd5e1}.pool-formula-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.pool-recommendation-box{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #0284c7;border-radius:8px;padding:12px 16px;margin-top:14px}.pipe-row{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0;margin-bottom:8px}.pipe-row.optimal{border-left:4px solid #22c55e}.pipe-row.warning{border-left:4px solid #ef4444}.bom-table{width:100%;border-collapse:collapse;font-size:.85rem}.bom-table th,.bom-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e2e8f0}.bom-table th{background:#f1f5f9;font-weight:600;color:#475569}.bom-table tr:hover{background:#f8fafc}.rates-modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0f172aa6;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;animation:ratesFadeIn .2s cubic-bezier(.16,1,.3,1)}@keyframes ratesFadeIn{0%{opacity:0}to{opacity:1}}.rates-modal-container{background:#fff;width:100%;max-width:980px;max-height:92vh;border-radius:16px;box-shadow:0 25px 50px -12px #00000040,0 0 0 1px #0000000d;display:flex;flex-direction:column;overflow:hidden;animation:ratesScaleUp .22s cubic-bezier(.16,1,.3,1)}@keyframes ratesScaleUp{0%{transform:scale(.96) translateY(8px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.rates-modal-header{padding:18px 24px;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:linear-gradient(to right,#f8fafc,#fff)}.rates-header-title-group{display:flex;align-items:center;gap:14px}.rates-header-icon-badge{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,#0284c7,#0369a1);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #0284c74d}.icon-pulse{animation:gentlePulse 2s infinite ease-in-out}@keyframes gentlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.rates-modal-title{margin:0;font-size:1.25rem;font-weight:700;color:#0f172a;letter-spacing:-.02em}.rates-modal-subtitle{margin:2px 0 0;font-size:.8125rem;color:#64748b}.rates-header-actions{display:flex;align-items:center;gap:10px}.rates-refresh-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid #cbd5e1;background:#fff;border-radius:8px;font-size:.8125rem;font-weight:600;color:#334155;cursor:pointer;transition:all .15s ease}.rates-refresh-btn:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8;color:#0f172a}.rates-refresh-btn.spinning svg{animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rates-close-btn{width:36px;height:36px;border-radius:8px;border:none;background:transparent;color:#64748b;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.rates-close-btn:hover{background:#fee2e2;color:#dc2626}.rates-asset-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:16px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.rates-asset-card{background:#fff;border:2px solid #e2e8f0;border-radius:12px;padding:12px 16px;text-align:left;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;gap:6px;position:relative;overflow:hidden}.rates-asset-card:hover{border-color:#93c5fd;transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.rates-asset-card.active{border-color:#0284c7;background:#f0f9ff;box-shadow:0 4px 14px #0284c726}.rates-asset-card.gold-card.active{border-color:#d97706;background:#fffbeb;box-shadow:0 4px 14px #d9770626}.asset-card-top{display:flex;align-items:center;justify-content:space-between}.asset-icon-pill{display:flex;align-items:center;gap:6px;font-weight:700;font-size:.875rem}.asset-emoji{font-size:1.1rem}.asset-code{color:#0f172a;letter-spacing:-.01em}.asset-change-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:6px;font-size:.75rem;font-weight:700}.asset-change-badge.up{background:#dcfce7;color:#15803d}.asset-change-badge.down{background:#fee2e2;color:#b91c1c}.asset-name{font-size:.75rem;color:#64748b;font-weight:500}.asset-price{display:flex;align-items:baseline;gap:4px}.price-num{font-size:1.25rem;font-weight:800;color:#0f172a;font-family:var(--font-mono, monospace);letter-spacing:-.02em}.price-unit{font-size:.875rem;font-weight:700;color:#64748b}.price-loading{font-size:.8125rem;color:#94a3b8;font-style:italic}.rates-toolbar{padding:12px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f1f5f9;background:#fff;flex-wrap:wrap;gap:10px}.rates-period-selector{display:flex;align-items:center;gap:4px;background:#f1f5f9;padding:4px;border-radius:10px}.period-btn{padding:6px 14px;border-radius:7px;border:none;background:transparent;font-size:.8125rem;font-weight:600;color:#475569;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:6px}.period-btn:hover{color:#0f172a}.period-btn.active{background:#fff;color:#0284c7;font-weight:700;box-shadow:0 1px 3px #0000001a}.rates-view-toggle{display:flex;align-items:center;gap:4px;background:#f1f5f9;padding:3px;border-radius:8px}.view-mode-btn{padding:6px 10px;border-radius:6px;border:none;background:transparent;font-size:.8125rem;font-weight:600;color:#64748b;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:all .15s ease}.view-mode-btn.active{background:#fff;color:#0f172a;box-shadow:0 1px 2px #00000014}.rates-custom-range-bar{display:flex;align-items:center;gap:16px;padding:10px 24px;background:#f8fafc;border-bottom:1px solid #e2e8f0;animation:ratesFadeIn .2s ease;flex-wrap:wrap}.range-input-group{display:flex;align-items:center;gap:8px}.range-input-group label{font-size:.8125rem;font-weight:600;color:#475569}.date-input{padding:5px 10px;border:1px solid #cbd5e1;border-radius:6px;font-size:.8125rem;color:#0f172a;outline:none;font-family:inherit}.date-input:focus{border-color:#0284c7;box-shadow:0 0 0 2px #0284c726}.btn-apply-dates{padding:6px 14px;background:#0284c7;color:#fff;border:none;border-radius:6px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease}.btn-apply-dates:hover:not(:disabled){background:#0369a1}.rates-metrics-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;padding:16px 24px 8px}.metric-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;display:flex;flex-direction:column;gap:4px}.metric-label{font-size:.7rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.metric-value-row{display:flex;align-items:center;gap:4px}.metric-value{font-size:1.05rem;font-weight:700;color:#0f172a;font-family:var(--font-mono, monospace);letter-spacing:-.01em}.metric-subtext{font-size:.6875rem;color:#94a3b8}.metric-box.highlight.positive{background:#f0fdf4;border-color:#bbf7d0;color:#16a34a}.metric-box.highlight.positive .metric-value{color:#15803d}.metric-box.highlight.negative{background:#fef2f2;border-color:#fecaca;color:#dc2626}.metric-box.highlight.negative .metric-value{color:#b91c1c}.metric-percent-pill{font-size:1.15rem;font-weight:800}.metric-box.stats-range .stats-mini-list{display:flex;flex-direction:column;gap:2px}.stat-line{display:flex;justify-content:space-between;font-size:.6875rem}.stat-title{color:#64748b}.stat-val{font-weight:700;font-family:var(--font-mono, monospace)}.stat-val.min{color:#2563eb}.stat-val.max{color:#d97706}.stat-val.avg{color:#475569}.rates-content-body{padding:10px 24px 16px;flex:1;min-height:320px;display:flex;flex-direction:column;justify-content:center}.rates-loading-state,.rates-error-state,.rates-empty-chart{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:280px;color:#64748b;font-size:.875rem}.rates-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#0284c7;border-radius:50%;animation:spin .7s linear infinite}.retry-btn{padding:6px 14px;background:#ef4444;color:#fff;border:none;border-radius:6px;cursor:pointer;font-weight:600}.rates-chart-wrapper{width:100%;height:320px}.rates-chart-tooltip{background:#0f172a;color:#fff;padding:10px 14px;border-radius:10px;box-shadow:0 10px 25px -5px #0000004d;font-size:.8125rem;display:flex;flex-direction:column;gap:4px;pointer-events:none}.tooltip-header{display:flex;justify-content:space-between;gap:10px;color:#94a3b8;font-size:.75rem;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:4px}.tooltip-price-val{font-size:1.1rem;font-weight:800;color:#38bdf8;font-family:var(--font-mono, monospace)}.tooltip-diff{display:flex;align-items:center;gap:6px;font-size:.75rem;font-weight:600}.tooltip-diff.positive{color:#4ade80}.tooltip-diff.negative{color:#f87171}.rates-table-wrapper{display:flex;flex-direction:column;gap:10px;height:320px}.table-top-bar{display:flex;align-items:center;justify-content:space-between}.table-row-count{font-size:.8125rem;color:#64748b}.btn-export-csv{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:6px;border:1px solid #cbd5e1;background:#fff;font-size:.75rem;font-weight:600;color:#334155;cursor:pointer;transition:all .15s ease}.btn-export-csv:hover{background:#f1f5f9;border-color:#94a3b8}.table-scroll-container{flex:1;overflow-y:auto;border:1px solid #e2e8f0;border-radius:8px}.rates-data-table{width:100%;border-collapse:collapse;font-size:.8125rem;text-align:left}.rates-data-table th{background:#f8fafc;padding:8px 12px;font-weight:600;color:#475569;position:sticky;top:0;border-bottom:1px solid #e2e8f0}.rates-data-table td{padding:8px 12px;border-bottom:1px solid #f1f5f9;color:#1e293b}.rates-data-table tr:hover{background:#f8fafc}.font-bold{font-weight:700}.font-mono{font-family:var(--font-mono, monospace)}.text-muted{color:#94a3b8}.text-green{color:#16a34a}.text-red{color:#dc2626}.text-xs{font-size:.6875rem}.table-badge{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.6875rem;font-weight:700}.table-badge.up{background:#dcfce7;color:#15803d}.table-badge.down{background:#fee2e2;color:#b91c1c}.badge-muted{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.6875rem;background:#f1f5f9;color:#64748b;font-weight:600}.badge-highlight{display:inline-block;padding:2px 6px;border-radius:4px;font-size:.6875rem;background:#e0f2fe;color:#0369a1;font-weight:700}.rates-modal-footer{padding:14px 24px;border-top:1px solid #e2e8f0;display:flex;align-items:center;justify-content:space-between;background:#f8fafc}.footer-source{font-size:.75rem;color:#64748b}.btn-modal-close{padding:8px 18px;background:#0f172a;color:#fff;border:none;border-radius:8px;font-size:.8125rem;font-weight:600;cursor:pointer;transition:background .15s ease}.btn-modal-close:hover{background:#334155}@media (max-width: 768px){.rates-asset-tabs{grid-template-columns:1fr}.rates-metrics-grid{grid-template-columns:repeat(2,1fr)}.rates-toolbar{flex-direction:column;align-items:stretch}.rates-period-selector{overflow-x:auto}}.topbar{height:var(--header-height, 64px);background:#fff;border-bottom:1px solid var(--border-color, #e2e8f0);display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;position:sticky;top:0;z-index:1000;box-shadow:0 1px 3px #0f172a08}.topbar-left{display:flex;align-items:center;gap:12px;flex-shrink:0}.topbar-company{display:flex;flex-direction:column;justify-content:center}.topbar-company-row{display:flex;align-items:center;gap:8px}.company-name{font-size:.9375rem;font-weight:700;color:#0f172a;letter-spacing:-.01em}.badge-corporate{background:#eff6ff;color:#2563eb;font-size:.625rem;font-weight:700;padding:2px 7px;border-radius:4px;border:1px solid #bfdbfe;letter-spacing:.05em}.company-sublink{font-size:.72rem;color:#94a3b8;margin-top:1px}.topbar-center{display:flex;align-items:center;gap:16px;flex:1;max-width:720px;margin:0 24px}.topbar-search-box{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:9999px;padding:6px 14px;flex:1;transition:all var(--transition-fast)}.topbar-search-box:focus-within{background:#fff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb14}.search-icon{color:#94a3b8;flex-shrink:0}.topbar-search-input{border:none;background:transparent;font-size:.8125rem;font-family:inherit;color:#0f172a;width:100%;outline:none}.topbar-search-input::placeholder{color:#94a3b8}.search-kbd{background:#fff;border:1px solid #cbd5e1;border-radius:4px;font-size:.65rem;font-weight:600;padding:2px 6px;color:#64748b;box-shadow:0 1px 1px #0000000d;flex-shrink:0}.topbar-rates-mini{display:flex;align-items:center;gap:8px;flex-shrink:0;cursor:pointer}.rate-mini-pill{display:inline-flex;align-items:center;gap:5px;background:#f8fafc;border:1px solid #e2e8f0;padding:4px 9px;border-radius:8px;font-size:.75rem;color:#334155;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1);-webkit-user-select:none;user-select:none}.rate-mini-pill:hover{background:#f1f5f9;border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.rate-mini-pill.gold-pill{background:#fffbeb;border-color:#fde68a}.rate-mini-pill.gold-pill:hover{background:#fef3c7;border-color:#f59e0b}.rate-mini-pill.gold-pill .rate-curr{color:#b45309}.rate-curr{font-weight:700;color:#475569}.rate-val{font-weight:700;color:#0f172a;font-family:var(--font-mono, monospace)}.rate-pill-change{font-size:.6875rem;font-weight:700;padding:1px 4px;border-radius:4px;margin-left:2px}.rate-pill-change.up{color:#16a34a;background:#22c55e1f}.rate-pill-change.down{color:#dc2626;background:#ef44441f}.topbar-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.topbar-chip{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:5px 10px}.chip-text-group{display:flex;flex-direction:column}.chip-title{font-size:.72rem;font-weight:700;color:#1e293b;line-height:1.2}.chip-sub{font-size:.65rem;color:#64748b;font-family:var(--font-mono, monospace);line-height:1.2}.status-dot-green{width:8px;height:8px;border-radius:50%;background:#10b981;box-shadow:0 0 0 2px #d1fae5;flex-shrink:0}.storage-icon{color:#ea580c;flex-shrink:0}.storage-label-row{display:flex;align-items:center;gap:6px}.storage-val{font-size:.72rem;font-weight:700;color:#0f172a}.storage-total{color:#94a3b8;font-weight:500}.topbar-mini-progress{width:90px;height:4px;background:#f1f5f9;border-radius:999px;overflow:hidden;margin-top:3px}.topbar-mini-progress-fill{height:100%;background:#ea580c;border-radius:999px}.topbar-btn-chat{display:inline-flex;align-items:center;gap:6px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:6px 12px;font-size:.8125rem;font-weight:600;color:#334155;cursor:pointer;transition:all var(--transition-fast)}.topbar-btn-chat:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.topbar-chat-unread-pill{position:absolute;top:-5px;right:-5px;background:#ef4444;color:#fff;font-size:.65rem;font-weight:700;min-width:18px;height:18px;border-radius:9999px;display:flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:0 1px 3px #ef444466}.topbar-icon-btn{width:36px;height:36px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;display:flex;align-items:center;justify-content:center;position:relative;cursor:pointer;color:#475569;transition:all var(--transition-fast)}.topbar-icon-btn:hover,.topbar-icon-btn.active{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.topbar-notification-wrapper{position:relative}.topbar-notifications-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:310px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000000d;z-index:1000;overflow:hidden;animation:dropdownFade .15s ease-out}.dropdown-notif-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#f8fafc;border-bottom:1px solid #e2e8f0}.notif-header-left{display:flex;align-items:center;gap:8px}.notif-header-icon{color:#2563eb}.notif-header-title{font-size:.85rem;font-weight:700;color:#0f172a}.notif-count-badge{font-size:.6875rem;font-weight:600;padding:2px 8px;border-radius:999px;background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.dropdown-notif-body{padding:1.5rem 1rem}.notif-empty-state{display:flex;flex-direction:column;align-items:center;text-align:center}.notif-empty-icon-circle{width:46px;height:46px;border-radius:50%;background:#f1f5f9;color:#94a3b8;display:flex;align-items:center;justify-content:center;margin-bottom:.65rem}.notif-empty-title{font-size:.875rem;font-weight:600;color:#334155;margin-bottom:.25rem}.notif-empty-desc{font-size:.75rem;color:#94a3b8;line-height:1.4;margin:0}.topbar-badge-red{position:absolute;top:-4px;right:-4px;background:#ef4444;color:#fff;font-size:.625rem;font-weight:700;min-width:17px;height:17px;padding:0 3px;border-radius:999px;display:flex;align-items:center;justify-content:center;border:2px solid #ffffff}.topbar-user-profile{display:flex;align-items:center;gap:8px;padding-left:6px;border-left:1px solid #e2e8f0}.user-avatar-circle{width:34px;height:34px;border-radius:50%;background:#1e40af;color:#fff;font-weight:700;font-size:.78rem;display:flex;align-items:center;justify-content:center;letter-spacing:.02em;flex-shrink:0}.user-details{display:flex;flex-direction:column}.user-name{font-size:.8125rem;font-weight:700;color:#0f172a;line-height:1.2}.user-role{font-size:.6875rem;color:#64748b;line-height:1.2}.topbar-user-wrapper{position:relative;padding-left:6px;border-left:1px solid #e2e8f0}.topbar-user-btn{display:flex;align-items:center;gap:8px;background:transparent;border:1px solid transparent;border-radius:8px;padding:4px 8px;cursor:pointer;transition:all .2s ease;text-align:left}.topbar-user-btn:hover,.topbar-user-btn.active{background:#f1f5f9;border-color:#e2e8f0}.profile-chevron{color:#94a3b8;transition:transform .2s ease}.profile-chevron.open{transform:rotate(180deg)}.topbar-profile-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:280px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000000d;z-index:1000;overflow:hidden;animation:dropdownFade .15s ease-out}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.dropdown-user-header{padding:.85rem 1rem;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;align-items:center;gap:10px}.dropdown-avatar{width:38px;height:38px;border-radius:10px;background:#2563eb;color:#fff;font-weight:700;font-size:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.dropdown-info{overflow:hidden;flex:1}.dropdown-name{font-size:.875rem;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-company{font-size:.75rem;color:#475569;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-badge{display:inline-block;margin-top:3px;padding:1px 6px;border-radius:4px;font-size:.65rem;font-weight:700}.dropdown-menu-list{padding:6px;list-style:none;margin:0}.dropdown-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:transparent;border-radius:6px;font-size:.8125rem;font-weight:500;color:#334155;cursor:pointer;transition:all .15s ease;text-align:left}.dropdown-item:hover{background:#f1f5f9;color:#0f172a}.dropdown-item.danger{color:#ef4444}.dropdown-item.danger:hover{background:#fef2f2;color:#dc2626}.dropdown-divider{height:1px;background:#e2e8f0;margin:4px 6px}.report-modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0f172afa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:100000;padding:0;overflow-y:auto;display:flex;flex-direction:column}.report-modal-toolbar{background:#1e293b;padding:1.25rem 3rem;display:flex;justify-content:space-between;align-items:center;color:#fff;border-bottom:2px solid #334155;position:sticky;top:0;z-index:100}.toolbar-info h3{margin:0;font-size:1.1rem;color:#38bdf8;font-weight:800}.toolbar-info p{margin:.2rem 0 0;font-size:.75rem;color:#94a3b8}.btn-action-print{background:#0ea5e9;color:#fff;border:none;padding:.7rem 1.6rem;border-radius:8px;font-weight:800;cursor:pointer}.btn-action-close{background:#334155;color:#fff;border:none;padding:.7rem 1.25rem;border-radius:8px;font-weight:600;cursor:pointer;margin-left:12px}.print-master-container{padding:3rem 0;display:flex;flex-direction:column;align-items:center;gap:40px}.a4-page{background:#fff;width:210mm;height:297mm;padding:20mm;position:relative;box-shadow:0 40px 100px #00000080;color:#1e293b;font-family:Times New Roman,Times,serif;display:flex;flex-direction:column;box-sizing:border-box;overflow:hidden}.page-break-indicator{color:#64748b;font-size:.7rem;text-transform:uppercase;letter-spacing:.2em;font-weight:800}.page-x-of-y{position:absolute;bottom:15mm;right:20mm;font-size:.85rem;font-weight:700;color:#64748b;font-family:sans-serif}.cover-page .cover-inner{width:100%;height:100%;border:1px solid #e2e8f0;padding:30mm 20mm;display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box}.cover-company-name{font-size:1.5rem;font-weight:950;text-align:center;color:#0f172a;margin:0}.cover-divider{width:80px;height:5px;background:#0ea5e9;margin:2rem auto}.cover-report-title{font-size:2.5rem;font-weight:900;text-align:center;line-height:1.1;color:#1e293b;margin:4rem 0;letter-spacing:-.02em}.cover-project-box{background:#f8fafc;padding:2.5rem;border-radius:10px;border-left:10px solid #0ea5e9;margin:2rem 0}.cover-project-box label{font-size:.75rem;font-weight:800;color:#64748b;display:block;margin-bottom:.5rem;letter-spacing:.1em}.cover-project-box h2{font-size:1.8rem;margin:0;color:#0f172a;font-weight:900}.cover-footer{display:flex;justify-content:space-between;border-top:1px solid #e2e8f0;padding-top:2.5rem}.cover-info-item label{display:block;font-size:.7rem;font-weight:800;color:#94a3b8;margin-bottom:.3rem}.cover-info-item span{font-size:1rem;font-weight:700;color:#1e293b}.page-header-mini{font-size:.75rem;color:#94a3b8;border-bottom:1px solid #f1f5f9;padding-bottom:.5rem;margin-bottom:1.5rem;font-style:italic}.section-main-title{font-size:1.3rem;font-weight:900;border-bottom:4px solid #0f172a;padding-bottom:.5rem;margin-bottom:2rem;color:#0f172a}.official-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2.5rem}.o-card{padding:1.5rem;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;text-align:center}.o-card.primary{background:#0f172a;color:#fff;border-color:#0f172a}.o-card label{display:block;font-size:.65rem;font-weight:800;margin-bottom:.5rem;color:#64748b;text-transform:uppercase}.o-card.primary label{color:#94a3b8}.o-card .val{font-size:1.3rem;font-weight:900}.analysis-split{display:flex;gap:2rem;margin-bottom:2.5rem;align-items:flex-start}.split-left{flex:1.2}.split-right{flex:1.2;display:flex;justify-content:center;overflow:visible}.sub-title-official{font-size:.9rem;font-weight:900;margin-bottom:1rem;color:#1e293b;text-transform:uppercase}.official-table,.official-data-table{width:100%;border-collapse:collapse;font-size:.85rem}.official-table th{text-align:left;padding:.5rem;background:#f1f5f9;border:1px solid #cbd5e1;font-weight:800}.official-table td{padding:.5rem;border:1px solid #e2e8f0}.official-data-table th{background:#0f172a;color:#fff;padding:.75rem .5rem;text-align:left;font-size:.8rem}.official-data-table td{padding:.75rem .5rem;border:1px solid #e2e8f0;vertical-align:top}.f-thick{font-weight:900;color:#000}.f-small{font-size:.7rem;margin-top:.15rem;font-weight:600}.f-desc{font-weight:600;color:#334155}.signature-footer-v3{margin-top:auto;padding-top:3rem;display:flex;justify-content:space-around}.sig-item{text-align:center;width:150px}.sig-item p{font-size:.9rem;font-weight:900;margin-bottom:3.5rem;color:#0f172a}.sig-item .line{border-bottom:2.5px solid #0f172a}@media print{@page{size:A4;margin:0}body:has(.report-modal-overlay) #root,.no-print,.report-modal-header,.page-break-indicator{display:none!important}body,html{background:#fff!important;margin:0!important;padding:0!important;height:auto!important;overflow:visible!important}.report-modal-overlay{position:absolute!important;top:0!important;left:0!important;width:100%!important;height:auto!important;background:#fff!important;padding:0!important;margin:0!important;display:block!important;z-index:9999999!important;overflow:visible!important}.print-master-container{display:block!important;width:100%!important;margin:0!important;padding:0!important;background:#fff!important}.a4-page{width:210mm!important;height:auto!important;min-height:295mm!important;margin:0!important;padding:20mm!important;box-shadow:none!important;border:none!important;display:flex!important;flex-direction:column!important;page-break-after:always!important;break-after:page!important;background:#fff!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.official-summary-grid{display:grid!important}.analysis-split{display:flex!important}.official-table,.official-data-table{display:table!important;-webkit-print-color-adjust:exact!important}.official-table tr,.official-data-table tr{display:table-row!important}.official-table td,.official-table th,.official-data-table td,.official-data-table th{display:table-cell!important}.page-x-of-y{position:absolute!important;bottom:12mm!important;right:20mm!important;display:block!important;color:#000!important}.recharts-surface{visibility:visible!important}}:root{--pastel-indigo: #eef2ff;--pastel-indigo-strong: #818cf8;--pastel-blue: #f0f9ff;--pastel-blue-strong: #38bdf8;--pastel-mint: #f0fdf4;--pastel-mint-strong: #4ade80;--pastel-amber: #fffbeb;--pastel-amber-strong: #fbbf24;--pastel-rose: #fff1f2;--pastel-rose-strong: #fb7185;--glass-bg: rgba(255, 255, 255, .7);--glass-border: rgba(255, 255, 255, .5)}.new-cost-container{width:100%;max-width:100%;margin:0;padding:0 0 2rem}.cost-layout-grid{display:grid;grid-template-columns:5fr 7fr;gap:1.5rem;align-items:stretch}@media (max-width: 1200px){.cost-layout-grid{grid-template-columns:1fr}}.page-title-area{margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center}.page-title-area h1{font-size:1.875rem;font-weight:700;background:linear-gradient(135deg,var(--gray-800) 0%,var(--gray-600) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin:0}.premium-form-card{background:var(--bg-card);border-radius:16px;border:1px solid var(--border-color);box-shadow:var(--shadow-lg);transition:transform .2s ease}.form-header-gradient{background:linear-gradient(135deg,var(--pastel-indigo) 0%,#ffffff 100%);padding:1.5rem 2rem;border-bottom:1px solid var(--border-color);display:flex;align-items:center;gap:1rem;border-top-left-radius:15px;border-top-right-radius:15px}.form-header-gradient h2{font-size:1.125rem;color:var(--gray-800);margin:0}.form-body{padding:2rem}.form-section-modern{margin-bottom:2.5rem;position:relative}.form-section-modern:last-child{margin-bottom:0}.section-indicator{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.section-number{width:28px;height:28px;border-radius:50%;background:var(--pastel-indigo-strong);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.section-title{font-size:1rem;font-weight:600;color:var(--gray-700);text-transform:uppercase;letter-spacing:.05em}.modern-group{margin-bottom:1.5rem}.modern-label{display:block;font-size:.875rem;font-weight:600;color:var(--gray-600);margin-bottom:.5rem}.modern-select,.modern-input{height:48px;border-radius:10px;border:2px solid var(--gray-200);padding:0 1rem;font-size:.9375rem;transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease;background:var(--gray-50)}.modern-select:focus,.modern-input:focus{border-color:var(--pastel-indigo-strong);background:#fff;box-shadow:0 0 0 4px #818cf81a;outline:none}.project-detail-box{background:var(--pastel-blue);border:1px solid rgba(56,189,248,.2);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.currency-equivalents-card{background:linear-gradient(135deg,white 0%,var(--pastel-blue) 100%);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;margin-top:1rem}.equivalent-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px dashed var(--gray-300)}.equivalent-item:last-child{border-bottom:none}.equivalent-value{font-family:var(--font-mono);font-weight:600;color:var(--primary)}.payment-toggle-area{background:var(--pastel-mint);border:1px solid rgba(74,222,128,.2);border-radius:12px;padding:1.5rem;transition:all .3s ease}.payment-toggle-area.is-paid{border-color:var(--pastel-mint-strong);box-shadow:0 4px 12px #4ade801a}.modern-checkbox-wrapper{display:flex;align-items:center;gap:1rem;cursor:pointer}.custom-checkbox{width:24px;height:24px;border-radius:6px;border:2px solid var(--gray-300);display:flex;align-items:center;justify-content:center;transition:all .2s ease}input[type=checkbox]:checked+.custom-checkbox{background:var(--pastel-mint-strong);border-color:var(--pastel-mint-strong);color:#fff}.premium-footer{padding:2rem;background:var(--gray-50);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;gap:1rem}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1.5rem}@media (max-width: 768px){.grid-2,.grid-3{grid-template-columns:1fr}}.floating-amount-preview{font-size:1.5rem;font-weight:700;color:var(--primary);text-align:right;margin-top:.5rem}tr.dashed-row td{border-bottom:1px dashed #cbd5e1!important}.poz-select-modal-container{background-color:#fff;border-radius:20px;width:85vw;max-width:1100px;height:85vh;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000040;border:1px solid rgba(226,232,240,.8)}.modal-header-modern{padding:1.5rem 2rem;background:#fff;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center}.modal-close-btn{width:36px;height:36px;border-radius:50%;background-color:#f1f5f9;border:none;font-size:1.1rem;cursor:pointer;color:#64748b;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.modal-close-btn:hover{background-color:#fee2e2;color:#ef4444;transform:rotate(90deg)}.search-bar-modern{height:48px;border-radius:12px;border:2px solid #e2e8f0;padding-left:3rem;padding-right:1.5rem;font-size:.95rem;transition:all .2s ease;background-color:#f8fafc}.search-bar-modern:focus{border-color:#818cf8;background-color:#fff;box-shadow:0 0 0 4px #818cf826}.section-sidebar{background-color:#f8fafc;border-right:1px solid #e2e8f0;padding:1.25rem 1rem;overflow-y:auto;width:320px}.sidebar-section-item{padding:.75rem 1rem;border-radius:12px;cursor:pointer;transition:all .2s ease;border:1px solid transparent;display:flex;align-items:center;margin-bottom:.35rem}.sidebar-section-item:hover{background-color:#f1f5f9}.sidebar-section-item.active{background-color:#e0e7ff;border-color:#c7d2fe;color:#4f46e5}.sidebar-section-item.active .text-dark{color:#312e81!important}.sidebar-section-item.special-item{border:1px dashed #cbd5e1;background:#fff}.sidebar-section-item.special-item:hover{border-color:#94a3b8;background-color:#f8fafc}.sidebar-section-item.special-item.active{border-style:solid;border-color:#c7d2fe;background-color:#e0e7ff}.poz-items-list-modern{display:flex;flex-direction:column;gap:.75rem}.poz-item-card-row{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1rem 1.25rem;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 3px #00000005}.poz-item-card-row:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000000d;border-color:#818cf8}.poz-code-pill{background-color:#eff6ff;border:1px solid #dbeafe;color:#2563eb;font-size:.8rem;font-weight:700;font-family:var(--font-mono);padding:.2rem .6rem;border-radius:6px}.poz-section-tag{font-size:.75rem;color:#64748b;font-weight:500;background-color:#f1f5f9;padding:.2rem .5rem;border-radius:4px}.poz-name-text{font-size:.95rem;font-weight:600;color:#1e293b}.poz-unit-tag{color:#475569;font-size:.775rem;font-weight:600;background-color:#f1f5f9;padding:.2rem .6rem;border-radius:6px;border:1px solid #e2e8f0}.select-action-btn{border-radius:8px;font-size:.8rem;opacity:.8;transition:all .2s ease}.poz-item-card-row:hover .select-action-btn{opacity:1;transform:scale(1.02)}.modern-input:focus,.modern-input:focus-visible,.form-control:focus,.form-control:focus-visible,[tabindex]:focus,[tabindex]:focus-visible{border-color:#2563eb!important;box-shadow:0 0 0 4px #2563eb40!important;outline:none!important;background-color:#fff!important}:root{--primary: #0f2942;--primary-hover: #1b3d63;--primary-light: #2563eb;--primary-bg: rgba(37, 99, 235, .08);--accent-blue: #2563eb;--accent-blue-hover: #1d4ed8;--gray-50: #f8fafc;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--success: #059669;--success-hover: #047857;--success-bg: #ecfdf5;--success-border: #a7f3d0;--warning: #d97706;--warning-bg: #fffbeb;--warning-border: #fde68a;--danger: #dc2626;--danger-bg: #fef2f2;--danger-border: #fecaca;--info: #0284c7;--info-bg: #f0f9ff;--info-border: #bae6fd;--bg-body: #f8fafc;--bg-sidebar: #ffffff;--sidebar-border: #e2e8f0;--sidebar-icon-inactive: #64748b;--sidebar-icon-active: #ffffff;--bg-card: #ffffff;--bg-card-hover: #ffffff;--bg-input: #ffffff;--bg-header: #ffffff;--bg-table-header: #f8fafc;--bg-table-row-alt: #fafbfc;--text-primary: #0f172a;--text-secondary: #334155;--text-muted: #64748b;--text-placeholder: #94a3b8;--text-inverse: #ffffff;--text-sidebar: #334155;--text-sidebar-muted: #94a3b8;--border-color: #e2e8f0;--border-color-strong: #cbd5e1;--border-focus: #2563eb;--shadow-xs: 0 1px 2px rgba(15, 23, 42, .04);--shadow-sm: 0 1px 3px rgba(15, 23, 42, .05), 0 1px 2px rgba(15, 23, 42, .02);--shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .06), 0 2px 4px -2px rgba(15, 23, 42, .04);--shadow-lg: 0 10px 15px -3px rgba(15, 23, 42, .07), 0 4px 6px -4px rgba(15, 23, 42, .03);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 18px;--sidebar-width: 275px;--sidebar-collapsed: 72px;--header-height: 64px;--page-padding: 24px;--transition-fast: .12s ease;--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--font-sans: "Plus Jakarta Sans", "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "IBM Plex Mono", "Consolas", monospace;--text-xs: .75rem;--text-sm: .8125rem;--text-base: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px}body{font-family:var(--font-sans);font-size:var(--text-base);font-weight:400;line-height:1.5;color:var(--text-primary);background:var(--bg-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}::selection{background:#2563eb33;color:var(--text-primary)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--gray-400)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;color:var(--text-primary);letter-spacing:-.01em}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}h4{font-size:var(--text-md)}p{color:var(--text-secondary);line-height:1.6}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-hover)}code{font-family:var(--font-mono);font-size:var(--text-sm);background:var(--gray-100);padding:.15em .4em;border-radius:var(--radius-sm);color:var(--gray-700)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-primary{color:var(--primary)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.font-mono{font-family:var(--font-mono)}.font-medium{font-weight:500}.font-semibold{font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin .8s linear infinite}.page-header-sticky{position:sticky;top:0;z-index:100;background:var(--bg-body);padding-bottom:1rem}.page-title-card{background:#fff;padding:1.25rem 1.75rem;border-radius:12px;border:1px solid var(--border-color);box-shadow:var(--shadow-sm);display:flex;justify-content:space-between;align-items:center;margin-bottom:0}.page-title-card h1{margin:0;font-size:1.5rem;font-weight:700;color:#1e293b}.modern-main-card{background:#fff;border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-sm);overflow:visible!important;position:relative}.sticky-table-thead th{position:sticky;top:0;z-index:980;background:#f8fafc;border-bottom:2px solid var(--border-color)}.account-link{color:var(--primary);text-decoration:none;font-weight:600;transition:color var(--transition-fast)}.account-link:hover{color:var(--primary-hover);text-decoration:underline}.tab-navigation .tab-item{padding:.75rem 1.25rem;border:none;background:transparent;color:var(--text-secondary);font-weight:500;font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-normal);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;gap:.5rem}.tab-navigation .tab-item:hover{background:var(--gray-100);color:var(--primary)}.tab-navigation .tab-item.active{background:var(--primary-bg);color:var(--primary);font-weight:600;box-shadow:none}.search-dropdown{position:absolute;top:100%;left:0;right:0;background:#fff;border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:1000;max-height:400px;overflow-y:auto;margin-top:4px}.search-item{display:flex;align-items:center;gap:12px;padding:10px 12px;cursor:pointer;transition:background .2s;border-bottom:1px solid var(--gray-100)}.search-item:last-child{border-bottom:none}.search-item:hover,.search-item.active{background:var(--gray-50);border-left:3px solid var(--primary);padding-left:9px}.search-item-image{width:48px;height:48px;border-radius:var(--radius-sm);overflow:hidden;background:var(--gray-100);display:flex;align-items:center;justify-content:center;flex-shrink:0}.search-item-image img{width:100%;height:100%;object-fit:cover}.search-item-info{flex:1;min-width:0}.search-item-name{font-weight:600;font-size:var(--text-sm);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-item-meta{display:flex;gap:8px;font-size:var(--text-xs);color:var(--text-muted)}.search-item-code{font-weight:500;color:var(--primary)}.search-item-price{font-weight:600;color:var(--text-primary);font-size:var(--text-sm);white-space:nowrap}@keyframes blinkWarning{0%,to{box-shadow:0 0 #dc262600}50%{box-shadow:0 0 0 5px #dc262633}}@keyframes blinkOrange{0%,to{box-shadow:0 0 #ea580c00}50%{box-shadow:0 0 0 5px #ea580c33}}@keyframes blinkInfo{0%,to{box-shadow:0 0 #2563eb00}50%{box-shadow:0 0 0 5px #2563eb33}}.alert-project-card{display:block;padding:14px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;text-decoration:none;transition:all .2s ease;box-shadow:0 1px 3px #0000000d}.alert-project-card:hover{transform:translateY(-2px);border-color:#cbd5e1;box-shadow:0 8px 18px -3px #0000001a!important}.alert-project-header{display:flex;align-items:center;gap:8px;font-weight:700;font-size:.95rem;color:#0f172a;margin-bottom:10px;border-bottom:1px solid #f1f5f9;padding-bottom:8px}.alert-project-items{display:flex;flex-direction:column;gap:8px}.alert-item{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;font-weight:600;padding:8px 12px;border-radius:8px;transition:all .2s ease}.alert-count{font-weight:700;font-size:.8rem;padding:2px 10px;border-radius:12px;min-width:24px;text-align:center}.blink-delayed-start{animation:blinkWarning 2.5s infinite!important;background-color:#fef2f2!important;color:#991b1b!important;border:1px solid #fecaca!important;border-left:4px solid #dc2626!important}.blink-delayed-start .alert-count,.blink-delayed-start .count{background-color:#dc2626!important;color:#fff!important;box-shadow:0 1px 2px #dc26264d}.blink-overdue-finish{animation:blinkOrange 2.5s infinite!important;background-color:#fff7ed!important;color:#c2410c!important;border:1px solid #ffedd5!important;border-left:4px solid #ea580c!important}.blink-overdue-finish .alert-count,.blink-overdue-finish .count{background-color:#ea580c!important;color:#fff!important;box-shadow:0 1px 2px #ea580c4d}.blink-starting-soon{animation:blinkInfo 2.5s infinite!important;background-color:#eff6ff!important;color:#1d4ed8!important;border:1px solid #bfdbfe!important;border-left:4px solid #2563eb!important}.blink-starting-soon .alert-count,.blink-starting-soon .count{background-color:#2563eb!important;color:#fff!important;box-shadow:0 1px 2px #2563eb4d}.ai-plan-magic-btn{background:linear-gradient(135deg,#6366f1,#a855f7,#ec4899);color:#fff;border:none;font-weight:700;box-shadow:0 4px 15px #a855f766;transition:all .3s ease}.ai-plan-magic-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 6px 20px #a855f799;opacity:1}.ai-plan-magic-btn:active{transform:translateY(1px)}.project-materials-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-sm)}.materials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.material-card{background:#fff;border-radius:16px;overflow:hidden;border:1px solid var(--border-color);transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;position:relative}.material-card:hover{transform:translateY(-8px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.material-image-wrapper{position:relative;aspect-ratio:4/3;overflow:hidden;background:var(--gray-100)}.material-image-wrapper img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.material-card:hover .material-image-wrapper img{transform:scale(1.1)}.material-category-badge{position:absolute;bottom:.75rem;left:.75rem;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:4px 12px;border-radius:100px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.material-card-actions{position:absolute;top:.75rem;right:.75rem;display:flex;gap:.5rem;opacity:0;transition:opacity .2s ease}.material-card:hover .material-card-actions{opacity:1}.action-btn{width:32px;height:32px;border-radius:50%;border:none;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-md);transition:all .2s}.action-btn.edit:hover{background:var(--primary);color:#fff}.action-btn.delete:hover{background:var(--danger);color:#fff}.material-content{padding:1.25rem;flex:1;display:flex;flex-direction:column}.material-title{font-size:1.125rem;font-weight:700;margin-bottom:.25rem;color:var(--text-primary)}.material-location{display:flex;align-items:center;gap:4px;color:var(--text-muted);font-size:13px;margin-bottom:1rem}.material-specs-box{background:var(--gray-50);border:1px solid var(--gray-100);padding:.75rem;border-radius:8px;margin-bottom:1rem}.material-spec-label{display:block;font-size:10px;font-weight:800;color:var(--gray-400);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.material-spec-value{font-size:13px;color:var(--gray-700);font-weight:600}.material-footer{margin-top:auto;padding-top:1rem;border-top:1px solid var(--gray-100);display:flex;justify-content:space-between;align-items:center;font-size:11px;font-weight:700;color:var(--gray-400);text-transform:uppercase}.material-form-modal{max-width:650px!important;border-radius:24px!important}.material-upload-preview{width:120px;height:120px;border-radius:16px;border:2px dashed var(--gray-300);display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer}.material-upload-preview img{width:100%;height:100%;object-fit:cover}
