.login-container{display:flex;justify-content:center;align-items:center;min-height:100svh;padding:24px 16px;background:var(--sidebar-bg);background-image:radial-gradient(ellipse 70% 60% at 20% 20%,rgba(59,130,246,.25),transparent),radial-gradient(ellipse 50% 50% at 80% 80%,rgba(99,102,241,.15),transparent)}.login-box{background:var(--app-surface);padding:clamp(32px,5vw,44px);border-radius:var(--app-radius-xl);box-shadow:var(--app-shadow-md);border:1px solid var(--app-border-soft);width:100%;max-width:420px}.login-box h1{text-align:center;margin-bottom:6px;color:var(--app-text-heading);font-size:1.5rem;font-weight:700;letter-spacing:-.02em}.login-hint{font-size:12px;color:#555;text-align:center;margin:0 0 16px;line-height:1.45}.login-box h2{text-align:center;margin-bottom:28px;color:var(--app-text-muted);font-size:15px;font-weight:500}.form-group{margin-bottom:18px}.form-group label{display:block;margin-bottom:6px;color:var(--app-text-body);font-weight:600;font-size:13px}.form-group input{width:100%;padding:12px 14px;border:1px solid var(--app-border-input);border-radius:var(--app-radius);font-size:14px;background:var(--app-surface);color:var(--app-text-heading);transition:border-color var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease)}.form-group input:focus{outline:none;border-color:var(--app-primary);box-shadow:0 0 0 3px #2563eb26}.password-field-wrap{position:relative}.password-field-wrap input{padding-right:44px}.password-toggle-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;margin:0;background:transparent;border:none;border-radius:var(--app-radius);color:var(--app-text-muted);cursor:pointer;opacity:1;visibility:visible;pointer-events:auto;transition:color var(--app-duration) var(--app-ease)}.password-toggle-btn:hover:not(:disabled){color:var(--app-primary)}.password-toggle-btn:focus-visible{outline:2px solid var(--app-primary);outline-offset:2px}.password-toggle-btn:disabled{opacity:.5;cursor:not-allowed}.login-box button[type=submit],.login-box .login-submit{width:100%;padding:12px 16px;margin-top:8px;background:var(--app-nav-active-gradient);color:#fff;border:none;border-radius:var(--app-radius);font-size:15px;font-weight:600;cursor:pointer;min-height:44px;box-shadow:0 4px 14px #2563eb4d;transition:filter var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease)}.login-box button[type=submit]:hover:not(:disabled),.login-box .login-submit:hover:not(:disabled){filter:brightness(1.05);box-shadow:0 6px 18px #2563eb59}.login-box button:disabled{opacity:.65;cursor:not-allowed}.login-error{background:var(--app-danger-soft);color:var(--app-danger);padding:12px 14px;border-radius:var(--app-radius);margin-bottom:16px;font-size:14px;border:1px solid #fecaca}.layout{display:flex;min-height:100svh;overflow:hidden;background:var(--page-bg);--layout-sidebar-width: var(--app-sidebar-width)}.layout.layout--sidebar-collapsed{--layout-sidebar-width: 0px}.sidebar{width:var(--layout-sidebar-width);min-width:var(--layout-sidebar-width);flex-shrink:0;background:var(--sidebar-bg);color:var(--sidebar-text);display:flex;flex-direction:column;padding:var(--app-space-5) var(--app-space-4);transition:width .25s var(--app-ease),min-width .25s var(--app-ease),transform var(--app-duration) var(--app-ease),padding .25s var(--app-ease);overflow-y:auto;overflow-x:hidden;box-shadow:var(--app-shadow-sidebar);border-right:1px solid rgba(255,255,255,.06);position:relative}.layout.layout--sidebar-collapsed .sidebar{padding-left:0;padding-right:0;border-right-width:0;box-shadow:none;overflow:hidden}.sidebar-mobile-close{display:none}.sidebar-header__title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.sidebar-header__title-row h2{flex:1;min-width:0}.sidebar-collapse-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;flex-shrink:0;border:1px solid rgba(255,255,255,.14);border-radius:var(--app-radius-sm);background:#ffffff0f;color:#e2e8f0;cursor:pointer;transition:background var(--app-duration) var(--app-ease)}.sidebar-collapse-btn:hover{background:#ffffff1f;color:#fff}.sidebar-expand-tab{position:fixed;left:0;top:clamp(12px,2vw,20px);z-index:100;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid rgba(15,23,42,.12);border-left:none;border-radius:0 var(--app-radius-sm) var(--app-radius-sm) 0;background:var(--sidebar-bg);color:#e2e8f0;cursor:pointer;box-shadow:var(--app-shadow-sm);transition:background var(--app-duration) var(--app-ease)}.sidebar-expand-tab:hover{background:#1e293b;color:#fff}.sidebar-header{margin-bottom:var(--app-space-6);padding-bottom:var(--app-space-4);border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-header h2{font-size:1.05rem;font-weight:700;margin-bottom:var(--app-space-3);letter-spacing:-.02em;line-height:1.3;color:#f8fafc}.user-name{font-size:14px;font-weight:600;margin-bottom:2px;color:#f1f5f9}.user-role{font-size:12px;color:var(--sidebar-text-muted);text-transform:capitalize}.nav-menu{list-style:none;flex:1;padding:0}.nav-menu>li{margin-bottom:2px}.nav-section-title{margin:var(--app-space-4) 0 var(--app-space-2);padding:0 var(--app-space-2);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--sidebar-text-muted)}.nav-section-title--sub{margin-top:var(--app-space-3);font-size:9px;opacity:.9}.nav-menu a{display:flex;align-items:center;padding:10px 12px;color:var(--sidebar-text);text-decoration:none;border-radius:var(--app-radius);transition:background var(--app-duration) var(--app-ease),color var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease);min-height:42px;font-size:14px;font-weight:500;border:1px solid transparent}.nav-menu a:hover{background:var(--sidebar-hover);color:#fff}.nav-menu a.active{background:var(--sidebar-active-bg);color:#fff;font-weight:600;border-color:var(--sidebar-active-border);box-shadow:inset 0 1px #ffffff0f}.sidebar-nav-group-li{list-style:none;margin-bottom:2px}.sidebar-nav-group__trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 12px;min-height:42px;border:1px solid transparent;border-radius:var(--app-radius);background:transparent;color:var(--sidebar-text);font-size:14px;font-weight:600;cursor:pointer;transition:background var(--app-duration) var(--app-ease)}.sidebar-nav-group__trigger:hover{background:var(--sidebar-hover)}.sidebar-nav-group.is-active-group .sidebar-nav-group__trigger{color:#fff;background:#2563eb29;border-color:#93c5fd6b}.sidebar-nav-group__chevron{font-size:12px;opacity:.7;transition:transform var(--app-duration) var(--app-ease)}.sidebar-nav-group.is-open .sidebar-nav-group__chevron{transform:rotate(180deg)}.sidebar-nav-group__collapse{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--app-duration) var(--app-ease)}.sidebar-nav-group.is-open .sidebar-nav-group__collapse{grid-template-rows:1fr}.sidebar-nav-group__collapse>.sidebar-nav-group__submenu{overflow:hidden}.sidebar-nav-group__submenu{list-style:none;padding:var(--app-space-1) 0 var(--app-space-2) 0;margin:0}.sidebar-nav-group__submenu a{padding:8px 12px 8px 24px;min-height:38px;font-size:13px;font-weight:500;border-radius:10px}.sidebar-user-menu{position:relative;margin-top:var(--app-space-2)}.sidebar-user-menu__profile{padding:var(--app-space-2) var(--app-space-3);border:1px solid rgba(255,255,255,.1);border-radius:var(--app-radius);background:#ffffff0d}.sidebar-user-menu__name-btn{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:4px 6px;margin:0 0 2px -6px;border:none;border-radius:var(--app-radius-sm);background:transparent;color:#f8fafc;cursor:pointer;text-align:left;transition:background var(--app-duration) var(--app-ease)}.sidebar-user-menu__name-btn:hover{background:#ffffff1a}.sidebar-user-menu.is-open .sidebar-user-menu__name-btn{background:#3b82f640}.sidebar-user-menu__name-btn .user-name{font-size:14px;font-weight:600;line-height:1.3;word-break:break-word}.sidebar-user-menu__role{display:block;padding-left:2px;font-size:12px;color:var(--sidebar-text-muted);text-transform:capitalize;pointer-events:none}.sidebar-user-menu__dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:50;background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius);box-shadow:var(--app-shadow-md);overflow:hidden;animation:menuFadeIn .15s var(--app-ease)}@keyframes menuFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sidebar-user-menu__item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:none;color:var(--app-text-body);font-size:14px;font-weight:500;cursor:pointer;text-align:left;text-decoration:none}.sidebar-user-menu__item:hover{background:var(--app-surface-muted);color:var(--app-primary)}.sidebar-user-menu__item--danger{color:var(--app-danger);border-top:1px solid var(--app-border-soft)}.sidebar-user-menu__item--danger:hover,.sidebar-user-menu__item--logout:hover{background:var(--app-danger-soft)}.sidebar-user-menu__chevron{flex-shrink:0;font-size:10px;opacity:.8;transition:transform var(--app-duration) var(--app-ease)}.sidebar-user-menu.is-open .sidebar-user-menu__chevron{transform:rotate(180deg)}.logout-btn{padding:10px 16px;background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none;border-radius:var(--app-radius);cursor:pointer;font-size:14px;font-weight:600;transition:filter var(--app-duration) var(--app-ease);margin-top:auto;min-height:42px;box-shadow:0 4px 12px #dc262640}.logout-btn:hover{filter:brightness(1.05)}.main-content{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden;background:var(--page-bg);background-image:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(59,130,246,.06),transparent),radial-gradient(ellipse 60% 40% at 100% 0%,rgba(99,102,241,.04),transparent)}.main-content__body{flex:1;min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:clamp(12px,2vw,20px) clamp(16px,2.5vw,28px) clamp(16px,2.5vw,28px)}.mobile-header,.mobile-logout-btn{display:none}@media (max-width: 992px){.layout{flex-direction:column;min-height:100svh;--layout-sidebar-width: min(86vw, 300px)}.layout.layout--sidebar-collapsed{--layout-sidebar-width: min(86vw, 300px)}.mobile-header{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#0f172a;color:#f8fafc;padding:12px max(16px,env(safe-area-inset-right,0px)) 12px max(16px,env(safe-area-inset-left,0px));min-height:56px;position:sticky;top:0;z-index:1000;border-bottom:1px solid rgba(255,255,255,.08)}.mobile-header h3{font-size:15px;font-weight:700;margin:0;letter-spacing:-.02em;flex:1;min-width:0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-logout-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 12px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:#ffffff14;color:#fff;font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0}.hamburger{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:none;border:none;color:#fff;cursor:pointer;padding:0;border-radius:var(--app-radius-sm);flex-shrink:0}.hamburger:hover{background:#ffffff1a}.sidebar{position:fixed;top:0;left:0;height:100dvh;width:min(86vw,300px);min-width:0;max-width:min(86vw,300px);z-index:1200;transform:translate(-100%);padding:var(--app-space-5) var(--app-space-4);border-right:1px solid rgba(255,255,255,.06);box-shadow:var(--app-shadow-sidebar);overflow:hidden auto}.layout.layout--sidebar-collapsed .sidebar{padding:var(--app-space-5) var(--app-space-4);border-right:1px solid rgba(255,255,255,.06);box-shadow:var(--app-shadow-sidebar)}.sidebar.open{transform:translate(0)}.sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100}.sidebar-mobile-close{display:inline-flex;align-items:center;justify-content:center;position:absolute;top:14px;right:12px;width:36px;height:36px;border:1px solid rgba(255,255,255,.14);border-radius:var(--app-radius-sm);background:#ffffff14;color:#f8fafc;cursor:pointer;z-index:2}.sidebar-mobile-close:hover{background:#ffffff24}.sidebar-collapse-btn,.sidebar-expand-tab{display:none}.main-content__body{padding:16px max(16px,env(safe-area-inset-right,0px)) 20px max(16px,env(safe-area-inset-left,0px))}}.dashboard-page{width:100%}.dashboard-container{width:100%;padding:0;box-sizing:border-box}.dashboard-toolbar{gap:12px;align-items:center}.dashboard-actions{display:flex;flex-wrap:wrap;justify-content:flex-end}.dashboard-page .MuiPaper-root{border-radius:var(--app-radius-lg);overflow:hidden;border:1px solid var(--app-border-soft);box-shadow:var(--app-shadow-card)}.dashboard-page .MuiTableContainer-root,.dashboard-page .MuiPaper-root{overflow-x:auto}.task-table{min-width:920px}.task-table th{font-weight:700;background:var(--app-surface-muted);white-space:nowrap}.task-table td{white-space:nowrap;vertical-align:middle}.task-table tr:hover{background:#f9fafb}.dashboard-filter-grid{padding-top:4px}.dashboard-filter-grid .MuiOutlinedInput-root,.dashboard-filter-date .MuiInputBase-root{height:40px;border-radius:10px;background:#f8fafc}.dashboard-filter-date .MuiOutlinedInput-notchedOutline{border-color:#dbe3ee!important}.dashboard-filter-date .MuiInputBase-input{font-size:14px;color:#0f172a}.dashboard-filter-date .MuiInputAdornment-root .MuiSvgIcon-root{color:#475569;font-size:18px}.dashboard-filter-grid .MuiButton-outlined{height:40px;border-radius:10px;font-weight:600}.dashboard-page .MuiTextField-root .MuiOutlinedInput-root{border-radius:10px;background:#f9fafb}.dashboard-page .Mui-focused .MuiOutlinedInput-notchedOutline{border-color:#2563eb!important}.dashboard-page .MuiDialog-paper{border-radius:14px}.dashboard-pagination{margin-top:8px;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.dashboard-pagination-text{font-size:13px;color:#64748b}.dashboard-page-btn{height:34px;min-width:34px;padding:0 12px;border:1px solid #dbe3ef;border-radius:9px;background:#fff;color:#334155;font-size:13px;font-weight:600;cursor:pointer;transition:all .16s ease}.dashboard-page-btn:hover:not(:disabled){border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.dashboard-page-btn:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 992px){.dashboard-container{padding:0}.dashboard-toolbar{flex-direction:column;align-items:flex-start!important}.dashboard-actions{width:100%;justify-content:flex-start;gap:8px}.dashboard-actions .MuiButton-root{min-height:40px}.task-table{min-width:860px}.dashboard-filter-grid{grid-template-columns:1fr!important}.dashboard-pagination{justify-content:flex-start}}@media (max-width: 640px){.dashboard-page .MuiToolbar-root{min-height:52px!important;padding-left:12px;padding-right:12px}.dashboard-page .MuiContainer-root{padding-left:0!important;padding-right:0!important}.dashboard-page .MuiPaper-root{border-radius:10px}.dashboard-toolbar{padding:12px!important}.dashboard-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.dashboard-actions .MuiButton-root:last-child{grid-column:1 / -1}.task-table{min-width:760px}.dashboard-page .MuiDialog-paper{width:calc(100% - 18px)!important;margin:9px!important;border-radius:12px!important}.dashboard-page-btn{height:32px;min-width:32px;padding:0 9px;font-size:12px}}.tasks-page{max-width:1400px;padding:0 10px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:25px}.page-header h1{color:#2c3e50;font-size:24px;font-weight:600}.filter-bar{display:flex;justify-content:space-between;align-items:center;background:#fff;padding:18px 20px;border-radius:12px;box-shadow:0 4px 12px #0000000d;margin-bottom:30px;gap:20px}.filter-group{display:flex;flex-wrap:wrap;gap:12px}.filter-group input,.filter-group select{padding:8px 14px;border:1px solid #e0e6ed;border-radius:8px;font-size:14px;background:#f8fafc;min-width:170px;transition:all .2s ease}.filter-group .tasks-date-picker{min-width:170px}.filter-group .tasks-date-picker .MuiInputBase-root{height:39px;border-radius:8px;background:#f8fafc}.filter-group .tasks-date-picker .MuiOutlinedInput-notchedOutline{border-color:#e0e6ed!important}.filter-group .tasks-date-picker .MuiInputBase-input{padding:8px 14px!important;font-size:14px}.filter-group .tasks-date-picker .MuiInputAdornment-root .MuiSvgIcon-root{font-size:18px;color:#6b7280}.filter-group .tasks-date-picker .MuiInputBase-root.Mui-focused .MuiOutlinedInput-notchedOutline,.filter-group .tasks-date-picker .MuiInputBase-root:hover .MuiOutlinedInput-notchedOutline{border-color:#2f6fed!important}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:#2f6fed;background:#fff;box-shadow:0 0 0 2px #2f6fed1a}.btn-clear{padding:7px 16px;background:transparent;color:#2f6fed;border:1px solid #2f6fed;border-radius:20px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-clear:hover{background:#2f6fed;color:#fff}.btn-clear{margin-left:auto;padding:6px 12px;background:#eaf2ff;color:#2f6fed;border:1px solid #c9ddff;border-radius:6px;cursor:pointer;font-size:13px;font-weight:600;white-space:nowrap;transition:.2s}.btn-clear:hover{background:#d6e7ff}.tasks-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px}.task-card{background:#fff;padding:20px;border-radius:12px;box-shadow:0 3px 8px #0000000f;transition:transform .15s ease,box-shadow .15s ease}.task-card:hover{transform:translateY(-4px);box-shadow:0 6px 16px #00000014}.task-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.task-header h3{flex:1;margin-right:10px;font-size:16px;font-weight:600;color:#2c3e50}.status-badge{padding:5px 10px;border-radius:20px;font-size:12px;font-weight:600;white-space:nowrap}.status-pending{background:#fff4e5;color:#e67e22}.status-in_progress{background:#eaf2ff;color:#2f6fed}.status-submitted{background:#f3e8ff;color:#8e44ad}.status-approved{background:#e8f5e9;color:#2e7d32}.status-rejected{background:#ffebee;color:#c62828}.task-description{color:#555;margin-bottom:15px;font-size:14px;line-height:1.5}.task-info{font-size:13px;color:#888;margin-bottom:18px}.task-actions{display:flex;justify-content:flex-end;gap:8px}.task-actions button{width:auto;padding:6px 14px;font-size:13px;border-radius:18px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn-primary{background:#2f6fed;color:#fff;border:none}.btn-primary:hover{background:#1e4ed8}.btn-secondary{background:#eef2ff;color:#2f6fed;border:1px solid #c7d2fe}.btn-secondary:hover{background:#dbeafe}.btn-danger{background:#fee2e2;color:#dc2626;border:1px solid #fecaca}.btn-danger:hover{background:#fecaca}.no-data{grid-column:1 / -1;text-align:center;padding:40px;background:#fff;border-radius:10px;color:#777;font-size:14px}.tasks-grid{display:grid;gap:16px}.task-card{background:#fff;border-radius:12px;padding:16px;border:1px solid #e5e7eb;display:flex;flex-direction:column;gap:10px;transition:all .2s ease}.task-card:hover{box-shadow:0 8px 24px #0000000f;transform:translateY(-2px)}.task-card-top{display:flex;align-items:center;gap:6px}.status-dot{width:8px;height:8px;border-radius:50%}.status-label{font-size:12px;font-weight:600}.status-pending{color:#6b7280}.status-pending.status-dot{background:#9ca3af}.status-in_progress{color:#2563eb}.status-in_progress.status-dot{background:#2563eb}.status-submitted{color:#d97706}.status-submitted.status-dot{background:#f59e0b}.status-approved{color:#059669}.status-approved.status-dot{background:#10b981}.status-rejected{color:#dc2626}.status-rejected.status-dot{background:#ef4444}.task-title{font-size:15px;font-weight:600;line-height:1.4}.task-description{font-size:13px;color:#6b7280;line-height:1.4;min-height:36px}.task-meta{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#374151}.task-actions{margin-top:10px}.btn-primary{width:100%;padding:8px;border-radius:8px;border:none;background:#2563eb;color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:.2s}.btn-primary:hover{background:#1d4ed8}@media (min-width: 768px){.tasks-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1200px){.tasks-grid{grid-template-columns:repeat(3,1fr)}}.status-done{color:#059669}.status-done.status-dot{background:#10b981}@media (max-width: 992px){.tasks-page{padding:0}.filter-bar{flex-direction:column;align-items:stretch;padding:14px;margin-bottom:16px;gap:12px}.filter-group{display:grid;grid-template-columns:1fr 1fr;gap:8px}.filter-group input,.filter-group select,.filter-group .tasks-date-picker{min-width:0;width:100%}.btn-clear{width:100%;margin-left:0;min-height:40px}.tasks-grid{grid-template-columns:1fr;gap:12px}}@media (max-width: 640px){.page-header{margin-bottom:12px}.page-header h1{font-size:18px}.filter-group{grid-template-columns:1fr}.task-card{border-radius:10px;padding:12px}.task-title{font-size:14px}.task-description{min-height:0}}.reports-page{padding:24px;background:#f5f6f8;min-height:100vh}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.page-header h1{font-size:22px;font-weight:600;margin:0}.btn-primary{padding:6px 14px;font-size:13px;border-radius:999px;background-color:#2563eb;color:#fff;border:none;cursor:pointer;width:auto;min-width:120px;max-width:fit-content;transition:all .2s ease}.btn-primary:hover{background-color:#1d4ed8}.btn-primary:disabled{background-color:#cbd5f5;cursor:not-allowed}.info-text{margin-bottom:16px;font-size:13px;color:#6b7280}.report-filter-bar{display:grid;grid-template-columns:1.6fr repeat(4,minmax(120px,1fr)) auto;gap:10px;margin-bottom:16px}.report-filter-bar input,.report-filter-bar select{border:1px solid #dbe1ea;background:#fff;border-radius:10px;padding:9px 10px;font-size:13px;color:#1f2937}.report-filter-bar input:focus,.report-filter-bar select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.reports-grid{display:grid;gap:20px}.reports-pagination{margin-top:14px;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.reports-pagination-text{font-size:13px;color:#64748b}.reports-page-btn{height:34px;min-width:34px;padding:0 12px;border:1px solid #dbe3ef;border-radius:9px;background:#fff;color:#334155;font-size:13px;font-weight:600;cursor:pointer;transition:all .16s ease}.reports-page-btn:hover:not(:disabled){border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.reports-page-btn:disabled{opacity:.45;cursor:not-allowed}.report-card{background:#fff;border-radius:14px;padding:20px;border:1px solid #e8eaed;display:flex;flex-direction:column;justify-content:space-between;min-height:210px;transition:all .2s ease}.report-card:hover{box-shadow:0 6px 20px #0000000d;transform:translateY(-2px)}.report-header{display:flex;justify-content:space-between;align-items:center;gap:12px}.report-header h3{font-size:14px;font-weight:600;flex:1;line-height:1.3}.report-body{margin-top:14px;display:flex;flex-direction:column;gap:8px}.report-row{display:flex;justify-content:space-between;gap:12px;font-size:13px}.label{color:#6b7280}.status-pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:500;white-space:nowrap;letter-spacing:.2px}.status-dot{width:6px;height:6px;border-radius:50%}.status-pill.pending{background:#f3f4f6;color:#374151}.status-pill.submitted{background:#fef3c7;color:#92400e}.status-pill.submitted .status-dot{background:#f59e0b}.status-pill.approved{background:#ecfdf5;color:#065f46}.status-pill.approved .status-dot{background:#10b981}.status-pill.rejected{background:#fef2f2;color:#7f1d1d}.status-pill.rejected .status-dot{background:#ef4444}.location-status.valid{color:#16a34a;font-weight:500}.location-status.invalid{color:#dc2626;font-weight:500}.btn-outline{margin-top:16px;width:100%;border:1px solid #2563eb;background:#fff;color:#2563eb;padding:8px;border-radius:8px;font-size:13px;font-weight:500;cursor:pointer;transition:.2s}.report-actions{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}.report-actions .btn-outline{margin-top:0;width:auto;min-width:110px}.btn-approve,.btn-reject{border:none;border-radius:8px;padding:8px 12px;font-size:13px;font-weight:600;cursor:pointer;transition:.2s ease}.btn-approve{background:#16a34a;color:#fff}.btn-approve:hover{background:#15803d}.btn-reject{background:#dc2626;color:#fff}.btn-reject:hover{background:#b91c1c}.btn-approve:disabled,.btn-reject:disabled{opacity:.6;cursor:not-allowed}.back-button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid #d1d5db;background:#fff;color:#374151;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;width:fit-content}.back-button:hover{background:#f3f4f6;border-color:#2563eb;color:#2563eb}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.no-data{text-align:center;padding:40px;font-size:14px;color:#9ca3af;background:#fff;border-radius:12px;border:1px dashed #e5e7eb}@media (min-width: 768px){.reports-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1200px){.reports-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 768px){.reports-page{padding:14px}.page-header{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:14px}.page-header h1{font-size:18px;line-height:1.35}.btn-primary{width:100%;min-width:0;max-width:100%;min-height:42px}.reports-grid{gap:12px}.report-card{padding:14px;border-radius:12px;min-height:0}.report-header{align-items:flex-start}.report-header h3{font-size:15px;line-height:1.35}.report-row{flex-direction:column;align-items:flex-start;gap:3px}.report-actions{margin-top:12px;flex-direction:column;align-items:stretch}.report-actions .btn-outline,.btn-approve,.btn-reject{width:100%;min-height:40px}.report-filter-bar{grid-template-columns:1fr;gap:8px}.reports-pagination{justify-content:flex-start}.reports-page-btn{height:32px;min-width:32px;padding:0 9px;font-size:12px}}.reports-page-notice{margin-bottom:16px;padding:12px 14px;border-radius:10px;font-size:14px;font-weight:500}.reports-page-notice--success{background:#dcfce7;color:#166534;border:1px solid #86efac}.reports-page-notice--error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.reject-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0f172a73;display:flex;align-items:center;justify-content:center;padding:20px}.reject-modal{width:100%;max-width:440px;background:#fff;border-radius:14px;padding:22px 22px 18px;box-shadow:0 20px 50px #0000002e;border:1px solid #e5e7eb}.reject-modal-title{margin:0 0 8px;font-size:18px;font-weight:600;color:#111827}.reject-modal-hint{margin:0 0 14px;font-size:13px;color:#6b7280;line-height:1.45}.reject-modal-textarea{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:10px;padding:10px 12px;font-size:14px;font-family:inherit;resize:vertical;min-height:100px;color:#1f2937}.reject-modal-textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.reject-modal-field-error{margin:8px 0 0;font-size:13px;color:#dc2626}.reject-modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.reject-modal-actions .btn-outline{margin-top:0}.reject-modal-actions .btn-reject{min-width:140px}.reject-modal.approve-modal{border-left:4px solid #16a34a}.reject-modal-actions .btn-approve{min-width:140px}.create-wrapper{padding:32px;background:linear-gradient(180deg,#f8fafc,#f1f5f9);min-height:100vh;max-width:920px;margin:0 auto}.create-page-top{margin-bottom:16px}.create-back-to-tasks{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:13px;font-weight:500;cursor:pointer;transition:border-color .2s ease,color .2s ease,box-shadow .2s ease}.create-back-to-tasks:hover{border-color:#2563eb;color:#1d4ed8;box-shadow:0 2px 8px #2563eb1f}.create-context-select{display:block;width:100%;max-width:520px;margin-top:8px;padding:10px 12px;border-radius:8px;border:1px solid #cbd5e1;font-size:15px;background:#fff;color:#1e293b}.farmer-context-summary{background:#f8fafc;border-color:#dbeafe}.farmer-report-fields-card h3{margin-bottom:8px}.farmer-report-fields-hint{margin:0 0 16px;font-size:13px;color:#64748b;line-height:1.45}.farmer-report-fields-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px 16px}.farmer-report-field-full{margin-top:14px}.farmer-report-field .required-mark{color:#dc2626}.farmer-report-field .field-error{display:block;margin-top:4px;font-size:12px;color:#dc2626}.farmer-report-select{max-width:none}.farmer-report-field-date .MuiFormControl-root{width:100%}.create-wrapper h1{font-size:22px;font-weight:600;margin-bottom:28px;margin-top:0;color:#0f172a}.card{background:#fff;border-radius:18px;border:1px solid #e2e8f0;padding:22px;margin-bottom:22px;transition:all .25s ease}.card:hover{box-shadow:0 10px 30px #0000000f}.card h3{font-size:15px;font-weight:600;margin-bottom:12px;color:#0f172a}.card label{font-size:13px;font-weight:500;margin-bottom:6px;display:block;color:#475569}.card input,.card textarea{width:100%;padding:10px 14px;border-radius:12px;border:1px solid #e2e8f0;font-size:14px;background:#f8fafc;transition:.2s ease}.card input:focus,.card textarea:focus{border-color:#2563eb;background:#fff;outline:none;box-shadow:0 0 0 4px #2563eb14}.card textarea{min-height:110px;resize:vertical}.btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:11px 26px;font-size:14px;font-weight:500;border-radius:999px;border:none;background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;cursor:pointer;transition:all .25s ease;box-shadow:0 6px 18px #2563eb4d}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 10px 24px #2563eb66}.btn-primary:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed}.task-info-card{background:#f1f5f9;border:1px solid #e2e8f0}.task-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;font-size:13px;margin-top:10px;color:#475569}.status-badge{padding:5px 12px;border-radius:999px;font-size:12px;font-weight:500}.status-pending{background:#fff7ed;color:#ea580c}.status-in_progress{background:#e0f2fe;color:#0284c7}.status-done,.status-approved{background:#ecfdf5;color:#047857}.status-rejected{background:#fef2f2;color:#b91c1c}.photo-grid{margin-top:18px;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px}.photo-item{position:relative;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 20px #0000000f;transition:transform .25s ease}.photo-item:hover{transform:translateY(-4px)}.photo-item img{width:100%;height:140px;object-fit:cover;display:block}.photo-item button{position:absolute;top:8px;right:8px;background:#ef4444e6;border:none;color:#fff;width:28px;height:28px;border-radius:50%;font-size:13px;cursor:pointer;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:.2s ease}.photo-item button:hover{transform:scale(1.1)}.photo-add-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:140px;border:2px dashed #cbd5e1;border-radius:16px;background:#f8fafc;cursor:pointer;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;padding:12px;box-sizing:border-box}.photo-add-slot:hover{border-color:#2563eb;background:#eff6ff;box-shadow:0 4px 14px #2563eb1f}.photo-add-plus{font-size:2.25rem;font-weight:300;line-height:1;color:#64748b}.photo-add-slot:hover .photo-add-plus{color:#2563eb}.photo-add-label{margin-top:6px;font-size:12px;font-weight:600;color:#475569;text-align:center}.photo-add-count{margin-top:4px;font-size:11px;color:#94a3b8}.gps-coords-line{margin:0 0 4px;font-size:14px;color:#0f172a;line-height:1.5}.gps-coords-label{font-weight:600;color:#475569}.gps-maps-hint{margin:0 0 10px;font-size:12px;color:#64748b}.submit-wrapper{margin-top:30px;display:flex;justify-content:center}.btn-capture{display:inline-flex;align-items:center;justify-content:center;padding:8px 18px;font-size:13px;font-weight:500;border-radius:999px;border:none;background:#0f172a;color:#fff;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 12px #00000026;width:fit-content}.btn-capture:hover{transform:translateY(-2px);box-shadow:0 8px 18px #0003}.btn-retry-gps{margin-top:10px;padding:8px 14px;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#0f172a;cursor:pointer;font-size:13px}.btn-retry-gps:hover{border-color:#94a3b8;background:#f8fafc}.error{color:#dc2626}@media (max-width: 768px){.btn-capture{width:auto;padding:10px 20px;font-size:14px}}@media (max-width: 768px){.create-wrapper{padding:18px 16px}.create-wrapper h1{font-size:18px;margin-bottom:20px}.card{padding:18px;border-radius:16px}.photo-grid{grid-template-columns:repeat(2,1fr)}.photo-item img{height:120px}.btn-primary{width:100%;padding:14px;font-size:15px}.task-meta{grid-template-columns:1fr}.btn-retry-gps{width:100%;min-height:42px}.photo-add-slot{min-height:120px}}@media (max-width: 420px){.create-wrapper{padding:12px}.card{padding:14px;border-radius:12px;margin-bottom:14px}.photo-grid{grid-template-columns:1fr}.photo-item img{height:180px}}@media (hover: none){.card:hover,.photo-item:hover,.btn-primary:hover,.btn-capture:hover,.photo-add-slot:hover{transform:none;box-shadow:none}}button.photo-add-slot{font-family:inherit;width:100%;margin:0;-moz-appearance:none;appearance:none;-webkit-appearance:none}.detail-page{padding:32px;background:#f4f6f9;min-height:100vh}.detail-demo-banner{margin:0 0 16px;padding:10px 14px;font-size:13px;line-height:1.45;color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:10px}.detail-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.detail-header h1{font-size:20px;font-weight:600}.detail-section-title{margin:16px 0 8px;padding-top:12px;border-top:1px solid #e2e8f0;font-size:14px;font-weight:600;color:#0f172a}.detail-row--multiline .detail-value-wrap{white-space:pre-wrap}.detail-note--cskh{margin-top:12px;padding:12px 14px;border-radius:10px;background:#f0f9ff;border:1px solid #bae6fd}.detail-cskh-notes-list{margin:8px 0 0;padding:0;list-style:none}.detail-cskh-notes-list li{margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #e0f2fe}.detail-cskh-notes-list li:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.detail-cskh-meta{display:block;font-size:12px;color:#64748b;margin-bottom:4px}.detail-cskh-edit-link{display:inline-block;margin-top:8px;font-size:13px;font-weight:500;color:#2563eb;text-decoration:none}.detail-cskh-edit-link:hover{text-decoration:underline}.back-button{border:1px solid #cbd5e1;background:#fff;color:#0f172a;border-radius:999px;padding:8px 14px;font-size:13px;cursor:pointer;transition:all .2s ease}.back-button:hover{border-color:#94a3b8;background:#f8fafc}.detail-card{background:#fff;border-radius:14px;padding:24px;border:1px solid #e5e7eb}.detail-row{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px}.detail-row--coords{margin-bottom:4px}.gps-maps-link{color:#2563eb;font-weight:600;text-decoration:underline;text-underline-offset:3px;word-break:break-all}.gps-maps-link:hover{color:#1d4ed8}.gps-maps-hint{margin:0 0 12px;font-size:12px;color:#64748b;line-height:1.4}.label{font-weight:500;color:#6b7280}.detail-note{margin-top:20px}.detail-note--employee{padding:14px 16px;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc;border-left:4px solid #2563eb}.detail-note--admin{padding:14px 16px;border-radius:10px;border:1px solid #e9d5ff;background:#faf5ff;border-left:4px solid #7c3aed}.detail-note-sub{display:block;margin-top:4px;margin-bottom:8px;font-size:12px;font-weight:400;color:#64748b;line-height:1.4}.detail-note p{margin-top:0;margin-bottom:0;white-space:pre-wrap;word-break:break-word}.detail-photos{margin-top:20px}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:14px;margin-top:10px}.photo-grid.single{grid-template-columns:minmax(200px,360px)}.photo-item{position:relative;cursor:pointer;overflow:hidden;border-radius:14px}.photo-item img{width:100%;height:220px;object-fit:cover;display:block;transition:.3s ease}.detail-value-wrap{max-width:70%;text-align:right;word-break:break-word}.status-text{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.status-text.submitted{background:#fef3c7;color:#92400e}.status-text.approved{background:#ecfdf5;color:#065f46}.status-text.rejected{background:#fef2f2;color:#7f1d1d}.status-text.pending{background:#f3f4f6;color:#374151}.photo-item:hover img{transform:scale(1.05)}.watermark{position:absolute;bottom:8px;left:8px;font-size:12px;color:#fff;background:#000000a6;padding:6px 10px;border-radius:8px;line-height:1.4}.image-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000eb;display:flex;justify-content:center;align-items:center;z-index:999;animation:fadeIn .2s ease}.modal-image{max-width:90%;max-height:90%;border-radius:16px;animation:zoomIn .2s ease}.close-btn{position:absolute;top:30px;right:40px;font-size:40px;color:#fff;cursor:pointer;z-index:1002}.btn-download-image{position:absolute;top:24px;right:92px;z-index:1001;border:none;border-radius:999px;padding:9px 16px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 10px 24px #2563eb59;transition:transform .2s ease,box-shadow .2s ease}.btn-download-image:hover{transform:translateY(-1px);box-shadow:0 12px 26px #2563eb6b}.btn-outline{padding:8px 18px;border-radius:999px;border:1px solid #2563eb;background:#fff;color:#2563eb;cursor:pointer;transition:.2s}.btn-outline:hover{background:#2563eb;color:#fff}.detail-delete-actions{margin-top:20px;padding-top:16px;border-top:1px solid #e5e7eb}.btn-delete-report{border:1px solid #fecaca;background:#fef2f2;color:#991b1b;border-radius:10px;padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s ease,border-color .2s ease}.btn-delete-report:hover:not(:disabled){background:#fee2e2;border-color:#f87171}.btn-delete-report:disabled{opacity:.65;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes zoomIn{0%{transform:scale(.9)}to{transform:scale(1)}}@media (max-width: 768px){.detail-page{padding:14px}.detail-header{flex-direction:column;align-items:flex-start;gap:10px;margin-bottom:14px}.detail-header h1{font-size:18px;line-height:1.4;word-break:break-word}.detail-card{padding:14px;border-radius:12px}.detail-row{flex-direction:column;gap:3px;margin-bottom:10px}.detail-value-wrap{max-width:100%;text-align:left}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.photo-grid.single{grid-template-columns:1fr}.photo-item img{height:150px}.close-btn{top:10px;right:16px;font-size:32px}.btn-download-image{top:14px;right:56px;padding:8px 12px;font-size:12px}}.dept-form-page{width:100%;max-width:920px}.dept-form-paper{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden}.dept-form-paper .dept-form-card-header{padding:14px 20px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:14px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dept-form-body{padding:24px}.dept-form-grid{display:grid;gap:16px;grid-template-columns:1fr}@media (min-width: 640px){.dept-form-grid{grid-template-columns:1fr 1fr}.dept-form-grid__full{grid-column:1 / -1}}.dept-form-paper .dept-form-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:28px;padding-top:20px;border-top:1px solid var(--app-border)}@media (max-width: 599px){.dept-form-body{padding:16px}.dept-form-paper .dept-form-actions{flex-direction:column-reverse;align-items:stretch}.dept-form-paper .dept-form-actions .MuiButton-root{width:100%}}.employee-profile-page{width:100%;max-width:var(--app-content-max);min-width:0;margin:0 auto;padding:0 0 var(--app-space-8)}.employee-profile-page--dirty{padding-bottom:100px}.employee-profile-page form{min-width:0;max-width:100%}.ep-page-header{margin-bottom:var(--app-space-5)}.ep-page-header .ep-eyebrow{font-size:13px;font-weight:600;color:var(--app-nav-active-to);margin-bottom:var(--app-space-1)}.ep-page-header .ep-desc{color:var(--app-text-muted);line-height:1.55;max-width:52rem}.ep-summary{padding:var(--app-space-5) var(--app-space-6)!important;margin-bottom:var(--app-space-4);border-radius:var(--app-radius-lg)!important;border:1px solid var(--app-border-soft);box-shadow:var(--app-shadow-card)!important;background:var(--app-surface)!important}.ep-summary__top{display:flex;flex-direction:column;gap:var(--app-space-4)}.ep-summary__row{display:flex;align-items:center;gap:var(--app-space-4);min-width:0}.ep-summary__avatar{position:relative;width:76px;height:76px;border-radius:50%;overflow:hidden;cursor:pointer;flex-shrink:0;border:3px solid var(--app-primary-soft);box-shadow:var(--app-shadow-sm)}.ep-summary__avatar input{display:none}.ep-summary__avatar-img,.ep-summary__avatar-fallback{width:100%!important;height:100%!important}.ep-summary__avatar-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;background:#0f172a80;opacity:0;transition:opacity var(--app-duration) var(--app-ease)}.ep-summary__avatar:hover .ep-summary__avatar-overlay{opacity:1}.ep-summary__name{font-size:1.25rem!important;font-weight:700!important;color:var(--app-text-heading)!important}.ep-summary__username{color:var(--app-text-muted)!important}.ep-summary__role-dept{color:var(--app-text-secondary);font-weight:500}.ep-summary__leave-link{display:inline-flex;margin-top:6px;font-size:13px;font-weight:600;color:var(--app-primary);text-decoration:none}.ep-summary__leave-link:hover{text-decoration:underline}.ep-summary__leave-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--app-space-3);width:100%}.ep-leave-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:var(--app-space-3) var(--app-space-2);border-radius:var(--app-radius);border:1px solid var(--app-border-soft);background:var(--app-surface-muted);min-height:72px}.ep-leave-stat__label{font-size:10px;font-weight:700;color:var(--app-text-muted);text-transform:uppercase;letter-spacing:.05em}.ep-leave-stat__value{font-size:22px;font-weight:700;color:var(--app-text-heading)}.ep-leave-stat__unit{font-size:11px;color:var(--app-text-subtle)}.ep-leave-stat--remain{background:var(--app-primary-soft);border-color:var(--app-primary-soft-border)}.ep-leave-stat--remain .ep-leave-stat__value{color:var(--app-primary)}.ep-summary__progress-label{display:flex;justify-content:space-between;font-size:13px;font-weight:600;color:var(--app-text-body);margin-bottom:6px}.ep-summary__missing{margin-top:var(--app-space-2);font-size:12px;color:var(--app-text-muted);line-height:1.45}.ep-tabs{padding:4px!important;margin-bottom:var(--app-space-4);border-radius:var(--app-radius)!important;border:1px solid var(--app-border-soft);background:var(--app-surface-muted)!important;box-shadow:var(--app-shadow-sm)!important}.ep-section{padding:var(--app-space-5) var(--app-space-6)!important;margin-bottom:var(--app-space-4);border-radius:var(--app-radius-lg)!important;border:1px solid var(--app-border-soft);box-shadow:var(--app-shadow-card)!important;background:var(--app-surface)!important;min-width:0;overflow-x:clip}.ep-section__head{margin-bottom:var(--app-space-4);padding-bottom:var(--app-space-3);border-bottom:1px solid var(--app-surface-subtle)}.ep-section__title{font-size:16px!important;font-weight:700!important;color:var(--app-text-heading)!important}.ep-section__subtitle{margin-top:2px!important;color:var(--app-text-muted)!important;font-size:13px!important}.ep-section__body{width:100%;min-width:0}.ep-field-grid{display:grid;gap:var(--app-space-4);width:100%;min-width:0;grid-template-columns:minmax(0,1fr)}.ep-field-grid--2,.ep-field-grid--3{grid-template-columns:minmax(0,1fr)}@media (min-width: 720px){.ep-field-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-field-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.ep-summary__top{flex-direction:row;align-items:center;justify-content:space-between}.ep-summary__leave-stats{max-width:360px}}.ep-field-grid__cell{min-width:0;width:100%}.ep-field-grid__cell .MuiFormControl-root,.ep-field-grid__cell .MuiTextField-root{width:100%;max-width:100%}.ep-identity-split{display:grid;gap:var(--app-space-4);grid-template-columns:minmax(0,1fr)}@media (min-width: 720px){.ep-identity-split{grid-template-columns:repeat(2,minmax(0,1fr))}}.ep-identity-split__col{display:flex;flex-direction:column;gap:var(--app-space-4);min-width:0}.ep-contract-box{padding:var(--app-space-4) var(--app-space-5);border-radius:var(--app-radius);border:2px solid var(--app-primary-soft-border);background:linear-gradient(145deg,var(--app-surface-muted) 0%,var(--app-primary-soft) 100%)}.ep-contract-box--warning{border-color:var(--app-warning-border);background:linear-gradient(145deg,var(--app-warning-bg) 0%,#fef3c7 100%)}.ep-contract-box--danger{border-color:#fca5a5;background:linear-gradient(145deg,var(--app-danger-soft) 0%,#fee2e2 100%)}.ep-contract-box__head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--app-space-3);margin-bottom:var(--app-space-4)}.ep-contract-box__title{font-weight:700!important;color:var(--app-text-heading)!important}.ep-sticky-actions{position:fixed;left:0;right:0;bottom:0;z-index:1100;padding:var(--app-space-3) var(--app-space-4);background:#ffffffeb;border-top:1px solid var(--app-border-soft);box-shadow:0 -8px 32px #0f172a14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.ep-sticky-actions__panel{max-width:var(--app-content-max);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--app-space-3)}.ep-sticky-actions__hint{margin:0;font-size:14px;font-weight:600;color:var(--app-text-body)}.ep-sticky-actions__buttons{display:flex;gap:var(--app-space-3);margin-left:auto}.dept-detail-page{width:100%;max-width:1100px}.dept-detail-paper{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden}.dept-detail-card-header{padding:14px 20px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:15px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px}.dept-detail-body{padding:24px}.dept-detail-body--hr{display:flex;flex-direction:column;gap:20px}.dept-detail-body--hr .ep-section{margin:0}.dept-code-badge{font-size:12px;font-weight:600;padding:2px 10px;border-radius:999px;background:#ffffffb3;border:1px solid var(--app-border);color:var(--app-text-muted)}.dept-detail-grid{display:grid;gap:12px 24px;grid-template-columns:1fr;margin:0}@media (min-width: 640px){.dept-detail-grid{grid-template-columns:1fr 1fr}}.dept-detail-item{margin:0}.dept-detail-item dt{font-size:12px;font-weight:600;color:var(--app-text-muted);margin:0 0 4px}.dept-detail-item dd{margin:0;font-size:14px;color:var(--app-text-body)}.dept-detail-table-wrap{border:1px solid var(--app-border-soft);border-radius:var(--app-radius-md);overflow:auto}.dept-employee-name-link{font-weight:600;color:var(--app-primary);text-decoration:none}.dept-employee-name-link:hover{color:var(--app-primary-dark);text-decoration:underline}.dept-section__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}.dept-section__actions{flex-shrink:0}.dept-detail-actions-top{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.dept-users-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--app-border)}.dept-users-section h3{font-size:14px;font-weight:700;color:var(--app-text-heading);margin:0 0 12px}.dept-user-chip{display:inline-flex;align-items:center;padding:6px 12px;margin:4px 8px 4px 0;border-radius:999px;font-size:13px;font-weight:600;background:var(--app-surface-muted);border:1px solid var(--app-border);color:var(--app-text-body)}.um-page{width:100%;max-width:none}.um-paper.MuiPaper-root{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden;padding:0!important}.um-page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;background:linear-gradient(135deg,#fff,#f8fafc 55%,#eff6ff);border-bottom:1px solid var(--app-border-soft)}.um-title{color:var(--app-text-heading)!important;font-weight:700!important;font-size:1.2rem!important}.um-subtitle{margin-top:4px!important;max-width:560px;font-size:13px!important}.um-btn-add.MuiButton-contained{background:var(--app-nav-active-gradient);box-shadow:0 4px 12px #2f90df4d;text-transform:none;font-weight:600;border-radius:var(--app-radius);min-height:40px}.um-body{padding:20px 24px 24px}.um-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-bottom:16px}.um-toolbar__left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.um-section-label{font-size:15px;font-weight:700;color:var(--app-text-heading)}.um-count{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;color:var(--app-primary-dark);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border)}.um-filters{display:flex;flex-wrap:wrap;gap:10px;flex:1;justify-content:flex-end;min-width:min(100%,320px)}.um-search{min-width:200px;flex:1;max-width:320px}.um-table-container{border:1px solid var(--app-border);border-radius:12px;overflow:hidden;width:100%}.um-table{width:100%;table-layout:fixed}.um-table th{background:#f8fafc;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--app-text-muted);padding:12px 14px}.um-table td{padding:12px 14px;font-size:14px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.um-table td,.um-table th{overflow-wrap:anywhere}.um-department-name{display:inline-block;max-width:100%;color:var(--app-text-heading);font-weight:600;line-height:1.35}.um-col-name{width:18%}.um-col-username{width:13%}.um-col-email{width:21%}.um-col-department{width:18%}.um-col-role,.um-col-date{width:105px}.um-col-actions{width:118px}.um-table tbody tr:nth-child(2n){background:#fafbfc}.um-table tbody tr:hover{background:#f0f7ff!important}.um-actions{display:inline-flex;gap:4px;padding:4px;border-radius:10px;background:#f8fafc;border:1px solid #e8edf4}.um-action-btn.MuiIconButton-root{border-radius:7px;width:34px;height:34px}.um-action-btn--view{color:var(--app-primary)!important}.um-action-btn--edit{color:#c2410c!important}.um-action-btn--delete{color:var(--app-danger)!important}.um-mobile-list{display:none}.um-empty-card{padding:40px 24px!important;text-align:center;border-style:dashed!important;background:var(--app-surface-muted)!important}.um-pagination{margin-top:16px;padding-top:14px;border-top:1px solid var(--app-border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.um-pagination-text{font-size:13px;color:var(--app-text-muted)}.um-page-btn{height:34px;min-width:34px;padding:0 12px;border:1px solid var(--app-border-input);border-radius:var(--app-radius);background:#fff;font-size:13px;font-weight:600;cursor:pointer}.um-page-btn.is-active{background:var(--app-primary);border-color:var(--app-primary);color:#fff}.um-page-btn:disabled{opacity:.45;cursor:not-allowed}.um-mobile-card{border-radius:12px!important;border:1px solid var(--app-border)!important}.um-mobile-card-inner{padding:14px}.um-mobile-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.um-mobile-name{font-weight:700;font-size:15px;color:var(--app-text-heading)}.um-mobile-meta{display:grid;gap:6px;font-size:13px;margin-bottom:12px}@media (max-width: 1100px){.um-table{table-layout:auto;min-width:980px}.um-table-container{overflow-x:auto}}@media (max-width: 900px){.um-page-header{flex-direction:column;align-items:stretch}.um-btn-add{width:100%}.um-toolbar{flex-direction:column;align-items:stretch}.um-filters{justify-content:stretch}.um-search{max-width:none}}@media (max-width: 680px){.um-table-container{display:none}.um-mobile-list{display:grid;gap:10px}.um-body{padding:16px}.um-filters{min-width:0}.um-filters .MuiTextField-root,.um-filters .MuiButton-root{width:100%}.um-mobile-meta strong{overflow-wrap:anywhere}}.um-form-page{width:100%;max-width:880px;margin:0 auto}.um-form-body--hr{display:flex;flex-direction:column;gap:20px}.um-form-body--hr .ep-section,.um-form-section{margin:0}.um-form-paper{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden}.um-form-paper .um-form-card-header{padding:16px 22px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:15px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.um-form-body{padding:24px 22px 28px}.um-field-grid{display:grid;gap:18px;width:100%;min-width:0;grid-template-columns:minmax(0,1fr)}@media (min-width: 640px){.um-field-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.um-field-grid__cell--full{grid-column:1 / -1}}.um-field-grid__cell{min-width:0;width:100%}.um-field-grid__cell .MuiFormControl-root,.um-field-grid__cell .MuiTextField-root{width:100%;max-width:100%}.um-form-paper .um-form-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;align-items:center;margin-top:8px;padding-top:22px;border-top:1px solid var(--app-border)}.um-form-paper .um-form-actions .products-btn-back{margin-right:auto}@media (max-width: 599px){.um-form-page{max-width:100%}.um-form-body{padding:16px 14px 20px}.um-form-paper .um-form-actions{flex-direction:column-reverse;align-items:stretch}.um-form-paper .um-form-actions .products-btn-back{margin-right:0}.um-form-paper .um-form-actions .MuiButton-root{width:100%}}.um-you-badge{display:inline-flex;margin-left:8px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;color:var(--app-primary-dark);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border)}.um-role-chip.MuiChip-root{font-weight:600;text-transform:uppercase;font-size:11px;letter-spacing:.03em}.um-username{font-weight:600;color:var(--app-text-body);font-family:ui-monospace,monospace;font-size:13px}.um-detail-grid{display:grid;gap:16px;grid-template-columns:1fr}@media (min-width: 640px){.um-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.um-detail-grid__full{grid-column:1 / -1}}.um-detail-item dt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--app-text-muted);margin-bottom:4px}.um-detail-item dd{margin:0;font-size:14px;font-weight:600;color:var(--app-text-heading);word-break:break-word}.um-detail-page{width:100%;max-width:1100px}.um-detail-paper{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden}.um-detail-card-header{padding:14px 20px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:15px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.um-detail-body{padding:24px}.um-detail-body--hr{display:flex;flex-direction:column;gap:20px}.um-detail-body--hr .ep-section{margin:0}.um-detail-actions-top{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.attendance-page{--at-ink: #0f172a;--at-ink-muted: #64748b;--at-accent: #2563eb;--at-accent-hover: #1d4ed8;--at-surface: #ffffff;--at-surface-soft: #f8fafc;--at-border: rgba(15, 23, 42, .08);--at-border-strong: rgba(15, 23, 42, .12);--at-ring: rgba(37, 99, 235, .22);--at-shadow-sm: 0 1px 2px rgba(15, 23, 42, .04);--at-shadow-md: 0 4px 6px -1px rgba(15, 23, 42, .05), 0 12px 28px -6px rgba(15, 23, 42, .08);--at-radius: 16px;--at-radius-input: 12px;padding:28px 24px 40px;max-width:960px;margin:0 auto;min-height:100%;background:linear-gradient(180deg,#eef2f7,#f8fafc 32%,#f8fafc);box-sizing:border-box}.attendance-page.attendance-overview{max-width:1100px}.attendance-header h1{margin:0 0 12px;font-size:clamp(1.5rem,2.5vw,1.875rem);font-weight:700;letter-spacing:-.025em;color:var(--at-ink);line-height:1.2}.attendance-sub{max-width:980px;margin:0 0 26px;font-size:15px;color:var(--at-ink-muted);line-height:1.65}.attendance-sub strong{color:#334155;font-weight:600}.attendance-toolbar{display:grid;grid-template-columns:1fr;gap:14px;align-items:stretch;margin-bottom:16px}.attendance-filter-grid{display:grid;grid-template-columns:repeat(3,minmax(185px,1fr)) auto;gap:14px;align-items:end;padding:18px 20px;border:1px solid var(--at-border-strong);border-radius:var(--at-radius);background:linear-gradient(165deg,#fff,#f8fbff 55%,#fff);box-shadow:var(--at-shadow-sm),var(--at-shadow-md)}.attendance-filter-grid.attendance-filter-grid--anchor-day{grid-template-columns:minmax(220px,300px) auto;align-items:end;gap:16px;padding:20px 22px 22px;border-top:3px solid var(--at-accent);background:linear-gradient(165deg,#fff,#f4f8ff 45%,#fafcff)}.attendance-field{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#475569}.attendance-field>span:first-child{font-size:11px;color:#334155}.attendance-field select,.attendance-field input[type=month],.attendance-field input[type=date],.attendance-field input[type=text]{width:100%;min-width:0;padding:8px 10px;border-radius:10px;border:1px solid #cbd5e1;font-size:14px;background:#fff}.attendance-mui-picker-popper .MuiDayCalendar-weekDayLabel{font-size:.7rem;font-weight:600;white-space:nowrap}.attendance-mui-date{width:100%}.attendance-mui-date .MuiInputBase-root{height:44px;border-radius:var(--at-radius-input);background:var(--at-surface);border:1px solid var(--at-border-strong);box-sizing:border-box;font-size:14px;transition:border-color .18s ease,box-shadow .18s ease}.attendance-mui-date .MuiOutlinedInput-notchedOutline{border:none!important}.attendance-mui-date .MuiInputBase-input{padding:8px 10px!important;font-size:14px;line-height:1.3;color:#0f172a}.attendance-mui-date .MuiInputAdornment-root .MuiSvgIcon-root{font-size:18px;color:#475569}.attendance-mui-date .MuiInputBase-root:hover{border-color:#93c5fd;box-shadow:0 0 0 1px #93c5fd59}.attendance-mui-date .MuiInputBase-root.Mui-focused{border-color:var(--at-accent);box-shadow:0 0 0 4px var(--at-ring)}.attendance-mui-date .MuiInputBase-root.Mui-disabled{background:#f8fafc;border-color:#e2e8f0}.attendance-date-format{margin-top:0;font-size:12px;font-weight:500;color:var(--at-ink-muted);line-height:1.45;letter-spacing:.01em}.attendance-clear-filter-btn{align-self:flex-end;height:44px;padding:0 18px;border-radius:var(--at-radius-input);font-size:13px;font-weight:600;width:auto!important;min-width:unset!important;white-space:nowrap;flex:0 0 auto;border-color:#cbd5e1!important;color:#334155!important;background:var(--at-surface)!important;box-shadow:var(--at-shadow-sm);transition:border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .15s ease}.attendance-clear-filter-btn:hover:not(:disabled){border-color:var(--at-accent)!important;color:var(--at-accent-hover)!important;box-shadow:0 2px 8px #2563eb1f}.attendance-clear-filter-btn:active:not(:disabled){transform:translateY(1px)}.attendance-clear-filter-btn:disabled{opacity:.5;box-shadow:none}.attendance-summary-pill{margin-left:auto;padding:14px 18px;background:linear-gradient(145deg,#eff6ff,#e0edff);border:1px solid #bfdbfe;border-radius:var(--at-radius);font-size:13px;color:#1e3a8a;display:flex;flex-direction:column;gap:6px;box-shadow:var(--at-shadow-sm),0 8px 20px #2563eb14}.attendance-summary-pill em{font-style:normal;font-weight:700;font-size:17px;color:var(--at-accent-hover);font-variant-numeric:tabular-nums}.attendance-range-order-hint{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin:0;padding:12px 14px;background:linear-gradient(90deg,#fffbeb,#fff7ed);border:1px solid #fde68a;border-radius:var(--at-radius-input);font-size:13px;line-height:1.45;color:#78350f;box-shadow:var(--at-shadow-sm)}.attendance-range-order-hint p{margin:0;flex:1 1 220px}.attendance-range-order-hint strong{color:#451a03;font-weight:700}.attendance-swap-range-btn{flex:0 0 auto;white-space:nowrap}.attendance-error{padding:14px 16px 14px 18px;background:linear-gradient(90deg,#fef2f2,#fff5f5);border:1px solid #fecaca;border-left:4px solid #dc2626;color:#991b1b;border-radius:var(--at-radius-input);font-size:13px;line-height:1.5;margin-bottom:18px;box-shadow:var(--at-shadow-sm)}.attendance-legend{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:14px;font-size:13px;color:#475569}.legend-item{display:inline-flex;align-items:center;gap:8px;padding:2px 0}.legend-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:8px;font-weight:700;font-size:14px}.legend-full{background:#dcfce7;color:#166534}.legend-half{background:#fef9c3;color:#854d0e}.legend-cp{background:#e0f2fe;color:#0c4a6e}.legend-kl{background:#fef3c7;color:#92400e}.legend-muted{background:#f1f5f9;color:#94a3b8}.legend-empty{background:#fee2e2;color:#991b1b}.legend-pending{background:#e0e7ff;color:#3730a3}.attendance-calendar-wrap{position:relative;background:var(--at-surface);border:1px solid var(--at-border-strong);border-radius:var(--at-radius);padding:18px;box-shadow:var(--at-shadow-sm),var(--at-shadow-md)}.attendance-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffbf;display:flex;align-items:center;justify-content:center;z-index:2;font-size:14px;font-weight:500;color:#475569;border-radius:16px}.attendance-calendar{display:grid;grid-template-columns:repeat(7,1fr);gap:6px}.attendance-cal-head{text-align:center;font-size:11px;font-weight:700;color:#64748b;padding:8px 4px;text-transform:uppercase;letter-spacing:.02em}.attendance-cal-cell{min-height:72px;border-radius:12px;border:1px solid #e2e8f0;padding:6px 8px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:4px;background:#f8fafc}.attendance-cal-cell.in-month{background:#fff}.attendance-cal-cell.out-month{opacity:.38;background:#f1f5f9}.cal-day-num{font-size:13px;font-weight:600;color:#334155}.cal-mark{font-size:18px;font-weight:700;line-height:1}.cal-mark.mark-full{color:#16a34a}.cal-mark.mark-half{color:#ca8a04}.cal-mark.mark-cp{color:#0369a1;background:#e0f2fe;border:1px solid #7dd3fc;border-radius:999px;padding:2px 7px;font-size:12px;letter-spacing:.02em}.cal-mark.mark-kl{color:#b45309;background:#fef3c7;border:1px solid #fcd34d;border-radius:999px;padding:2px 7px;font-size:12px;letter-spacing:.02em}.cal-leave-row{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;margin-top:3px}.cal-leave-pill{font-size:9px;font-weight:700;line-height:1.2;padding:1px 5px;border-radius:4px;letter-spacing:.02em}.cal-leave-pill--cp{color:#0369a1;background:#e0f2fe;border:1px solid #7dd3fc}.cal-leave-pill--kl{color:#b45309;background:#fef3c7;border:1px solid #fcd34d}.cal-mark.mark-empty{color:#dc2626}.cal-mark.mark-pending{color:#4338ca}.cal-mark.mark-muted{display:none}.attendance-footnote{margin-top:20px;margin-bottom:8px;padding:14px 16px;font-size:12px;color:var(--at-ink-muted);line-height:1.6;background:#ffffffa6;border:1px solid var(--at-border);border-radius:var(--at-radius-input)}.attendance-footnote code{font-size:11px;background:#e2e8f0;color:#334155;padding:2px 7px;border-radius:6px;font-weight:500}.attendance-breadcrumb{margin-bottom:12px}.attendance-back-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--at-accent);text-decoration:none;padding:8px 12px;margin:-4px -8px;border-radius:10px;transition:background .15s ease,color .15s ease}.attendance-back-link:hover{background:#2563eb14;color:var(--at-accent-hover);text-decoration:none}.attendance-quick-nav-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--at-accent);text-decoration:none;padding:8px 12px;margin:-4px -8px;border-radius:10px;transition:background .15s ease,color .15s ease}.attendance-quick-nav-link:hover{background:#2563eb14;color:var(--at-accent-hover);text-decoration:none}.attendance-quick-nav-link:after{content:"→";font-size:14px}.attendance-staff-mobile-list{display:none}.attendance-overview-toolbar{grid-template-columns:1fr auto;align-items:end;gap:14px}.attendance-daily-filter-grid{grid-template-columns:repeat(2,minmax(220px,1fr))}@media (max-width: 640px){.attendance-daily-filter-grid{grid-template-columns:1fr!important}}.attendance-detail-toolbar{grid-template-columns:1fr auto;align-items:end;gap:16px}.attendance-page:not(.attendance-overview) .attendance-header h1{font-size:32px;font-weight:700;letter-spacing:-.01em}.attendance-page:not(.attendance-overview) .attendance-sub{margin-bottom:22px}.attendance-page:not(.attendance-overview) .attendance-filter-grid{border-radius:16px;padding:16px}.attendance-page:not(.attendance-overview) .attendance-summary-pill{margin-left:0;min-width:190px;border-radius:14px;border-color:#cfe0ff;background:linear-gradient(180deg,#f8fbff,#eef5ff);box-shadow:0 4px 14px #2563eb1f}.attendance-page:not(.attendance-overview) .attendance-summary-pill strong{font-size:18px;line-height:1.2}.attendance-page:not(.attendance-overview) .attendance-activity-summary{padding:14px 16px;border-radius:14px;background:linear-gradient(180deg,#fff,#f8fafc);box-shadow:0 3px 14px #0f172a0a}.attendance-page:not(.attendance-overview) .attendance-legend{padding:8px 2px 2px}.attendance-page:not(.attendance-overview) .attendance-calendar-wrap{background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:var(--at-shadow-sm),0 16px 42px #0f172a17}.attendance-page:not(.attendance-overview) .attendance-cal-cell{transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.attendance-page:not(.attendance-overview) .attendance-cal-cell.in-month:hover{border-color:#cbdcf8;box-shadow:0 4px 12px #1e40af14;transform:translateY(-1px)}.attendance-cal-cell.has-reports{cursor:pointer}.attendance-cal-cell.has-reports .cal-day-num{color:#0f172a;font-weight:700}.attendance-cal-cell.is-selected{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa33}.attendance-overview-meta{display:flex;flex-wrap:nowrap;gap:12px;justify-content:flex-end;align-items:stretch}.attendance-meta-item{min-width:132px;padding:12px 14px;border-radius:var(--at-radius);border:1px solid var(--at-border-strong);background:var(--at-surface);display:flex;flex-direction:column;gap:4px;box-shadow:var(--at-shadow-sm);transition:box-shadow .2s ease,border-color .2s ease,transform .2s ease}.attendance-meta-item:hover{border-color:#cbd5e1;box-shadow:var(--at-shadow-md);transform:translateY(-1px)}.attendance-meta-item small{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--at-ink-muted)}.attendance-meta-item strong{font-size:24px;line-height:1.1;letter-spacing:-.03em;color:var(--at-ink);font-variant-numeric:tabular-nums}.attendance-overview-meta strong{color:#0f172a}.attendance-table-card{position:relative;background:var(--at-surface);border:1px solid var(--at-border-strong);border-radius:var(--at-radius);overflow:hidden;box-shadow:var(--at-shadow-sm),var(--at-shadow-md)}.attendance-status-card{margin-top:16px}.attendance-status-card-title{margin:0;padding:16px 16px 8px;font-size:22px;line-height:1.2;color:#0f172a;letter-spacing:-.01em}.attendance-status-meta{padding:0 16px 12px;margin:0;border-bottom:1px solid #edf2f7}.attendance-status-meta span{font-size:14px;color:#475569}.attendance-status-meta strong{font-size:20px;margin-left:4px;color:#0f172a}.attendance-day-reports-card{margin-top:14px}.attendance-day-report-list{display:grid;gap:10px;padding:12px 16px 16px}.attendance-day-report-item{border:1px solid #e2e8f0;background:#fbfdff;border-radius:12px;padding:12px}.attendance-day-report-item-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.attendance-day-report-item-top h4{margin:0;font-size:14px;color:#0f172a}.attendance-report-status{display:inline-flex;align-items:center;border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700;white-space:nowrap}.attendance-report-status.status-approved{background:#dcfce7;color:#166534}.attendance-report-status.status-submitted,.attendance-report-status.status-pending{background:#fef9c3;color:#854d0e}.attendance-report-status.status-rejected{background:#fee2e2;color:#991b1b}.attendance-day-report-notes{margin:0 0 10px;font-size:13px;line-height:1.5;color:#475569}.attendance-day-report-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:#64748b}.attendance-table-loading{padding:24px;text-align:center;color:#64748b;font-size:14px}.attendance-summary-table{width:100%;border-collapse:collapse;font-size:14px}.attendance-summary-table thead{background:linear-gradient(180deg,#f1f5f9,#e8eef5);border-bottom:1px solid var(--at-border-strong)}.attendance-summary-table th{text-align:left;padding:14px 16px;font-weight:700;color:#475569;font-size:11px;text-transform:uppercase;letter-spacing:.06em}.attendance-summary-table th.num{text-align:right}.attendance-summary-table th.attendance-col-activity{max-width:108px;line-height:1.25;-webkit-hyphens:auto;hyphens:auto}.attendance-summary-table th.attendance-col-farmers{max-width:96px;white-space:normal;line-height:1.25;text-align:right}.attendance-activity-summary{display:flex;flex-wrap:wrap;gap:16px 28px;margin-bottom:18px;padding:14px 18px;background:var(--at-surface);border:1px solid var(--at-border-strong);border-radius:var(--at-radius);font-size:13px;color:#475569;box-shadow:var(--at-shadow-sm)}.attendance-activity-summary strong{color:var(--at-ink);font-size:15px;font-weight:700;margin-left:4px;font-variant-numeric:tabular-nums}.attendance-summary-table td{padding:14px 16px;border-bottom:1px solid rgba(241,245,249,.9);color:#334155;vertical-align:middle}.attendance-status-card .attendance-summary-table th,.attendance-status-card .attendance-summary-table td{font-size:14px}.attendance-summary-table tbody tr{transition:background .15s ease}.attendance-summary-table tbody tr:hover{background:linear-gradient(90deg,#f8fafc,#f1f5f9)}.attendance-summary-table td.num{text-align:right;font-variant-numeric:tabular-nums}.cell-name{font-weight:600;color:#0f172a}.cell-email{font-size:13px;color:#64748b}.cell-cong strong{color:var(--at-accent-hover);font-size:15px;font-variant-numeric:tabular-nums}.cell-action{width:1%;white-space:nowrap}.attendance-link-detail{display:inline-flex;align-items:center;padding:8px 14px;border-radius:10px;background:linear-gradient(180deg,#eff6ff,#e0edff);color:var(--at-accent-hover);font-size:13px;font-weight:600;text-decoration:none;border:1px solid #bfdbfe;box-shadow:0 1px 2px #2563eb0f;transition:background .15s ease,box-shadow .15s ease,transform .15s ease}.attendance-link-detail:hover{background:linear-gradient(180deg,#dbeafe,#cfe4ff);box-shadow:0 4px 12px #2563eb26;transform:translateY(-1px)}.attendance-table-empty{text-align:center;color:#94a3b8;padding:32px 16px!important}.attendance-pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:18px;flex-wrap:wrap}.attendance-page-number-wrap{display:inline-flex;align-items:center;gap:6px}.attendance-page-btn{height:34px;min-width:34px;padding:0 12px;border:1px solid #dbe3ef;border-radius:9px;background:#fff;color:#334155;font-size:13px;font-weight:600;cursor:pointer;transition:all .16s ease}.attendance-page-btn:hover:not(:disabled){border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.attendance-page-btn:disabled{opacity:.45;cursor:not-allowed}.attendance-page-btn.is-active{border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 3px 10px #2563eb40}.attendance-page-ellipsis{color:#94a3b8;font-size:12px;letter-spacing:.04em}@media (max-width: 768px){.attendance-filter-grid{grid-template-columns:repeat(2,minmax(180px,1fr))}.attendance-filter-grid.attendance-filter-grid--anchor-day{grid-template-columns:repeat(2,minmax(160px,1fr))}.attendance-clear-filter-btn{justify-self:start}.attendance-summary-table{display:block;overflow-x:auto}.attendance-overview>.attendance-table-card>.attendance-summary-table{overflow-x:visible}.attendance-overview-meta{width:100%;justify-content:flex-start;flex-wrap:wrap}.attendance-overview-toolbar,.attendance-detail-toolbar{grid-template-columns:1fr}.attendance-pagination{justify-content:flex-start}}@media (max-width: 640px){.attendance-page{padding:12px 12px max(20px,env(safe-area-inset-bottom));max-width:100%;overflow-x:hidden}.attendance-header h1{font-size:1.35rem;margin-bottom:8px}.attendance-sub{font-size:13px;margin-bottom:16px}.attendance-breadcrumb{margin-bottom:8px}.attendance-back-link{font-size:12px;padding:6px 8px;margin:0}.attendance-page:not(.attendance-overview) .attendance-header h1{font-size:1.4rem}.attendance-toolbar{gap:12px;margin-bottom:12px}.attendance-filter-grid{grid-template-columns:1fr;padding:12px;gap:12px}.attendance-filter-grid.attendance-filter-grid--anchor-day{grid-template-columns:1fr;padding:14px;gap:12px}.attendance-clear-filter-btn{width:100%!important;justify-self:stretch;align-self:stretch;min-height:44px;padding:0 12px;font-size:13px}.attendance-summary-pill{margin-left:0;width:100%;box-sizing:border-box}.attendance-page:not(.attendance-overview) .attendance-summary-pill{width:100%;min-width:0}.attendance-page:not(.attendance-overview) .attendance-summary-pill strong{font-size:16px;word-break:break-word}.attendance-overview-meta{width:100%;justify-content:stretch;flex-wrap:wrap;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.attendance-daily-work .attendance-overview-meta{grid-template-columns:1fr}.attendance-meta-item{min-width:0;flex:1 1 auto;padding:10px 12px}.attendance-meta-item strong{font-size:20px}.attendance-legend{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px;margin-bottom:12px;font-size:11px;line-height:1.35}.legend-item{align-items:flex-start;gap:6px}.legend-icon{width:24px;height:24px;font-size:11px;border-radius:6px;flex-shrink:0}.attendance-calendar-wrap{padding:10px 8px;border-radius:14px}.attendance-page:not(.attendance-overview) .attendance-calendar-wrap{padding:10px 8px}.attendance-calendar{gap:3px}.attendance-cal-head{font-size:9px;padding:4px 0;letter-spacing:0}.attendance-cal-cell{min-height:46px;padding:3px 2px;border-radius:8px;gap:2px}.cal-day-num{font-size:11px}.cal-mark{font-size:13px}.cal-mark.mark-cp,.cal-mark.mark-kl{font-size:9px;padding:1px 4px}.cal-leave-pill{font-size:8px;padding:1px 3px}.attendance-page:not(.attendance-overview) .attendance-cal-cell.in-month:hover{transform:none;box-shadow:none}.attendance-status-card-title{font-size:1.05rem;padding:12px 12px 6px}.attendance-status-meta{padding:0 12px 10px;flex-direction:column;align-items:flex-start;gap:6px}.attendance-status-meta span{font-size:13px}.attendance-status-meta strong{font-size:17px}.attendance-day-report-list{padding:10px 12px 12px}.attendance-day-report-item-top{flex-direction:column;align-items:flex-start;gap:6px}.attendance-day-report-meta{flex-direction:column;align-items:stretch;gap:10px}.attendance-day-report-meta .attendance-link-detail{width:100%;justify-content:center;min-height:44px;box-sizing:border-box}.attendance-field select,.attendance-field input[type=month],.attendance-field input[type=date],.attendance-field input[type=text]{width:100%;min-height:44px;font-size:16px}.attendance-mui-date .MuiInputBase-root{min-height:44px}.attendance-mui-date .MuiInputBase-input{font-size:16px!important}.attendance-page:not(.attendance-overview) .attendance-activity-summary{font-size:12px;gap:10px 14px;padding:12px}.attendance-overview.attendance-page{padding:0 0 max(20px,env(safe-area-inset-bottom));background:#eef2f6}.attendance-overview .attendance-header{padding:14px 16px 12px;background:#fff;border-bottom:1px solid #e8edf3}.attendance-overview .attendance-header h1{margin:0;font-size:1.2rem;font-weight:700;letter-spacing:-.02em}.attendance-overview .attendance-quick-nav-link{display:flex;align-items:center;justify-content:space-between;width:100%;margin:10px 0 0;padding:11px 14px;border-radius:12px;background:linear-gradient(135deg,#eff6ff,#e8f0fe);border:1px solid #c7d9f8;color:#1e40af;font-size:13px;font-weight:600;box-sizing:border-box}.attendance-overview .attendance-quick-nav-link:after{flex-shrink:0;margin-left:8px}.attendance-overview .attendance-toolbar{padding:12px 16px 0;margin-bottom:0;gap:10px}.attendance-overview .attendance-filter-grid{padding:14px;gap:10px;border-radius:14px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 1px 2px #0f172a0a}.attendance-overview .attendance-filter-grid.attendance-filter-grid--anchor-day{border-top:1px solid #e2e8f0;background:#fff}.attendance-overview .attendance-field>span:first-child{font-size:10px;color:#64748b}.attendance-overview .attendance-clear-filter-btn{width:auto!important;min-height:0;height:auto;padding:2px 0 0;margin:0;align-self:flex-start;border:none!important;background:transparent!important;box-shadow:none!important;color:#2563eb!important;font-size:13px;font-weight:600}.attendance-overview .attendance-clear-filter-btn:disabled{color:#94a3b8!important;opacity:1}.attendance-overview .attendance-overview-meta{display:flex;gap:8px;margin-top:0;padding-bottom:4px}.attendance-overview .attendance-meta-item{flex:1;text-align:center;padding:12px 8px;border-radius:12px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0f172a0a}.attendance-overview .attendance-meta-item small{font-size:10px}.attendance-overview .attendance-meta-item strong{font-size:22px}.attendance-staff-table-desktop{display:none!important}.attendance-staff-mobile-list{display:flex;flex-direction:column;gap:12px;padding:12px 16px 0}.attendance-staff-mobile-loading,.attendance-staff-mobile-empty{padding:28px 16px;text-align:center;font-size:14px;color:#64748b;background:#fff;border-radius:14px;border:1px dashed #cbd5e1}.attendance-staff-mobile-card{background:#fff;border-radius:16px;border:1px solid #e2e8f0;padding:16px;box-shadow:0 2px 8px #0f172a0d}.attendance-staff-mobile-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.attendance-staff-mobile-card__identity{min-width:0;flex:1}.attendance-staff-mobile-card__identity h3{margin:0;font-size:16px;font-weight:700;line-height:1.3;color:#0f172a;word-break:break-word}.attendance-staff-mobile-card__identity p{margin:4px 0 0;font-size:12px;line-height:1.4;color:#64748b;word-break:break-all}.attendance-staff-mobile-card__cong{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:58px;padding:8px 10px;border-radius:12px;background:linear-gradient(145deg,#2563eb,#1d4ed8);color:#fff;box-shadow:0 4px 12px #2563eb47}.attendance-staff-mobile-card__cong span{font-size:20px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.attendance-staff-mobile-card__cong small{margin-top:2px;font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;opacity:.92}.attendance-staff-mobile-card__stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:14px}.attendance-staff-mobile-card__stat{padding:10px 12px;border-radius:10px;background:#f8fafc;border:1px solid #eef2f7;text-align:center}.attendance-staff-mobile-card__stat span{display:block;margin-bottom:4px;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#64748b}.attendance-staff-mobile-card__stat strong{font-size:18px;font-weight:700;color:#0f172a;font-variant-numeric:tabular-nums}.attendance-staff-mobile-card__cta{display:flex;align-items:center;justify-content:center;width:100%;min-height:44px;padding:0 16px;border-radius:12px;border:1px solid #bfdbfe;background:#f8fbff;color:#1d4ed8;font-size:14px;font-weight:600;text-decoration:none;box-sizing:border-box;transition:background .15s ease,border-color .15s ease}.attendance-staff-mobile-card__cta:active{background:#eff6ff;border-color:#93c5fd}.attendance-overview .attendance-pagination{padding:14px 16px 0;justify-content:center}.attendance-page:not(.attendance-overview){padding:0 0 max(20px,env(safe-area-inset-bottom));background:#eef2f6}.attendance-page:not(.attendance-overview) .attendance-breadcrumb{padding:12px 16px 0;margin:0;background:#fff}.attendance-page:not(.attendance-overview) .attendance-header{padding:4px 16px 14px;background:#fff;border-bottom:1px solid #e8edf3}.attendance-page:not(.attendance-overview) .attendance-header h1{margin:0;font-size:1.2rem}.attendance-page:not(.attendance-overview) .attendance-detail-toolbar{padding:12px 16px 0;gap:10px}.attendance-page:not(.attendance-overview) .attendance-filter-grid{border-radius:14px;border:1px solid #e2e8f0;background:#fff;box-shadow:0 1px 2px #0f172a0a}.attendance-page:not(.attendance-overview) .attendance-filter-grid.attendance-filter-grid--anchor-day{border-top:1px solid #e2e8f0}.attendance-page:not(.attendance-overview) .attendance-clear-filter-btn{width:auto!important;min-height:0;height:auto;padding:2px 0 0;border:none!important;background:transparent!important;box-shadow:none!important;color:#2563eb!important;font-size:13px;align-self:flex-start}.attendance-page:not(.attendance-overview) .attendance-summary-pill{border-radius:14px;padding:14px 16px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 1px 2px #0f172a0a;color:#334155}.attendance-page:not(.attendance-overview) .attendance-summary-pill strong{font-size:17px;color:#0f172a}.attendance-page:not(.attendance-overview) .attendance-summary-pill em{color:#2563eb;font-size:22px}.attendance-page:not(.attendance-overview) .attendance-error{margin:12px 16px 0}.attendance-page:not(.attendance-overview) .attendance-legend{margin:12px 16px;padding:12px;border-radius:12px;background:#fff;border:1px solid #e2e8f0;gap:8px}.attendance-page:not(.attendance-overview) .attendance-calendar-wrap{margin:0 16px;border-radius:14px}.attendance-page:not(.attendance-overview) .attendance-table-card{margin:12px 16px 0;border-radius:14px}.attendance-day-reports-card .attendance-summary-table{display:block;overflow-x:visible}.attendance-day-reports-card .attendance-summary-table thead{display:none}.attendance-day-reports-card .attendance-summary-table tbody{display:flex;flex-direction:column;gap:10px;padding:0 12px 12px}.attendance-day-reports-card .attendance-summary-table tbody tr{display:flex;flex-direction:column;gap:6px;padding:12px;background:#fbfdff;border:1px solid #e2e8f0;border-radius:12px}.attendance-day-reports-card .attendance-summary-table tbody tr:hover{background:#fbfdff}.attendance-day-reports-card .attendance-summary-table tbody tr:has(td[colspan]){padding:0;border:none;background:transparent}.attendance-day-reports-card .attendance-summary-table td{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:0;border:none;font-size:13px}.attendance-day-reports-card .attendance-summary-table td:before{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--at-ink-muted);flex-shrink:0;min-width:72px}.attendance-day-reports-card .attendance-summary-table td:first-child{display:none}.attendance-day-reports-card .attendance-summary-table td.cell-name{flex-direction:column;align-items:flex-start;font-size:15px;font-weight:600}.attendance-day-reports-card .attendance-summary-table td.cell-name:before{display:none}.attendance-leave-day-card .attendance-summary-table td:nth-child(3):before{content:"Loại"}.attendance-leave-day-card .attendance-summary-table td:nth-child(4):before{content:"Lý do"}.attendance-kpi-day-card .attendance-summary-table td:nth-child(3):before{content:"Task KPI"}.attendance-kpi-day-card .attendance-summary-table td:nth-child(4):before{content:"Thời gian"}.attendance-kpi-day-card .attendance-summary-table td:nth-child(5):before{content:"Trạng thái"}.attendance-day-reports-card .attendance-summary-table td.cell-action{flex-direction:column;align-items:stretch;margin-top:4px}.attendance-day-reports-card .attendance-summary-table td.cell-action:before{display:none}.attendance-day-reports-card .attendance-summary-table .attendance-link-detail{width:100%;justify-content:center;min-height:44px}.attendance-day-reports-card .attendance-summary-table td[colspan]{display:block;text-align:center}.attendance-day-reports-card .attendance-summary-table td[colspan]:before{display:none}.attendance-status-card .attendance-summary-table th,.attendance-status-card .attendance-summary-table td{padding:10px 12px;font-size:13px}.attendance-pagination{justify-content:center;gap:6px;margin-top:14px}.attendance-page-number-wrap{gap:4px;flex-wrap:wrap;justify-content:center}.attendance-page-btn{height:40px;min-width:40px;padding:0 10px;border-radius:8px;font-size:12px}.attendance-pagination-text{font-size:12px;color:#64748b;width:100%;text-align:center;order:-1;margin-bottom:4px}.attendance-daily-work .attendance-pagination{flex-wrap:wrap}}.attendance-my-stats-toolbar{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.attendance-my-stats-summary-row{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:stretch}.attendance-my-stats-month-card{margin:0;min-width:0;padding:14px 16px;border:1px solid var(--at-border-strong);border-radius:var(--at-radius);background:linear-gradient(165deg,#fff,#f8fbff 55%,#fff);box-shadow:var(--at-shadow-sm),var(--at-shadow-md);justify-content:space-between}.attendance-my-stats-month-card .attendance-mui-date .MuiInputBase-root{height:40px}.attendance-my-stats-stat-card{min-width:0;margin:0;justify-content:center}.attendance-my-stats-stat-card strong{font-size:22px}.attendance-my-stats-actions{display:flex;justify-content:flex-end}.attendance-my-stats-intro{margin:8px 0 0;max-width:52rem;font-size:14px;line-height:1.5;color:#64748b}.attendance-my-stats-total-cong{color:var(--at-accent-hover, #1d4ed8);font-variant-numeric:tabular-nums}.attendance-my-stats-calendar-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:auto;max-width:100%;margin:0;padding:7px 14px;min-height:36px;border-radius:999px;border:1px solid #bfdbfe;background:#f8fbff;color:#1d4ed8;font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap;cursor:pointer;box-shadow:0 1px 2px #2563eb14;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,transform .12s ease}.attendance-my-stats-calendar-btn:hover{background:#eff6ff;border-color:#93c5fd;box-shadow:0 2px 6px #2563eb1f}.attendance-my-stats-calendar-btn:active{transform:translateY(1px)}.attendance-my-stats-calendar-btn[aria-expanded=true]{background:#eff6ff;border-color:#60a5fa;color:#1e40af}.attendance-my-stats-calendar-btn__icon,.attendance-my-stats-calendar-btn__chevron{flex-shrink:0;font-size:18px!important;opacity:.92}.attendance-my-stats-calendar-btn__text{overflow:hidden;text-overflow:ellipsis}.attendance-my-stats-calendar-btn__text--mobile{display:none}@media (max-width: 900px){.attendance-my-stats-summary-row{grid-template-columns:1fr 1fr}.attendance-my-stats-month-card{grid-column:1 / -1}}@media (max-width: 640px){.attendance-my-stats-toolbar{padding:0 16px;gap:8px;margin-bottom:12px}.attendance-my-stats-intro{font-size:12px;line-height:1.45}.attendance-my-stats-summary-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.attendance-my-stats-month-card{grid-column:1 / -1;padding:12px 14px}.attendance-my-stats-stat-card{padding:10px 12px}.attendance-my-stats-stat-card strong{font-size:20px}.attendance-my-stats-actions{justify-content:flex-start}.attendance-my-stats-calendar-btn{min-height:40px;padding:8px 12px;font-size:12px}.attendance-my-stats-calendar-btn__text--desktop{display:none}.attendance-my-stats-calendar-btn__text--mobile{display:inline}.attendance-my-stats>.attendance-calendar-wrap,.attendance-my-stats>.attendance-legend,.attendance-my-stats>.attendance-day-reports-card{margin-left:16px;margin-right:16px}.attendance-my-stats>.attendance-legend{margin-bottom:8px}}.attendance-my-stats-daily-card{margin-top:4px;border:1px solid var(--at-border-strong);border-radius:var(--at-radius);background:var(--at-surface);box-shadow:var(--at-shadow-sm),var(--at-shadow-md);overflow:hidden}.attendance-my-stats-daily-card__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid #eef2f7;background:linear-gradient(180deg,#fff,#f8fafc)}.attendance-my-stats-daily-card__title{margin:0;font-size:15px;font-weight:700;line-height:1.3;color:#0f172a;letter-spacing:-.01em}.attendance-my-stats-daily-card__badge{flex-shrink:0;padding:4px 10px;border-radius:999px;background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8;font-size:12px;font-weight:700;white-space:nowrap}.attendance-my-stats-daily-card__body{padding:8px}.attendance-my-stats-daily-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:88px;padding:20px 16px;text-align:center}.attendance-my-stats-daily-state p{margin:0;font-size:13px;line-height:1.45;color:#64748b}.attendance-my-stats-daily-spinner{width:22px;height:22px;border:2px solid #dbeafe;border-top-color:#2563eb;border-radius:50%;animation:attendance-my-stats-spin .7s linear infinite}@keyframes attendance-my-stats-spin{to{transform:rotate(360deg)}}.attendance-my-stats-daily-state--empty{min-height:72px;border:1px dashed #e2e8f0;border-radius:12px;background:#f8fafc;margin:4px}.attendance-my-stats-daily-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.attendance-my-stats-daily-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border-radius:10px;border:1px solid #eef2f7;background:#fff;transition:background .15s ease,border-color .15s ease}.attendance-my-stats-daily-row:hover{background:#f8fbff;border-color:#dbeafe}.attendance-my-stats-daily-row__date{font-size:14px;font-weight:600;color:#0f172a;font-variant-numeric:tabular-nums}.attendance-my-stats-daily-row__count{flex-shrink:0;min-width:28px;padding:4px 10px;border-radius:999px;background:#f1f5f9;color:#334155;font-size:13px;font-weight:700;text-align:center;font-variant-numeric:tabular-nums}@media (min-width: 641px){.attendance-my-stats-daily-card__title{font-size:16px}.attendance-my-stats-daily-card__body{padding:10px 12px 12px}.attendance-my-stats-daily-row{padding:12px 14px}}@media (max-width: 640px){.attendance-my-stats-daily-card{margin-left:16px;margin-right:16px}.attendance-my-stats-daily-card__head{padding:12px 14px}.attendance-my-stats-daily-card__title{font-size:14px}.attendance-my-stats-daily-card__badge{font-size:11px;padding:3px 8px}}.farmer-profile-drawer__paper{width:min(100vw,440px);max-width:100%;border-radius:var(--app-radius-lg) 0 0 var(--app-radius-lg);box-shadow:var(--app-shadow-md)}.farmer-profile-drawer__inner{display:flex;flex-direction:column;height:100%;min-height:100%;background:var(--app-surface)}.farmer-profile-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;border-bottom:1px solid var(--app-border-soft);background:linear-gradient(180deg,#f8fafc,#fff)}.farmer-profile-drawer__eyebrow{display:block;letter-spacing:.08em;font-weight:700;color:var(--app-primary);line-height:1.2}.farmer-profile-drawer__title{font-weight:700!important;color:var(--app-text-heading);letter-spacing:-.02em;margin-top:4px!important;line-height:1.25!important;word-break:break-word}.farmer-profile-drawer__close{margin-top:-4px;flex-shrink:0}.farmer-profile-drawer__body{flex:1;overflow-y:auto;padding:20px}.farmer-profile-drawer__section-title{display:flex;align-items:center;gap:8px;font-size:13px!important;font-weight:700!important;color:var(--app-text-heading);margin-bottom:14px!important;text-transform:uppercase;letter-spacing:.04em}.farmer-profile-drawer__section-title .MuiSvgIcon-root{color:var(--app-primary)}.farmer-profile-drawer__meta{margin-top:20px;padding:12px 14px;border-radius:var(--app-radius);background:#f8fafc;border:1px dashed var(--app-border-soft)}.farmer-profile-drawer__footer{display:grid;grid-template-columns:1fr 1.2fr;gap:10px;padding:16px 20px;border-top:1px solid var(--app-border-soft);background:#fff;box-shadow:0 -4px 20px #0f172a0f}.farmer-profile-drawer__save.MuiButton-contained{background:var(--app-nav-active-gradient)!important;font-weight:600}@media (max-width: 480px){.farmer-profile-drawer__footer{grid-template-columns:1fr}}.farmers-page{width:100%;max-width:1400px}.farmers-paper{border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-card);border:1px solid var(--app-border-soft)}.farmers-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.farmers-title{color:var(--app-text-heading);letter-spacing:-.02em;font-weight:700!important}.farmers-subtitle{margin-top:6px!important;max-width:520px;line-height:1.45}.farmers-btn-add.MuiButton-contained{background:var(--app-nav-active-gradient)!important;box-shadow:0 4px 14px #2563eb47!important;text-transform:none;font-weight:600;border-radius:var(--app-radius);padding-left:18px;padding-right:18px}.farmers-btn-add.MuiButton-contained:hover{background:linear-gradient(180deg,#3b97e0,#2886d6);box-shadow:0 8px 18px #2f90df6b}.farmers-filter-box .MuiOutlinedInput-root{border-radius:10px;background:#f8fafc}.farmers-filter-box .MuiOutlinedInput-notchedOutline{border-color:#e0e6ed}.farmers-table-container{border:1px solid #e5e7eb;border-radius:12px;overflow-x:auto}.farmers-table th{background:#f8fafc;font-weight:700;color:#374151;white-space:nowrap}.farmers-table td{vertical-align:middle;color:#1f2937}.farmers-name-btn{display:inline;padding:0;border:none;background:none;font:inherit;font-weight:600;color:#1d4ed8;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:#1d4ed859;text-underline-offset:3px;transition:color .15s ease,text-decoration-color .15s ease}a.farmers-name-btn{text-decoration:underline}.farmers-name-btn:hover{color:#1e40af;text-decoration-color:#1e40af}.farmers-name-btn:focus-visible{outline:2px solid #93c5fd;outline-offset:2px;border-radius:4px}.farmers-mobile-list{display:none}.farmers-empty-card{border-radius:12px!important;padding:20px!important;text-align:center;color:#64748b;border-style:dashed!important}.farmers-dialog .MuiDialog-paper{border-radius:14px}.farmers-pagination{margin-top:14px;display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.farmers-pagination-text{font-size:13px;color:#64748b}.farmers-page-btn{height:34px;min-width:34px;padding:0 12px;border:1px solid #dbe3ef;border-radius:9px;background:#fff;color:#334155;font-size:13px;font-weight:600;cursor:pointer;transition:all .16s ease}.farmers-page-btn:hover:not(:disabled){border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.farmers-page-btn:disabled{opacity:.45;cursor:not-allowed}@media (max-width: 900px){.farmers-page{padding-left:0!important;padding-right:0!important}.farmers-paper{padding:16px!important}.farmers-page-header{flex-direction:column;align-items:stretch}.farmers-btn-add{width:100%}.farmers-pagination{justify-content:flex-start}}@media (max-width: 680px){.farmers-paper{padding:12px!important}.farmers-table-container{display:none}.farmers-mobile-list{display:grid;gap:12px}.farmers-mobile-card{border-radius:12px!important;border:1px solid #e5e7eb!important;padding:14px;background:#fff;transition:box-shadow .2s ease}.farmers-mobile-card:hover{box-shadow:0 6px 16px #0000000f}.farmers-mobile-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:4px}.farmers-btn-delete{flex-shrink:0;margin-top:-4px}.farmers-mobile-name{font-size:16px!important;font-weight:700!important;color:#1f2937;margin-bottom:0!important;flex:1;min-width:0}a.farmers-mobile-name--editable{display:block;width:100%;padding:0;border:none;background:none;text-align:left;cursor:pointer;color:#1d4ed8;text-decoration:underline;text-underline-offset:3px}a.farmers-mobile-name--editable:hover{color:#1e40af}.farmers-mobile-meta{display:grid;gap:8px;border-top:1px dashed #e5e7eb;padding-top:10px}.farmers-mobile-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.farmers-mobile-row span{font-size:12px;color:#64748b;font-weight:600;flex-shrink:0}.farmers-mobile-row strong{font-size:13px;color:#111827;font-weight:600;text-align:right;word-break:break-word}.farmers-page-btn{height:32px;min-width:32px;padding:0 9px;font-size:12px}}.farmers-paper{position:relative;overflow:hidden;background:radial-gradient(circle at top right,rgba(59,130,246,.12),transparent 34%),#fff}.farmers-paper:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:linear-gradient(90deg,#2563eb,#22c55e,#38bdf8)}.farmers-heading-block{display:grid;gap:6px}.farmers-eyebrow.MuiChip-root{width:fit-content;height:24px;border-radius:999px;color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;font-weight:700}.farmers-title.MuiTypography-root{font-size:clamp(22px,2vw,30px);line-height:1.15}.farmers-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.farmers-summary-card{padding:14px 16px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafcdb;box-shadow:0 8px 22px #0f172a0a;display:grid;gap:4px}.farmers-summary-card span{color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.farmers-summary-card strong{color:#0f172a;font-size:22px;line-height:1.1;font-weight:800}.farmers-summary-card--primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:transparent}.farmers-summary-card--primary span,.farmers-summary-card--primary strong{color:#fff}.farmers-filter-box{padding:12px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.farmers-table-container{border-radius:18px;border-color:#dbe5f2;background:#fff;box-shadow:inset 0 1px #ffffffe6}.farmers-table{table-layout:fixed;width:100%;min-width:980px}.farmers-col-name{width:18%}.farmers-col-contact{width:15%}.farmers-col-address{width:20%}.farmers-col-area,.farmers-col-creator{width:8%}.farmers-col-time{width:15%}.farmers-col-actions{width:10%}.farmers-col-delete{width:6%}.farmers-table thead th{padding:14px 16px;color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.035em;border-bottom:1px solid #e2e8f0}.farmers-table tbody td{padding:12px 16px;border-bottom:1px solid #edf2f7}.farmers-table tbody tr:hover td{background:#f8fbff}.farmers-name-stack,.farmers-contact-stack{display:grid;gap:4px;min-width:0}.farmers-name-cell{min-width:0;overflow:hidden}.farmers-name-cell .farmers-name-btn{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.farmers-phone{white-space:nowrap;font-size:13px;color:#0f172a}.farmers-source-chip.MuiChip-root{max-width:100%;height:22px;border-radius:999px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;font-size:11px;font-weight:600}.farmers-source-chip .MuiChip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-left:8px;padding-right:8px}.farmers-address-cell{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;word-break:break-word}.farmers-time-cell{display:grid;gap:2px;min-width:0}.farmers-time-created{white-space:nowrap;font-size:13px;font-weight:600;color:#0f172a}.farmers-time-updated{white-space:nowrap;font-size:11px;color:#64748b}.farmers-table-actions{display:inline-flex;align-items:center;justify-content:center;gap:2px;white-space:nowrap}.farmers-action-btn.MuiIconButton-root{width:32px;height:32px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#475569;transition:all .15s ease}.farmers-action-btn.MuiIconButton-root:hover{border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.farmers-action-btn--edit.MuiIconButton-root:hover{border-color:#bbf7d0;background:#f0fdf4;color:#15803d}.farmers-name-stack small,.farmers-contact-stack small{color:#64748b;font-size:12px}.farmers-area-chip.MuiChip-root{height:26px;min-width:48px;border-radius:999px;background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0;font-weight:700}.farmers-area-chip .MuiChip-label{padding-left:10px;padding-right:10px}.farmers-creator-cell{display:flex;align-items:center;gap:10px;min-width:0}.farmers-creator-cell--compact{justify-content:center}.farmers-creator-avatar{width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;font-weight:800;border:1px solid #bfdbfe}.farmers-creator-avatar--compact{width:30px;height:30px;border-radius:10px;font-size:13px;cursor:default}.farmers-creator-info{display:grid;min-width:0}.farmers-creator-info strong{color:#0f172a;font-size:13px;line-height:1.25;white-space:normal}.farmers-creator-info small{color:#64748b;font-size:11px;line-height:1.25}.farmers-table .MuiButton-root{font-weight:700}.farmers-dialog .MuiDialog-paper{border-radius:22px;box-shadow:0 28px 70px #0f172a42}.farmers-dialog .MuiDialogTitle-root{font-weight:800;letter-spacing:-.02em}@media (max-width: 1100px){.farmers-summary-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}}@media (max-width: 760px){.farmers-summary-grid{grid-template-columns:1fr}.farmers-filter-box{padding:10px}.farmers-title.MuiTypography-root{font-size:22px}}@media (max-width: 680px){.farmers-mobile-card{border-radius:18px!important;box-shadow:0 10px 28px #0f172a0f}.farmers-mobile-card-top{align-items:center}.farmers-mobile-meta{background:#f8fafc;border:1px solid #edf2f7;border-radius:14px;padding:12px}}.farmer-seasons-editor{margin-top:4px}.farmer-seasons-editor__toolbar{margin-bottom:10px}.farmer-seasons-editor__label{font-weight:600!important;color:var(--app-text-heading);display:flex;align-items:center;gap:8px}.farmer-seasons-editor__count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;font-size:12px;font-weight:700;color:var(--app-primary);background:#eff6ff;border-radius:999px}.farmer-seasons-editor__empty-inline{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border:1px dashed #dbe3ef;border-radius:10px;background:#fafbfc}.farmer-seasons-editor__add-chip{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:50%;background:var(--app-primary, #2563eb);color:#fff;cursor:pointer;box-shadow:0 2px 6px #2563eb4d;transition:transform .15s ease}.farmer-seasons-editor__add-chip:hover:not(:disabled){transform:scale(1.06);background:#1d4ed8}.farmer-seasons-editor__add-chip:disabled{opacity:.45;cursor:not-allowed}.farmer-seasons-editor__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.farmer-seasons-editor__item{margin:0;border:1px solid var(--app-border-soft);border-radius:10px;overflow:hidden;background:#fff}.farmer-seasons-editor__row{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:10px 12px;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit;transition:background .12s ease}.farmer-seasons-editor__row:hover{background:#f8fafc}.farmer-seasons-editor__row.is-open{background:#f0f9ff;border-bottom:1px solid var(--app-border-soft)}.farmer-seasons-editor__row-title{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--app-text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.farmer-seasons-editor__chevron{flex-shrink:0;color:#94a3b8;transition:transform .2s ease}.farmer-seasons-editor__row.is-open .farmer-seasons-editor__chevron{transform:rotate(180deg);color:var(--app-primary)}.farmer-seasons-editor__panel{padding:8px 12px 12px;background:#fafbfc}.farmer-seasons-editor__panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-bottom:10px}.farmer-seasons-editor__edit-btn{border-radius:8px!important}.farmer-seasons-editor__remove{color:#94a3b8!important}.farmer-seasons-editor__remove:hover{color:#dc2626!important;background:#fef2f2!important}.farmer-season-view{margin:0;display:grid;gap:8px}.farmer-season-view__row{display:grid;grid-template-columns:minmax(120px,42%) 1fr;gap:8px 12px;align-items:baseline}.farmer-season-view__row dt{margin:0;font-size:12px;font-weight:600;color:var(--app-text-muted)}.farmer-season-view__row dd{margin:0;font-size:14px;font-weight:600;color:var(--app-text-heading);word-break:break-word}.farmer-seasons-editor__fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.farmer-seasons-editor__field-span{grid-column:1 / -1}.farmer-seasons-editor__item--add{border-style:dashed;background:transparent}.farmer-seasons-editor__add-row{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:transparent;cursor:pointer;font-size:13px;font-weight:600;color:var(--app-primary);transition:background .12s ease}.farmer-seasons-editor__add-row:hover:not(:disabled){background:#eff6ff}.farmer-seasons-editor__add-row:disabled{opacity:.5;cursor:not-allowed}.farmer-seasons-editor__add-icon{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--app-primary, #2563eb);color:#fff}@media (max-width: 520px){.farmer-seasons-editor__fields,.farmer-season-view__row{grid-template-columns:1fr;gap:2px}}.farmer-detail-page{width:100%}.farmer-detail-topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.farmer-detail-back{color:var(--app-text-muted)!important}.farmer-detail-actions{justify-content:flex-end}.farmer-detail-hero{padding:22px 24px;border-radius:var(--app-radius-lg);border:1px solid var(--app-border-soft);background:linear-gradient(135deg,#f0f9ff,#fff 55%);box-shadow:var(--app-shadow-card);margin-bottom:20px}.farmer-detail-eyebrow{display:block;font-weight:700!important;letter-spacing:.08em;color:var(--app-primary)}.farmer-detail-name{font-weight:700!important;color:var(--app-text-heading);letter-spacing:-.02em;margin:6px 0 8px!important;word-break:break-word}.farmer-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px;align-items:start}.farmer-detail-card{padding:22px 24px;border-radius:var(--app-radius-lg);border:1px solid var(--app-border-soft);box-shadow:var(--app-shadow-card);height:100%}.farmer-detail-card--season{background:linear-gradient(180deg,#fafdf7,#fff 40%)}.farmer-detail-card--season .farmer-detail-section-title{margin-bottom:4px!important}.farmer-detail-card--season:after{content:"Mùa vụ được dùng khi nhân viên nộp báo cáo KPI có liên kết nông dân.";display:block;margin-top:10px;font-size:12px;line-height:1.45;color:var(--app-text-muted)}.farmer-detail-season-footer{display:flex;justify-content:flex-end;margin-top:12px;padding-top:10px;border-top:1px solid var(--app-border-soft)}.farmer-detail-section-title{display:flex;align-items:center;gap:8px;font-size:14px!important;font-weight:700!important;color:var(--app-text-heading);margin-bottom:8px!important;text-transform:uppercase;letter-spacing:.04em}.farmer-detail-section-title .MuiSvgIcon-root{color:var(--app-primary)}.farmer-detail-hint{margin-bottom:18px!important;line-height:1.45;max-width:42ch}.farmer-detail-dl{margin:0;display:grid;gap:0}.farmer-detail-info-row{display:grid;grid-template-columns:minmax(120px,38%) 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--app-border-soft)}.farmer-detail-info-row:last-child{border-bottom:none}.farmer-detail-info-row dt{margin:0;font-size:13px;font-weight:600;color:var(--app-text-muted)}.farmer-detail-info-row dd{margin:0;font-size:14px;font-weight:600;color:var(--app-text-heading);word-break:break-word}.farmer-detail-save.MuiButton-contained{background:var(--app-nav-active-gradient)!important;font-weight:600;margin-top:4px}@media (max-width: 900px){.farmer-detail-grid{grid-template-columns:1fr}.farmer-detail-info-row{grid-template-columns:1fr;gap:4px}.farmer-detail-actions{width:100%;justify-content:flex-start}}.leave-steps-root{display:flex;align-items:flex-start;gap:18px;flex-wrap:nowrap}.leave-steps-box{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:56px}.leave-steps-caption{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b;text-align:center;line-height:1.2;max-width:72px}.leave-steps-na{font-size:18px;color:#cbd5e1;font-weight:600;line-height:28px;-webkit-user-select:none;user-select:none}.my-leave-page{--ml-bg: #f1f5f9;--ml-surface: #ffffff;--ml-border: rgba(15, 23, 42, .08);--ml-text: #0f172a;--ml-muted: #64748b;--ml-primary: #2563eb;--ml-primary-soft: #eff6ff;--ml-success: #059669;--ml-success-soft: #ecfdf5;--ml-warn: #d97706;--ml-warn-soft: #fffbeb;--ml-radius: 16px;--ml-shadow: 0 1px 2px rgba(15, 23, 42, .05), 0 8px 24px -6px rgba(15, 23, 42, .1);padding:24px 20px 48px;max-width:1120px;margin:0 auto;min-height:100%;box-sizing:border-box}.my-leave-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:24px}.my-leave-header h1{margin:0;font-size:clamp(1.45rem,2.4vw,1.85rem);font-weight:800;letter-spacing:-.03em;color:var(--ml-text);line-height:1.15}.my-leave-year-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--ml-primary);background:var(--ml-primary-soft);border:1px solid rgba(37,99,235,.15)}.my-leave-layout{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:20px;align-items:start;margin-bottom:20px}.my-leave-panel{background:var(--ml-surface);border:1px solid var(--ml-border);border-radius:var(--ml-radius);box-shadow:var(--ml-shadow);overflow:hidden}.my-leave-panel__head{padding:18px 22px 14px;border-bottom:1px solid var(--ml-border);background:linear-gradient(180deg,#fafbfc,#fff)}.my-leave-panel__head h2{margin:0;font-size:1rem;font-weight:700;color:var(--ml-text);letter-spacing:-.02em}.my-leave-panel__body{padding:20px 22px 22px}.my-leave-panel--history{margin-bottom:8px}.my-leave-panel--history .my-leave-panel__body{padding:0}.my-leave-balance-mobile{display:none}.my-leave-balance-desktop,.my-leave-balance-stack{display:flex;flex-direction:column;gap:12px}.my-leave-balance-hero{padding:18px;border-radius:14px;background:linear-gradient(135deg,#1d4ed8,#2563eb 48%,#3b82f6);color:#fff;box-shadow:0 10px 28px -8px #2563eb8c}.my-leave-balance-hero__label{display:block;font-size:12px;font-weight:600;opacity:.88;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px}.my-leave-balance-hero__value{display:block;font-size:2.25rem;font-weight:800;letter-spacing:-.04em;line-height:1}.my-leave-balance-hero__unit{font-size:1rem;font-weight:600;opacity:.9;margin-left:4px}.my-leave-usage-bar{margin-top:14px}.my-leave-usage-bar__track{height:8px;border-radius:999px;background:#ffffff38;overflow:hidden}.my-leave-usage-bar__fill{height:100%;border-radius:inherit;background:#fff;transition:width .35s ease;min-width:0}.my-leave-usage-bar__meta{display:flex;justify-content:space-between;margin-top:8px;font-size:12px;font-weight:500;opacity:.92}.my-leave-stat-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.my-leave-stat-card{padding:14px 16px;border-radius:12px;border:1px solid var(--ml-border);background:#f8fafc}.my-leave-stat-card--used{background:var(--ml-warn-soft);border-color:#d977062e}.my-leave-stat-card__label{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ml-muted);margin-bottom:6px}.my-leave-stat-card__value{display:block;font-size:1.25rem;font-weight:800;color:var(--ml-text);letter-spacing:-.03em}.my-leave-stat-card--used .my-leave-stat-card__value{color:#b45309}.my-leave-form{display:flex;flex-direction:column;gap:20px}.my-leave-field-group{display:flex;flex-direction:column;gap:10px}.my-leave-field-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--ml-muted)}.my-leave-duration-pills{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.my-leave-duration-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid var(--ml-border);background:#f8fafc;border-radius:12px;padding:12px 10px;cursor:pointer;text-align:center;transition:border-color .15s,background .15s,box-shadow .15s,transform .1s;font-family:inherit}.my-leave-duration-pill:hover{border-color:#2563eb59;background:#fff}.my-leave-duration-pill:focus-visible{outline:2px solid var(--ml-primary);outline-offset:2px}.my-leave-duration-pill--active{border-color:var(--ml-primary);background:var(--ml-primary-soft);box-shadow:0 0 0 3px #2563eb1f}.my-leave-duration-pill__title{display:block;font-size:14px;font-weight:700;color:var(--ml-text);margin-bottom:2px}.my-leave-duration-pill__sub{display:block;font-size:11px;color:var(--ml-muted);font-weight:500}.my-leave-date-grid{display:grid;gap:12px}.my-leave-date-grid--range{grid-template-columns:repeat(2,minmax(0,1fr))}.my-leave-mui-date .MuiInputBase-root{border-radius:12px;background:#f8fafc;transition:background .15s}.my-leave-mui-date .MuiInputBase-root:hover,.my-leave-mui-date .Mui-focused .MuiInputBase-root{background:#fff}.my-leave-mui-date .MuiOutlinedInput-notchedOutline{border-color:var(--ml-border)}.my-leave-field .MuiInputBase-root{border-radius:12px;background:#f8fafc}.my-leave-form-actions{padding-top:4px}.my-leave-submit-btn{width:100%;min-height:48px!important;border-radius:12px!important;font-weight:700!important;font-size:15px!important;text-transform:none!important;box-shadow:0 8px 20px -6px #2563eb73!important}.my-leave-form .MuiAlert-root{border-radius:12px}.my-leave-table-wrap{border:none!important;border-radius:0!important;box-shadow:none!important;background:transparent!important}.my-leave-table-wrap .MuiTableHead-root .MuiTableCell-head{font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--ml-muted);background:#f8fafc!important;border-bottom:1px solid var(--ml-border);white-space:nowrap;padding-top:14px;padding-bottom:14px}.my-leave-table-wrap .MuiTableBody-root .MuiTableRow-root:hover{background:#f8fafc}.my-leave-table-wrap .MuiTableCell-root{font-size:13px;color:#334155;border-color:var(--ml-border);padding-top:14px;padding-bottom:14px}.my-leave-table-wrap td.num,.my-leave-table-wrap th.num{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.my-leave-cell-multiline{max-width:240px;line-height:1.5!important;white-space:normal!important;word-break:break-word;color:#475569!important}.my-leave-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:48px 24px;text-align:center;color:var(--ml-muted)}.my-leave-empty__icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f1f5f9;color:#94a3b8;margin-bottom:4px}.my-leave-empty__title{margin:0;font-size:15px;font-weight:700;color:#475569}.my-leave-empty__desc{margin:0;font-size:13px;max-width:280px}.my-leave-loading-row td{padding:32px!important;text-align:center;color:var(--ml-muted)}@media (max-width: 900px){.my-leave-layout{grid-template-columns:1fr;gap:12px}.my-leave-page{padding:12px 12px 28px}}@media (max-width: 640px){.my-leave-page{--ml-radius: 12px;--ml-shadow: none;padding:10px 10px 24px}.my-leave-header{margin-bottom:12px;gap:8px}.my-leave-header h1{font-size:1.2rem}.my-leave-year-badge{padding:5px 10px;font-size:12px}.my-leave-year-badge .MuiSvgIcon-root{font-size:15px!important}.my-leave-layout{gap:0;margin-bottom:12px;border:1px solid var(--ml-border);border-radius:var(--ml-radius);background:var(--ml-surface);overflow:hidden}.my-leave-panel--balance,.my-leave-panel--form{box-shadow:none;border:none;border-radius:0;background:transparent}.my-leave-panel--balance{border-bottom:1px solid var(--ml-border)}.my-leave-panel--balance .my-leave-panel__head,.my-leave-panel--form .my-leave-panel__head{display:none}.my-leave-panel--balance .my-leave-panel__body{padding:12px 12px 10px}.my-leave-panel--form .my-leave-panel__body{padding:12px}.my-leave-panel--history{box-shadow:none;border-radius:var(--ml-radius)}.my-leave-panel--history .my-leave-panel__head{padding:10px 12px 8px}.my-leave-panel--history .my-leave-panel__head h2{font-size:.9rem}.my-leave-balance-mobile{display:block}.my-leave-balance-desktop{display:none}.my-leave-balance-mobile__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:8px}.my-leave-balance-mobile__stat{text-align:center;padding:6px 4px;border-radius:8px;background:#f8fafc}.my-leave-balance-mobile__stat--primary{background:var(--ml-primary-soft)}.my-leave-balance-mobile__label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--ml-muted);margin-bottom:2px}.my-leave-balance-mobile__value{display:block;font-size:1.1rem;font-weight:800;color:var(--ml-text);line-height:1.1}.my-leave-balance-mobile__stat--primary .my-leave-balance-mobile__value{color:var(--ml-primary)}.my-leave-balance-mobile__bar{height:4px;border-radius:999px;background:#e2e8f0;overflow:hidden}.my-leave-balance-mobile__bar-fill{height:100%;border-radius:inherit;background:var(--ml-primary);transition:width .3s ease}.my-leave-form{gap:12px}.my-leave-field-group{gap:6px}.my-leave-field-label{font-size:11px}.my-leave-duration-pills{grid-template-columns:repeat(3,1fr);gap:6px}.my-leave-duration-pill{padding:8px 4px;border-radius:8px}.my-leave-duration-pill__title{font-size:12px;margin-bottom:0}.my-leave-duration-pill__sub{display:none}.my-leave-date-grid{gap:8px}.my-leave-date-grid--range{grid-template-columns:repeat(2,minmax(0,1fr))}.my-leave-mui-date .MuiInputBase-root,.my-leave-field .MuiInputBase-root{border-radius:8px}.my-leave-submit-btn{min-height:42px!important;font-size:14px!important;box-shadow:none!important}.my-leave-form .MuiAlert-root{padding:6px 10px;font-size:13px}.my-leave-table-wrap{overflow:visible!important}.my-leave-table-wrap table{display:block}.my-leave-table-wrap thead{display:none}.my-leave-table-wrap tbody{display:flex;flex-direction:column;gap:8px;padding:10px 12px 12px}.my-leave-table-row{display:block!important;border:1px solid var(--ml-border)!important;border-radius:10px;background:#f8fafc;padding:10px 12px}.my-leave-table-row:hover{background:#f1f5f9!important}.my-leave-table-wrap .my-leave-table-row .MuiTableCell-root{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:5px 0!important;border:none!important;font-size:12px;max-width:none}.my-leave-table-wrap .my-leave-table-row .MuiTableCell-root:before{content:attr(data-label);flex:0 0 auto;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--ml-muted);min-width:72px}.my-leave-table-wrap .my-leave-table-row .MuiTableCell-root.num{text-align:right}.my-leave-table-wrap .my-leave-table-row .MuiTableCell-root.num:before{text-align:left}.my-leave-cell-multiline{max-width:none!important}.my-leave-table-row .leave-steps-root{gap:8px;justify-content:flex-end;flex-wrap:wrap}.my-leave-table-row .leave-steps-box{min-width:40px;gap:2px}.my-leave-table-row .leave-steps-caption{font-size:8px;max-width:56px}.my-leave-table-row .leave-steps-root .MuiSvgIcon-root{font-size:22px!important}.my-leave-empty{padding:28px 16px}.my-leave-empty__icon{width:44px;height:44px}.my-leave-empty__desc{display:none}}.my-leave-category-pills{display:grid;grid-template-columns:1fr;gap:8px}.my-leave-category-pill{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;border:1.5px solid var(--ml-border);background:#f8fafc;border-radius:12px;padding:11px 12px;cursor:pointer;text-align:left;font:inherit;transition:border-color .15s,background .15s,box-shadow .15s}.my-leave-category-pill:hover{border-color:#2563eb59;background:#fff}.my-leave-category-pill:focus-visible{outline:2px solid var(--ml-primary);outline-offset:2px}.my-leave-category-pill--active{border-color:var(--ml-primary);background:var(--ml-primary-soft);box-shadow:0 0 0 3px #2563eb1a}.my-leave-category-pill__title{display:block;color:var(--ml-text);font-size:13px;font-weight:750;line-height:1.35}.my-leave-category-pill__sub{display:block;margin-top:2px;color:var(--ml-muted);font-size:12px;line-height:1.45}.my-leave-type-note{border:1px solid rgba(37,99,235,.14);border-radius:12px;background:#f8fbff;padding:12px 13px;color:#334155}.my-leave-type-note__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.my-leave-type-note__head strong{color:#0f172a;font-size:12px}.my-leave-type-note p{margin:9px 0 0;font-size:12px;line-height:1.55}.my-leave-policy-list{margin:9px 0 0;padding-left:18px;color:#475569;font-size:12px;line-height:1.55}.my-leave-policy-list li+li{margin-top:4px}@media (max-width: 640px){.my-leave-category-pill{padding:9px 10px;border-radius:9px}.my-leave-category-pill__title{font-size:12px}.my-leave-category-pill__sub{display:none}.my-leave-type-note{padding:10px;border-radius:9px}.my-leave-type-note p,.my-leave-policy-list{font-size:11px}}.leave-admin-page{padding:28px 24px 40px;max-width:1280px;margin:0 auto;min-height:100%;background:linear-gradient(180deg,#eef2f7,#f8fafc 32%,#f8fafc);box-sizing:border-box}.leave-admin-header h1{margin:0 0 20px;font-size:clamp(1.5rem,2.5vw,1.875rem);font-weight:700;letter-spacing:-.025em;color:#0f172a;line-height:1.2}.leave-admin-metrics{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px}.leave-admin-tabs-wrap{margin-bottom:8px;border-bottom:1px solid rgba(15,23,42,.08)}.leave-admin-tabs-wrap .MuiTab-root{text-transform:none;font-weight:600;font-size:14px;min-height:48px}.leave-admin-table-card{border-radius:14px;border:1px solid rgba(15,23,42,.1);overflow:auto;background:#fff}.leave-admin-table-card .MuiTableHead-root .MuiTableCell-head{font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#475569;background:#f1f5f9!important;white-space:nowrap}.leave-admin-table-card td.num,.leave-admin-table-card th.num{text-align:right;white-space:nowrap}.leave-admin-cell-multiline{max-width:200px;font-size:13px!important;line-height:1.45!important;white-space:normal!important;word-break:break-word}.leave-admin-cell-emp strong{display:block;color:#0f172a;font-weight:600}.leave-admin-cell-emp small{display:block;margin-top:2px;font-size:12px;color:#64748b}.leave-admin-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.leave-admin-actions .MuiButton-root{text-transform:none;font-weight:600}.leave-admin-actions--mobile{width:100%}.leave-admin-actions--mobile .MuiButton-root{min-height:44px}.leave-admin-mobile-list{display:none}.leave-admin-mobile-empty{border-radius:14px!important;border:1px solid rgba(15,23,42,.1)!important;padding:28px 16px!important;text-align:center;color:#64748b;font-size:14px;background:#fff!important}.leave-admin-mobile-card{border-radius:14px!important;border:1px solid rgba(15,23,42,.1)!important;padding:14px!important;background:#fff!important}.leave-admin-mobile-top{margin-bottom:10px}.leave-admin-mobile-name{font-weight:700;font-size:16px;color:#0f172a;line-height:1.35}.leave-admin-mobile-email{margin-top:2px;font-size:12px;color:#64748b;word-break:break-word}.leave-admin-mobile-meta{display:grid;gap:8px;border-top:1px dashed #e2e8f0;padding-top:10px}.leave-admin-mobile-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.leave-admin-mobile-row span{flex-shrink:0;font-size:12px;font-weight:600;color:#64748b;min-width:88px}.leave-admin-mobile-row strong{font-size:13px;font-weight:600;color:#111827;text-align:right;word-break:break-word}.leave-admin-mobile-steps{display:flex;justify-content:center;margin:14px 0 12px;padding:10px 0;border-top:1px dashed #e2e8f0;border-bottom:1px dashed #e2e8f0}.leave-admin-mobile-actions{padding-top:4px}@media (max-width: 900px){.leave-admin-page{padding:20px 16px 32px}.leave-admin-table-card .MuiTable-root{min-width:900px}}@media (max-width: 680px){.leave-admin-table-container{display:none}.leave-admin-mobile-list{display:grid;gap:12px}.leave-admin-metrics .MuiChip-root{flex:1 1 auto;justify-content:flex-start}}.leave-detail-modal .MuiBackdrop-root{background:#0f172a7a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.leave-detail-modal-paper{border-radius:20px!important;border:1px solid rgba(148,163,184,.28);box-shadow:0 24px 70px #0f172a33!important;overflow:hidden;background:#f8fafc!important}.leave-detail-modal-title{display:flex;flex-direction:column;gap:5px;padding:22px 24px 18px!important;color:#0f172a;background:linear-gradient(135deg,#fff,#f1f5f9)}.leave-detail-modal-title>span{font-size:22px;font-weight:800;line-height:1.25;letter-spacing:-.025em}.leave-detail-modal-title>small{font-size:13px;font-weight:500;line-height:1.45;color:#64748b}.leave-detail-modal-content{padding:20px 24px 22px!important;background:#f8fafc;border-color:#e2e8f0!important}.leave-detail-dialog{display:grid;gap:16px}.leave-detail-section{position:relative;border:1px solid #e2e8f0;border-radius:16px;padding:18px;background:#fff;box-shadow:0 5px 18px #0f172a0b}.leave-detail-section h3{display:flex;align-items:center;gap:9px;margin:0 0 14px;font-size:15px;font-weight:800;line-height:1.35;color:#0f172a}.leave-detail-section h3:before{content:"";width:4px;height:18px;flex:0 0 4px;border-radius:999px;background:#2563eb}.leave-detail-grid,.leave-balance-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.leave-detail-grid>div,.leave-balance-summary>div{min-width:0;display:grid;align-content:start;gap:6px;padding:13px 14px;border:1px solid #e8edf4;border-radius:12px;background:#f8fafc;transition:border-color .2s ease,box-shadow .2s ease}.leave-detail-grid>div:hover,.leave-balance-summary>div:hover{border-color:#cbd5e1;box-shadow:0 3px 10px #0f172a0a}.leave-detail-grid span,.leave-balance-summary span{font-size:11px;font-weight:700;line-height:1.35;letter-spacing:.025em;text-transform:uppercase;color:#64748b}.leave-detail-grid strong,.leave-balance-summary strong{min-width:0;font-size:14px;font-weight:700;line-height:1.45;color:#0f172a;overflow-wrap:anywhere}.leave-balance-summary>div{background:#f8fafc}.leave-balance-summary>div:nth-child(1){border-color:#bfdbfe;background:#eff6ff}.leave-balance-summary>div:nth-child(2){border-color:#fed7aa;background:#fff7ed}.leave-balance-summary>div:nth-child(3){border-color:#bbf7d0;background:#f0fdf4}.leave-balance-summary>div:nth-child(3) strong{color:#047857;font-size:16px}.leave-detail-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:96px;padding:18px;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;background:#f8fafc}.leave-detail-modal-actions{display:flex;gap:10px;padding:16px 24px 20px!important;border-top:1px solid #e2e8f0;background:#fff}.leave-detail-modal-actions .MuiButton-root{min-height:42px;min-width:104px;border-radius:10px;padding-inline:18px;text-transform:none;font-size:14px;font-weight:700;box-shadow:none}.leave-detail-modal-actions .MuiButton-contained:hover{box-shadow:0 7px 18px #2563eb2e}@media (max-width: 680px){.leave-detail-modal-paper{width:calc(100% - 16px)!important;max-width:none!important;max-height:calc(100% - 16px)!important;margin:8px!important;border-radius:16px!important}.leave-detail-modal-title{padding:18px 16px 14px!important}.leave-detail-modal-title>span{font-size:19px}.leave-detail-modal-title>small{font-size:12px}.leave-detail-modal-content{padding:14px 12px 16px!important}.leave-detail-dialog{gap:12px}.leave-detail-section{padding:14px;border-radius:13px}.leave-detail-section h3{margin-bottom:11px;font-size:14px}.leave-detail-grid,.leave-balance-summary{grid-template-columns:1fr;gap:9px}.leave-detail-grid>div,.leave-balance-summary>div{padding:11px 12px}.leave-detail-grid strong,.leave-balance-summary strong{font-size:13px}.leave-balance-summary>div:nth-child(3) strong{font-size:15px}.leave-detail-modal-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px!important}.leave-detail-modal-actions .MuiButton-root{width:100%;min-width:0;min-height:44px;margin:0!important}.leave-detail-modal-actions .MuiButton-root:first-child{grid-column:1 / -1;order:3}}@media (max-width: 390px){.leave-detail-modal-actions{grid-template-columns:1fr}.leave-detail-modal-actions .MuiButton-root:first-child{grid-column:auto}}@media (min-width: 681px){.leave-admin-page{max-width:1360px;padding:30px 28px 44px}.leave-admin-tabs-wrap{border:1px solid rgba(15,23,42,.08);border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 5px 18px #0f172a0b;margin-bottom:12px}.leave-admin-table-card{border-radius:16px;box-shadow:0 8px 26px #0f172a0f}.leave-admin-table-card .MuiTableCell-root{padding:13px 12px;vertical-align:middle;border-bottom-color:#e8edf3}.leave-admin-table-card .MuiTableRow-root:last-child .MuiTableCell-root{border-bottom:0}.leave-admin-table-card .MuiTableBody-root .MuiTableRow-root{transition:background-color .18s ease}.leave-admin-table-card .MuiTableBody-root .MuiTableRow-root:hover{background:#f8fbff}.leave-admin-action-head,.leave-admin-action-cell{position:sticky;right:0;z-index:2;width:152px;min-width:152px;max-width:152px;background:#fff;border-left:1px solid #e8edf3}.leave-admin-action-head{z-index:4;background:#f1f5f9!important}.leave-admin-actions{display:flex;justify-content:center;flex-wrap:nowrap;width:100%}.leave-admin-detail-button.MuiButton-root{width:128px;min-width:128px;min-height:38px;padding:7px 12px;border-radius:10px;white-space:nowrap;text-transform:none;font-size:12.5px;font-weight:700;line-height:1;box-shadow:0 4px 12px #2563eb29}.leave-admin-detail-button.MuiButton-outlined{box-shadow:none;background:#fff}.leave-admin-detail-button .MuiButton-startIcon{margin-left:0;margin-right:6px}}@media (max-width: 680px){.leave-admin-detail-button.MuiButton-root{border-radius:10px;min-height:44px;text-transform:none;font-weight:700}}.leave-balance-admin-page{padding:24px 20px 40px;max-width:1100px;margin:0 auto;box-sizing:border-box}.leave-balance-admin-header{margin-bottom:20px}.leave-balance-admin-header h1{margin:0 0 6px;font-size:clamp(1.35rem,2.2vw,1.75rem);font-weight:800;letter-spacing:-.03em;color:#0f172a}.leave-balance-admin-subtitle{margin:0 0 8px;font-size:13px;line-height:1.45;color:#64748b;max-width:52ch}.leave-balance-admin-back{font-size:13px;font-weight:600;color:#2563eb;text-decoration:none}.leave-balance-admin-back:hover{text-decoration:underline}.leave-balance-admin-card{border:1px solid rgba(15,23,42,.1);border-radius:14px;background:#fff;box-shadow:0 1px 2px #0f172a0d;margin-bottom:16px;overflow:hidden}.leave-balance-admin-card__head{padding:14px 18px;border-bottom:1px solid rgba(15,23,42,.08);background:#f8fafc}.leave-balance-admin-card__head h2{margin:0;font-size:.95rem;font-weight:700;color:#0f172a}.leave-balance-admin-card__head--stack{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:14px}.leave-balance-admin-card__hint{margin:4px 0 0;font-size:12px;color:#64748b;line-height:1.4}.leave-balance-admin-stats{display:flex;flex-wrap:wrap;gap:10px}.leave-balance-admin-stat{min-width:72px;padding:8px 12px;border-radius:10px;background:#f1f5f9;border:1px solid rgba(15,23,42,.08);text-align:center}.leave-balance-admin-stat--ok{background:#ecfdf5;border-color:#10b98133}.leave-balance-admin-stat--pending{background:#fffbeb;border-color:#f59e0b40}.leave-balance-admin-stat__value{display:block;font-size:1.15rem;font-weight:800;color:#0f172a;line-height:1.1}.leave-balance-admin-stat--ok .leave-balance-admin-stat__value{color:#047857}.leave-balance-admin-stat--pending .leave-balance-admin-stat__value{color:#b45309}.leave-balance-admin-stat__label{display:block;margin-top:2px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.leave-balance-admin-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:0 12px;border-bottom:1px solid rgba(15,23,42,.08);background:#fff}.leave-balance-admin-tabs{min-height:42px}.leave-balance-admin-tab{min-height:42px!important;text-transform:none!important;font-weight:600!important;font-size:13px!important}.leave-balance-admin-search{min-width:220px;margin:6px 6px 6px 0}.leave-balance-admin-option{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}.leave-balance-admin-option__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leave-balance-admin-option__chip{flex-shrink:0}.leave-balance-admin-emp-name{font-weight:600;color:#0f172a}.leave-balance-admin-emp-email{font-size:11px;color:#64748b;margin-top:2px}.leave-balance-admin-row--pending{background:#fffbeb73}.leave-balance-admin-row--granted{background:transparent}.leave-balance-admin-form{padding:18px;display:flex;flex-direction:column;gap:14px}.leave-balance-admin-field--year{max-width:120px}.leave-balance-admin-loading{display:flex;justify-content:center;padding:4px 0}.leave-balance-admin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end}.leave-balance-admin-remain{padding:10px 12px;border-radius:10px;background:#eff6ff;border:1px solid rgba(37,99,235,.15);text-align:center}.leave-balance-admin-remain__label{display:block;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin-bottom:4px}.leave-balance-admin-remain__value{font-size:1.25rem;font-weight:800;color:#1d4ed8}.leave-balance-admin-save{align-self:flex-start;text-transform:none!important;font-weight:700!important;border-radius:10px!important}.leave-balance-admin-card--table .MuiTableCell-head{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f8fafc!important}.leave-balance-admin-card--table td.num,.leave-balance-admin-card--table th.num{text-align:right;font-variant-numeric:tabular-nums}@media (max-width: 640px){.leave-balance-admin-page{padding:12px 10px 28px}.leave-balance-admin-form{padding:14px 12px;gap:12px}.leave-balance-admin-metrics{grid-template-columns:1fr 1fr}.leave-balance-admin-remain{grid-column:1 / -1;display:flex;align-items:center;justify-content:space-between;text-align:left;padding:10px 14px}.leave-balance-admin-remain__label{margin-bottom:0}.leave-balance-admin-save{width:100%}.leave-balance-admin-toolbar{flex-direction:column;align-items:stretch;padding:0 8px}.leave-balance-admin-search{width:100%;min-width:0;margin:0 0 8px}.leave-balance-admin-card--table{overflow-x:auto}}.leave-balance-admin-footnote{margin:0;padding:10px 18px 14px;font-size:12px;color:#64748b;border-top:1px solid rgba(15,23,42,.06)}.change-password-page{width:100%;max-width:480px;margin:0 auto}.change-password-paper{padding:24px!important;border-radius:var(--app-radius-lg)!important;border:1px solid var(--app-border-soft);box-shadow:var(--app-shadow-card)}.change-password-rules{margin:0 0 16px;line-height:1.5;font-size:13px}.change-password-form{display:flex;flex-direction:column;gap:16px}.change-password-form .MuiFormHelperText-root{margin-left:0;line-height:1.45}.change-password-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;margin-top:8px}.change-password-actions .MuiButton-root{text-transform:none;font-weight:600}.change-password-form .MuiInputAdornment-root{opacity:1;visibility:visible;pointer-events:auto}.change-password-toggle-btn{opacity:1!important;visibility:visible!important}.products-col-image{width:72px}.products-col-unit{width:88px}.products-col-price{width:128px}.products-thumb{width:44px;height:44px;border-radius:8px;border:1px solid var(--app-border);background:#fff;display:flex;align-items:center;justify-content:center;color:#cbd5e1;overflow:hidden;flex-shrink:0}.products-thumb img{width:100%;height:100%;object-fit:cover}.products-cell-price{font-weight:700;font-size:14px;color:#059669;font-variant-numeric:tabular-nums}.products-desc{font-size:12px;color:var(--app-text-muted);margin-top:3px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.products-mobile-card-top{display:flex;gap:12px;align-items:flex-start}.products-mobile-body{flex:1;min-width:0}.products-mobile-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}.product-form-page{width:100%;max-width:920px}.product-form-paper{border-radius:var(--app-radius-lg);box-shadow:0 4px 20px #0f172a12;border:1px solid var(--app-border-soft);border-top:3px solid var(--app-primary);overflow:hidden}.product-form-paper .product-form-card-header{padding:14px 20px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:14px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap;word-break:break-word}.product-form-body{padding:24px}.product-form-grid{display:grid;gap:16px}.product-form-grid--2{grid-template-columns:1fr}.product-form-section{margin-top:20px}.product-form-section-title{font-size:13px;font-weight:700;color:var(--app-text-muted);margin-bottom:10px;text-transform:uppercase;letter-spacing:.04em}.product-form-body .MuiOutlinedInput-root{border-radius:var(--app-radius)}.product-form-body .MuiOutlinedInput-root.Mui-focused{box-shadow:0 0 0 3px #2f90df1a}.product-form-image-block{padding:16px;border-radius:var(--app-radius);border:1px dashed var(--app-border-input);background:var(--app-surface-muted)}.product-form-image-block .MuiButton-outlined{text-transform:none;font-weight:600}.product-form-preview{width:100%;max-width:160px;aspect-ratio:1;border-radius:var(--app-radius);border:1px solid var(--app-border);background:#fff;overflow:hidden;margin-top:12px;box-shadow:var(--app-shadow-card)}.product-form-preview img{width:100%;height:100%;object-fit:cover}.product-form-checkbox{margin-top:8px;padding:12px 14px;border-radius:var(--app-radius);background:var(--app-surface-muted);border:1px solid var(--app-border)}.product-form-paper .product-form-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-top:28px;padding-top:20px;border-top:1px solid var(--app-border)}@media (min-width: 640px){.product-form-grid--2{grid-template-columns:1fr minmax(180px,220px);align-items:start}}@media (max-width: 599px){.product-form-page.MuiContainer-root{padding-left:12px!important;padding-right:12px!important;padding-top:16px!important}.product-form-body{padding:16px}.product-form-paper .product-form-card-header{padding:12px 16px;font-size:13px}.product-form-paper .product-form-actions{flex-direction:column-reverse;align-items:stretch}.product-form-paper .product-form-actions .MuiButton-root{width:100%;justify-content:center}.product-form-preview{max-width:100%}}.product-detail-main-row{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.product-detail-main-row .dept-detail-grid{flex:1;min-width:min(100%,280px)}.product-detail-actions-top{flex-wrap:wrap}.product-detail-page{width:100%;max-width:1040px}.product-detail-paper{border-radius:var(--app-radius-lg);box-shadow:0 4px 20px #0f172a12;border:1px solid var(--app-border-soft);border-top:3px solid var(--app-primary);overflow:hidden}.product-detail-paper .product-detail-card-header{padding:14px 20px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:15px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap;word-break:break-word}.product-detail-body{padding:24px}.product-detail-main{display:grid;gap:24px}.product-detail-image-wrap{display:flex;justify-content:center}.product-detail-image{width:100%;max-width:180px;aspect-ratio:1;border-radius:var(--app-radius-lg);border:1px solid var(--app-border);background:linear-gradient(145deg,#f8fafc,#eef2f7);display:flex;align-items:center;justify-content:center;color:var(--app-text-subtle);overflow:hidden;box-shadow:var(--app-shadow-card)}.product-detail-image img{width:100%;height:100%;object-fit:cover}.product-detail-info-panel{min-width:0}.product-detail-info-title{font-size:13px;font-weight:700;color:var(--app-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--app-border)}.product-detail-dl{display:grid;gap:0;margin:0}.product-detail-row{display:grid;grid-template-columns:minmax(120px,150px) 1fr;gap:12px;font-size:14px;padding:12px 0;border-bottom:1px solid #f1f5f9;align-items:start}.product-detail-row:last-child{border-bottom:none}.product-detail-row dt{color:var(--app-text-muted);font-weight:600;font-size:13px}.product-detail-row dd{margin:0;color:var(--app-text-heading);font-weight:600;word-break:break-word}.product-detail-price{color:#059669;font-size:15px;font-variant-numeric:tabular-nums}.product-detail-unit-badge{composes:none}.product-detail-stats{margin-top:28px;padding-top:24px;border-top:1px solid var(--app-border)}.product-detail-stats-title{font-size:14px;font-weight:700;color:var(--app-text-heading);margin-bottom:16px}.product-detail-stats-note{margin-top:12px;display:block;font-size:12px;color:var(--app-text-subtle);font-style:italic}.product-detail-stats-grid{display:grid;gap:14px;grid-template-columns:1fr}.product-detail-stat-box{padding:18px 16px;border-radius:var(--app-radius-lg);border:1px solid var(--app-border);background:#fff;transition:box-shadow .2s ease,transform .2s ease}.product-detail-stat-box:hover{box-shadow:0 6px 16px #0f172a0f;transform:translateY(-1px)}.product-detail-stat-box h4{margin:0 0 10px;font-size:12px;font-weight:700;color:var(--app-text-muted);text-transform:uppercase;letter-spacing:.03em}.product-detail-stat-box .stat-value{font-size:clamp(1.5rem,4vw,1.75rem);font-weight:800;line-height:1.1;font-variant-numeric:tabular-nums}.product-detail-stat-box--company{border-left:4px solid var(--app-primary);background:linear-gradient(135deg,#eff6ff,#fff 60%)}.product-detail-stat-box--company .stat-value{color:var(--app-primary)}.product-detail-stat-box--agent{border-left:4px solid #10b981;background:linear-gradient(135deg,#ecfdf5,#fff 60%)}.product-detail-stat-box--agent .stat-value{color:#059669}.product-detail-stat-box--revenue{border-left:4px solid #8b5cf6;background:linear-gradient(135deg,#f5f3ff,#fff 60%)}.product-detail-stat-box--revenue .stat-value{color:#6d28d9}.product-detail-stat-meta{margin-top:10px;font-size:12px;color:var(--app-text-muted);line-height:1.55}.product-detail-paper .product-detail-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:24px;padding-top:20px;border-top:1px solid var(--app-border)}@media (min-width: 640px){.product-detail-main{grid-template-columns:200px 1fr;align-items:start;gap:28px}.product-detail-image-wrap{justify-content:flex-start}.product-detail-stats-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 900px){.product-detail-image{max-width:200px}}@media (max-width: 639px){.product-detail-page.MuiContainer-root{padding-left:12px!important;padding-right:12px!important;padding-top:16px!important}.product-detail-body{padding:16px}.product-detail-paper .product-detail-card-header{padding:12px 16px;font-size:14px}.product-detail-row{grid-template-columns:1fr;gap:4px;padding:10px 0}.product-detail-row dt{font-size:12px}.product-detail-paper .product-detail-actions{flex-direction:column-reverse;align-items:stretch}.product-detail-paper .product-detail-actions .MuiButton-root{width:100%;justify-content:center}}.areas-name-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;color:var(--app-primary-dark);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border)}.areas-count-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;background:#f1f5f9;border:1px solid var(--app-border)}.areas-count-badge strong{color:var(--app-text-heading)}.areas-manager{font-size:13px;font-weight:600;color:var(--app-text-body)}.areas-desc{font-size:13px;color:var(--app-text-muted);line-height:1.4}.areas-col-agents{width:100px}.dept-page{width:100%;max-width:none}.dept-paper.MuiPaper-root{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden;padding:0!important}.dept-page-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;background:linear-gradient(135deg,#fff,#f8fafc 55%,#eff6ff);border-bottom:1px solid var(--app-border-soft)}.dept-title{color:var(--app-text-heading)!important;font-weight:700!important;font-size:1.2rem!important;letter-spacing:-.025em}.dept-subtitle{margin-top:4px!important;max-width:520px;font-size:13px!important}.dept-btn-add.MuiButton-contained{background:var(--app-nav-active-gradient);box-shadow:0 4px 12px #2f90df4d;text-transform:none;font-weight:600;border-radius:var(--app-radius);min-height:40px}.dept-body{padding:20px 24px 24px}.dept-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 16px;margin-bottom:16px}.dept-toolbar__left{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dept-section-label{font-size:15px;font-weight:700;color:var(--app-text-heading)}.dept-count{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;color:var(--app-primary-dark);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border)}.dept-search-row{display:flex;gap:8px;flex:1;min-width:min(100%,320px);max-width:480px}.dept-search{flex:1}.dept-search .MuiOutlinedInput-root{border-radius:var(--app-radius);background:#fff}.dept-btn-search.MuiButton-contained{text-transform:none;font-weight:600;border-radius:var(--app-radius);min-height:40px;background:var(--app-nav-active-gradient)}.dept-table-container{border:1px solid var(--app-border);border-radius:12px;overflow:hidden;width:100%}.dept-table{width:100%;table-layout:fixed}.dept-table th{background:#f8fafc;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--app-text-muted);padding:12px 14px}.dept-table td{padding:12px 14px;font-size:14px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.dept-col-id{width:120px}.dept-col-name{width:22%}.dept-col-desc{width:auto}.dept-col-users{width:100px;text-align:center}.dept-col-actions{width:132px}.dept-table tbody tr:nth-child(2n){background:#fafbfc}.dept-table tbody tr:hover{background:#f0f7ff!important}.dept-actions{display:inline-flex;gap:4px;padding:4px;border-radius:10px;background:#f8fafc;border:1px solid #e8edf4}.dept-action-btn.MuiIconButton-root{border-radius:7px;width:34px;height:34px}.dept-action-btn--view{color:var(--app-primary)!important}.dept-action-btn--edit{color:#c2410c!important}.dept-action-btn--inactive{color:#b45309!important}.dept-action-btn--activate{color:#15803d!important}.dept-action-btn--assign{color:#7c3aed!important}.dept-status-filter.MuiToggleButtonGroup-root{flex-shrink:0}.dept-status-filter .MuiToggleButton-root{text-transform:none;font-size:12px;font-weight:600;padding:4px 10px}.dept-mobile-list{display:none}.dept-empty-card{padding:40px 24px!important;text-align:center;border-style:dashed!important;background:var(--app-surface-muted)!important}.dept-pagination{margin-top:16px;padding-top:14px;border-top:1px solid var(--app-border);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.dept-pagination-text{font-size:13px;color:var(--app-text-muted)}.dept-page-btn{height:34px;min-width:34px;padding:0 12px;border:1px solid var(--app-border-input);border-radius:var(--app-radius);background:#fff;font-size:13px;font-weight:600;cursor:pointer}.dept-page-btn.is-active{background:var(--app-primary);border-color:var(--app-primary);color:#fff}.dept-page-btn:disabled{opacity:.45;cursor:not-allowed}.dept-mobile-card{border-radius:12px!important;border:1px solid var(--app-border)!important}.dept-mobile-card-inner{padding:14px}.dept-mobile-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px}.dept-mobile-meta{display:grid;gap:6px;font-size:13px;margin-bottom:12px}@media (max-width: 900px){.dept-page-header{flex-direction:column;align-items:stretch}.dept-btn-add{width:100%}.dept-toolbar{flex-direction:column;align-items:stretch}.dept-search-row{max-width:none}}@media (max-width: 680px){.dept-table-container{display:none}.dept-mobile-list{display:grid;gap:10px}.dept-body{padding:16px}}.agencies-area-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;color:var(--app-primary-dark);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border)}.agencies-area-badge--alt{background:#ecfdf5;color:#047857;border-color:#a7f3d0}.agencies-order-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;background:#f1f5f9;border:1px solid var(--app-border)}.agencies-order-badge strong{color:var(--app-text-heading)}.agencies-phone{font-variant-numeric:tabular-nums;font-weight:600}.agencies-manager-badge{display:inline-block;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;color:var(--app-text-body)}.agencies-address{font-size:13px;color:var(--app-text-muted);line-height:1.4}.agencies-col-area{width:88px}.agencies-col-phone{width:120px}.agencies-col-orders{width:100px}.agencies-col-manager{width:140px}.co-list-page{width:100%;max-width:none}.co-list-paper.MuiPaper-root{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden;padding:0!important}.co-list-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;padding:22px 24px;background:linear-gradient(135deg,#fff,#f8fafc 55%,#eff6ff);border-bottom:1px solid var(--app-border-soft)}.co-list-title{font-weight:700!important;font-size:1.2rem!important;color:var(--app-text-heading)!important}.co-btn-add.MuiButton-contained{background:var(--app-nav-active-gradient);text-transform:none;font-weight:600;min-height:40px;box-shadow:0 4px 12px #2f90df4d}.co-list-body{padding:20px 24px 24px}.co-filters{padding:16px;border-radius:var(--app-radius-lg);border:1px solid var(--app-border);background:var(--app-surface-muted);margin-bottom:16px}.co-filters__title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--app-text-heading);margin-bottom:14px}.co-filters__grid{display:grid;gap:12px;grid-template-columns:1fr auto auto auto auto;align-items:end}.co-filters__search{grid-column:1 / -1}@media (min-width: 900px){.co-filters__search{grid-column:span 2}.co-filters__grid{grid-template-columns:2fr 140px 140px 160px auto}}.co-table-wrap{border:1px solid var(--app-border);border-radius:12px;overflow-x:auto;width:100%}.co-table{width:100%;table-layout:fixed;min-width:1000px}.co-table th{background:#f8fafc;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--app-text-muted);padding:12px;border-bottom:1px solid var(--app-border)}.co-table td{padding:12px;font-size:14px;border-bottom:1px solid #f1f5f9;vertical-align:middle}.co-table tbody tr:nth-child(2n){background:#fafbfc}.co-table tbody tr:hover{background:#f0f7ff!important}.co-col-code{width:150px}.co-col-agency{width:18%}.co-col-contact{width:20%}.co-col-date{width:100px}.co-col-status,.co-col-total{width:120px}.co-col-debt{width:90px}.co-col-actions{width:140px}.co-actions{display:inline-flex;gap:4px;padding:4px;border-radius:10px;background:#f8fafc;border:1px solid #e8edf4}.co-action-btn.MuiIconButton-root{width:34px;height:34px;border-radius:7px;border:none}.co-action-btn--view{color:var(--app-primary)!important}.co-action-btn--edit{color:#c2410c!important}.co-action-btn--delete{color:var(--app-danger)!important}.co-pagination{margin-top:16px;padding-top:14px;border-top:1px solid var(--app-border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px}.co-page-btn{height:34px;min-width:34px;padding:0 12px;border:1px solid var(--app-border-input);border-radius:var(--app-radius);background:#fff;font-weight:600;font-size:13px;cursor:pointer}.co-page-btn.is-active{background:var(--app-primary);color:#fff;border-color:var(--app-primary)}.co-mobile-list{display:none}@media (max-width: 680px){.co-table-wrap{display:none}.co-mobile-list{display:grid;gap:10px}.co-filters__grid{grid-template-columns:1fr}.co-list-body{padding:16px}}.co-form-page{width:100%;max-width:960px}.co-form-paper{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden}.co-form-paper .co-form-card-header{padding:14px 20px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:14px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.co-form-body{padding:24px}.co-form-grid-2{display:grid;gap:16px;grid-template-columns:1fr 1fr}.co-form-paper .co-form-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:24px;padding-top:20px;border-top:1px solid var(--app-border)}@media (max-width: 640px){.co-form-grid-2{grid-template-columns:1fr}.co-form-body{padding:16px}.co-form-paper .co-form-actions{flex-direction:column-reverse;align-items:stretch}.co-form-paper .co-form-actions .MuiButton-root{width:100%}}.areas-page-heading{margin-bottom:20px!important;color:var(--app-text-heading)!important;font-weight:700!important;letter-spacing:-.02em}.areas-name-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:13px;font-weight:700;color:var(--app-primary-dark);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border);letter-spacing:.02em}.areas-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;font-size:13px;font-weight:700;color:#fff;background:linear-gradient(180deg,#43a0ea,#2f90df);box-shadow:0 2px 6px #2f90df59}.areas-id{font-size:13px;font-weight:600;color:var(--app-text-muted);font-variant-numeric:tabular-nums}.areas-desc{font-size:13px;color:var(--app-text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.areas-manager{font-weight:600;color:var(--app-text-body)}.agencies-page-heading{margin-bottom:20px!important;color:var(--app-text-heading)!important;font-weight:700!important;letter-spacing:-.02em}.agencies-name{font-weight:700;font-size:14px;color:var(--app-text-heading);line-height:1.35}.agencies-address{font-size:13px;color:var(--app-text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.agencies-area-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:6px;font-size:12px;font-weight:700;letter-spacing:.03em;background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.agencies-area-badge--alt{background:var(--app-primary-soft);color:var(--app-primary-dark);border-color:var(--app-primary-soft-border)}.agencies-order-badge{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;padding:4px 10px;border-radius:999px;background:linear-gradient(180deg,#43a0ea,#2f90df);color:#fff;box-shadow:0 2px 6px #2f90df4d}.agencies-order-badge strong{font-size:15px;line-height:1.1}.agencies-order-badge span{font-size:10px;font-weight:600;opacity:.9;margin-top:1px}.agencies-manager-badge{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;color:var(--app-primary-dark);background:#e0f2fe;border:1px solid #bae6fd;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.agencies-phone{font-variant-numeric:tabular-nums;font-weight:500;color:var(--app-text-body)}.agencies-type-badge{display:inline-flex;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.co-page-heading{margin-bottom:20px!important;color:var(--app-text-heading)!important;font-weight:700!important;letter-spacing:-.02em}.co-order-code{font-weight:700;font-size:13px;color:var(--app-text-heading);font-family:ui-monospace,monospace}.co-agency-name{font-weight:700;font-size:13px;color:var(--app-text-heading);line-height:1.35}.co-contact-line{display:flex;align-items:flex-start;gap:6px;font-size:12px;color:var(--app-text-muted);margin-top:4px;line-height:1.4}.co-contact-line .MuiSvgIcon-root{font-size:15px;margin-top:1px;flex-shrink:0}.co-contact-line--phone .MuiSvgIcon-root{color:#059669}.co-contact-line--addr .MuiSvgIcon-root{color:var(--app-primary)}.co-money{font-weight:700;color:#059669;font-variant-numeric:tabular-nums;white-space:nowrap}.co-money--muted{color:var(--app-text-subtle);font-weight:500}.co-status{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600}.co-status--debt{background:#fef9c3;color:#a16207;border:1px solid #fde047}.co-status--paid{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.co-status--pending{background:var(--app-primary-soft);color:var(--app-primary-dark);border:1px solid var(--app-primary-soft-border)}.co-status--cancelled{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.co-debt-hint{font-size:11px;color:#dc2626;margin-top:2px}.co-agency-preview{margin-top:12px;padding:14px 16px;border-radius:var(--app-radius);background:var(--app-surface-muted);border:1px solid var(--app-border)}.co-agency-preview__title{font-size:12px;font-weight:700;color:var(--app-primary);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px}.co-agency-preview dl{display:grid;gap:6px;margin:0;font-size:13px}.co-agency-preview dt{color:var(--app-text-muted);font-weight:600}.co-agency-preview dd{margin:0;color:var(--app-text-body)}.co-section-card{margin-top:20px;padding:18px;border:1px solid var(--app-border);border-radius:var(--app-radius-lg);background:#fff}.co-section-card__title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:var(--app-primary-dark);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--app-border-soft)}.co-line-row{display:grid;gap:12px;grid-template-columns:1fr 100px 120px 44px;align-items:start;margin-bottom:12px}.co-line-row .co-line-total .MuiInputBase-root{background:var(--app-surface-muted)}.co-add-line{text-transform:none!important;font-weight:600!important;color:var(--app-primary)!important}.co-summary-boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}.co-summary-box{padding:14px;border-radius:var(--app-radius);border:1px solid var(--app-border);background:var(--app-surface-muted);text-align:center}.co-summary-box span{display:block;font-size:12px;color:var(--app-text-muted);margin-bottom:6px}.co-summary-box strong{font-size:1.25rem;font-weight:800}.co-summary-box--qty strong{color:#059669}.co-summary-box--items strong{color:#dc2626}.co-summary-box--total strong{color:#059669}@media (max-width: 768px){.co-line-row,.co-summary-boxes{grid-template-columns:1fr}}.co-detail-page{width:100%;max-width:1100px}.co-detail-paper{border-radius:var(--app-radius-lg);box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;border:1px solid var(--app-border-soft);overflow:hidden}.co-detail-paper .co-detail-card-header{padding:14px 20px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:14px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap}.co-detail-body{padding:24px}.co-detail-grid{display:grid;gap:24px;grid-template-columns:1fr}@media (min-width: 900px){.co-detail-grid{grid-template-columns:1fr 1fr}}.co-detail-section-title{font-size:13px;font-weight:700;color:var(--app-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:14px;padding-bottom:8px;border-bottom:1px solid var(--app-border)}.co-detail-row{display:grid;grid-template-columns:130px 1fr;gap:10px;padding:10px 0;border-bottom:1px solid #f1f5f9;font-size:14px}.co-detail-row:last-child{border-bottom:none}.co-detail-row dt{color:var(--app-text-muted);font-weight:600;font-size:13px}.co-detail-row dd{margin:0;font-weight:600;color:var(--app-text-heading)}.co-items-table{margin-top:24px;border:1px solid var(--app-border);border-radius:12px;overflow:hidden}.co-items-table table{width:100%;border-collapse:collapse}.co-items-table th{background:#f8fafc;font-size:12px;font-weight:700;text-transform:uppercase;color:var(--app-text-muted);padding:10px 12px;text-align:left;border-bottom:1px solid var(--app-border)}.co-items-table td{padding:11px 12px;border-bottom:1px solid #f1f5f9;font-size:14px}.co-items-table tr:last-child td{border-bottom:none}.co-qty-badge{display:inline-flex;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.co-detail-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:24px;padding-top:20px;border-top:1px solid var(--app-border)}.co-detail-actions__links{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.co-detail-link-btn{text-transform:none!important;font-weight:600!important}@media (max-width: 639px){.co-detail-row{grid-template-columns:1fr;gap:4px}.co-detail-actions{flex-direction:column-reverse;align-items:stretch}.co-detail-actions .MuiButton-root{width:100%}}.jd-list .dept-col-id{width:64px;text-align:center;white-space:nowrap}.jd-list .dept-col-name{width:auto;min-width:160px}.jd-list .jd-col-file{width:22%;min-width:160px}.jd-list .jd-col-size{width:96px;white-space:nowrap}.jd-list .jd-col-users{width:80px;text-align:center;white-space:nowrap}.jd-list .jd-col-date{width:104px;white-space:nowrap}.jd-list .dept-col-actions{width:210px;text-align:center}.jd-list .jd-cell-name{max-width:0;overflow:hidden}.jd-list .jd-cell-name .dept-name-badge{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.jd-list .jd-cell-file{max-width:0;overflow:hidden}.jd-list .jd-cell-file .dept-desc{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.jd-list .dept-actions{gap:2px;padding:3px;flex-wrap:nowrap}.jd-list .dept-action-btn.MuiIconButton-root{width:32px;height:32px}.jd-list .dept-table td,.jd-list .dept-table th{padding:10px 12px}.products-page-heading{margin-bottom:20px!important;color:var(--app-text-heading)!important;font-weight:700!important;letter-spacing:-.02em}.products-card{border-radius:var(--app-radius-lg)!important;box-shadow:var(--app-shadow-card)!important;border:1px solid var(--app-border-soft);border-top:3px solid var(--app-primary);overflow:hidden}.products-card-header{padding:14px 20px;background:linear-gradient(135deg,var(--app-primary-soft) 0%,#f8fafc 100%);border-bottom:1px solid var(--app-primary-soft-border);font-size:14px;font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:10px;flex-wrap:wrap;word-break:break-word}.products-card-header .MuiSvgIcon-root{flex-shrink:0;opacity:.9}.products-card-body{padding:24px}.products-unit-badge{display:inline-flex;align-items:center;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:600;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;line-height:1.2}.products-status{display:inline-flex;align-items:center;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.2}.products-status--active{background:#dcfce7;color:#166534;border:1px solid #86efac}.products-status--inactive{background:#f1f5f9;color:#64748b;border:1px solid #e2e8f0}.products-price{font-weight:700;color:#059669;white-space:nowrap;font-variant-numeric:tabular-nums}.products-footer-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;align-items:center;margin-top:24px;padding-top:20px;border-top:1px solid var(--app-border)}.products-btn-back.MuiButton-root{text-transform:none!important;font-weight:600!important;border-radius:var(--app-radius)!important;min-height:42px;color:var(--app-text-body)!important;border-color:var(--app-border-input)!important}.products-btn-back.MuiButton-root:hover{border-color:var(--app-primary-hover-border)!important;background:var(--app-surface-muted)!important}.products-btn-primary.MuiButton-contained{background:var(--app-nav-active-gradient)!important;text-transform:none!important;font-weight:600!important;border-radius:var(--app-radius)!important;min-height:42px;box-shadow:0 6px 14px #2f90df52!important}.products-btn-primary.MuiButton-contained:hover{background:linear-gradient(180deg,#3b97e0,#2886d6)!important}@media (max-width: 599px){.products-card-body{padding:16px}.products-card-header{padding:12px 16px;font-size:13px}.products-footer-actions{flex-direction:column-reverse;align-items:stretch}.products-footer-actions .MuiButton-root{width:100%;justify-content:center}}.dept-name-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:999px;font-size:13px;font-weight:700;color:var(--app-primary-dark);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border)}.dept-user-count{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;font-size:13px;font-weight:700;color:#fff;background:var(--app-nav-active-gradient);box-shadow:0 2px 6px #2f90df59}.dept-id{font-size:12px;font-weight:600;color:var(--app-text-muted);font-variant-numeric:tabular-nums;word-break:break-all}.dept-desc{font-size:13px;color:var(--app-text-muted);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dept-detail-grid{display:grid;gap:16px;grid-template-columns:1fr}@media (min-width: 640px){.dept-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dept-detail-grid__full{grid-column:1 / -1}}.dept-detail-item dt{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--app-text-muted);margin-bottom:4px}.dept-detail-item dd{margin:0;font-size:14px;font-weight:600;color:var(--app-text-heading);word-break:break-word}.jd-form-page{width:100%;max-width:960px}.jd-file-zone{border:2px dashed var(--app-border);border-radius:var(--app-radius);padding:24px;text-align:center;background:#f8fafc;cursor:pointer;transition:border-color .15s,background .15s}.jd-file-zone:hover,.jd-file-zone.is-dragover{border-color:var(--app-primary);background:var(--app-primary-soft)}.jd-file-zone input[type=file]{display:none}.jd-file-hint{font-size:13px;color:var(--app-text-muted);margin-top:8px}.jd-file-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}.jd-file-row{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--app-border-soft);border-radius:var(--app-radius);background:#fff}.jd-file-row__icon{color:var(--app-primary);display:flex;align-items:center;justify-content:center}.jd-file-row__meta{display:flex;flex-direction:column;gap:4px;min-width:0}.jd-file-row__filename{font-size:13px;font-weight:600;color:var(--app-text-body);word-break:break-all}.jd-file-row__sub{font-size:12px;color:var(--app-text-muted)}.jd-current-file{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 14px;border-radius:var(--app-radius);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border);font-size:13px}.jd-current-file strong{font-weight:700;color:var(--app-primary-dark);word-break:break-all}.jd-replace-hint{font-size:12px;color:var(--app-text-muted);margin-top:4px}@media (max-width: 599px){.jd-file-row{grid-template-columns:28px 1fr}.jd-file-row__action{grid-column:1 / -1;justify-self:end}}.iw-page{max-width:var(--app-content-max);margin:0 auto;padding:0 var(--app-space-3) var(--app-space-8)}.iw-page-wide{max-width:none;width:100%}.iw-page-header{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--app-space-4);margin-bottom:var(--app-space-6)}.iw-page-header h1{margin:0;font-size:1.35rem;font-weight:700;color:var(--app-text-heading);letter-spacing:-.02em}.iw-page-header p{margin:var(--app-space-2) 0 0;color:var(--app-text-muted);font-size:14px;line-height:1.55;max-width:42rem}.iw-staff-reports-filter-hint{margin:0 0 var(--app-space-4);font-size:13px;line-height:1.5;max-width:48rem}.iw-header-actions{display:flex;flex-wrap:wrap;gap:var(--app-space-3)}.iw-btn{padding:9px 18px;border-radius:var(--app-radius);font-size:14px;font-weight:600;border:none;cursor:pointer;transition:background-color var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease),border-color var(--app-duration) var(--app-ease);min-height:40px}.iw-btn:disabled{opacity:.55;cursor:not-allowed}.iw-btn-primary{background:var(--app-nav-active-gradient);color:#fff;box-shadow:0 2px 8px #2563eb47}.iw-btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #2563eb59}.iw-btn-outline{background:var(--app-surface);color:var(--app-primary);border:1px solid var(--app-border-input)}.iw-btn-outline:hover:not(:disabled){border-color:var(--app-primary-hover-border);background:var(--app-surface-muted)}.iw-btn-ghost{background:transparent;color:var(--app-text-muted);border:1px solid var(--app-border)}.iw-btn-ghost:hover:not(:disabled){background:var(--app-surface-muted);color:var(--app-text-body)}.iw-btn-danger{background:var(--app-danger-soft);color:var(--app-danger);border:1px solid #fecaca}.iw-segment{display:inline-flex;background:var(--app-surface-muted);border:1px solid var(--app-border-soft);border-radius:var(--app-radius);padding:4px;margin-bottom:var(--app-space-5);overflow:hidden}.iw-segment button{border:none;background:transparent;padding:8px 16px;border-radius:calc(var(--app-radius) - 2px);font-size:13px;font-weight:600;color:var(--app-text-muted);cursor:pointer;transition:background var(--app-duration) var(--app-ease),color var(--app-duration) var(--app-ease)}.iw-segment button.active{background:var(--app-nav-active-gradient);color:#fff;box-shadow:var(--app-shadow-sm)}.iw-filter-bar{display:flex;flex-wrap:wrap;gap:var(--app-space-3);align-items:center;background:var(--app-surface);padding:var(--app-space-4) var(--app-space-5);border-radius:var(--app-radius-lg);border:1px solid var(--app-border-soft);box-shadow:var(--app-shadow-card);margin-bottom:var(--app-space-6)}.iw-filter-bar input,.iw-filter-bar select{padding:8px 12px;border:1px solid var(--app-border-input);border-radius:var(--app-radius);font-size:14px;min-width:160px;min-height:40px;height:40px;line-height:1.35;box-sizing:border-box;background:var(--app-surface);color:var(--app-text-body);transition:box-shadow var(--app-duration) var(--app-ease)}.iw-filter-bar input[type=search],.iw-filter-bar__search{flex:1 1 220px;min-width:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.iw-filter-bar input[type=month]{flex:0 1 160px;min-width:0}.iw-filter-bar input:focus,.iw-filter-bar select:focus{outline:none;border-color:var(--app-primary);box-shadow:0 0 0 3px #2563eb1f}.iw-filter-row{display:flex;align-items:center;gap:var(--app-space-3);padding:10px 14px;background:linear-gradient(135deg,#f8fbff,#f1f5f9);border:1px solid #dbe5f2;border-radius:10px;box-shadow:0 1px 3px #2563eb14;flex-wrap:wrap}.iw-filter-row label{font-size:13px;font-weight:600;color:#0f172a;white-space:nowrap;letter-spacing:.02em}.iw-filter-row select{padding:8px 12px;border:1px solid #cbd5e1;border-radius:8px;font-size:13px;font-weight:500;background:#fff;color:#1e293b;cursor:pointer;transition:border-color var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease),background var(--app-duration) var(--app-ease);min-width:180px}.iw-filter-row select:hover{border-color:#2563eb;background:linear-gradient(135deg,#fff,#eff6ff)}.iw-filter-row select:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f,inset 0 1px 2px #0f172a0d;background:#fff}.iw-filter-row select:active{border-color:#1d4ed8}.iw-banner{padding:var(--app-space-3) var(--app-space-4);border-radius:var(--app-radius);font-size:14px;margin-bottom:var(--app-space-4)}.iw-banner-info{background:var(--app-primary-soft);color:var(--app-primary-dark);border:1px solid var(--app-primary-soft-border)}.iw-banner-warn{background:var(--app-warning-bg);color:#92400e;border:1px solid var(--app-warning-border)}.iw-kpi-scope-notice p{margin:6px 0 0;font-size:14px;line-height:1.5}.iw-kpi-scope-notice strong:first-child{display:block;font-size:14px}.iw-kpi-scope-dept{margin-top:8px!important;font-size:13px;color:var(--app-primary-dark)}.iw-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--app-space-5)}.iw-card{background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);padding:var(--app-space-5);box-shadow:var(--app-shadow-card);display:flex;flex-direction:column;gap:var(--app-space-3)}.iw-card-top{display:flex;justify-content:space-between;align-items:center;gap:var(--app-space-2)}.iw-card h3{margin:0;font-size:16px;color:var(--app-text-heading)}.iw-card-meta{font-size:13px;color:var(--app-text-muted)}.iw-kpi-bar{height:8px;background:var(--app-border);border-radius:99px;overflow:hidden}.iw-kpi-bar-fill{height:100%;background:var(--app-nav-active-gradient);border-radius:99px;transition:width .3s var(--app-ease)}.iw-kpi-text{font-size:12px;font-weight:600;color:var(--app-text-body)}.iw-card-actions{display:flex;gap:var(--app-space-2);margin-top:auto;padding-top:var(--app-space-2)}.iw-type-badge{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;border-radius:var(--app-radius-sm);background:var(--app-primary-soft);color:var(--app-primary-dark);border:1px solid var(--app-primary-soft-border)}.iw-overdue{color:var(--app-danger);font-weight:600;font-size:12px}.iw-status-chip{font-size:11px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:normal;line-height:1.25;display:inline-block;max-width:100%;text-align:center}.iw-status-chip--compact{font-size:10px;padding:2px 6px}.iw-status-draft{background:var(--app-surface-subtle);color:var(--app-text-muted)}.iw-status-assigned{background:var(--app-primary-soft);color:var(--app-primary-dark)}.iw-status-progress{background:var(--app-warning-bg);color:var(--app-warning)}.iw-status-reported{background:#ede9fe;color:#6d28d9}.iw-status-approved{background:var(--app-success-soft);color:var(--app-success)}.iw-status-rejected{background:var(--app-danger-soft);color:var(--app-danger)}.iw-status-overdue{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.iw-empty{text-align:center;padding:var(--app-space-8) var(--app-space-5);color:var(--app-text-muted);background:var(--app-surface);border:1px dashed var(--app-border-input);border-radius:var(--app-radius-lg)}.iw-detail-layout{display:grid;grid-template-columns:1fr 320px;gap:var(--app-space-5)}@media (max-width: 900px){.iw-detail-layout{grid-template-columns:1fr}}.iw-kpi-top-bar{border-top:3px solid var(--app-primary)}.iw-kpi-top-bar-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--app-space-5)}@media (max-width: 900px){.iw-kpi-top-bar-grid{grid-template-columns:1fr}}.iw-panel{background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);padding:var(--app-space-5);box-shadow:var(--app-shadow-card)}.iw-panel h2{margin:0 0 var(--app-space-3);font-size:1rem;font-weight:700;color:var(--app-text-heading)}.iw-dl{display:grid;gap:var(--app-space-3);margin:0}.iw-dl dt{font-size:11px;color:var(--app-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.iw-dl dd{margin:2px 0 0;font-size:14px;color:var(--app-text-heading)}.iw-timeline{list-style:none;padding:0;margin:0}.iw-timeline li{position:relative;padding-left:20px;padding-bottom:var(--app-space-4);font-size:13px;color:var(--app-text-body)}.iw-timeline li:before{content:"";position:absolute;left:4px;top:6px;width:8px;height:8px;border-radius:50%;background:var(--app-primary)}.iw-timeline li:not(:last-child):after{content:"";position:absolute;left:7px;top:18px;bottom:0;width:2px;background:var(--app-border)}.iw-muted{color:var(--app-text-muted);font-size:13px}.iw-required{color:var(--app-danger);margin-left:4px}.iw-category-form{display:flex;flex-direction:column;gap:var(--app-space-5)}.iw-category-block{border:1px solid var(--app-border-soft);border-radius:var(--app-radius);padding:var(--app-space-4)}.iw-category-head h4{margin:0 0 4px;font-size:15px;color:var(--app-text-heading)}.iw-input,.iw-category-block textarea{width:100%;padding:10px 12px;border:1px solid var(--app-border-input);border-radius:var(--app-radius);font-size:14px;font-family:inherit;box-sizing:border-box;background:var(--app-surface);color:var(--app-text-body);transition:box-shadow var(--app-duration) var(--app-ease),border-color var(--app-duration) var(--app-ease)}.iw-input:focus,.iw-category-block textarea:focus{outline:none;border-color:var(--app-primary);box-shadow:0 0 0 3px #2563eb1f}.iw-file-drop{display:flex;align-items:center;justify-content:center;min-height:88px;border:2px dashed var(--app-border-input);border-radius:var(--app-radius);background:var(--app-surface-muted);cursor:pointer;text-align:center;padding:var(--app-space-3);font-size:13px;color:var(--app-text-muted)}.iw-file-drop input{display:none}.iw-file-drop.disabled{opacity:.6;cursor:not-allowed}.iw-file-list{list-style:none;padding:0;margin:var(--app-space-3) 0 0}.iw-file-list li{display:flex;align-items:center;gap:var(--app-space-3);padding:var(--app-space-2) 0;border-bottom:1px solid var(--app-border-soft);font-size:13px}.iw-link-btn{margin-left:auto;background:none;border:none;color:var(--app-danger);cursor:pointer;font-size:13px;font-weight:600}.iw-link-btn:hover{text-decoration:underline}.iw-kpi-dashboard{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--app-space-5);margin-bottom:var(--app-space-6)}.iw-kpi-stat{background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);padding:var(--app-space-5);box-shadow:var(--app-shadow-card);border-top:3px solid var(--app-primary)}.iw-kpi-stat strong{display:block;font-size:28px;color:var(--app-text-heading);margin-top:var(--app-space-2)}.iw-kpi-stat--personal{margin-bottom:var(--app-space-4);padding:14px 16px;border-top-width:2px;box-shadow:0 8px 22px #0f172a0f}.iw-kpi-stat--personal .iw-kpi-stat__head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--app-space-4);margin-bottom:10px}.iw-kpi-stat--personal .iw-muted{display:block;font-size:12px}.iw-kpi-stat--personal strong{display:flex;align-items:baseline;gap:4px;margin-top:4px;font-size:20px;line-height:1.15}.iw-kpi-stat__unit{font-size:12px;font-weight:600;color:var(--app-text-muted)}.iw-kpi-stat__percent{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-width:56px;padding:5px 10px;border-radius:999px;background:var(--app-primary-soft);color:var(--app-primary);font-size:13px;font-weight:800}.iw-kpi-stat--personal .iw-kpi-bar{height:6px;background:#e8edf5}.iw-kpi-self-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px;padding:12px 16px;border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);background:linear-gradient(135deg,#f0f7ff,#fff);border-left:3px solid var(--app-primary);box-shadow:0 4px 14px #0f172a0d}.iw-kpi-self-banner__main{display:flex;flex-direction:column;gap:4px}.iw-kpi-self-banner__main strong{font-size:18px;color:var(--app-text-heading)}.iw-kpi-self-banner__meta{font-size:13px;font-weight:400;color:var(--app-text-muted)}.iw-kpi-self-hub-hint{margin:6px 0 0;font-size:13px;max-width:52rem}.iw-kpi-self-hub-hint a{font-weight:600}.iw-table-wrap{overflow-x:auto;background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-card)}.iw-table{width:100%;border-collapse:collapse;font-size:14px}.iw-table th,.iw-table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--app-border-soft);color:var(--app-text-body)}.iw-table th{background:var(--app-surface-muted);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--app-text-muted)}.iw-table tbody tr:hover{background:var(--app-primary-soft)}.iw-kpi-task-list-panel .iw-panel__head-row{align-items:flex-start}.iw-kpi-task-list-panel .iw-panel__head-row p{margin:6px 0 0}.iw-kpi-task-filter{display:flex;flex-wrap:wrap;width:100%}.iw-kpi-task-groups{display:grid;gap:var(--app-space-4)}.iw-kpi-task-group{border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);padding:var(--app-space-4);background:#fff}.iw-kpi-task-group--danger{border-left:4px solid var(--app-danger)}.iw-kpi-task-group--warning{border-left:4px solid var(--app-warning)}.iw-kpi-task-group--info{border-left:4px solid var(--app-primary)}.iw-kpi-task-group--success{border-left:4px solid var(--app-success)}.iw-kpi-task-group__head{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-3);margin-bottom:var(--app-space-3)}.iw-kpi-task-group__head h3{margin:0;font-size:15px;color:var(--app-text-heading)}.iw-kpi-task-group__head span{display:inline-flex;align-items:center;justify-content:center;min-width:58px;padding:4px 10px;border-radius:999px;background:var(--app-surface-muted);color:var(--app-text-muted);font-size:12px;font-weight:700}.iw-kpi-task-table td:first-child{min-width:220px;font-weight:600}.iw-kpi-action-hint{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;background:var(--app-surface-muted);color:var(--app-text-body);font-size:12px;font-weight:700;white-space:nowrap}.iw-kpi-action-hint--overdue,.iw-kpi-action-hint--rejected{background:var(--app-danger-soft);color:var(--app-danger)}.iw-kpi-action-hint--pending{background:var(--app-warning-bg);color:var(--app-warning)}.iw-kpi-action-hint--reported{background:#ede9fe;color:#6d28d9}.iw-kpi-action-hint--done{background:var(--app-success-soft);color:var(--app-success)}.iw-manager-summary-table td:nth-child(3){min-width:180px}.iw-empty-row{text-align:center;color:var(--app-text-muted);padding:18px!important}.iw-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--app-space-3);margin-bottom:var(--app-space-3)}.iw-form-actions{display:flex;gap:var(--app-space-3);justify-content:flex-end;margin-top:var(--app-space-5);padding-top:var(--app-space-4);border-top:1px solid var(--app-border)}.iw-modal-backdrop,.iw-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1200;padding:var(--app-space-4);animation:iw-dialog-fade-in .2s var(--app-ease)}@keyframes iw-dialog-fade-in{0%{opacity:0}to{opacity:1}}.iw-modal{background:var(--app-surface);border-radius:var(--app-radius-lg);padding:var(--app-space-6);max-width:420px;width:100%;box-shadow:var(--app-shadow-md);border:1px solid var(--app-border-soft)}.iw-modal h3{margin:0 0 var(--app-space-4);color:var(--app-text-heading)}.iw-dialog{background:var(--app-surface);border-radius:var(--app-radius-lg);padding:var(--app-space-6) var(--app-space-6) var(--app-space-5);max-width:460px;width:100%;box-shadow:var(--app-shadow-md);border:1px solid var(--app-border-soft);text-align:center;animation:iw-dialog-slide-up .22s var(--app-ease)}@keyframes iw-dialog-slide-up{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.iw-dialog__icon{width:52px;height:52px;margin:0 auto var(--app-space-4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;line-height:1}.iw-dialog__icon--confirm{background:var(--app-primary-soft);color:var(--app-primary);border:1px solid var(--app-primary-soft-border)}.iw-dialog__icon--success{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.iw-dialog__icon--error{background:var(--app-danger-soft);color:var(--app-danger);border:1px solid #fecaca}.iw-dialog__icon--alert{background:var(--app-warning-bg);color:#b45309;border:1px solid var(--app-warning-border)}.iw-dialog__title{margin:0 0 var(--app-space-2);font-size:18px;font-weight:600;color:var(--app-text-heading);line-height:1.35}.iw-dialog__message{margin:0 0 var(--app-space-4);font-size:14px;line-height:1.55;color:var(--app-text-muted)}.iw-dialog__details{margin:0 0 var(--app-space-4);padding:var(--app-space-3) var(--app-space-4);background:var(--app-surface-muted);border:1px solid var(--app-border-soft);border-radius:var(--app-radius);text-align:left}.iw-dialog__detail-row{display:grid;grid-template-columns:minmax(110px,38%) 1fr;gap:var(--app-space-2) var(--app-space-3);padding:6px 0;font-size:13px}.iw-dialog__detail-row:not(:last-child){border-bottom:1px dashed var(--app-border-soft)}.iw-dialog__detail-row dt{margin:0;color:var(--app-text-muted);font-weight:500}.iw-dialog__detail-row dd{margin:0;color:var(--app-text-heading);font-weight:600;word-break:break-word}.iw-dialog__note{margin:0 0 var(--app-space-4);padding:var(--app-space-3);font-size:13px;line-height:1.5;text-align:left;color:var(--app-primary-dark);background:var(--app-primary-soft);border:1px solid var(--app-primary-soft-border);border-radius:var(--app-radius)}.iw-dialog--confirm .iw-dialog__note{color:#92400e;background:var(--app-warning-bg);border-color:var(--app-warning-border)}.iw-dialog--danger .iw-dialog__note{color:#991b1b;background:var(--app-danger-soft);border-color:#fecaca}.iw-dialog__actions{display:flex;gap:var(--app-space-3);justify-content:center;flex-wrap:wrap;margin-top:var(--app-space-2);padding-top:var(--app-space-4);border-top:1px solid var(--app-border-soft)}.iw-dialog__actions .iw-btn{min-width:120px}.iw-copy-duplicate-hint{margin:var(--app-space-2) 0 0;font-size:13px;line-height:1.5;text-align:left}.iw-link-btn{padding:0;border:none;background:none;color:var(--app-primary);font-size:inherit;font-weight:600;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.iw-link-btn:hover{color:var(--app-primary-dark, #1d4ed8)}.iw-action-bar{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:10px;background:var(--app-surface-muted);border:1px solid var(--app-border-soft)}.iw-action-btn-wrap{display:inline-flex}.iw-action-btn.MuiIconButton-root{border-radius:7px;width:34px;height:34px;transition:background-color var(--app-duration) var(--app-ease),color var(--app-duration) var(--app-ease)}.iw-action-btn--view{color:var(--app-primary)!important}.iw-action-btn--view:hover:not(.Mui-disabled){background:var(--app-primary-soft)!important}.iw-action-btn--copy{color:#7c3aed!important}.iw-action-btn--copy:hover:not(.Mui-disabled){background:#f5f3ff!important}.iw-action-btn--edit{color:#c2410c!important}.iw-action-btn--edit:hover:not(.Mui-disabled){background:#fff7ed!important}.iw-action-btn--report{color:#0369a1!important}.iw-action-btn--report:hover:not(.Mui-disabled){background:#e0f2fe!important}.iw-action-btn--assess{color:#7c3aed!important}.iw-action-btn--assess:hover:not(.Mui-disabled){background:#f5f3ff!important}.iw-action-btn--approve{color:#15803d!important}.iw-action-btn--approve:hover:not(.Mui-disabled){background:#ecfdf5!important}.iw-action-btn--delete{color:var(--app-danger)!important}.iw-action-btn--delete:hover:not(.Mui-disabled){background:var(--app-danger-soft)!important}.iw-action-btn.Mui-disabled{opacity:.42}.iw-manager-summary-table .iw-action-bar{flex-shrink:0}.iw-manager-assignee-link{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid var(--app-primary-soft-border);background:var(--app-primary-soft);color:var(--app-primary);text-decoration:none}.iw-manager-assignee-link:hover{background:#dbeafe;border-color:#93c5fd;color:var(--app-primary-dark, #1d4ed8);text-decoration:underline}.iw-coordination-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--app-space-3);margin-top:var(--app-space-2)}.iw-coordination-toolbar .iw-input{max-width:180px}.iw-coordination-toolbar .iw-input[type=date]{max-width:220px}.iw-dialog__field{display:block;margin:0 0 var(--app-space-4);text-align:left}.iw-dialog__field-label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--app-text-muted)}.iw-dialog__field .iw-input{width:100%}.iw-dialog__field-hint{display:block;margin-top:4px;font-size:12px;line-height:1.35;color:var(--app-text-muted);font-weight:400}.iw-dialog__field--full{grid-column:1 / -1}.iw-input--readonly{background:#f8fafc;color:#475569;cursor:default}.iw-kpi-edit-form{display:flex;flex-direction:column;gap:16px;text-align:left}.iw-kpi-edit-section__title{margin:0 0 10px;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.iw-kpi-edit-section .iw-dialog__field{margin-bottom:0}.iw-kpi-edit-calc-options{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.iw-kpi-edit-calc-option{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;gap:2px 10px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:border-color .15s,background .15s}.iw-kpi-edit-calc-option.is-selected{border-color:#2563eb;background:#eff6ff}.iw-kpi-edit-calc-option input{grid-row:1 / span 2;margin-top:2px}.iw-kpi-edit-calc-option__label{font-weight:600;font-size:14px;color:var(--app-text-body)}.iw-kpi-edit-calc-option__desc{grid-column:2;font-size:12px;color:var(--app-text-muted);line-height:1.35}.iw-kpi-edit-metrics{margin-bottom:8px}.iw-kpi-edit-formula-preview{margin:0;padding:10px 12px;font-size:13px;line-height:1.4;background:#f8fafc;border-radius:8px;border:1px dashed #cbd5e1;color:#334155}.iw-kpi-edit-formula-preview__label{font-weight:600;color:#64748b}.iw-kpi-edit-gps .iw-radio-options{margin-top:6px}.iw-kpi-unit-select{display:flex;flex-direction:column;gap:6px}.iw-kpi-unit-select .iw-kpi-unit-custom{margin-top:0}.iw-dialog-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin-bottom:8px}.iw-plan-table-footer-link{display:flex;justify-content:flex-end;margin-top:8px}.iw-plan-table-footer-link a{font-size:12px;font-weight:600;color:var(--app-primary);text-decoration:none}.iw-plan-table-footer-link a:hover{text-decoration:underline}@media (max-width: 920px){.iw-dialog-form-grid{grid-template-columns:1fr}}.iw-kpi-formula{font-size:12px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--app-text-muted)}.iw-kpi-task-summary .iw-dl{grid-template-columns:1fr 1fr}.iw-radio-group{border:none;margin:0 0 var(--app-space-4);padding:0}.iw-radio-legend{font-size:13px;font-weight:600;color:var(--app-text-body);margin-bottom:var(--app-space-3);padding:0}.iw-radio-options{display:flex;flex-wrap:wrap;gap:var(--app-space-4) var(--app-space-6)}.iw-radio-label{display:inline-flex;align-items:center;gap:var(--app-space-2);font-size:14px;color:var(--app-text-heading);cursor:pointer;-webkit-user-select:none;user-select:none}.iw-radio-label input[type=radio]{width:18px;height:18px;margin:0;accent-color:var(--app-primary);cursor:pointer}.iw-field-labeled{display:flex;flex-direction:column;gap:4px;min-width:170px}.iw-field-label{font-size:12px;font-weight:600;color:var(--app-text-muted)}.iw-report-panel{margin-top:var(--app-space-5)}.iw-report-panel--standalone{margin-top:0}.iw-report-panel__card{background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:16px;box-shadow:0 1px 2px #0f172a0a,0 8px 24px #0f172a0f;overflow:hidden}.iw-report-view-page{max-width:920px}.iw-report-view-top{display:flex;flex-wrap:wrap;align-items:center;gap:var(--app-space-3) var(--app-space-4);margin-bottom:var(--app-space-4)}.iw-report-view-dept{margin-left:auto;font-size:12px;line-height:1.45}.iw-report-view-top .iw-er-back{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--app-text-body);background:var(--app-surface);border:1px solid var(--app-border-soft);text-decoration:none;transition:background .15s ease,border-color .15s ease}.iw-report-view-top .iw-er-back:hover{background:var(--app-surface-muted);border-color:var(--app-border-input)}.iw-report-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--app-space-4);padding:var(--app-space-5) var(--app-space-5) var(--app-space-4);background:linear-gradient(135deg,#f8fafc,#f1f5f9 55%,#eef2ff);border-bottom:1px solid var(--app-border-soft)}.iw-report-panel-eyebrow{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--app-text-muted)}.iw-report-panel-title{margin:0;font-size:1.35rem;font-weight:700;line-height:1.3;color:var(--app-text-heading)}.iw-report-panel-meta{margin:8px 0 0;font-size:13px;color:var(--app-text-muted)}.iw-report-panel-meta time{font-weight:600;color:var(--app-text-body)}.iw-report-status-pill{flex-shrink:0;align-self:flex-start;padding:8px 16px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.02em;color:#5b21b6;background:#ede9fef2;border:1px solid #ddd6fe;box-shadow:0 1px 2px #5b21b614}.iw-report-panel-main{display:flex;flex-direction:column;gap:var(--app-space-4);min-width:0;padding:var(--app-space-4) var(--app-space-5) var(--app-space-5)}.iw-action-text-link{text-decoration:none;white-space:nowrap}.iw-report-history-list-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.iw-report-history-title{margin:0;font-size:1rem;font-weight:700;color:var(--app-text-heading)}.iw-report-history-count-badge{flex-shrink:0;min-width:28px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:700;text-align:center;color:var(--app-primary);background:var(--app-surface-muted);border:1px solid var(--app-border-soft)}.iw-report-history-sub{margin:0 0 var(--app-space-4);font-size:13px;color:var(--app-text-muted);line-height:1.45}.iw-report-accordion-list,.iw-report-history-links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}.iw-report-accordion-item{border-radius:14px;border:1px solid var(--app-border-soft);background:var(--app-surface);box-shadow:0 1px 2px #0f172a0a;overflow:hidden;transition:box-shadow .2s ease,border-color .2s ease}.iw-report-accordion-item:hover{border-color:#cbd5e1;box-shadow:0 4px 14px #0f172a0f}.iw-report-accordion-item.is-active:not(.is-expanded){border-color:#93c5fd}.iw-report-accordion-item.is-expanded{border-color:#60a5fa;box-shadow:0 8px 28px #2563eb1a}.iw-report-accordion-item--rejected{border-left:3px solid #f87171}.iw-report-accordion-item--approved{border-left:3px solid #34d399}.iw-report-accordion-item--submitted{border-left:3px solid #60a5fa}.iw-report-accordion-trigger{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:14px 16px;border:none;background:transparent;cursor:pointer;text-align:left;font:inherit;color:inherit;transition:background .15s ease}.iw-report-accordion-item.is-expanded .iw-report-accordion-trigger{background:#f8fafc;border-bottom:1px solid var(--app-border-soft)}.iw-report-accordion-trigger:hover{background:#f8fafc}.iw-report-accordion-head__main{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.iw-report-accordion-head__row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.iw-report-attempt-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:8px;font-size:12px;font-weight:700;color:#1e40af;background:#eff6ff;border:1px solid #dbeafe}.iw-report-status-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:8px;font-size:11px;font-weight:700;letter-spacing:.02em}.iw-report-status-badge--submitted{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.iw-report-status-badge--approved{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.iw-report-status-badge--rejected{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.iw-report-status-badge--draft{color:#64748b;background:#f1f5f9;border:1px solid #e2e8f0}.iw-report-accordion-head__time{font-size:12px;color:var(--app-text-muted)}.iw-report-accordion-toggle{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;min-width:108px;justify-content:center;padding:7px 14px;border-radius:10px;font-size:12px;font-weight:600;color:#1d4ed8;background:linear-gradient(180deg,#eff6ff,#dbeafe);border:1px solid #93c5fd;box-shadow:0 1px 2px #2563eb14;pointer-events:none;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.iw-report-accordion-item.is-expanded .iw-report-accordion-toggle{color:#475569;background:#f1f5f9;border-color:#cbd5e1;box-shadow:none}.iw-report-accordion-trigger:hover .iw-report-accordion-toggle{border-color:#60a5fa;box-shadow:0 2px 6px #2563eb1f}.iw-report-accordion-item.is-expanded .iw-report-accordion-trigger:hover .iw-report-accordion-toggle{border-color:#94a3b8;box-shadow:none}.iw-report-accordion-toggle__label{line-height:1}.iw-report-accordion-body{padding:var(--app-space-4);background:linear-gradient(180deg,#f8fafc,#fff 24px);animation:iw-report-accordion-in .22s ease-out}@keyframes iw-report-accordion-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.iw-report-accordion-body .iw-report-reject-card{margin-top:var(--app-space-4)}.iw-report-history-link-card{display:block;width:100%;padding:14px 16px;border:1px solid var(--app-border-soft);border-radius:14px;background:var(--app-surface);text-decoration:none;color:inherit;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease}button.iw-report-history-link-card{cursor:pointer;font:inherit;text-align:left}.iw-report-history-link-card:hover{border-color:#93c5fd;box-shadow:0 4px 12px #2563eb14}.iw-report-history-link-card.is-active{border-color:#2563eb;background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.iw-report-panel-body{display:grid;grid-template-columns:1fr minmax(280px,340px);gap:var(--app-space-5);align-items:start}.iw-report-panel-body--full{grid-template-columns:1fr}.iw-demo-badge{display:inline-block;margin-left:6px;padding:1px 6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#7c3aed;background:#ede9fe;border-radius:4px;vertical-align:middle}.iw-kpi-plan-header-actions{display:flex;flex-wrap:wrap;gap:var(--app-space-2)}.iw-report-panel__card .iw-kpi-progress-banner{margin:0 var(--app-space-5) var(--app-space-4)}.iw-kpi-progress-banner{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 10px;padding:14px 18px;border-radius:12px;background:linear-gradient(90deg,#eff6ff,#f0f9ff);border:1px solid #bfdbfe;font-size:14px;color:#1e3a5f;line-height:1.45}.iw-kpi-progress-banner strong{font-weight:700}.iw-kpi-progress-banner__meta{font-weight:400;font-size:13px;color:#475569}.iw-report-detail-split{display:grid;grid-template-columns:1fr minmax(280px,340px);gap:var(--app-space-5);align-items:start;margin-top:var(--app-space-4)}@media (max-width: 900px){.iw-report-detail-split{grid-template-columns:1fr}}.iw-report-view-page .iw-report-panel__card{margin-top:var(--app-space-2)}.iw-report-view-picker{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--app-space-3) var(--app-space-4);margin-bottom:var(--app-space-4);padding:var(--app-space-4);background:var(--app-surface-muted);border-radius:var(--app-radius);border:1px solid var(--app-border-soft)}.iw-report-view-picker-label{display:block;width:100%;font-size:12px;font-weight:600;color:var(--app-text-muted);margin-bottom:-4px}.iw-report-view-picker-select{flex:1 1 320px;min-width:min(100%,280px);max-width:100%;font-size:13px}.iw-report-history-list-wrap .iw-report-view-picker-select{flex:none;width:100%;min-width:0;min-height:0;height:auto;padding:9px 36px 9px 12px;line-height:1.35;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:12px}.iw-report-view-picker-actions{display:flex;gap:var(--app-space-2);flex-shrink:0}.iw-report-history-page-links .iw-report-view-picker-select{margin-top:var(--app-space-2)}.iw-report-history-page-links .iw-er-report-list-btn{text-decoration:none;color:inherit;width:100%;box-sizing:border-box}.iw-report-history-page-links .iw-er-report-list-btn:hover{border-color:var(--app-primary);background:#2563eb0f}@media (max-width: 960px){.iw-report-panel-body{grid-template-columns:1fr}}.iw-report-detail-title{margin:0 0 var(--app-space-3);font-size:1rem;font-weight:700;color:var(--app-text-heading)}.iw-report-detail-title--compact{margin-bottom:var(--app-space-3);padding-bottom:var(--app-space-2);font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--app-text-muted);border-bottom:1px solid var(--app-border-soft)}.iw-report-detail--embedded .iw-report-field-grid{gap:10px}.iw-report-detail--embedded .iw-report-field{padding:12px 14px;background:#fff;border-color:#e8eef4;border-radius:10px}.iw-report-detail--embedded .iw-report-field-value a{font-weight:600}.iw-report-detail-header{margin-bottom:var(--app-space-3)}.iw-report-task-hint{margin:4px 0 0;font-size:13px}.iw-report-empty{padding:var(--app-space-5);text-align:center;background:var(--app-surface-muted);border:1px dashed var(--app-border-input);border-radius:var(--app-radius)}.iw-report-empty-hint{margin-top:8px;font-size:13px}.iw-report-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--app-space-3)}@media (max-width: 640px){.iw-report-field-grid{grid-template-columns:1fr}}.iw-report-field{padding:var(--app-space-3) var(--app-space-4);background:var(--app-surface-muted);border:1px solid var(--app-border-soft);border-radius:var(--app-radius)}.iw-report-field--wide{grid-column:1 / -1}.iw-report-field--highlight{background:var(--app-primary-soft);border-color:var(--app-primary-soft-border)}.iw-report-field--highlight .iw-report-field-value{font-size:1.25rem;font-weight:700;color:var(--app-primary)}.iw-report-field--error{background:#fef2f2;border-color:#fecaca}.iw-report-field--error .iw-report-field-value{color:#b91c1c}.iw-report-field-label{display:block;margin-bottom:6px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--app-text-muted)}.iw-report-field-value{font-size:14px;line-height:1.5;color:var(--app-text-heading);white-space:pre-wrap;word-break:break-word}.iw-report-approval-card{padding:var(--app-space-4);background:linear-gradient(180deg,var(--app-surface-muted) 0%,var(--app-surface) 100%);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-card)}.iw-report-approval-title{margin:0 0 8px;font-size:1rem;font-weight:700;color:var(--app-text-heading)}.iw-report-approval-desc{margin:0 0 var(--app-space-4);font-size:13px;line-height:1.45}.iw-report-approval-field{display:block;margin-bottom:var(--app-space-3)}.iw-report-approval-label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--app-text-body)}.iw-report-percent-input{display:flex;align-items:center;gap:8px}.iw-report-percent-input .iw-input{flex:1;font-size:1.1rem;font-weight:600}.iw-report-percent-suffix{font-size:1rem;font-weight:600;color:var(--app-text-muted)}.iw-report-approval-approve{width:100%;margin-top:4px}.iw-report-approval-divider{display:flex;align-items:center;gap:12px;margin:var(--app-space-4) 0;font-size:12px;color:var(--app-text-muted);text-transform:uppercase;letter-spacing:.04em}.iw-report-approval-divider:before,.iw-report-approval-divider:after{content:"";flex:1;height:1px;background:var(--app-border-soft)}.iw-report-approval-reject{width:100%}.iw-report-form-table .iw-file-drop{margin-top:0}.iw-report-file-list{list-style:none;margin:0;padding:0}.iw-report-file-list li{padding:4px 0;font-size:14px}.iw-report-photo-grid-wrap{width:100%}.iw-report-photo-grid-hint{margin:0 0 10px;font-size:13px;color:#64748b;font-weight:500}.iw-report-photo-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}@media (min-width: 480px){.iw-report-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}}@media (min-width: 768px){.iw-report-photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}}@media (min-width: 1100px){.iw-report-photo-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}.iw-report-photo-grid__cell{margin:0;min-width:0}.iw-report-photo-grid__btn{position:relative;display:block;width:100%;padding:0;margin:0;border:none;border-radius:10px;overflow:hidden;background:#e2e8f0;cursor:zoom-in;aspect-ratio:1;box-shadow:0 1px 3px #0f172a14;transition:transform .15s ease,box-shadow .15s ease}.iw-report-photo-grid__btn:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0f172a1f}.iw-report-photo-grid__btn:focus-visible{outline:2px solid var(--app-primary, #2563eb);outline-offset:2px}.iw-report-photo-grid__img{display:block;width:100%;height:100%;object-fit:cover}.iw-report-photo-grid__badge{position:absolute;top:6px;left:6px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#0f172ab8;color:#fff;font-size:11px;font-weight:700;line-height:22px;text-align:center;pointer-events:none}.iw-report-photo-grid__zoom{position:absolute;right:6px;bottom:6px;width:28px;height:28px;border-radius:8px;background:#0f172aa6;color:#fff;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s ease;pointer-events:none}.iw-report-photo-grid__btn:hover .iw-report-photo-grid__zoom,.iw-report-photo-grid__btn:focus-visible .iw-report-photo-grid__zoom{opacity:1}@media (hover: none){.iw-report-photo-grid__zoom{opacity:1}}.iw-report-photo-grid__placeholder{display:flex;align-items:center;justify-content:center;aspect-ratio:1;border-radius:10px;background:#f1f5f9;color:#94a3b8;font-size:12px;font-weight:600;text-align:center;padding:8px}.iw-report-photo-grid__placeholder--loading{background:#e2e8f0}.iw-report-photo-grid__spinner{width:24px;height:24px;border:2px solid #cbd5e1;border-top-color:#2563eb;border-radius:50%;animation:iw-photo-spin .7s linear infinite}@keyframes iw-photo-spin{to{transform:rotate(360deg)}}.iw-report-photo-list{display:flex;flex-wrap:wrap;gap:12px}.iw-report-photo-item{display:flex;flex-direction:column;gap:6px;max-width:220px}.iw-report-photo-thumb-link{display:block;width:100%;padding:0;margin:0;border:1px solid var(--app-border-soft);border-radius:8px;overflow:hidden;background:#f1f5f9;cursor:zoom-in;text-align:left}.iw-report-photo-thumb-link:focus-visible{outline:2px solid var(--app-primary, #2563eb);outline-offset:2px}.iw-report-photo-thumb{display:block;width:100%;max-width:200px;height:auto;aspect-ratio:1;object-fit:cover}.iw-report-photo-loading{display:inline-block;font-size:13px;padding:24px 12px}.iw-report-files-gallery{display:flex;flex-direction:column;gap:10px;width:100%}.iw-report-file-list--below{margin-top:4px;padding-top:8px;border-top:1px solid var(--app-border-soft)}.iw-report-file-link-btn{background:none;border:none;padding:0;color:var(--app-primary, #2563eb);font:inherit;font-weight:600;cursor:pointer;text-align:left;text-decoration:underline}.iw-report-file-link-btn:disabled{opacity:.6;cursor:wait}.iw-image-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;flex-direction:column;background:#0f172aeb;animation:iw-dialog-fade-in .2s var(--app-ease)}.iw-image-lightbox__toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top));color:#f8fafc;flex-shrink:0;flex-wrap:wrap}.iw-image-lightbox__title{font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:55vw}.iw-image-lightbox__tools{display:flex;align-items:center;gap:6px;flex-shrink:0}.iw-image-lightbox__tool-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:8px;background:#ffffff1f;color:#f8fafc;cursor:pointer}.iw-image-lightbox__tool-btn:hover{background:#ffffff38}.iw-image-lightbox__tool-btn--close{margin-left:4px;background:#ef444459}.iw-image-lightbox__zoom-label{min-width:44px;text-align:center;font-size:13px;font-weight:600}.iw-image-lightbox__viewport{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;cursor:grab}.iw-image-lightbox__viewport:active{cursor:grabbing}.iw-image-lightbox__img{max-width:min(92vw,1200px);max-height:min(72vh,900px);object-fit:contain;transform-origin:center center;transition:transform .08s ease-out;-webkit-user-select:none;user-select:none;pointer-events:none}.iw-image-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border:none;border-radius:50%;background:#ffffff26;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2}.iw-image-lightbox__nav:hover{background:#ffffff47}.iw-image-lightbox__nav--prev{left:12px}.iw-image-lightbox__nav--next{right:12px}.iw-image-lightbox__hint{flex-shrink:0;margin:0;padding:8px 12px max(12px,env(safe-area-inset-bottom));text-align:center;font-size:11px;color:#f8fafcbf;line-height:1.4}@media (max-width: 640px){.iw-image-lightbox__title{font-size:13px;flex:1 1 100%;max-width:none;text-align:center}.iw-image-lightbox__tools{flex:1 1 100%;justify-content:center}.iw-image-lightbox__tool-btn{width:40px;height:40px}.iw-image-lightbox__nav{width:40px;height:40px;top:auto;bottom:72px;transform:none}.iw-image-lightbox__nav--prev{left:8px}.iw-image-lightbox__nav--next{right:8px}.iw-image-lightbox__img{max-width:96vw;max-height:65vh}.iw-image-lightbox__hint{font-size:10px;padding-left:8px;padding-right:8px}.iw-report-photo-grid-hint{font-size:12px}}.iw-excel-sheet-wrap{display:flex;flex-direction:column;background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-card);overflow:hidden;border-top:3px solid var(--app-primary)}.iw-excel-sheet-title{margin:0;padding:14px 20px;font-size:14px;font-weight:700;color:var(--app-primary-dark);background:linear-gradient(135deg,var(--app-primary-soft) 0%,var(--app-surface) 100%);border-bottom:1px solid var(--app-primary-soft-border)}.iw-excel-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--app-surface)}.iw-excel-sheet{width:100%;border-collapse:collapse;font-size:12px;table-layout:fixed}.iw-excel-sheet--fit{min-width:720px}.iw-excel-sheet--wide.iw-excel-sheet--fit{min-width:980px}.iw-task-mobile-panel{display:none}.iw-task-mobile-list{list-style:none;margin:0;padding:var(--app-space-3);display:flex;flex-direction:column;gap:var(--app-space-3)}.iw-task-mobile-empty{margin:0;padding:var(--app-space-6) var(--app-space-4);text-align:center;color:var(--app-text-muted);font-size:14px}.iw-task-mobile-card{padding:0;border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);background:var(--app-surface);box-shadow:var(--app-shadow-card);overflow:hidden}.iw-task-mobile-card__inner{display:contents}.iw-task-mobile-card--overdue{border-color:#fecaca}.iw-task-mobile-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-2);padding:var(--app-space-3) var(--app-space-4) 0}.iw-task-mobile-card__status-group{display:inline-flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px;min-width:0}.iw-task-mobile-card__overdue-badge{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border:1px solid #fecaca;border-radius:999px;background:#fef2f2;color:#b91c1c;font-size:10px;font-weight:700;line-height:1.25;text-align:center}.iw-task-mobile-card__stt{font-size:11px;font-weight:700;color:var(--app-text-muted);letter-spacing:.04em;text-transform:uppercase}.iw-task-mobile-card__title{margin:0;padding:var(--app-space-2) var(--app-space-4) 0;font-size:16px;font-weight:700;line-height:1.35}.iw-task-mobile-card__title a{color:var(--app-primary);text-decoration:none}.iw-task-mobile-card__title-btn{display:inline;margin:0;padding:0;border:none;background:none;color:var(--app-primary);font:inherit;font-weight:700;text-align:left;cursor:pointer}.iw-task-mobile-card__title-btn:hover{text-decoration:underline}.iw-task-mobile-card__assignee{margin:0;padding:0 var(--app-space-4);font-size:13px;color:var(--app-text-muted)}.iw-task-mobile-card__progress{margin:var(--app-space-3) var(--app-space-4);padding:var(--app-space-3);border-radius:var(--app-radius-md);background:linear-gradient(180deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0}.iw-task-mobile-card__progress-head{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-2);margin-bottom:var(--app-space-2)}.iw-task-mobile-card__progress-label{font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.iw-task-mobile-card__progress-pct{font-size:18px;font-weight:800;color:#0f172a;line-height:1}.iw-task-mobile-card__progress-track{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden}.iw-task-mobile-card__progress-fill{display:block;height:100%;border-radius:inherit;background:#94a3b8;transition:width .35s ease}.iw-task-mobile-card__progress-track--progress .iw-task-mobile-card__progress-fill{background:linear-gradient(90deg,#3b82f6,#2563eb)}.iw-task-mobile-card__progress-track--good .iw-task-mobile-card__progress-fill{background:linear-gradient(90deg,#0ea5e9,#0284c7)}.iw-task-mobile-card__progress-track--complete .iw-task-mobile-card__progress-fill{background:linear-gradient(90deg,#22c55e,#16a34a)}.iw-task-mobile-card__progress-foot{display:flex;flex-wrap:wrap;gap:var(--app-space-2) var(--app-space-3);margin-top:var(--app-space-2);font-size:12px;color:#64748b}.iw-task-mobile-card__progress-foot strong{color:#0f172a;font-weight:700}.iw-task-mobile-card__progress-detail{flex:1 1 100%;color:#475569;font-size:11px;line-height:1.4}.iw-task-mobile-card__fields{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--app-border-soft)}.iw-task-mobile-field{display:flex;flex-direction:column;gap:4px;padding:var(--app-space-3) var(--app-space-4);border-bottom:1px solid #f1f5f9;min-width:0}.iw-task-mobile-field:nth-child(odd){border-right:1px solid #f1f5f9}.iw-task-mobile-field--full{grid-column:1 / -1;border-right:none}.iw-task-mobile-field__label{font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#94a3b8;line-height:1.2}.iw-task-mobile-field__value{font-size:13px;font-weight:600;color:#1e293b;line-height:1.45;word-break:break-word}.iw-task-mobile-kpi-main{display:block;font-size:14px;font-weight:700;color:#0f172a}.iw-task-mobile-kpi-sub{display:block;margin-top:2px;font-size:11px;font-weight:500;color:#64748b}.iw-task-mobile-calc-short{display:block;font-weight:700;color:#0f172a}.iw-task-mobile-calc-hint{display:block;margin-top:4px;font-size:11px;font-weight:500;color:#64748b;line-height:1.4}.iw-task-mobile-card__actions{display:flex;flex-wrap:wrap;gap:var(--app-space-2);padding:var(--app-space-3) var(--app-space-4) var(--app-space-4);background:#fafbfc;border-top:1px solid var(--app-border-soft)}.iw-task-mobile-card__cta{flex:1 1 auto;justify-content:center;text-align:center}.iw-task-mobile-card__manage-row{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.iw-task-mobile-card__manage-row--solo{grid-template-columns:1fr}.iw-task-mobile-card__manage-btn{display:inline-flex;align-items:center;justify-content:center;min-height:34px;font-weight:600;letter-spacing:.01em}.iw-task-mobile-card__manage-btn--edit{border-color:#cbd5e1;color:#1d4ed8;background:#fff}.iw-task-mobile-card__manage-btn--edit:hover:not(.is-locked){background:#eff6ff;border-color:#93c5fd;color:#1e40af}.iw-task-mobile-card__manage-btn--edit.is-locked{opacity:.55;cursor:not-allowed}.iw-task-mobile-card__manage-btn--delete{border-color:#fecaca;color:#b91c1c;background:#fff}.iw-task-mobile-card__manage-btn--delete:hover{background:#fef2f2;border-color:#f87171;color:#991b1b}.iw-task-mobile-card__meta{display:none}.iw-task-mobile-card__meta dt{margin:0;font-weight:600;color:var(--app-text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.03em}.iw-task-mobile-card__meta dd{margin:2px 0 0;color:var(--app-text-body);word-break:break-word}.iw-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.iw-excel-sheet th,.iw-excel-sheet td{padding:8px 6px;vertical-align:top;text-align:left;border-bottom:1px solid var(--app-border-soft);border-right:1px solid var(--app-border-soft);color:var(--app-text-body);white-space:normal;word-break:break-word;overflow-wrap:anywhere;line-height:1.35}.iw-excel-sheet th:last-child,.iw-excel-sheet td:last-child{border-right:none}.iw-excel-sheet thead th{position:sticky;top:0;z-index:2;background:var(--app-surface-muted);color:var(--app-text-muted);font-size:11px;font-weight:600;white-space:nowrap;word-break:normal;overflow-wrap:normal;text-transform:uppercase;letter-spacing:.03em;text-align:left;border-bottom:1px solid var(--app-border);line-height:1.25}.iw-excel-sheet tbody tr:nth-child(2n){background:var(--app-surface-muted)}.iw-excel-sheet tbody tr:hover{background:var(--app-primary-soft)!important}.iw-excel-row-overdue{background:var(--app-danger-soft)!important}.iw-excel-row-overdue:hover{background:#fee2e2!important}.iw-excel-stt{width:2.5%;text-align:center!important;background:var(--app-surface-subtle);font-weight:600;font-size:11px;color:var(--app-text-muted);font-variant-numeric:tabular-nums;word-break:normal}.iw-excel-num{text-align:center!important;font-variant-numeric:tabular-nums;word-break:normal}.iw-excel-sheet--fit .iw-excel-col-objective{width:12%}.iw-excel-sheet--fit .iw-excel-col-kpi{width:6%}.iw-excel-sheet--fit .iw-excel-col-formula{width:10%;font-size:11px;color:var(--app-text-muted)}.iw-excel-sheet--fit .iw-excel-col-period{width:6%}.iw-excel-sheet--fit .iw-excel-col-target-index{width:8%}.iw-excel-sheet--fit .iw-excel-col-weight{width:4%}.iw-excel-sheet--fit .iw-excel-col-freq{width:5%}.iw-excel-sheet--fit .iw-excel-col-calc{width:7%}.iw-excel-sheet--fit .iw-excel-col-deadline{width:6%;word-break:normal}.iw-excel-sheet--fit .iw-excel-col-status{width:6%}.iw-excel-sheet--fit .iw-excel-col-earned{width:5%}.iw-excel-sheet--fit .iw-excel-col-assignee{width:7%}.iw-excel-sheet--fit .iw-excel-actions{width:10%}.iw-excel-sheet-wrap--wide{width:100%}.iw-excel-sheet--wide.iw-excel-sheet--fit .iw-excel-col-objective{width:14%}.iw-excel-sheet--wide.iw-excel-sheet--fit .iw-excel-col-formula{width:12%}.iw-excel-sheet--wide.iw-excel-sheet--fit .iw-excel-col-target-index{width:9%}.iw-excel-sheet--wide.iw-excel-sheet--fit .iw-excel-actions{width:13%;min-width:168px}.iw-excel-row-active{background:#e0e7ff!important;box-shadow:inset 3px 0 0 var(--app-primary)}.iw-excel-row-active:hover{background:#e0e7ff!important}.iw-action-bar{flex-wrap:wrap;justify-content:center;gap:2px;max-width:none}.iw-action-btn--report-view{color:#0369a1!important}.iw-action-btn--report-view:hover:not(.Mui-disabled){background:#e0f2fe!important}.iw-report-panel__card .iw-report-reviewed-banner{margin:0 var(--app-space-5) var(--app-space-4)}.iw-report-reviewed-banner{padding:12px 16px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;font-size:14px;color:#047857}.iw-banner-warning{background:#fffbeb;border:1px solid #fcd34d;color:#92400e}.iw-employee-task-link{color:var(--app-primary);text-decoration:none;font-weight:600}.iw-employee-task-link:hover{text-decoration:underline;color:var(--app-primary-dark)}.iw-employee-task-summary{margin-bottom:var(--app-space-4)}.iw-employee-task-summary-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--app-space-4)}.iw-employee-task-summary-grid>div{display:flex;flex-direction:column;gap:4px}.iw-employee-task-summary-grid strong{font-size:14px;color:var(--app-text-heading);line-height:1.4}.iw-employee-hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--app-space-5);align-items:start}@media (max-width: 960px){.iw-employee-hub-grid{grid-template-columns:1fr}}.iw-employee-hub-form h2,.iw-employee-hub-history h2{margin:0 0 8px;font-size:1.1rem}.iw-employee-hub-desc{margin:0 0 var(--app-space-4);font-size:13px}.iw-employee-report-form{display:flex;flex-direction:column;gap:var(--app-space-3)}.iw-employee-report-list{list-style:none;margin:0 0 var(--app-space-4);padding:0;display:flex;flex-direction:column;gap:8px}.iw-employee-report-list-item{width:100%;text-align:left;padding:12px 14px;border:1px solid var(--app-border-soft);border-radius:var(--app-radius);background:var(--app-surface-muted);cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,background .15s}.iw-employee-report-list-item:hover{border-color:var(--app-primary-soft-border);background:var(--app-primary-soft)}.iw-employee-report-list-item--active{border-color:var(--app-primary);background:var(--app-primary-soft);box-shadow:inset 3px 0 0 var(--app-primary)}.iw-employee-report-list-status{font-weight:700;font-size:13px;color:var(--app-text-heading)}.iw-employee-report-list-meta{font-size:12px;color:var(--app-text-muted)}.iw-employee-report-list-pct{font-size:12px;color:var(--app-primary)}.iw-report-history-grid{display:grid;grid-template-columns:minmax(220px,280px) 1fr;gap:20px;align-items:start}.iw-report-history-stack{display:flex;flex-direction:column;gap:16px}.iw-report-history-count{margin:0 0 12px;font-size:13px}@media (max-width: 900px){.iw-report-history-grid{grid-template-columns:1fr}}.iw-employee-report-detail{margin-top:var(--app-space-3);padding-top:var(--app-space-4);border-top:1px solid var(--app-border-soft)}.iw-excel-sheet--fit .iw-excel-col-assess{width:4%}.iw-excel-col-select{width:3%;text-align:center!important}.iw-excel-col-objective strong{color:var(--app-text-heading);font-weight:600;font-size:12px}.iw-excel-actions{font-size:11px;word-break:normal;text-align:center;vertical-align:middle}.iw-excel-actions .iw-action-bar{display:inline-flex;margin:0 auto}.iw-excel-muted{color:var(--app-text-muted);font-size:13px}.iw-excel-empty{text-align:center;color:var(--app-text-muted);padding:var(--app-space-6)!important;background:var(--app-surface)}.iw-excel-total-row td{background:var(--app-primary-soft);font-weight:600;color:var(--app-primary-dark);border-top:2px solid var(--app-primary-soft-border);border-bottom:none}.iw-excel-total-label{text-align:right!important;padding-right:var(--app-space-4)!important}.iw-excel-report-sheet{width:100%;table-layout:fixed}.iw-excel-report-sheet thead th{text-align:left}.iw-excel-cell-input{width:100%;min-width:0;max-width:100%;box-sizing:border-box;font-size:14px;padding:8px 10px;border:1px solid var(--app-border-input);border-radius:var(--app-radius-sm);background:var(--app-surface);color:var(--app-text-body)}.iw-excel-cell-input:focus{outline:none;border-color:var(--app-primary);box-shadow:0 0 0 3px #2563eb1f}.iw-excel-inline-cell{display:inline-flex;align-items:center;justify-content:center;gap:1px;max-width:100%;min-width:0}.iw-excel-inline-cell--readonly{justify-content:inherit}.iw-excel-inline-cell__value{font-variant-numeric:tabular-nums}.iw-excel-inline-cell__input{width:3.2em;min-width:2.4em;max-width:100%;box-sizing:border-box;font:inherit;font-variant-numeric:tabular-nums;text-align:center;padding:2px 4px;border:1px solid transparent;border-radius:var(--app-radius-sm);background:transparent;color:inherit}.iw-excel-inline-cell__input:hover{border-color:var(--app-border-input);background:var(--app-surface)}.iw-excel-inline-cell__input:focus{outline:none;border-color:var(--app-primary);background:var(--app-surface);box-shadow:0 0 0 2px #2563eb1f}.iw-excel-inline-cell--busy .iw-excel-inline-cell__input{opacity:.65}.iw-excel-inline-cell__suffix{font-size:.92em;color:var(--app-text-muted);white-space:nowrap;flex-shrink:0}.iw-excel-inline-cell__prefix{color:var(--app-text-muted);white-space:nowrap;flex-shrink:0}.iw-kpi-index-cell__main .iw-excel-inline-cell{justify-content:flex-start}.iw-kpi-index-cell__main .iw-excel-inline-cell__input{text-align:left;width:3.6em}.iw-excel-file-btn{display:inline-flex;align-items:center;cursor:pointer;font-size:13px;color:var(--app-primary);font-weight:600;padding:6px 12px;border-radius:var(--app-radius-sm);border:1px dashed var(--app-primary-soft-border);background:var(--app-primary-soft);transition:background var(--app-duration) var(--app-ease)}.iw-excel-file-btn:hover{background:#dbeafe}.iw-excel-file-btn input{display:none}.iw-excel-file-names{margin-top:var(--app-space-2);display:flex;flex-direction:column;gap:4px}.iw-excel-file-tag{display:inline-flex;align-items:center;gap:6px;font-size:12px;background:var(--app-surface-muted);padding:4px 10px;border-radius:var(--app-radius-sm);border:1px solid var(--app-border);color:var(--app-text-body)}.iw-excel-file-tag button{border:none;background:transparent;cursor:pointer;color:var(--app-danger);font-size:14px;line-height:1;padding:0 2px}.iw-page .iw-excel-sheet-wrap+.iw-form-actions{margin-top:var(--app-space-4)}.iw-plan-step{display:flex;gap:20px;margin-bottom:24px;align-items:flex-start}.iw-plan-step__badge{flex-shrink:0;width:64px;height:64px;border-radius:50%;background:var(--app-nav-active-gradient);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.2;box-shadow:0 2px 8px #2563eb4d;margin-top:4px}.iw-plan-step__body{flex:1;background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);padding:var(--app-space-5);box-shadow:var(--app-shadow-card);border-top:3px solid var(--app-primary)}.iw-plan-step__title{margin:0 0 var(--app-space-4);font-size:15px;font-weight:700;color:var(--app-text-heading)}.iw-plan-step__name{color:var(--app-primary)}.iw-plan-member-search-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px}.iw-plan-member-search{flex:1;min-width:220px}.iw-plan-member-grid{display:flex;flex-wrap:wrap;gap:12px;max-height:260px;overflow-y:auto;padding-right:6px}.iw-member-picker{display:flex;flex-direction:column;gap:10px}.iw-member-picker__filters{display:flex;flex-wrap:wrap;gap:12px 20px;margin-bottom:4px}.iw-member-picker__dept,.iw-member-picker__role{margin-bottom:0;flex:1;min-width:200px;max-width:420px}.iw-member-picker__label{font-size:12px;font-weight:700;color:var(--app-text-muted);text-transform:uppercase;letter-spacing:.04em}.iw-member-autocomplete{position:relative}.iw-member-select2{padding-right:38px}.iw-member-select2-arrow{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--app-text-muted);font-size:14px;cursor:pointer;width:24px;height:24px;border-radius:6px}.iw-member-select2-arrow:hover{background:var(--app-surface-muted);color:var(--app-text-heading)}.iw-member-suggest{position:absolute;left:0;right:0;top:100%;margin-top:6px;background:#fff;border:1px solid var(--app-border-soft);border-radius:var(--app-radius);box-shadow:var(--app-shadow-card);z-index:20;max-height:260px;overflow-y:auto}.iw-member-suggest-item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;background:transparent;cursor:pointer;text-align:left}.iw-member-suggest-item:hover{background:var(--app-primary-soft)}.iw-member-suggest-item--active{background:#2563eb24;outline:1px solid rgba(37,99,235,.25)}.iw-member-suggest-avatar{width:32px;height:32px;border-radius:999px;background:var(--app-nav-active-gradient);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex-shrink:0}.iw-member-suggest-name{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.iw-member-suggest-name__primary{font-weight:700;color:var(--app-text-heading);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iw-member-suggest-name__dept{font-size:11px;font-weight:500;color:var(--app-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.iw-kpi-scope-notice{margin:0 0 14px;padding:12px 14px;border-radius:12px;font-size:13px;line-height:1.45;border:1px solid #bfdbfe;background:#eff6ff;color:#1e3a5f}.iw-team-roster-status{margin:0 0 12px;font-size:13px}.iw-team-roster-error{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}.iw-team-roster-error p{margin:0;flex:1 1 200px}.iw-member-suggest-weight{font-size:12px;color:var(--app-text-muted);font-weight:600;flex-shrink:0}.iw-member-suggest-empty{padding:12px;color:var(--app-text-muted);font-size:13px}.iw-plan-member-card{display:flex;flex-direction:column;align-items:center;gap:6px;width:120px;padding:14px 10px;border:2px solid var(--app-border-soft);border-radius:var(--app-radius-lg);background:var(--app-surface);cursor:pointer;transition:border-color var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease),background var(--app-duration) var(--app-ease);text-align:center}.iw-plan-member-card:hover{border-color:var(--app-primary-hover-border);background:var(--app-primary-soft);box-shadow:0 0 0 3px #2563eb1a}.iw-plan-member-card--active{border-color:var(--app-primary);background:var(--app-primary-soft);box-shadow:0 0 0 3px #2563eb26}.iw-plan-member-avatar{width:44px;height:44px;border-radius:50%;background:var(--app-nav-active-gradient);color:#fff;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center}.iw-plan-member-card--active .iw-plan-member-avatar{box-shadow:0 2px 8px #2563eb59}.iw-plan-member-name{font-size:13px;font-weight:600;color:var(--app-text-heading);line-height:1.3;word-break:break-word}.iw-plan-member-weight{font-size:11px;color:var(--app-text-muted);font-weight:500}@media (max-width: 599px){.iw-plan-step{flex-direction:column}.iw-plan-step__badge{width:40px;height:40px;font-size:11px}.iw-plan-member-card{width:100px}}.iw-page .iw-panel:not(.iw-report-panel){border-top:3px solid var(--app-primary)}.iw-page .iw-panel>h2{font-size:14px;font-weight:700;color:var(--app-primary-dark);padding-bottom:var(--app-space-3);margin-bottom:var(--app-space-4);border-bottom:1px solid var(--app-primary-soft-border)}@media (max-width: 599px){.iw-page-header h1{font-size:1.2rem}.iw-filter-bar{padding:10px;gap:8px}.iw-filter-bar input[type=search]{font-size:16px}.iw-filter-bar input,.iw-filter-bar select{width:100%;min-width:0}.iw-filter-row{flex-direction:column;align-items:stretch;gap:var(--app-space-2)}.iw-filter-row label{width:100%;font-size:12px}.iw-filter-row select{width:100%;min-width:0}.iw-excel-sheet-title{padding:12px 16px;font-size:13px}}.iw-kpi-stepper{display:flex;align-items:center;justify-content:center;gap:0;margin:var(--app-space-5) 0 var(--app-space-4);flex-wrap:wrap}.iw-kpi-stepper__item{display:flex;flex-direction:column;align-items:center;gap:6px;border:none;background:transparent;cursor:pointer;padding:4px 12px;min-width:120px}.iw-kpi-stepper__item:disabled{opacity:.45;cursor:not-allowed}.iw-kpi-stepper__num{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;background:var(--app-surface-muted);color:var(--app-text-muted);border:2px solid var(--app-border-soft)}.iw-kpi-stepper__item--active .iw-kpi-stepper__num{background:var(--app-primary);color:#fff;border-color:var(--app-primary)}.iw-kpi-stepper__item--done .iw-kpi-stepper__num{background:#16a34a;color:#fff;border-color:#16a34a}.iw-kpi-stepper__label{font-size:12px;font-weight:600;color:var(--app-text-muted);text-align:center}.iw-kpi-stepper__item--active .iw-kpi-stepper__label{color:var(--app-primary)}.iw-kpi-stepper__line{flex:0 0 48px;height:2px;background:var(--app-border-soft);margin:0 4px 18px}.iw-kpi-stepper__line--done{background:#16a34a}.iw-kpi-stepper-context{text-align:center;margin:0 0 var(--app-space-4);font-size:14px}.iw-plan-step--wizard{display:block}.iw-plan-step__body--full{width:100%}.iw-kpi-wizard__grid{display:grid;grid-template-columns:1fr minmax(280px,340px);gap:var(--app-space-5);align-items:start}@media (max-width: 960px){.iw-kpi-wizard__grid{grid-template-columns:1fr}}.iw-kpi-wizard-section{margin-bottom:var(--app-space-5)}.iw-kpi-wizard-section__title{margin:0 0 var(--app-space-4);font-size:14px;font-weight:700;color:var(--app-text-heading);padding-bottom:var(--app-space-2);border-bottom:1px solid var(--app-border-soft)}.iw-kpi-wizard-section--aside{background:var(--app-surface-muted);border:1px solid var(--app-border-soft);border-radius:var(--app-radius);padding:var(--app-space-4)}.iw-kpi-wizard-fields{display:flex;flex-direction:column;gap:var(--app-space-3)}.iw-kpi-wizard-fields--2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--app-space-3)}@media (max-width: 640px){.iw-kpi-wizard-fields--2{grid-template-columns:1fr}}.iw-kpi-field__label{font-size:12px;font-weight:600;color:var(--app-text-muted)}.iw-kpi-field__hint{font-size:11px;color:var(--app-text-muted)}.iw-kpi-weight-input{display:flex;align-items:center;gap:8px}.iw-kpi-weight-input .iw-input{max-width:120px}.iw-kpi-weight-suffix{font-weight:600;color:var(--app-text-muted)}.iw-kpi-goal-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--app-space-3);margin-bottom:var(--app-space-4)}@media (max-width: 480px){.iw-kpi-goal-cards{grid-template-columns:1fr}}.iw-kpi-goal-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:var(--app-space-3);border:2px solid var(--app-border-soft);border-radius:var(--app-radius);background:var(--app-surface);cursor:pointer;text-align:left;transition:border-color .15s,box-shadow .15s}.iw-kpi-goal-card:hover{border-color:var(--app-primary-soft-border)}.iw-kpi-goal-card--active{border-color:var(--app-primary);box-shadow:0 0 0 3px #2563eb1f;background:#2563eb0a}.iw-kpi-goal-card__icon{width:32px;height:32px;border-radius:8px;background:var(--app-surface-muted);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;color:var(--app-primary)}.iw-kpi-goal-card--active .iw-kpi-goal-card__icon{background:var(--app-primary);color:#fff}.iw-kpi-goal-card__label{font-size:13px;font-weight:700;color:var(--app-text-heading)}.iw-kpi-goal-card__hint{font-size:11px;color:var(--app-text-muted);line-height:1.35}.iw-kpi-formula-box{padding:var(--app-space-3) var(--app-space-4);background:#2563eb0f;border:1px solid rgba(37,99,235,.15);border-radius:var(--app-radius);font-size:13px}.iw-kpi-formula-box p{margin:6px 0 0}.iw-kpi-report-checks{display:flex;flex-direction:column;gap:8px;margin-bottom:var(--app-space-4)}.iw-kpi-check{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.iw-kpi-textarea{resize:vertical;min-height:72px}.iw-kpi-preview-section{margin-top:var(--app-space-4);padding-top:var(--app-space-4);border-top:1px dashed var(--app-border-soft)}.iw-kpi-preview-row--draft td{background:#2563eb0a;font-style:italic}.iw-excel-wrap{max-width:220px;font-size:12px;line-height:1.35}.iw-excel-formula{font-size:11px;max-width:200px;line-height:1.35}.iw-kpi-wizard-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--app-space-3);margin-top:var(--app-space-5);padding-top:var(--app-space-4);border-top:1px solid var(--app-border-soft);flex-wrap:wrap}.iw-kpi-wizard-footer__actions{display:flex;gap:var(--app-space-2);flex-wrap:wrap}.iw-kpi-review-summary{display:flex;flex-wrap:wrap;gap:var(--app-space-5);margin-bottom:var(--app-space-4);padding:var(--app-space-4);background:var(--app-surface-muted);border-radius:var(--app-radius)}.iw-kpi-review-summary>div{display:flex;flex-direction:column;gap:4px}.iw-kpi-review-summary strong{font-size:18px}.iw-kpi-weight-ok{color:#16a34a}.iw-kpi-weight-over{color:#dc2626}.iw-kpi-review-actions{display:flex;gap:var(--app-space-3);flex-wrap:wrap;margin-bottom:var(--app-space-4)}.iw-kpi-index-cell{display:flex;flex-direction:column;gap:3px;align-items:flex-start}.iw-kpi-index-cell__main{font-weight:600;font-size:12px;color:var(--app-text-body);line-height:1.3}.iw-kpi-index-cell__sub{font-size:11px;color:var(--app-text-muted);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.iw-kpi-index-cell__badge{display:inline-block;font-size:10px;font-weight:600;padding:1px 6px;border-radius:4px;background:#f1f5f9;color:#475569;letter-spacing:.02em}.iw-excel-sheet--hrm{table-layout:auto;width:100%;min-width:1320px}.iw-excel-sheet--hrm .iw-excel-stt{width:44px;min-width:44px}.iw-excel-sheet--hrm .iw-excel-col-assignee{min-width:120px}.iw-excel-sheet--hrm .iw-excel-col-objective{min-width:180px}.iw-excel-sheet--hrm .iw-excel-col-kpi{min-width:190px}.iw-excel-sheet--hrm .iw-excel-col-target-index{min-width:90px;font-size:11px}.iw-excel-sheet--hrm .iw-excel-col-weight{width:64px;min-width:64px}.iw-excel-sheet--hrm .iw-excel-col-deadline{width:86px;min-width:86px;white-space:nowrap}.iw-excel-sheet--hrm .iw-excel-col-status{width:86px;min-width:86px}.iw-excel-sheet--hrm .iw-excel-col-rejected{width:92px;min-width:92px;white-space:nowrap}.iw-excel-sheet--hrm .iw-excel-col-assess{width:82px;min-width:82px;white-space:nowrap}.iw-excel-sheet--hrm .iw-excel-col-earned{width:74px;min-width:74px;white-space:nowrap}.iw-excel-sheet--hrm .iw-excel-actions{width:52px;min-width:44px;max-width:52px;text-align:center!important;vertical-align:middle;padding-left:4px;padding-right:4px}.iw-action-menu{display:inline-flex;justify-content:center;width:100%}.iw-action-menu__trigger{color:#64748b!important;border-radius:6px!important}.iw-action-menu__trigger:hover{background:#f1f5f9!important;color:#1e40af!important}.iw-action-menu__paper{min-width:196px!important;border-radius:8px!important;border:1px solid #e2e8f0;margin-top:4px}.iw-action-menu__item{font-size:13px!important;padding-top:6px!important;padding-bottom:6px!important;gap:4px}.iw-action-menu__icon{min-width:32px!important;color:#64748b}.iw-action-menu__item--danger,.iw-action-menu__item--danger .iw-action-menu__icon{color:#dc2626!important}.iw-excel-sheet--hrm th,.iw-excel-sheet--hrm td{padding:7px 8px;font-size:12px}.iw-excel-sheet--hrm thead th{font-size:11px;white-space:nowrap;padding-top:9px;padding-bottom:9px}.iw-kpi-manage-page .iw-excel-scroll{overflow-x:auto;width:100%}.iw-kpi-manage-page .iw-excel-sheet-wrap{width:100%}.iw-btn-sm{padding:4px 10px;font-size:12px}.iw-rejected-count{color:#dc2626;font-weight:700}.iw-hrm-stat--danger .iw-hrm-stat__label{color:#991b1b}.iw-hrm-stat--danger .iw-hrm-stat__value{color:#dc2626}.iw-report-row-rejected td{background:#fef2f2}.iw-quick-reject-box{display:flex;flex-direction:column;gap:8px;min-width:200px}.iw-quick-reject-actions{display:flex;flex-wrap:wrap;gap:6px}.iw-report-desc-cell{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iw-manager-summary-cards{display:none;flex-direction:column;gap:var(--app-space-3);margin-bottom:var(--app-space-4)}.iw-manager-summary-card{padding:var(--app-space-4);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);background:var(--app-surface);box-shadow:var(--app-shadow-card)}.iw-manager-summary-card__head{display:flex;align-items:center;gap:var(--app-space-2);margin-bottom:var(--app-space-3)}.iw-manager-summary-card__meta{display:flex;flex-wrap:wrap;gap:var(--app-space-3);margin-top:var(--app-space-2);font-size:13px;color:var(--app-text-muted)}.iw-manager-summary-card__action{margin-top:var(--app-space-3);display:inline-flex}.iw-team-assignee-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;padding:12px 4px 4px}.iw-team-assignee-pagination__info{font-size:13px;color:var(--app-text-muted)}.iw-team-assignee-pagination__actions{display:flex;gap:8px}.iw-kpi-task-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:8px 4px 0}.iw-kpi-task-pagination__info{font-size:13px;color:var(--app-text-muted)}.iw-kpi-task-pagination__actions{display:flex;gap:8px}.iw-kpi-task-pagination__pages{display:inline-flex;align-items:center;gap:4px}.iw-kpi-task-pagination__page{min-width:34px;height:34px;padding:0 8px;border:1px solid var(--app-border-soft);border-radius:8px;background:#fff;color:var(--app-text-body);font-size:13px;font-weight:600;cursor:pointer}.iw-kpi-task-pagination__page.is-active{border-color:#2563eb;background:#eff6ff;color:#1d4ed8}.iw-task-mobile-list--compact{gap:var(--app-space-2);padding:var(--app-space-2)}.iw-task-mobile-card--compact .iw-task-mobile-card__head{padding-top:var(--app-space-2)}.iw-task-mobile-card--compact .iw-task-mobile-card__title{font-size:15px;padding-top:var(--app-space-1)}.iw-task-mobile-card--compact .iw-task-mobile-card__progress{margin:var(--app-space-2) var(--app-space-3) 0;padding:var(--app-space-2) var(--app-space-3)}.iw-task-mobile-card--compact .iw-task-mobile-card__progress-foot{font-size:11px;gap:6px}.iw-task-mobile-card--compact .iw-task-mobile-card__fields{padding:var(--app-space-2) var(--app-space-3);gap:6px}.iw-task-mobile-card--compact .iw-task-mobile-field{padding:6px 8px}.iw-task-mobile-card--compact .iw-task-mobile-field__label{font-size:10px}.iw-task-mobile-card--compact .iw-task-mobile-field__value{font-size:13px}.iw-task-mobile-card--compact .iw-task-mobile-card__actions{padding:var(--app-space-2) var(--app-space-3) var(--app-space-3)}.iw-overview-page--manager .iw-page-header{background:linear-gradient(180deg,#fff,#f8fbff);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);padding:var(--app-space-4) var(--app-space-5);box-shadow:var(--app-shadow-card)}.iw-overview-page--manager .iw-page-header h1{font-size:1.45rem;color:#0f172a;font-weight:800}.iw-overview-page--manager .iw-page-header .iw-page-lead{color:#475569;font-size:14px;line-height:1.6}.iw-overview-page--manager .iw-header-actions{align-items:center}.iw-overview-page--manager .iw-header-actions .iw-btn{min-height:36px;padding:7px 14px;font-size:13px;border-radius:999px;font-weight:700}.iw-overview-page--manager .iw-segment{padding:5px;border-radius:999px;background:#f3f6fb;border-color:#dbe5f2}.iw-overview-page--manager .iw-segment button{border-radius:999px;font-weight:700;color:#5b6b84}.iw-overview-page--manager .iw-segment button.active{color:#fff;text-shadow:0 1px 1px rgba(15,23,42,.25)}.iw-overview-page--manager .iw-filter-bar{border-radius:14px;padding:var(--app-space-4);background:linear-gradient(180deg,#fff,#fafcff)}.iw-overview-page--manager .iw-filter-bar input[type=search]{flex:1 1 280px;min-width:0;max-width:100%}.iw-overview-page--manager .iw-filter-bar input,.iw-overview-page--manager .iw-filter-bar select{min-height:40px;height:40px}.iw-overview-page--manager .iw-overview-copy-panel{margin-bottom:var(--app-space-4)}.iw-overview-page--manager .iw-overview-copy-panel .iw-hrm-copy-bar{margin:0;border-radius:14px;box-shadow:var(--app-shadow-card)}.iw-overview-page--manager .iw-manager-summary-table th{position:sticky;top:0;z-index:1;background:#f5f8fd;color:#334155}.iw-overview-page--manager .iw-manager-summary-table td{vertical-align:middle;color:#334155}.iw-overview-page--manager .iw-manager-assignee-link{display:inline-flex;align-items:center;padding:2px 10px;border-radius:999px;background:#eef4ff;border:1px solid #d9e6ff}.iw-overview-page--manager .iw-manager-assignee-link:hover{background:#e3eeff}@media (max-width: 768px){.iw-page{padding-left:var(--app-space-3);padding-right:var(--app-space-3);padding-bottom:var(--app-space-6)}.iw-page-header{flex-direction:column;align-items:stretch;gap:var(--app-space-3);margin-bottom:var(--app-space-4)}.iw-header-actions{width:100%}.iw-header-actions .iw-btn{flex:1 1 calc(50% - 6px);min-width:0;justify-content:center;text-align:center;padding-left:10px;padding-right:10px;font-size:13px}.iw-filter-bar{flex-direction:column;align-items:stretch;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px;margin-bottom:var(--app-space-4)}.iw-filter-bar input[type=search],.iw-filter-bar__search{grid-column:1 / -1;flex:none;width:100%;min-width:0;min-height:40px;max-height:40px;height:40px;font-size:16px}.iw-filter-bar input[type=month]{grid-column:1 / -1;flex:none;width:100%}.iw-filter-bar input,.iw-filter-bar select{width:100%;min-width:0;min-height:40px;max-height:40px;height:40px;font-size:14px}.iw-overview-page--manager .iw-filter-bar input[type=search],.iw-overview-page--manager .iw-filter-bar__search{flex:none}.iw-segment{width:100%}.iw-segment button{flex:1 1 auto;min-width:0;font-size:12px;padding:8px 10px}.iw-manager-summary-table-wrap{display:none}.iw-manager-summary-cards{display:flex}.iw-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-left:calc(-1 * var(--app-space-2));margin-right:calc(-1 * var(--app-space-2));padding-left:var(--app-space-2);padding-right:var(--app-space-2)}.iw-task-mobile-panel{display:block}.iw-excel-scroll{display:none}.iw-excel-sheet-wrap{overflow:visible}.iw-kpi-task-pagination--mobile{position:sticky;bottom:0;z-index:2;margin-top:var(--app-space-2);margin-left:calc(-1 * var(--app-space-2));margin-right:calc(-1 * var(--app-space-2));padding:10px var(--app-space-3) calc(10px + env(safe-area-inset-bottom,0px));background:#f8fafcf5;border-top:1px solid var(--app-border-soft);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);flex-direction:column;align-items:stretch;gap:10px}.iw-kpi-task-pagination--mobile .iw-kpi-task-pagination__info{text-align:center;font-size:12px}.iw-kpi-task-pagination--mobile .iw-kpi-task-pagination__actions{justify-content:center;flex-wrap:wrap}.iw-kpi-task-pagination--mobile .iw-kpi-task-pagination__actions>.iw-btn{flex:1 1 calc(50% - 20px);min-width:96px;justify-content:center}}@media (max-width: 480px){.iw-header-actions .iw-btn{flex:1 1 100%}.iw-page-header h1{font-size:1.15rem}}.iw-kpi-edit-upgrade-note{display:grid;gap:4px;padding:10px 12px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1e3a8a;font-size:12px;line-height:1.45}.iw-kpi-edit-upgrade-note strong{font-size:13px;color:#1d4ed8}.iw-kpi-edit-goal-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.iw-kpi-edit-goal-option,.iw-kpi-edit-check-row{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;cursor:pointer;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.iw-kpi-edit-goal-option:hover,.iw-kpi-edit-check-row:hover{border-color:#93c5fd;background:#f8fbff}.iw-kpi-edit-goal-option.is-selected,.iw-kpi-edit-check-row:has(input:checked){border-color:#2563eb;background:#eff6ff;box-shadow:0 0 0 1px #2563eb1f}.iw-kpi-edit-goal-option input,.iw-kpi-edit-check-row input{margin-top:3px}.iw-kpi-edit-goal-option span,.iw-kpi-edit-check-row span{display:grid;gap:3px}.iw-kpi-edit-goal-option strong,.iw-kpi-edit-check-row strong{font-size:13px;color:#0f172a}.iw-kpi-edit-goal-option small,.iw-kpi-edit-check-row small{font-size:12px;line-height:1.4;color:#64748b}.iw-kpi-edit-goal-hint{margin-top:8px}.iw-kpi-edit-calc-option.is-disabled{opacity:.58;cursor:not-allowed;background:#f8fafc}.iw-kpi-edit-calc-option.is-disabled input{cursor:not-allowed}@media (max-width: 720px){.iw-kpi-edit-goal-grid{grid-template-columns:1fr}}.iw-dialog-backdrop--kpi-edit{align-items:flex-start;justify-content:center;padding:clamp(12px,2vh,24px) clamp(14px,2vw,28px);overflow-y:auto}.iw-dialog--kpi-edit{width:min(1120px,calc(100vw - 32px));max-width:1120px;max-height:calc(100dvh - 32px);padding:0;overflow:hidden;display:flex;flex-direction:column;text-align:left;border-radius:18px}.iw-dialog--kpi-edit .iw-dialog__icon{flex:0 0 auto;width:44px;height:44px;margin:18px auto 8px;font-size:20px}.iw-dialog--kpi-edit .iw-dialog__title{flex:0 0 auto;margin:0;text-align:center;font-size:18px}.iw-dialog--kpi-edit .iw-dialog__message{flex:0 0 auto;margin:8px 24px 14px;text-align:center;font-size:13px}.iw-dialog--kpi-edit .iw-kpi-edit-form{flex:1 1 auto;min-height:0;overflow-y:auto;padding:16px 22px 14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;background:#f8fafc;border-top:1px solid #e2e8f0}.iw-dialog--kpi-edit .iw-kpi-edit-form::-webkit-scrollbar{width:8px}.iw-dialog--kpi-edit .iw-kpi-edit-form::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.iw-dialog--kpi-edit .iw-kpi-edit-upgrade-note,.iw-dialog--kpi-edit .iw-kpi-edit-section:first-of-type{grid-column:1 / -1}.iw-dialog--kpi-edit .iw-kpi-edit-upgrade-note{margin:0}.iw-dialog--kpi-edit .iw-kpi-edit-section{min-width:0;padding:14px;border:1px solid #e2e8f0;border-radius:14px;background:#fff;box-shadow:0 8px 22px #0f172a0a}.iw-dialog--kpi-edit .iw-kpi-edit-section__title{margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #eef2f7}.iw-dialog--kpi-edit .iw-kpi-edit-goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option,.iw-dialog--kpi-edit .iw-kpi-edit-check-row{min-width:0;padding:12px}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option strong,.iw-dialog--kpi-edit .iw-kpi-edit-check-row strong,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option__label{font-size:13px}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option small,.iw-dialog--kpi-edit .iw-kpi-edit-check-row small,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option__desc,.iw-dialog--kpi-edit .iw-dialog__field-hint{font-size:12px;line-height:1.45}.iw-dialog--kpi-edit .iw-dialog-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.iw-dialog--kpi-edit .iw-input,.iw-dialog--kpi-edit select.iw-input{min-height:42px}.iw-dialog--kpi-edit .iw-kpi-edit-formula-preview,.iw-dialog--kpi-edit .iw-kpi-edit-gps{margin-top:10px}.iw-dialog--kpi-edit .iw-dialog__actions{flex:0 0 auto;margin-top:0;padding:14px 22px 18px;background:#fff;border-top:1px solid #e2e8f0;box-shadow:0 -10px 24px #0f172a0d}.iw-dialog--kpi-edit .iw-dialog__actions .iw-btn{min-width:132px}@media (max-width: 980px){.iw-dialog--kpi-edit{width:min(760px,calc(100vw - 24px))}.iw-dialog--kpi-edit .iw-kpi-edit-form{grid-template-columns:1fr;padding:14px}.iw-dialog--kpi-edit .iw-kpi-edit-upgrade-note,.iw-dialog--kpi-edit .iw-kpi-edit-section:first-of-type{grid-column:auto}}@media (max-width: 640px){.iw-dialog-backdrop--kpi-edit{padding:0}.iw-dialog--kpi-edit{width:100vw;max-width:100vw;min-height:100dvh;max-height:100dvh;border-radius:0;border:none}.iw-dialog--kpi-edit .iw-dialog__icon{width:38px;height:38px;margin-top:12px;margin-bottom:6px}.iw-dialog--kpi-edit .iw-dialog__title{font-size:16px}.iw-dialog--kpi-edit .iw-dialog__message{margin:6px 16px 10px}.iw-dialog--kpi-edit .iw-kpi-edit-form{padding:12px;gap:12px}.iw-dialog--kpi-edit .iw-kpi-edit-section{padding:12px;border-radius:12px}.iw-dialog--kpi-edit .iw-kpi-edit-goal-grid,.iw-dialog--kpi-edit .iw-dialog-form-grid{grid-template-columns:1fr}.iw-dialog--kpi-edit .iw-dialog__actions{padding:12px}.iw-dialog--kpi-edit .iw-dialog__actions .iw-btn{flex:1 1 0;min-width:0}}.iw-dialog-backdrop--kpi-edit{position:fixed;top:0;right:0;bottom:0;left:0;align-items:center;justify-content:center;padding:clamp(14px,2.5vw,28px);overflow-y:auto;background:#0f172a6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.iw-dialog--kpi-edit{width:min(1180px,calc(100vw - 32px));max-width:1180px;max-height:min(92dvh,920px);padding:0;overflow:hidden;display:flex;flex-direction:column;text-align:left;border:1px solid rgba(226,232,240,.95);border-radius:22px;background:#fff;box-shadow:0 26px 80px #0f172a3d}.iw-dialog--kpi-edit .iw-dialog__icon{display:none}.iw-dialog--kpi-edit .iw-dialog__title{flex:0 0 auto;margin:0;padding:20px 28px 4px;text-align:left;font-size:clamp(18px,1.6vw,22px);font-weight:800;color:#0f172a;letter-spacing:-.025em}.iw-dialog--kpi-edit .iw-dialog__message{flex:0 0 auto;margin:0;padding:0 28px 18px;text-align:left;font-size:13px;line-height:1.45;color:#64748b;border-bottom:1px solid #e2e8f0}.iw-dialog--kpi-edit .iw-kpi-edit-form{flex:1 1 auto;min-height:0;overflow-y:auto;padding:20px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:16px;background:radial-gradient(circle at top left,rgba(37,99,235,.08),transparent 28%),linear-gradient(180deg,#f8fafc,#f1f5f9)}.iw-dialog--kpi-edit .iw-kpi-edit-form::-webkit-scrollbar{width:9px}.iw-dialog--kpi-edit .iw-kpi-edit-form::-webkit-scrollbar-track{background:transparent}.iw-dialog--kpi-edit .iw-kpi-edit-form::-webkit-scrollbar-thumb{background:#cbd5e1;border:2px solid #f8fafc;border-radius:999px}.iw-dialog--kpi-edit .iw-kpi-edit-upgrade-note,.iw-dialog--kpi-edit .iw-kpi-edit-weight-note,.iw-dialog--kpi-edit .iw-kpi-edit-section:first-of-type{grid-column:1 / -1}.iw-dialog--kpi-edit .iw-kpi-edit-upgrade-note,.iw-dialog--kpi-edit .iw-kpi-edit-weight-note,.iw-dialog--kpi-edit .iw-kpi-system-note{margin:0;padding:13px 15px;border-radius:16px;font-size:13px;line-height:1.5;box-shadow:0 8px 22px #1e40af0f}.iw-dialog--kpi-edit .iw-kpi-edit-upgrade-note{border:1px solid #bfdbfe;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1e3a8a}.iw-dialog--kpi-edit .iw-kpi-edit-weight-note{border:1px solid #bae6fd;background:linear-gradient(135deg,#f0f9ff,#e0f2fe);color:#075985}.iw-dialog--kpi-edit .iw-kpi-edit-weight-note--warn{border-color:#fbbf24;background:linear-gradient(135deg,#fffbeb,#fef3c7);color:#92400e}.iw-dialog--kpi-edit .iw-kpi-system-note{display:grid;gap:4px;border:1px solid #bbf7d0;background:linear-gradient(135deg,#f0fdf4,#dcfce7);color:#166534}.iw-dialog--kpi-edit .iw-kpi-system-note strong{color:#15803d}.iw-dialog--kpi-edit .iw-kpi-edit-section{min-width:0;padding:16px;border:1px solid rgba(226,232,240,.95);border-radius:18px;background:#fffffff5;box-shadow:0 12px 34px #0f172a0f}.iw-dialog--kpi-edit .iw-kpi-edit-section__title{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding-bottom:10px;border-bottom:1px solid #eef2f7;color:#0f172a;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.055em}.iw-dialog--kpi-edit .iw-kpi-edit-section__title:before{content:"";width:8px;height:8px;border-radius:999px;background:#2563eb;box-shadow:0 0 0 4px #2563eb1a}.iw-dialog--kpi-edit .iw-dialog-form-grid,.iw-dialog--kpi-edit .iw-kpi-edit-goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.iw-dialog--kpi-edit .iw-kpi-edit-calc-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:14px}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option,.iw-dialog--kpi-edit .iw-kpi-edit-check-row{min-width:0;padding:13px 14px;border:1px solid #dbe3ef;border-radius:15px;background:#fff;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option:hover,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option:hover,.iw-dialog--kpi-edit .iw-kpi-edit-check-row:hover{transform:translateY(-1px);border-color:#93c5fd;background:#f8fbff;box-shadow:0 10px 22px #2563eb14}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option.is-selected,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option.is-selected,.iw-dialog--kpi-edit .iw-kpi-edit-check-row:has(input:checked){border-color:#2563eb;background:linear-gradient(135deg,#eff6ff,#fff);box-shadow:0 0 0 1px #2563eb24,0 12px 26px #2563eb1a}.iw-dialog--kpi-edit .iw-kpi-edit-calc-option.is-disabled{opacity:.58;transform:none;cursor:not-allowed;background:#f8fafc;box-shadow:none}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option input,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option input,.iw-dialog--kpi-edit .iw-kpi-edit-check-row input{accent-color:#2563eb;margin-top:3px}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option strong,.iw-dialog--kpi-edit .iw-kpi-edit-check-row strong,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option__label{color:#0f172a;font-size:13px;font-weight:800}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option small,.iw-dialog--kpi-edit .iw-kpi-edit-check-row small,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option__desc,.iw-dialog--kpi-edit .iw-dialog__field-hint{color:#64748b;font-size:12px;line-height:1.48}.iw-dialog--kpi-edit .iw-dialog__field{min-width:0;margin:0}.iw-dialog--kpi-edit .iw-dialog__field-label{display:block;margin-bottom:7px;color:#334155;font-size:12px;font-weight:800}.iw-dialog--kpi-edit .iw-input,.iw-dialog--kpi-edit select.iw-input,.iw-dialog--kpi-edit .iw-kpi-unit-select select,.iw-dialog--kpi-edit .iw-kpi-unit-custom{width:100%;min-height:44px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#0f172a;font-size:14px;transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}.iw-dialog--kpi-edit .iw-input:focus,.iw-dialog--kpi-edit select.iw-input:focus,.iw-dialog--kpi-edit .iw-kpi-unit-select select:focus,.iw-dialog--kpi-edit .iw-kpi-unit-custom:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 4px #2563eb21;background:#fff}.iw-dialog--kpi-edit .iw-kpi-readonly-box{min-height:44px;display:flex;align-items:center;padding:10px 12px;border:1px solid #bbf7d0;border-radius:12px;background:#f0fdf4;color:#166534;font-size:14px;font-weight:700}.iw-dialog--kpi-edit .iw-kpi-edit-formula-preview{margin-top:12px;padding:12px 14px;border:1px dashed #93c5fd;border-radius:14px;background:linear-gradient(135deg,#eff6ff,#f8fafc);color:#1e3a8a;font-size:13px;line-height:1.5}.iw-dialog--kpi-edit .iw-kpi-edit-formula-preview__label{color:#1d4ed8;font-weight:800}.iw-dialog--kpi-edit .iw-radio-options{display:flex;flex-wrap:wrap;gap:10px}.iw-dialog--kpi-edit .iw-radio-label{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #e2e8f0;border-radius:999px;background:#fff}.iw-dialog--kpi-edit .iw-radio-label input{accent-color:#2563eb}.iw-dialog--kpi-edit .iw-dialog__actions{position:sticky;bottom:0;z-index:2;flex:0 0 auto;margin:0;padding:14px 24px 18px;display:flex;justify-content:flex-end;gap:12px;background:#fffffff5;border-top:1px solid #e2e8f0;box-shadow:0 -14px 32px #0f172a14;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.iw-dialog--kpi-edit .iw-dialog__actions .iw-btn{min-width:132px;min-height:42px;border-radius:12px}@media (max-width: 1024px){.iw-dialog--kpi-edit{width:min(820px,calc(100vw - 24px))}.iw-dialog--kpi-edit .iw-kpi-edit-form{grid-template-columns:1fr}.iw-dialog--kpi-edit .iw-kpi-edit-upgrade-note,.iw-dialog--kpi-edit .iw-kpi-edit-weight-note,.iw-dialog--kpi-edit .iw-kpi-edit-section:first-of-type{grid-column:auto}}@media (max-width: 720px){.iw-dialog-backdrop--kpi-edit{padding:0;align-items:stretch}.iw-dialog--kpi-edit{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:none;border-radius:0}.iw-dialog--kpi-edit .iw-dialog__title{padding:14px 16px 3px;font-size:17px}.iw-dialog--kpi-edit .iw-dialog__message{padding:0 16px 12px;font-size:12px}.iw-dialog--kpi-edit .iw-kpi-edit-form{padding:12px;gap:12px}.iw-dialog--kpi-edit .iw-kpi-edit-section,.iw-dialog--kpi-edit .iw-kpi-edit-upgrade-note,.iw-dialog--kpi-edit .iw-kpi-edit-weight-note{border-radius:14px;padding:12px}.iw-dialog--kpi-edit .iw-dialog-form-grid,.iw-dialog--kpi-edit .iw-kpi-edit-goal-grid,.iw-dialog--kpi-edit .iw-kpi-edit-calc-options{grid-template-columns:1fr;gap:10px}.iw-dialog--kpi-edit .iw-kpi-edit-goal-option,.iw-dialog--kpi-edit .iw-kpi-edit-calc-option,.iw-dialog--kpi-edit .iw-kpi-edit-check-row{padding:12px;border-radius:14px}.iw-dialog--kpi-edit .iw-input,.iw-dialog--kpi-edit select.iw-input,.iw-dialog--kpi-edit .iw-kpi-unit-select select,.iw-dialog--kpi-edit .iw-kpi-unit-custom{min-height:46px;font-size:16px}.iw-dialog--kpi-edit .iw-dialog__actions{padding:10px 12px calc(10px + env(safe-area-inset-bottom));gap:10px}.iw-dialog--kpi-edit .iw-dialog__actions .iw-btn{flex:1 1 0;min-width:0}}@media (max-width: 420px){.iw-dialog--kpi-edit .iw-dialog__actions{flex-direction:column-reverse}.iw-dialog--kpi-edit .iw-dialog__actions .iw-btn{width:100%}}.iw-report-history-page-links{width:100%}.iw-report-history-list-wrap{display:flex;flex-direction:column;gap:var(--app-space-3)}.iw-report-history-page-links .iw-report-history-list-wrap{margin-bottom:20px}.iw-report-history-page-links .iw-report-history-title,.iw-report-history-list-head .iw-report-history-title{font-size:1.08rem}.iw-report-history-page-links .iw-report-view-picker-select{margin-top:0}.iw-report-history-detail--picker,.iw-report-history-detail{margin-top:20px}.iw-report-history-detail--picker .iw-report-detail,.iw-report-history-detail .iw-report-detail{padding-top:2px}.iw-report-history-detail--picker .iw-report-field-grid,.iw-report-history-detail .iw-report-field-grid{grid-template-columns:repeat(2,minmax(260px,1fr));gap:14px}.iw-report-history-detail--picker .iw-report-field,.iw-report-history-detail .iw-report-field{padding:16px 18px;border-radius:14px}.iw-report-history-detail--picker .iw-report-field--wide,.iw-report-history-detail .iw-report-field--wide{grid-column:1 / -1}.iw-report-field--error{box-shadow:inset 4px 0 #ef4444}@media (max-width: 760px){.iw-report-history-detail--picker .iw-report-field-grid,.iw-report-history-detail .iw-report-field-grid{grid-template-columns:1fr}}@media (max-width: 768px){.iw-report-view-top{flex-direction:column;align-items:stretch;gap:var(--app-space-3);margin-bottom:var(--app-space-5)}.iw-report-view-dept{margin-left:0;padding:10px 14px;font-size:13px;background:var(--app-surface-muted);border:1px solid var(--app-border-soft);border-radius:var(--app-radius)}.iw-report-view-page .iw-report-panel__card{margin-top:0;border-radius:14px}.iw-report-panel-head{flex-direction:column;align-items:stretch;gap:var(--app-space-3);padding:var(--app-space-4) var(--app-space-4) var(--app-space-3)}.iw-report-panel-title{font-size:1.15rem;line-height:1.35}.iw-report-panel-meta{margin-top:6px;font-size:12px}.iw-report-status-pill{align-self:flex-start;padding:8px 14px}.iw-report-panel-main{padding:var(--app-space-4);gap:var(--app-space-5)}.iw-report-panel__card .iw-kpi-progress-banner{margin:0 var(--app-space-4) var(--app-space-4);padding:12px 14px;font-size:13px}.iw-report-panel__card .iw-report-reviewed-banner{margin:0 var(--app-space-4) var(--app-space-4)}.iw-report-history-page-links .iw-report-history-list-wrap{margin-bottom:var(--app-space-4)}.iw-report-history-list-head{margin-bottom:0}.iw-report-history-detail--picker,.iw-report-history-detail{margin-top:var(--app-space-4)}.iw-report-history-detail--picker .iw-report-field-grid,.iw-report-history-detail .iw-report-field-grid{gap:var(--app-space-3)}.iw-report-history-detail--picker .iw-report-field,.iw-report-history-detail .iw-report-field{padding:14px 16px}.iw-report-detail-title--compact{margin-bottom:var(--app-space-3);padding-bottom:var(--app-space-3)}.iw-report-photo-grid{gap:12px}.iw-report-photo-grid-hint{margin-bottom:12px}.iw-report-approval-card,.iw-report-reject-card{margin-top:var(--app-space-5);padding:var(--app-space-4);padding-bottom:var(--app-space-5)}.iw-report-approval-title{margin-bottom:var(--app-space-3)}.iw-report-approval-field{margin-bottom:var(--app-space-4)}.iw-report-approval-field .iw-input,.iw-report-approval-field textarea{min-height:96px}.iw-report-history-list-wrap .iw-report-view-picker-select{padding:8px 32px 8px 12px;font-size:14px}}.iw-kpi-plan-page{background:#f0f2f5;margin:calc(-1 * var(--app-space-5, 24px));margin-bottom:0;padding:var(--app-space-5, 24px);min-height:calc(100vh - 80px);width:100%;max-width:none;box-sizing:border-box}.iw-kpi-plan-page .iw-page-header{background:transparent;margin-bottom:8px}.iw-kpi-plan-page .iw-page-header h1{font-size:1.35rem;font-weight:700;margin:4px 0 6px}.iw-kpi-plan-subtitle{margin:0;font-size:14px;color:#64748b}.iw-kpi-plan-subtitle strong{color:#1e293b}.iw-kpi-stepper{display:flex;align-items:flex-start;justify-content:center;max-width:720px;margin:28px auto 32px;padding:0 16px}.iw-kpi-stepper__track{display:flex;align-items:flex-start;width:100%;position:relative}.iw-kpi-stepper__track:before{content:"";position:absolute;top:18px;left:12%;right:12%;height:2px;background:#e2e8f0;z-index:0}.iw-kpi-stepper__item{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;border:none;background:transparent;cursor:pointer;padding:0 8px;position:relative;z-index:1}.iw-kpi-stepper__item:disabled{cursor:not-allowed;opacity:.55}.iw-kpi-stepper__num{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:15px;background:#fff;color:#94a3b8;border:2px solid #e2e8f0;box-shadow:0 1px 2px #0000000a}.iw-kpi-stepper__item--active .iw-kpi-stepper__num,.iw-kpi-stepper__item--done .iw-kpi-stepper__num{background:#1890ff;color:#fff;border-color:#1890ff}.iw-kpi-stepper__label{font-size:13px;font-weight:500;color:#64748b;text-align:center;line-height:1.3}.iw-kpi-stepper__item--active .iw-kpi-stepper__label{color:#1890ff;font-weight:600}.iw-kpi-stepper__item--done .iw-kpi-stepper__label{color:#334155}.iw-kpi-card{background:#fff;border-radius:10px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0f172a0d;padding:22px 26px;margin-bottom:16px}.iw-kpi-card__title{margin:0 0 20px;font-size:15px;font-weight:700;color:#1e293b}.iw-kpi-card__title--sm{margin-bottom:16px}.iw-kpi-req{color:#ff4d4f;margin-left:2px}.iw-kpi-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 20px}.iw-kpi-field-grid--full{grid-template-columns:1fr}.iw-kpi-field-grid .iw-kpi-field--span2{grid-column:1 / -1}@media (max-width: 640px){.iw-kpi-field-grid{grid-template-columns:1fr}}.iw-kpi-field{display:flex;flex-direction:column;gap:6px}.iw-kpi-field__label{font-size:13px;font-weight:500;color:#334155}.iw-kpi-field__hint{font-size:12px;color:#94a3b8;margin-top:2px}.iw-kpi-unit-custom{margin-top:2px}.iw-kpi-readonly-box{padding:8px 12px;border:1px dashed #cbd5e1;border-radius:6px;background:#f8fafc;font-size:14px;color:#475569}.iw-kpi-field--checkbox{flex-direction:row;align-items:flex-start;gap:8px;font-size:13px;color:#475569;line-height:1.45}.iw-kpi-field--checkbox input{margin-top:3px;flex-shrink:0}.iw-kpi-plan-page .iw-input,.iw-kpi-plan-page select.iw-input,.iw-kpi-plan-page textarea.iw-input{border:1px solid #d9d9d9;border-radius:6px;padding:8px 12px;font-size:14px;background:#fff;transition:border-color .2s,box-shadow .2s}.iw-kpi-plan-page .iw-input:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff26;outline:none}.iw-kpi-weight-wrap{display:flex;align-items:stretch;max-width:140px}.iw-kpi-weight-wrap .iw-input{border-top-right-radius:0;border-bottom-right-radius:0;border-right:none;flex:1;min-width:0}.iw-kpi-weight-suffix{display:flex;align-items:center;padding:0 12px;background:#fafafa;border:1px solid #d9d9d9;border-radius:0 6px 6px 0;color:#64748b;font-size:14px}.iw-kpi-goal-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}@media (max-width: 900px){.iw-kpi-goal-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.iw-kpi-goal-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:16px 10px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;cursor:pointer;transition:all .15s}.iw-kpi-goal-card:hover{border-color:#91caff}.iw-kpi-goal-card--active{border:2px solid #1890ff;background:#f0f7ff;padding:15px 9px}.iw-kpi-goal-card__icon{width:40px;height:40px;border-radius:8px;background:#f1f5f9;display:flex;align-items:center;justify-content:center;color:#64748b}.iw-kpi-goal-card--active .iw-kpi-goal-card__icon{background:#e6f4ff;color:#1890ff}.iw-kpi-goal-card__label{font-size:13px;font-weight:600;color:#1e293b}.iw-kpi-goal-card__hint{font-size:11px;color:#94a3b8;line-height:1.35}.iw-kpi-formula-box{padding:12px 16px;background:#e6f4ff;border:1px solid #91caff;border-radius:6px;font-size:13px;color:#0958d9;margin-bottom:16px}.iw-kpi-formula-box__label{display:block;font-size:12px;font-weight:600;color:#1677ff;margin-bottom:6px}.iw-kpi-wizard-layout{display:grid;grid-template-columns:1fr 320px;gap:16px;align-items:start}@media (max-width: 1024px){.iw-kpi-wizard-layout{grid-template-columns:1fr}}.iw-kpi-wizard-left{min-width:0}.iw-kpi-wizard-right .iw-kpi-card{position:sticky;top:16px}.iw-kpi-check-group{margin-bottom:18px}.iw-kpi-check-group__title{font-size:13px;font-weight:600;color:#334155;margin-bottom:10px}.iw-kpi-check{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569;margin-bottom:8px;cursor:pointer}.iw-kpi-check input[type=checkbox]{width:16px;height:16px;accent-color:#1890ff}.iw-kpi-textarea-wrap{position:relative}.iw-kpi-textarea-counter{position:absolute;right:10px;bottom:8px;font-size:11px;color:#94a3b8;pointer-events:none}.iw-kpi-textarea{min-height:88px;resize:vertical;padding-bottom:24px!important}.iw-kpi-preview-table-wrap{overflow-x:auto}.iw-kpi-preview-table{width:100%;border-collapse:collapse;font-size:13px}.iw-kpi-preview-table th{text-align:left;padding:10px 12px;background:#fafafa;border-bottom:1px solid #f0f0f0;font-weight:600;color:#64748b;font-size:12px;white-space:nowrap}.iw-kpi-preview-table td{padding:12px;border-bottom:1px solid #f0f0f0;color:#334155;vertical-align:top}.iw-kpi-preview-table tbody tr:last-child td{border-bottom:none}.iw-kpi-type-badge{display:inline-block;padding:2px 10px;border-radius:4px;font-size:12px;font-weight:500;background:#e6f4ff;color:#1677ff;border:1px solid #91caff}.iw-kpi-preview-empty{text-align:center;padding:32px 16px!important;color:#94a3b8}.iw-kpi-wizard-footer-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;padding:16px 24px;background:#fff;border-radius:8px;border:1px solid #f0f0f0;box-shadow:0 1px 2px #00000008}.iw-kpi-wizard-footer-bar__right{display:flex;gap:12px}.iw-kpi-plan-page .iw-btn-outline{border:1px solid #d9d9d9;background:#fff;color:#334155;border-radius:6px;padding:8px 20px;font-size:14px}.iw-kpi-plan-page .iw-btn-outline:hover{border-color:#1890ff;color:#1890ff}.iw-kpi-plan-page .iw-btn-primary{background:#1890ff;border:1px solid #1890ff;color:#fff;border-radius:6px;padding:8px 24px;font-size:14px;font-weight:500}.iw-kpi-plan-page .iw-btn-primary:hover{background:#096dd9;border-color:#096dd9}.iw-kpi-plan-page .iw-btn-ghost{background:transparent;border:1px solid transparent;color:#64748b;padding:8px 16px}.iw-kpi-step-card{max-width:640px;margin:0 auto}.iw-kpi-preview-row--draft td{background:#fafafa;color:#64748b}.iw-kpi-preview-row--draft td:first-child{font-style:italic}.iw-kpi-plan-hero{margin-bottom:18px}.iw-kpi-plan-hero__row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}.iw-kpi-plan-back{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:500;color:#64748b;text-decoration:none;padding:6px 0}.iw-kpi-plan-back:hover{color:#2563eb}.iw-kpi-plan-back svg{font-size:16px}.iw-kpi-btn-group{display:inline-flex;align-items:stretch;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 2px #0f172a0d;overflow:hidden}.iw-kpi-btn-group__item{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;color:#475569;background:transparent;border:none;border-right:1px solid #e2e8f0;text-decoration:none;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}.iw-kpi-btn-group__item:last-child{border-right:none}.iw-kpi-btn-group__item:hover{background:#f8fafc;color:#1e40af}.iw-kpi-btn-group__item svg{font-size:18px;opacity:.85}.iw-kpi-plan-hero__body{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.iw-kpi-plan-eyebrow{margin:0 0 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.iw-kpi-plan-hero h1{margin:0 0 6px;font-size:1.5rem;font-weight:700;color:#0f172a;letter-spacing:-.02em}.iw-kpi-assignee-chip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0f172a0f}.iw-kpi-assignee-chip__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8}.iw-kpi-assignee-chip strong{font-size:15px;color:#0f172a}.iw-kpi-assignee-chip__tag{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px;background:#eff6ff;color:#1d4ed8}.iw-kpi-plan-scope{margin-bottom:14px}.iw-kpi-context-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:10px 14px;margin-bottom:14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.iw-kpi-context-bar__meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.iw-kpi-context-bar__pill{font-weight:600;color:#1e40af;background:#eff6ff;padding:4px 10px;border-radius:6px;font-size:12px}.iw-kpi-context-bar__link{border:none;background:none;color:#2563eb;font-size:13px;font-weight:500;cursor:pointer;text-decoration:underline;text-underline-offset:2px;padding:4px 0}.iw-kpi-card__lead{margin:0 0 16px;font-size:14px;color:#64748b;line-height:1.5}.iw-kpi-member-card{max-width:640px}.iw-kpi-inline-tip{margin-bottom:14px;padding:10px 14px;font-size:13px;line-height:1.45;color:#334155;background:#f0f9ff;border:1px solid #bae6fd;border-radius:8px}.iw-kpi-done-card{text-align:center;padding:32px 28px 28px}.iw-kpi-done-card__icon{width:48px;height:48px;margin:0 auto 16px;border-radius:50%;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:22px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #16a34a59}.iw-kpi-done-card .iw-kpi-review-summary{justify-content:center;max-width:520px;margin-left:auto;margin-right:auto}.iw-kpi-done-card .iw-kpi-review-actions{justify-content:center}.iw-kpi-plan-page .iw-kpi-form-shell{max-width:none;width:100%;margin:0}.iw-kpi-form-card{background:#fff;border-radius:10px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0f172a0f;overflow:visible;padding-bottom:64px}.iw-kpi-inner-stepper{display:flex;align-items:flex-start;justify-content:center;padding:20px 28px 12px;border-bottom:1px solid #f1f5f9;background:linear-gradient(180deg,#fafbfc,#fff);position:relative}.iw-kpi-inner-stepper__line{flex:0 0 80px;height:2px;background:#e2e8f0;margin:18px 8px 0}.iw-kpi-inner-stepper__line--on{background:#1890ff}.iw-kpi-inner-stepper__item{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:140px;max-width:180px}.iw-kpi-inner-stepper__num{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:600;background:#fff;border:2px solid #e2e8f0;color:#94a3b8;margin-bottom:8px}.iw-kpi-inner-stepper__item--active .iw-kpi-inner-stepper__num,.iw-kpi-inner-stepper__item--done .iw-kpi-inner-stepper__num{background:#1890ff;border-color:#1890ff;color:#fff}.iw-kpi-inner-stepper__label{font-size:14px;font-weight:600;color:#1e293b}.iw-kpi-inner-stepper__item--active .iw-kpi-inner-stepper__label{color:#1890ff}.iw-kpi-inner-stepper__hint{font-size:11px;color:#94a3b8;margin-top:4px;line-height:1.35}.iw-kpi-form-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:0;align-items:start;overflow:visible}.iw-kpi-preview-sticky{position:sticky;top:14px;align-self:start}@media (max-width: 1024px){.iw-kpi-form-body{grid-template-columns:1fr}}.iw-kpi-form-main{padding:24px 28px;border-right:1px solid #f0f0f0}@media (max-width: 1024px){.iw-kpi-form-main{border-right:none;border-bottom:1px solid #f0f0f0}}.iw-kpi-form-section{margin-bottom:0;padding-bottom:0;border-bottom:none}.iw-kpi-form-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.iw-kpi-form-block{margin-bottom:20px;padding:16px 18px;border:1px solid #e8edf2;border-radius:10px;background:#fafbfc}.iw-kpi-form-block:last-child{margin-bottom:0}.iw-kpi-form-block__title{margin:0 0 14px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.iw-kpi-auto-panel{display:grid;gap:8px;padding:12px 14px;border-radius:8px;background:#eff6ff;border:1px solid #bfdbfe}.iw-kpi-auto-panel__row{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:start;font-size:13px;line-height:1.45}.iw-kpi-auto-panel__label{font-weight:600;color:#3b82f6}.iw-kpi-auto-panel__value{color:#1e3a8a;font-weight:500;word-break:break-word}.iw-kpi-weight-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:0 24px 16px;padding:12px 16px;border:1px solid #bfdbfe;border-radius:10px;background:#eff6ff;color:#1e3a8a}.iw-kpi-weight-bar--warn{border-color:#f59e0b;background:#fffbeb;color:#92400e}.iw-kpi-weight-bar__stats{display:flex;flex-wrap:wrap;gap:10px 20px}.iw-kpi-weight-bar__stat{display:flex;align-items:baseline;gap:6px;font-size:13px}.iw-kpi-weight-bar__label{color:inherit;opacity:.75}.iw-kpi-weight-bar__stat strong{font-size:15px;font-variant-numeric:tabular-nums}.iw-kpi-weight-bar__alert{margin:0;font-size:12px;line-height:1.4}.iw-kpi-weight-bar__alert a{color:inherit;font-weight:700;text-decoration:underline}.iw-kpi-scope-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.iw-kpi-scope-pill{display:inline-flex;align-items:center;gap:4px;padding:8px 14px;border-radius:8px;border:1px solid #e2e8f0;background:#fff;font-size:13px;color:#475569}.iw-kpi-scope-pill strong{color:#0f172a}.iw-kpi-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}@media (max-width: 640px){.iw-kpi-option-grid{grid-template-columns:1fr}}.iw-kpi-option-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;cursor:default}.iw-kpi-option-card--check{flex-direction:row;align-items:center;gap:10px;cursor:pointer;transition:border-color .15s,background .15s}.iw-kpi-option-card--check:hover{border-color:#93c5fd}.iw-kpi-option-card--active{border-color:#1890ff;background:#f0f7ff}.iw-kpi-option-card__choices{display:flex;flex-wrap:wrap;gap:12px 18px}.iw-kpi-option-card__check-label{font-size:13px;font-weight:500;color:#334155;line-height:1.4}.iw-kpi-task-kind-group{margin-bottom:20px}.iw-kpi-form-section--active .iw-kpi-form-section__title{color:#1890ff}.iw-kpi-form-section__title{margin:0 0 20px;font-size:15px;font-weight:700;color:#1e293b}.iw-kpi-period-row{display:grid;grid-template-columns:1fr 100px 36px;gap:8px;align-items:center}.iw-kpi-period-unit{font-weight:600;color:#64748b;text-align:center}.iw-kpi-info-box{padding:12px 16px;border-radius:6px;margin-bottom:16px;font-size:13px}.iw-kpi-info-box--green{background:#f6ffed;border:1px solid #b7eb8f;color:#389e0d}.iw-kpi-info-box p{margin:6px 0 0;color:#52c41a}.iw-kpi-radio-group{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.iw-kpi-radio{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.iw-kpi-preview-panel{padding:22px 20px;background:#f8fafc;border-left:1px solid #f1f5f9}@media (max-width: 1024px){.iw-kpi-preview-sticky{position:static;top:auto}.iw-kpi-preview-panel{position:static;top:auto;max-height:none;overflow:visible;border-left:none;border-top:1px solid #f1f5f9}}.iw-kpi-preview-panel__title{margin:0 0 16px;font-size:14px;font-weight:700;color:#1e293b}.iw-kpi-preview-dl{margin:0 0 16px}.iw-kpi-preview-dl>div{display:grid;grid-template-columns:88px 1fr;gap:8px;margin-bottom:10px;font-size:12px}.iw-kpi-preview-dl dt{color:#94a3b8;font-weight:500}.iw-kpi-preview-dl dd{margin:0;color:#334155;font-weight:500}.iw-kpi-preview-box{padding:12px 14px;border-radius:6px;font-size:12px;margin-bottom:12px}.iw-kpi-preview-box strong{display:block;margin-bottom:8px;font-size:12px}.iw-kpi-preview-box pre{margin:0;white-space:pre-wrap;font-family:inherit;line-height:1.5}.iw-kpi-preview-box ul{margin:0;padding-left:18px}.iw-kpi-preview-box li{margin-bottom:4px}.iw-kpi-preview-box--blue{background:#e6f4ff;border:1px solid #91caff;color:#0958d9}.iw-kpi-preview-box--yellow{background:#fffbe6;border:1px solid #ffe58f;color:#ad6800}.iw-kpi-plan-page .iw-kpi-form-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;padding-bottom:max(14px,env(safe-area-inset-bottom));border-top:1px solid #e2e8f0;background:#fff;gap:12px;flex-wrap:wrap;position:fixed;left:calc(var(--layout-sidebar-width, 0px) + clamp(16px,2.5vw,28px));right:clamp(16px,2.5vw,28px);bottom:0;z-index:40;border-radius:10px 10px 0 0;box-shadow:0 -4px 16px #0f172a14}.iw-kpi-form-footer__right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.iw-kpi-final-step__lead{margin:0 0 10px;color:#334155;font-size:14px}.iw-kpi-final-checklist{margin-top:12px;display:grid;gap:8px}.iw-kpi-final-back-btn{margin-top:14px}.iw-kpi-mixed-hint{margin-bottom:16px}.iw-kpi-task-kind-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-top:8px}.iw-kpi-task-kind-card{display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;font-size:13px}.iw-kpi-task-kind-card input{position:absolute;opacity:0;pointer-events:none}.iw-kpi-task-kind-card strong{font-size:13px;color:#0f172a}.iw-kpi-task-kind-card span{font-size:12px;color:#64748b;line-height:1.4}.iw-kpi-task-kind-card--active{border-color:#1890ff;background:#e6f4ff}.iw-kpi-scope-list{margin:8px 0 0;padding-left:18px;line-height:1.6}.iw-agg-panel__hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.iw-agg-panel__badge{display:inline-block;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#0958d9;background:#e6f4ff;padding:2px 8px;border-radius:4px;margin-bottom:6px}.iw-agg-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:20px}.iw-agg-stat{padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.iw-agg-stat__label{display:block;font-size:12px;color:#64748b}.iw-agg-stat__value{display:block;font-size:22px;margin:4px 0}.iw-agg-table-wrap{margin-bottom:16px}.iw-agg-table-wrap h4{margin:0 0 8px;font-size:14px}.iw-agg-table{width:100%;border-collapse:collapse;font-size:13px}.iw-agg-table th,.iw-agg-table td{border:1px solid #e2e8f0;padding:8px 10px;text-align:left}.iw-agg-table th{background:#f1f5f9}.iw-agg-fail-list ul{margin:0;padding-left:18px}.iw-agg-footnote{font-size:12px;margin-top:12px}.iw-kpi-form-footer__right{display:flex;gap:12px}.iw-kpi-btn-continue{display:inline-flex;align-items:center;gap:6px}.iw-kpi-scope-notice{max-width:900px;margin:0 auto 16px}.iw-kpi-manage-page{width:100%;max-width:none;box-sizing:border-box}.iw-kpi-manage-page .iw-hrm-panel,.iw-kpi-manage-page .iw-hrm-table,.iw-kpi-manage-page .iw-hrm-table .iw-excel-scroll{width:100%;box-sizing:border-box}.iw-kpi-manage-page .iw-task-mobile-panel{display:block}.iw-kpi-manage-page .iw-hrm-table .iw-excel-scroll{display:none}.iw-kpi-manage-page .iw-task-mobile-list{display:grid;grid-template-columns:1fr;gap:12px;padding:12px 16px;margin:0;list-style:none;align-items:stretch}.iw-kpi-manage-page .iw-task-mobile-list>li.iw-task-mobile-card{min-width:0;max-width:100%;display:flex;flex-direction:column;align-self:stretch;min-height:21.5rem}.iw-kpi-manage-page .iw-task-mobile-card__inner{display:flex;flex-direction:column;flex:1 1 auto;min-height:0}.iw-kpi-manage-page .iw-task-mobile-card__title{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;height:2.7em;flex-shrink:0}.iw-kpi-manage-page .iw-task-mobile-card__assignee{flex-shrink:0;height:1.35em;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.iw-kpi-manage-page .iw-task-mobile-card__progress{flex-shrink:0}.iw-kpi-manage-page .iw-task-mobile-card__progress-foot{min-height:3rem}.iw-kpi-manage-page .iw-task-mobile-card__progress-detail{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.iw-kpi-manage-page .iw-task-mobile-kpi-main{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4;height:1.4em}.iw-kpi-manage-page .iw-task-mobile-kpi-sub{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;height:2.7em;line-height:1.35;margin-top:2px}.iw-kpi-manage-page .iw-task-mobile-field:first-child .iw-task-mobile-field__value{min-height:calc(4.1em + 2px)}.iw-kpi-manage-page .iw-task-mobile-field:nth-child(2) .iw-task-mobile-field__value{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:2.9em;line-height:1.45}.iw-kpi-manage-page .iw-task-mobile-card--compact .iw-task-mobile-field{min-height:4.5rem}.iw-kpi-manage-page .iw-task-mobile-card__fields{flex:1 1 auto;grid-template-rows:1fr 1fr;align-items:stretch}.iw-kpi-manage-page .iw-task-mobile-card__actions{margin-top:auto;flex-shrink:0;flex-direction:column;align-items:stretch;gap:8px}.iw-kpi-manage-page .iw-task-mobile-card__cta{flex:none;width:100%;min-height:36px;font-weight:600}.iw-kpi-manage-page .iw-task-mobile-card__manage-row{margin-top:0}.iw-kpi-manage-page .iw-task-mobile-list--compact{gap:10px}@media (min-width: 768px){.iw-kpi-manage-page .iw-task-mobile-list{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:14px;padding:14px 16px}.iw-kpi-manage-page .iw-hrm-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:12px}.iw-kpi-manage-page .iw-hrm-stat{min-width:0}}@media (min-width: 1200px){.iw-kpi-manage-page .iw-task-mobile-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}}@media (max-width: 767px){.iw-kpi-manage-page .iw-task-mobile-list{padding:12px 14px}}.iw-hrm-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.iw-hrm-page-head__main h1{margin:2px 0 6px}.iw-hrm-scope-line{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;margin-bottom:14px;font-size:13px;line-height:1.45;color:#334155;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px}.iw-hrm-scope-line__label{flex-shrink:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#1d4ed8;background:#fff;padding:2px 8px;border-radius:4px;border:1px solid #93c5fd}.iw-hrm-scope-line__text{flex:1;min-width:0}.iw-hrm-stats{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.iw-hrm-stat{display:flex;flex-direction:column;gap:2px;min-width:88px;padding:10px 14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 2px #0f172a0a}.iw-hrm-stat--accent{border-color:#fcd34d;background:#fffbeb}.iw-hrm-stat__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:#64748b}.iw-hrm-stat__value{font-size:17px;font-weight:700;color:#0f172a;font-variant-numeric:tabular-nums}.iw-hrm-stat__value--ok{color:#16a34a}.iw-hrm-stat__value--warn{color:#dc2626}.iw-hrm-panel{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0f172a0f;overflow:hidden}.iw-hrm-panel__toolbar{padding:14px 16px 12px;border-bottom:1px solid #f1f5f9;background:linear-gradient(180deg,#fafbfc,#fff)}.iw-kpi-manage-page .iw-hrm-panel__toolbar{padding:16px;background:linear-gradient(180deg,#eff6ffb8,#fffffff5 60%),#fff}.iw-hrm-tabs{display:inline-flex;gap:4px;padding:3px;margin-bottom:12px;background:#f1f5f9;border-radius:8px}.iw-hrm-tabs button{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-radius:6px;font-size:13px;font-weight:600;color:#64748b;background:transparent;cursor:pointer;transition:background .15s,color .15s}.iw-hrm-tabs button.is-active{background:#fff;color:#1e40af;box-shadow:0 1px 2px #0f172a14}.iw-hrm-tabs__count{font-size:11px;font-weight:700;padding:1px 6px;border-radius:999px;background:#e2e8f0;color:#475569;font-variant-numeric:tabular-nums}.iw-hrm-tabs button.is-active .iw-hrm-tabs__count{background:#dbeafe;color:#1d4ed8}.iw-hrm-filters{display:grid;grid-template-columns:minmax(200px,1.6fr) repeat(3,minmax(120px,1fr));gap:10px 12px;align-items:end}.iw-kpi-manage-page .iw-hrm-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px;padding:12px;border:1px solid #dbeafe;border-radius:14px;background:#ffffffe0;box-shadow:0 8px 22px #0f172a0f}.iw-hrm-field{display:flex;flex-direction:column;gap:4px;min-width:0}.iw-kpi-manage-page .iw-hrm-field{flex:1 1 150px;gap:6px}.iw-hrm-field--grow{grid-column:span 1}.iw-kpi-manage-page .iw-hrm-field--grow{flex:2 1 320px}.iw-hrm-field__label{font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.03em}.iw-kpi-manage-page .iw-hrm-field__label{color:#475569;font-size:10px;font-weight:800;letter-spacing:.055em}.iw-hrm-field .iw-input{width:100%;min-height:36px;box-sizing:border-box}.iw-kpi-manage-page .iw-hrm-field .iw-input{height:42px;min-height:42px;padding:9px 12px;border-color:#cbd5e1;border-radius:12px;background-color:#fff;color:#0f172a;font-weight:600;box-shadow:0 1px 2px #0f172a0a}.iw-kpi-manage-page .iw-hrm-field .iw-input::placeholder{color:#94a3b8;font-weight:500}.iw-kpi-manage-page .iw-hrm-field .iw-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f624,0 4px 12px #0f172a14}.iw-hrm-filters-toggle{display:none;width:100%;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;padding:10px 12px;border:1px solid #dbeafe;border-radius:12px;background:#fff;color:#0f172a;font-size:13px;font-weight:700;cursor:pointer}.iw-hrm-filters-toggle__badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#dbeafe;color:#1d4ed8;font-size:11px;font-weight:800}.iw-hrm-filters-toggle__chevron{color:#64748b;font-size:11px}.iw-hrm-filters--collapsed{display:none!important}.iw-kpi-manage-page .iw-hrm-field input[type=search].iw-input{padding-left:38px;background-image:url("data:image/svg+xml,%3Csvg width='18' height='18' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='m21 21-4.35-4.35M19 11a8 8 0 1 1-16 0 8 8 0 0 1 16 0Z' stroke='%2364748b' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:12px 50%;background-size:16px 16px}.iw-hrm-copy-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}.iw-hrm-copy-bar__info{display:flex;align-items:flex-start;gap:10px;min-width:0}.iw-hrm-copy-bar__info svg{color:#64748b;margin-top:2px;flex-shrink:0}.iw-hrm-copy-bar__info strong{display:block;font-size:13px;color:#0f172a;margin-bottom:2px}.iw-hrm-copy-bar__info p{margin:0;font-size:12px;line-height:1.4}.iw-hrm-bulk-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:12px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:8px}.iw-hrm-bulk-bar__info{display:flex;align-items:center;gap:10px;min-width:0;color:#991b1b}.iw-hrm-bulk-bar__info svg{flex-shrink:0}.iw-hrm-bulk-bar__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.iw-hrm-bulk-bar__hint{color:#92400e;font-weight:500}.iw-btn-outline--warn{color:#b45309;border-color:#fcd34d;background:#fffbeb}.iw-btn-outline--warn:hover:not(:disabled){color:#92400e;border-color:#f59e0b;background:#fef3c7}.iw-hrm-copy-bar__actions{display:flex;flex-wrap:wrap;gap:8px}.iw-hrm-copy-bar--assignee{margin-top:8px}.iw-hrm-copy-bar__hint{margin:0;font-size:12px;line-height:1.4}.iw-dialog--wide{max-width:720px;text-align:left}.iw-dialog--wide .iw-dialog__icon{margin-left:0}.iw-dialog--wide .iw-dialog__title,.iw-dialog--wide .iw-dialog__message{text-align:left}.iw-kpi-copy-dialog{display:flex;flex-direction:column;gap:14px;margin-top:8px;text-align:left}.iw-kpi-copy-dialog__months{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.iw-kpi-copy-dialog__assignees{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:start}.iw-kpi-copy-dialog__arrow{display:flex;align-items:center;justify-content:center;padding-top:36px;color:#94a3b8}.iw-kpi-copy-assignee{margin:0;padding:12px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;display:flex;flex-direction:column;gap:8px;min-width:0}.iw-kpi-copy-assignee__legend{padding:0 4px;font-size:12px;font-weight:700;color:#334155}.iw-kpi-copy-assignee__hint{margin:0;font-size:12px}.iw-kpi-copy-dialog__summary{margin:0;padding:10px 12px;border-radius:8px;background:#eff6ff;border:1px solid #bfdbfe;font-size:13px;color:#1e3a8a}@media (max-width: 720px){.iw-kpi-copy-dialog__months,.iw-kpi-copy-dialog__assignees{grid-template-columns:1fr}.iw-kpi-copy-dialog__arrow{padding-top:0;transform:rotate(90deg)}}.iw-copy-moved-hint{margin:10px 0 0;font-size:13px}.iw-hrm-panel .iw-hrm-table.iw-excel-sheet-wrap{border:none;border-radius:0;box-shadow:none;border-top:none}.iw-hrm-panel__foot{padding:10px 16px;font-size:12px;color:#64748b;border-top:1px solid #f1f5f9;background:#fafbfc}.iw-hrm-panel__foot strong{color:#334155}.iw-employee-kpi-hub .iw-hrm-panel+.iw-hrm-panel,.iw-employee-kpi-hub .iw-employee-kpi-hub__auto-card{margin-top:16px}.iw-employee-kpi-hub__hint{margin:0;font-size:12px;align-self:center}.iw-employee-kpi-hub__report-panel{margin-top:16px}.iw-employee-kpi-hub__report-title{margin:0;font-size:15px;font-weight:600;color:#0f172a}.iw-excel-row-clickable{cursor:pointer}.iw-excel-row-clickable:hover{background:#f8fafc}@media (max-width: 960px){.iw-hrm-filters{grid-template-columns:1fr 1fr}.iw-hrm-field--grow{grid-column:1 / -1}.iw-kpi-manage-page .iw-hrm-filters{display:grid;grid-template-columns:1fr 1fr;gap:10px}.iw-kpi-manage-page .iw-hrm-field,.iw-kpi-manage-page .iw-hrm-field--grow{flex:initial}.iw-kpi-manage-page .iw-hrm-field--grow{grid-column:1 / -1}}@media (max-width: 560px){.iw-hrm-filters{grid-template-columns:1fr}.iw-kpi-manage-page{padding:12px}.iw-kpi-manage-page .iw-hrm-panel{border-radius:16px}.iw-kpi-manage-page .iw-hrm-panel__toolbar{padding:12px}.iw-hrm-filters-toggle{display:flex}.iw-kpi-manage-page .iw-hrm-tabs{display:flex;width:100%;margin-bottom:10px;overflow-x:auto}.iw-kpi-manage-page .iw-hrm-tabs button{flex:1 0 auto;justify-content:center;min-height:38px;padding:7px 10px;font-size:12px}.iw-kpi-manage-page .iw-hrm-filters{grid-template-columns:1fr;gap:8px;padding:10px;border-radius:12px;box-shadow:0 3px 12px #0f172a0d}.iw-kpi-manage-page .iw-hrm-field__label{font-size:10px;letter-spacing:.04em}.iw-kpi-manage-page .iw-hrm-field .iw-input{height:44px;min-height:44px;font-size:16px;border-radius:11px}.iw-kpi-manage-page .iw-hrm-copy-bar,.iw-kpi-manage-page .iw-hrm-bulk-bar{margin-top:10px;padding:10px;border-radius:12px}.iw-hrm-page-head{flex-direction:column}}@media (max-width: 640px){.iw-kpi-plan-hero__row{flex-direction:column;align-items:stretch}.iw-kpi-btn-group{width:100%}.iw-kpi-btn-group__item{flex:1;justify-content:center;padding:10px 8px}.iw-kpi-btn-group__item span{display:none}.iw-kpi-plan-hero__body{flex-direction:column;align-items:stretch}.iw-kpi-plan-page .iw-kpi-form-footer{padding:12px 16px;padding-bottom:max(12px,env(safe-area-inset-bottom))}.iw-kpi-form-footer__right{flex:1;justify-content:flex-end}}.iw-staff-reports-page .iw-staff-reports-subtitle{margin:4px 0 0;font-size:14px;max-width:40rem}.iw-staff-reports-flow{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;margin-bottom:16px;padding:10px 14px;border-radius:12px;background:linear-gradient(90deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;font-size:13px;color:#475569}.iw-staff-reports-flow__step{font-weight:600;color:#334155}.iw-staff-reports-flow__step--ok{color:#047857}.iw-staff-reports-flow__step--warn{color:#b45309}.iw-staff-reports-flow__sep{font-size:16px!important;color:#94a3b8}.iw-staff-reports-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.iw-staff-reports-stat{display:flex;align-items:flex-start;gap:12px;padding:14px 16px!important}.iw-staff-reports-stat__icon{flex-shrink:0;margin-top:2px;font-size:22px!important;color:#64748b}.iw-staff-reports-stat__icon--ok{color:#16a34a}.iw-staff-reports-stat__icon--danger{color:#dc2626}.iw-staff-reports-stat__body{display:flex;flex-direction:column;gap:2px;min-width:0}.iw-staff-reports-stat__body .iw-hrm-stat__value{font-size:1.35rem;font-weight:700;line-height:1.2}@media (max-width: 900px){.iw-staff-reports-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 520px){.iw-staff-reports-stats{grid-template-columns:1fr}}.iw-hrm-stat--success{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.iw-staff-reports-stat-period{font-size:15px;font-weight:600}.iw-staff-reports-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 20px}.iw-staff-reports-toolbar .iw-hrm-tabs{margin-bottom:0}.iw-staff-reports-filters{display:flex;flex-wrap:wrap;gap:10px 12px;flex:1 1 280px;justify-content:flex-end;min-width:0}.iw-staff-reports-filters .iw-hrm-field{flex:1 1 140px;max-width:200px}.iw-staff-reports-filters .iw-hrm-field--grow{flex:1 1 180px;max-width:260px}.iw-staff-reports-table-wrap{padding:0 16px 20px}.iw-staff-reports-table thead th{background:#f8fafc;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;white-space:nowrap}.iw-staff-reports-table tbody tr.iw-staff-reports-row{transition:background .15s ease,box-shadow .15s ease;cursor:pointer}.iw-staff-reports-table tbody tr.iw-staff-reports-row:hover{background:#f1f5f9;box-shadow:inset 3px 0 #3b82f6}.iw-staff-reports-table tbody tr.iw-staff-reports-row:focus-visible{outline:2px solid #2563eb;outline-offset:-2px}.iw-staff-reports-table tbody tr.iw-staff-reports-row:hover .iw-staff-reports-view-btn{box-shadow:0 2px 8px #2563eb2e}.iw-staff-reports-table tbody tr.iw-staff-reports-row:hover .iw-staff-reports-row-chevron{opacity:1;transform:translate(3px);color:#2563eb}.iw-staff-reports-table tbody td{padding-top:14px;padding-bottom:14px;vertical-align:middle}.iw-staff-reports-datetime{display:flex;flex-direction:column;gap:2px;line-height:1.25}.iw-staff-reports-datetime__date{font-size:13px;font-weight:600;color:#0f172a}.iw-staff-reports-datetime__time{font-size:12px;color:#64748b}.iw-staff-reports-assignee{font-weight:600;color:#0f172a}.iw-staff-reports-task-title{display:block;font-weight:600;font-size:13px;color:#1e293b;line-height:1.35;max-width:280px}.iw-staff-reports-content-preview{margin:0;max-width:360px;font-size:13px;line-height:1.45;color:#475569;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.iw-staff-reports-actions-inner{display:flex;flex-wrap:nowrap;gap:6px;align-items:center;justify-content:flex-end}.iw-staff-reports-view-btn{display:inline-flex;align-items:center;justify-content:center;gap:5px;min-height:36px;padding:0 12px;border-radius:10px;font-size:13px;font-weight:600;line-height:1;color:#1d4ed8;text-decoration:none;white-space:nowrap;background:linear-gradient(180deg,#eff6ff,#dbeafe);border:1px solid #93c5fd;box-shadow:0 1px 2px #2563eb14;transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .12s ease}.iw-staff-reports-view-btn__icon{font-size:17px!important;opacity:.92}.iw-staff-reports-view-btn:hover{color:#1e3a8a;background:linear-gradient(180deg,#dbeafe,#bfdbfe);border-color:#60a5fa;text-decoration:none;transform:translateY(-1px)}.iw-staff-reports-view-btn:active{transform:translateY(0);box-shadow:none}.iw-staff-reports-view-btn:focus-visible{outline:2px solid #2563eb;outline-offset:2px}.iw-staff-reports-reject-btn{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;min-height:36px;padding:0;border-radius:10px;color:#b91c1c;cursor:pointer;background:#fff;border:1px solid #fecaca;opacity:.55;transition:background .15s ease,border-color .15s ease,color .15s ease,opacity .15s ease}.iw-staff-reports-row:hover .iw-staff-reports-reject-btn,.iw-staff-reports-reject-btn:focus-visible{opacity:1}.iw-staff-reports-reject-btn:hover{color:#991b1b;background:#fef2f2;border-color:#f87171;opacity:1}.iw-staff-reports-reject-btn:focus-visible{outline:2px solid #dc2626;outline-offset:2px}.iw-staff-reports-page .iw-report-status-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap}.iw-report-status-badge__dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:currentColor;opacity:.85}.iw-staff-reports-page .iw-report-status-badge--approved{background:#dcfce7;color:#166534;border:1px solid #bbf7d0}.iw-staff-reports-page .iw-report-status-badge--rejected{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.iw-staff-reports-page .iw-report-status-badge--default{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.iw-staff-reports-col-actions{width:1%;white-space:nowrap;padding-right:12px!important}.iw-staff-reports-actions{display:flex;align-items:center;justify-content:flex-end;gap:4px}.iw-staff-reports-row-chevron{flex-shrink:0;font-size:20px!important;color:#94a3b8;opacity:0;transition:opacity .15s ease,transform .15s ease,color .15s ease}.iw-staff-reports-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:56px 24px 64px;text-align:center;max-width:420px;margin:0 auto}.iw-staff-reports-empty__icon{font-size:48px!important;width:48px;height:48px;color:#94a3b8;opacity:.85}.iw-staff-reports-empty__title{margin:0;font-size:16px;font-weight:600;color:#334155;line-height:1.45}.iw-staff-reports-reject-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:iw-staff-reports-fade-in .18s ease-out}@keyframes iw-staff-reports-fade-in{0%{opacity:0}to{opacity:1}}.iw-staff-reports-reject-dialog{width:100%;max-width:440px;padding:22px 24px;border-radius:16px;background:#fff;border:1px solid #e2e8f0;box-shadow:0 24px 48px #0f172a2e,0 4px 12px #0f172a14;animation:iw-staff-reports-dialog-in .22s ease-out}@keyframes iw-staff-reports-dialog-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.iw-staff-reports-reject-dialog__title{margin:0 0 8px;font-size:1.15rem;font-weight:700;color:#0f172a}.iw-staff-reports-reject-dialog__meta{margin:0 0 16px;font-size:13px;color:#64748b;line-height:1.45}.iw-staff-reports-reject-dialog__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.iw-staff-reports-page .iw-quick-reject-box__label{display:block;margin-bottom:6px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#64748b}.iw-staff-reports-table tbody tr.iw-report-row-rejected{background:#fef2f2}.iw-staff-reports-table tbody tr.iw-report-row-rejected:hover{background:#fee2e2!important;box-shadow:inset 3px 0 #ef4444}@media (max-width: 900px){.iw-staff-reports-toolbar{flex-direction:column;align-items:stretch}.iw-staff-reports-filters{justify-content:stretch}.iw-staff-reports-filters .iw-hrm-field,.iw-staff-reports-filters .iw-hrm-field--grow{max-width:none;flex:1 1 100%}}@media (max-width: 768px){.iw-staff-reports-table thead{display:none}.iw-staff-reports-table tbody tr.iw-staff-reports-row{display:block;margin-bottom:12px;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;box-shadow:0 1px 3px #0f172a0d}.iw-staff-reports-table tbody tr.iw-staff-reports-row:hover{box-shadow:0 4px 14px #0f172a14}.iw-staff-reports-table tbody td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:10px 14px;border-bottom:1px solid #f1f5f9}.iw-staff-reports-table tbody td:last-child{border-bottom:none;padding-top:12px;padding-bottom:14px}.iw-staff-reports-table tbody td:before{content:attr(data-label);flex-shrink:0;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;min-width:88px;padding-top:2px}.iw-staff-reports-table tbody td.iw-staff-reports-actions:before{display:none}.iw-staff-reports-actions{width:100%;justify-content:space-between}.iw-staff-reports-actions-inner{flex:1;justify-content:flex-start}.iw-staff-reports-view-btn{flex:1;max-width:200px}.iw-staff-reports-reject-btn,.iw-staff-reports-row-chevron{opacity:1}.iw-staff-reports-task-title,.iw-staff-reports-content-preview{max-width:none;text-align:right}}.iw-kpi-farmer-link-box{border-color:#bfdbfe;background:#f8fbff}.iw-kpi-radio--stack{align-items:flex-start}.iw-kpi-radio--stack span{display:grid;gap:4px}.iw-kpi-radio--stack strong{color:#0f172a;font-size:14px}.iw-kpi-radio--stack small{color:#64748b;font-size:12px;line-height:1.45}.iw-kpi-weight-guard,.iw-kpi-weight-inline-note,.iw-kpi-edit-weight-note{display:flex;flex-direction:column;gap:6px;padding:12px 14px;margin:12px 0;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1e3a8a;font-size:13px;line-height:1.45}.iw-kpi-weight-guard a,.iw-kpi-weight-inline-note a{color:#1d4ed8;font-weight:700;text-decoration:underline}.iw-kpi-weight-guard strong,.iw-kpi-weight-inline-note strong,.iw-kpi-edit-weight-note strong{font-weight:800}.iw-kpi-weight-inline-note{margin:0 0 14px}.iw-kpi-weight-guard,.iw-kpi-weight-inline-note--warn,.iw-kpi-edit-weight-note--warn{border-color:#f59e0b;background:#fffbeb;color:#92400e}.iw-kpi-edit-weight-note small{color:inherit;font-weight:600}.iw-kpi-field__hint,.iw-dialog__field-hint{display:block;margin-top:6px;color:#64748b;font-size:12px;line-height:1.35}.iw-kpi-field__hint--danger,.iw-dialog__field-hint--danger{color:#b45309;font-weight:700}.iw-kpi-system-note{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid #bfdbfe;border-radius:14px;background:#eff6ff;color:#1e3a8a;margin-bottom:16px}.iw-kpi-system-note strong{color:#1d4ed8}.iw-kpi-system-note span{line-height:1.5}.iw-new-farmers-drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1500;display:flex;justify-content:flex-end;pointer-events:none}.iw-new-farmers-drawer__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;border:0;background:#0f172a6b;cursor:pointer;pointer-events:auto}.iw-new-farmers-drawer__panel{position:relative;width:min(1040px,calc(100vw - 32px));height:100vh;background:#fff;box-shadow:-24px 0 60px #0f172a38;padding:28px;overflow:auto;pointer-events:auto}.iw-new-farmers-drawer__header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:18px;border-bottom:1px solid #e2e8f0}.iw-new-farmers-drawer__eyebrow{margin:0 0 6px;color:#2563eb;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.iw-new-farmers-drawer__header h2{margin:0;font-size:26px;line-height:1.2;color:#0f172a}.iw-new-farmers-drawer__header p:last-child{margin:8px 0 0;color:#64748b}.iw-new-farmers-drawer__close{width:40px;height:40px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:#334155;font-size:26px;line-height:1;cursor:pointer}.iw-new-farmers-drawer__summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:18px 0}.iw-new-farmers-drawer__summary div{border:1px solid #dbeafe;border-radius:16px;background:#f8fbff;padding:14px 16px}.iw-new-farmers-drawer__summary span{display:block;color:#64748b;font-size:12px;margin-bottom:6px}.iw-new-farmers-drawer__summary strong{color:#0f172a;font-size:18px}.iw-new-farmers-drawer__note{border:1px dashed #93c5fd;border-radius:14px;background:#eff6ff;color:#334155;padding:12px 14px;margin-bottom:18px;line-height:1.55}.iw-new-farmers-drawer__state{border:1px solid #e2e8f0;border-radius:16px;padding:24px;text-align:center;color:#64748b;background:#f8fafc}.iw-new-farmers-drawer__state--error{border-color:#fecaca;color:#991b1b;background:#fef2f2}.iw-new-farmers-drawer__table-wrap{overflow:auto;border:1px solid #e2e8f0;border-radius:16px}.iw-new-farmers-drawer__table{width:100%;border-collapse:collapse;min-width:860px}.iw-new-farmers-drawer__table th,.iw-new-farmers-drawer__table td{padding:12px 14px;border-bottom:1px solid #e2e8f0;text-align:left;vertical-align:top}.iw-new-farmers-drawer__table th{background:#f8fafc;color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.iw-new-farmers-drawer__table tr:last-child td{border-bottom:0}.iw-new-farmers-drawer__profile-link{color:#2563eb;font-weight:700;text-decoration:none}.iw-new-farmers-drawer__profile-link:hover{text-decoration:underline}@media (max-width: 768px){.iw-new-farmers-drawer__panel{width:100vw;padding:18px}.iw-new-farmers-drawer__summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 480px){.iw-new-farmers-drawer__summary{grid-template-columns:1fr}.iw-new-farmers-drawer__header h2{font-size:22px}}.iw-er-wrapper{padding:32px;background:linear-gradient(180deg,#f8fafc,#f1f5f9);min-height:100vh;max-width:1100px;margin:0 auto}.iw-er-page-top{margin-bottom:16px}.iw-er-back{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#334155;font-size:13px;font-weight:500;text-decoration:none;transition:border-color .2s ease,color .2s ease,box-shadow .2s ease}.iw-er-back:hover{border-color:#2563eb;color:#1d4ed8;box-shadow:0 2px 8px #2563eb1f}.iw-er-wrapper>h1{font-size:22px;font-weight:600;margin:0 0 8px;color:#0f172a}.iw-er-subtitle{margin:0 0 24px;font-size:14px;color:#64748b}.iw-er-header-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}.iw-er-card{background:#fff;border-radius:18px;border:1px solid #e2e8f0;padding:22px;margin-bottom:22px;transition:box-shadow .25s ease}.iw-er-card:hover{box-shadow:0 10px 30px #0000000f}.iw-er-card h3{font-size:15px;font-weight:600;margin:0 0 12px;color:#0f172a}.iw-er-card label{font-size:13px;font-weight:500;margin-bottom:6px;display:block;color:#475569}.iw-er-card .required-mark{color:#dc2626}.iw-er-card input,.iw-er-card textarea,.iw-er-card select{width:100%;padding:10px 14px;border-radius:12px;border:1px solid #e2e8f0;font-size:14px;background:#f8fafc;transition:.2s ease;box-sizing:border-box}.iw-er-card input:focus,.iw-er-card textarea:focus{border-color:#2563eb;background:#fff;outline:none;box-shadow:0 0 0 4px #2563eb14}.iw-er-card input:disabled,.iw-er-card textarea:disabled{opacity:.7;cursor:not-allowed}.iw-er-card textarea{min-height:110px;resize:vertical}.iw-er-field-block+.iw-er-field-block{margin-top:16px}.iw-er-evidence-label{display:block;font-size:13px;font-weight:500;margin-bottom:8px;color:#475569}.iw-er-task-description{margin:0;font-size:14px;line-height:1.6;color:#334155}.iw-er-task-meta-note{grid-column:1 / -1}.iw-er-task-info{background:#f1f5f9;border-color:#e2e8f0}.iw-er-task-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;font-size:13px;color:#475569}.iw-er-task-meta strong{color:#0f172a}.iw-er-hub-grid{display:grid;grid-template-columns:1fr 360px;gap:22px;align-items:start}@media (max-width: 960px){.iw-er-hub-grid{grid-template-columns:1fr}}.iw-er-percent-row{display:flex;align-items:center;gap:8px;max-width:200px}.iw-er-achieved-input{width:100%;max-width:320px;padding:10px 14px;border-radius:12px;border:1px solid #e2e8f0;font-size:14px;background:#f8fafc;box-sizing:border-box}.iw-er-achieved-input:focus{border-color:#2563eb;background:#fff;outline:none;box-shadow:0 0 0 4px #2563eb14}.iw-er-computed-pct{margin-top:10px;margin-bottom:0}.iw-er-percent-row input{flex:1}.iw-er-percent-suffix{font-weight:600;color:#64748b}.iw-er-photo-grid{margin-top:12px;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:14px}.iw-er-photo-item{position:relative;border-radius:16px;overflow:hidden;background:#fff;box-shadow:0 8px 20px #0000000f}.iw-er-photo-item img{width:100%;height:140px;object-fit:cover;display:block}.iw-er-photo-item button{position:absolute;top:8px;right:8px;background:#ef4444e6;border:none;color:#fff;width:28px;height:28px;border-radius:50%;font-size:13px;cursor:pointer}.iw-er-photo-add{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:140px;border:2px dashed #cbd5e1;border-radius:16px;background:#f8fafc;cursor:pointer;padding:12px;box-sizing:border-box;transition:border-color .2s,background .2s}.iw-er-photo-add:hover{border-color:#2563eb;background:#eff6ff}.iw-er-photo-add-plus{font-size:2.25rem;font-weight:300;color:#64748b;line-height:1}.iw-er-photo-add-label{margin-top:6px;font-size:12px;font-weight:600;color:#475569}.iw-er-photo-add-count{margin-top:4px;font-size:11px;color:#94a3b8}.iw-er-file-chip-list{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.iw-er-file-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#f1f5f9;border-radius:999px;font-size:12px;color:#334155}.iw-er-file-chip button{border:none;background:transparent;color:#dc2626;cursor:pointer;font-size:14px;line-height:1}.iw-er-submit-row{margin-top:8px;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.iw-er-btn-primary{display:inline-flex;align-items:center;justify-content:center;padding:11px 26px;font-size:14px;font-weight:500;border-radius:999px;border:none;background:linear-gradient(135deg,#2563eb,#1e40af);color:#fff;cursor:pointer;transition:all .25s ease;box-shadow:0 6px 18px #2563eb4d}.iw-er-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 24px #2563eb66}.iw-er-btn-primary:disabled{background:#cbd5e1;box-shadow:none;cursor:not-allowed;transform:none}.iw-er-btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:11px 22px;font-size:14px;font-weight:500;border-radius:999px;border:1px solid #cbd5e1;background:#fff;color:#334155;cursor:pointer;transition:all .2s ease}.iw-er-btn-secondary:hover:not(:disabled){border-color:#2563eb;color:#1d4ed8}.iw-er-btn-secondary:disabled{opacity:.6;cursor:not-allowed}.iw-er-error{color:#dc2626;font-size:14px;margin:0 0 12px}.iw-er-muted-hint{margin:0;font-size:13px;color:#64748b}.iw-er-form-create{max-width:920px}.iw-er-form-create .card{margin-bottom:22px}.iw-er-form-create .card label .required-mark{color:#dc2626}.iw-er-form-error{margin:0 0 12px;padding:12px 14px;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#b91c1c;font-weight:600}.iw-er-report-count-hint{background:#f8fafc;border-color:#e2e8f0}.iw-er-clip-link-wrap{margin:12px 0 0}.iw-er-clip-link{font-weight:600;word-break:break-all}.iw-er-history-card{position:sticky;top:16px}.iw-er-report-list{list-style:none;margin:0 0 16px;padding:0;display:flex;flex-direction:column;gap:8px}.iw-er-report-list-btn{width:100%;text-align:left;padding:12px 14px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;cursor:pointer;display:flex;flex-direction:column;gap:4px;transition:border-color .15s,background .15s}.iw-er-report-list-btn:hover{border-color:#93c5fd;background:#eff6ff}.iw-er-report-list-btn--active{border-color:#2563eb;background:#eff6ff;box-shadow:inset 3px 0 #2563eb}.iw-er-banner{padding:12px 16px;border-radius:12px;margin-bottom:22px;font-size:14px;line-height:1.45}.iw-er-banner-info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.iw-er-banner-warning{background:#fffbeb;border:1px solid #fcd34d;color:#92400e}.iw-er-banner-success{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.iw-er-gps-block{margin-top:8px}.iw-er-gps-coords{margin:0;font-size:14px;color:#0f172a}.iw-er-gps-label{font-weight:600;color:#475569}.iw-gps-maps-link{color:#2563eb;font-weight:500;text-decoration:none}.iw-gps-maps-link:hover{text-decoration:underline}@media (max-width: 768px){.iw-er-wrapper{padding:18px 16px}.iw-er-submit-row{flex-direction:column}.iw-er-btn-primary,.iw-er-btn-secondary{width:100%}}.iw-er-input-helper{margin-top:8px}.iw-er-kpi-preview{margin-top:14px;padding:14px;border-radius:16px;border:1px solid #dbeafe;background:linear-gradient(180deg,#eff6ff,#fff)}.iw-er-kpi-preview__head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:10px;margin-bottom:12px;border-bottom:1px solid #dbeafe;font-size:13px;color:#475569}.iw-er-kpi-preview__head>span{font-weight:700;color:#0f172a}.iw-er-kpi-status{display:inline-flex;align-items:center;justify-content:center;min-height:26px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:800;white-space:nowrap}.iw-er-kpi-status--success{color:#047857;background:#d1fae5}.iw-er-kpi-status--warning{color:#92400e;background:#fef3c7}.iw-er-kpi-status--neutral{color:#475569;background:#e2e8f0}.iw-er-kpi-preview__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.iw-er-kpi-preview__item{min-width:0;padding:12px;border-radius:14px;border:1px solid #e2e8f0;background:#fff}.iw-er-kpi-preview__item span,.iw-er-kpi-preview__item small{display:block}.iw-er-kpi-preview__item span{margin-bottom:6px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.02em}.iw-er-kpi-preview__item strong{display:block;color:#0f172a;font-size:18px;line-height:1.25;word-break:break-word}.iw-er-kpi-preview__item small{margin-top:7px;color:#64748b;font-size:12px;line-height:1.45}.iw-er-kpi-preview__item--highlight{border-color:#bfdbfe;background:#f8fbff}.iw-er-kpi-preview__item--highlight strong{color:#1d4ed8;font-size:24px}.iw-er-kpi-preview__item--score{border-color:#bbf7d0;background:#f7fef9}.iw-er-kpi-preview__item--score strong{color:#047857;font-size:24px}@media (max-width: 640px){.iw-er-kpi-preview{padding:12px;border-radius:14px}.iw-er-kpi-preview__head{align-items:flex-start;flex-direction:column}.iw-er-kpi-preview__grid{grid-template-columns:1fr}.iw-er-kpi-preview__item{padding:11px}.iw-er-kpi-preview__item strong{font-size:16px}.iw-er-kpi-preview__item--highlight strong,.iw-er-kpi-preview__item--score strong{font-size:22px}}.iw-er-farmer-link-card .iw-er-farmer-select{margin-top:6px}.iw-er-farmer-summary{display:grid;gap:4px;margin-top:12px;padding:12px;border:1px solid #bfdbfe;border-radius:14px;background:#f8fbff;color:#334155}.iw-er-farmer-summary strong{color:#1d4ed8;font-size:15px}.iw-er-farmer-summary span{font-size:13px;line-height:1.45}.iw-report-farmer-link{display:inline-flex;align-items:center;width:fit-content;max-width:100%;color:#1d4ed8;font-weight:800;text-decoration:none}.iw-report-farmer-link:hover{text-decoration:underline}.iw-report-farmer-meta{display:grid;gap:4px}.iw-report-farmer-meta small{display:block;color:#64748b;font-size:12px;line-height:1.45}@media (max-width: 640px){.iw-er-farmer-summary{padding:10px}}.iw-er-farmer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.iw-er-farmer-field{display:flex;flex-direction:column;gap:8px}.iw-er-farmer-field>span{color:#334155;font-size:13px;font-weight:700}.iw-er-farmer-field--wide{grid-column:1 / -1}.iw-er-farmer-field textarea{min-height:84px;resize:vertical}.iw-er-farmer-link-card code{background:#eef4ff;border:1px solid #cfe0ff;border-radius:6px;color:#1d4ed8;font-size:12px;padding:1px 5px}@media (max-width: 720px){.iw-er-farmer-grid{grid-template-columns:1fr}}.iw-er-system-auto-card p{margin:0 0 14px;color:#64748b;line-height:1.6}.iw-er-system-auto-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.iw-er-system-auto-grid div{border:1px solid #dbe7ff;border-radius:14px;background:#f8fbff;padding:14px}.iw-er-system-auto-grid dt{font-size:12px;color:#64748b;margin-bottom:6px}.iw-er-system-auto-grid dd{margin:0;font-weight:800;color:#0f172a}@media (max-width: 760px){.iw-er-system-auto-grid{grid-template-columns:1fr}}.iw-er-hub-grid.iw-er-hub-grid--stacked{grid-template-columns:1fr;gap:26px}.iw-er-hub-grid--stacked>div,.iw-er-hub-grid--stacked>aside{min-width:0}.iw-er-hub-grid--stacked .iw-er-history-card{position:static;padding:28px}.iw-er-form-create .card{margin-bottom:18px}.iw-er-form-create .card h3{margin-bottom:14px}.iw-er-form-create textarea{min-height:96px}@media (min-width: 1024px){.iw-er-hub-grid--stacked .iw-er-form-create{max-width:760px}.iw-er-hub-grid--stacked .iw-er-history-card{max-width:none}}@media (max-width: 768px){.iw-er-hub-grid--stacked .iw-er-history-card{padding:18px}}.erp-page{width:100%;max-width:var(--app-content-max);margin:0 auto;padding:0;color:var(--app-text-heading);box-sizing:border-box}.erp-hero{border-radius:var(--app-radius-xl);padding:clamp(18px,3vw,24px) clamp(18px,3vw,24px);background:var(--app-nav-active-gradient);color:#fff;margin-bottom:var(--app-space-4);box-shadow:0 4px 16px #2563eb47}.erp-hero h1{margin:0;font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700;letter-spacing:-.02em;line-height:1.3}.erp-filter-card,.erp-panel{background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-card)}.erp-filter-card{padding:var(--app-space-4);margin-bottom:var(--app-space-4)}.erp-panel{margin-bottom:var(--app-space-4);overflow:hidden}.erp-panel-head{display:flex;justify-content:space-between;gap:var(--app-space-3);align-items:center;flex-wrap:wrap;padding:14px var(--app-space-4);border-bottom:2px solid var(--app-primary);background:linear-gradient(135deg,var(--app-primary-soft) 0%,var(--app-surface) 100%)}.erp-panel-head.green{border-bottom-color:var(--app-success);background:linear-gradient(135deg,var(--app-success-soft) 0%,var(--app-surface) 100%)}.erp-panel-title{font-size:15px;font-weight:700;color:var(--app-primary-dark)}.erp-panel-head.green .erp-panel-title{color:var(--app-success)}.erp-panel-head small{font-size:12px;color:var(--app-text-muted);font-weight:600}.erp-panel-body{padding:var(--app-space-4)}.erp-filter-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,160px),1fr));gap:var(--app-space-3);align-items:end}.erp-field{min-width:0}.erp-field label{display:block;font-size:12px;font-weight:700;color:var(--app-text-muted);margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}.erp-input,.erp-select{width:100%;min-height:44px;height:44px;border:1px solid var(--app-border-input);border-radius:var(--app-radius);padding:0 var(--app-space-3);background:var(--app-surface);color:var(--app-text-heading);transition:border-color var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease);-webkit-appearance:none;-moz-appearance:none;appearance:none}.erp-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}.erp-input:hover,.erp-select:hover{border-color:var(--app-primary-hover-border)}.erp-input:focus,.erp-select:focus{outline:none;border-color:var(--app-primary);box-shadow:0 0 0 3px #2563eb1f}.erp-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:44px;border:0;border-radius:var(--app-radius);background:var(--app-nav-active-gradient);color:#fff;font-weight:700;padding:0 var(--app-space-5);cursor:pointer;white-space:nowrap;box-shadow:0 2px 8px #2563eb47;transition:background var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease),opacity var(--app-duration) var(--app-ease);-webkit-tap-highlight-color:transparent}.erp-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 4px 12px #2563eb59}.erp-btn.orange{background:var(--app-nav-active-gradient);box-shadow:0 2px 8px #2563eb47}.erp-btn.secondary{background:var(--app-surface-muted);color:var(--app-text-heading);border:1px solid var(--app-border-input);box-shadow:none}.erp-btn.secondary:hover:not(:disabled){background:var(--app-surface-subtle);border-color:var(--app-primary-hover-border);box-shadow:none}.erp-btn:disabled{opacity:.5;cursor:not-allowed}.erp-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:var(--app-space-3);margin-bottom:var(--app-space-4)}.erp-kpi-grid--compact{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr))}.erp-kpi-card{background:var(--app-surface);border-radius:var(--app-radius-lg);border:1px solid var(--app-border-soft);padding:var(--app-space-4);box-shadow:var(--app-shadow-card);min-height:96px;min-width:0}.erp-kpi-label{font-size:11px;font-weight:700;text-transform:uppercase;color:var(--app-text-muted);letter-spacing:.04em}.erp-kpi-value{font-size:clamp(1.25rem,2.5vw,1.625rem);font-weight:800;margin-top:10px;color:var(--app-primary-dark);word-break:break-word}.erp-kpi-value.small{font-size:1.125rem}.erp-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--app-space-4)}.erp-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:var(--app-space-3);padding:var(--app-space-4)}.erp-info-grid.one{grid-template-columns:1fr}.erp-info-box{border:1px solid var(--app-border-soft);border-radius:var(--app-radius);background:var(--app-surface-muted);padding:var(--app-space-3);min-width:0}.erp-info-label{font-size:11px;font-weight:700;color:var(--app-text-muted);text-transform:uppercase;letter-spacing:.04em}.erp-info-value{margin-top:var(--app-space-2);color:var(--app-text-heading);word-break:break-word}.erp-info-value.strong{font-weight:800;color:var(--app-primary-dark)}.erp-empty{border:1px dashed var(--app-border-input);border-radius:var(--app-radius-lg);padding:clamp(20px,4vw,28px);text-align:center;color:var(--app-text-muted);background:var(--app-surface-muted)}.erp-error{background:var(--app-danger-soft);color:var(--app-danger);border:1px solid #fecaca;border-radius:var(--app-radius);padding:var(--app-space-3) var(--app-space-4);margin-bottom:var(--app-space-4);font-weight:600}.erp-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}.erp-table{width:100%;min-width:640px;border-collapse:collapse;background:var(--app-surface)}.erp-table th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;text-align:left;background:var(--app-surface-muted);color:var(--app-text-muted);padding:var(--app-space-3);border-bottom:1px solid var(--app-border);white-space:nowrap;font-weight:600}.erp-table td{padding:var(--app-space-3);border-bottom:1px solid var(--app-border-soft);vertical-align:top;color:var(--app-text-body)}.erp-table-clickable tbody tr{cursor:pointer;transition:background var(--app-duration) var(--app-ease)}.erp-table-clickable tbody tr:hover{background:var(--app-primary-soft)}.erp-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;background:var(--app-primary-soft);color:var(--app-primary-dark);border:1px solid var(--app-primary-soft-border);line-height:1.2}.erp-pill.ok{background:#dcfce7;color:#166534;border-color:#86efac}.erp-pill.warn{background:var(--app-warning-bg);color:#92400e;border-color:var(--app-warning-border)}.erp-pill.bad{background:var(--app-danger-soft);color:#b91c1c;border-color:#fecaca}.erp-mini-list{display:grid;gap:10px}.erp-mini-row{display:grid;grid-template-columns:minmax(100px,1fr) 1fr auto;gap:var(--app-space-3);align-items:center;min-width:0}.erp-mini-row strong{color:var(--app-text-heading);word-break:break-word}.erp-bar{height:10px;border-radius:999px;background:var(--app-primary-soft);overflow:hidden}.erp-bar span{display:block;height:100%;background:var(--app-nav-active-gradient);border-radius:999px;transition:width var(--app-duration) var(--app-ease)}.erp-panel-head.green+.erp-panel-body .erp-bar{background:var(--app-success-soft)}.erp-panel-head.green+.erp-panel-body .erp-bar span{background:var(--app-success)}.erp-timeseries{display:grid;grid-template-columns:repeat(auto-fit,minmax(56px,1fr));gap:var(--app-space-2);align-items:end;min-height:200px;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}.erp-time-col{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:end;height:200px;min-width:48px}.erp-time-bar{width:100%;max-width:26px;background:var(--app-primary);border-radius:8px 8px 0 0;min-height:2px;transition:height var(--app-duration) var(--app-ease)}.erp-time-label{font-size:10px;color:var(--app-text-muted);white-space:nowrap;text-align:center;max-width:100%;overflow:hidden;text-overflow:ellipsis}.erp-time-count{font-size:11px;font-weight:800;color:var(--app-text-heading)}.erp-back-row{display:flex;align-items:center;gap:var(--app-space-3);margin-bottom:14px;flex-wrap:wrap}.erp-link-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:44px;padding:0 var(--app-space-4);border-radius:var(--app-radius);border:1px solid var(--app-border-input);color:var(--app-text-heading);background:var(--app-surface);text-decoration:none;font-weight:700;transition:border-color var(--app-duration) var(--app-ease),background var(--app-duration) var(--app-ease);-webkit-tap-highlight-color:transparent}.erp-link-btn:hover{border-color:var(--app-primary-hover-border);background:var(--app-surface-muted);color:var(--app-primary-dark)}.erp-pagination{display:flex;align-items:center;justify-content:flex-end;gap:var(--app-space-3);padding:14px var(--app-space-4);border-top:1px solid var(--app-border-soft);flex-wrap:wrap}@media (max-width: 1024px){.erp-grid-2{grid-template-columns:1fr}}@media (max-width: 768px){.erp-filter-grid{grid-template-columns:1fr}.erp-filter-grid .erp-btn{width:100%}.erp-kpi-grid,.erp-kpi-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr))}.erp-mini-row{grid-template-columns:1fr;gap:var(--app-space-2)}.erp-mini-row>div:last-child{text-align:left!important}.erp-pagination{justify-content:center}.erp-pagination .erp-btn{flex:1;min-width:120px}}@media (max-width: 480px){.erp-kpi-grid,.erp-kpi-grid--compact{grid-template-columns:1fr}.erp-hero{border-radius:var(--app-radius-lg)}.erp-table th,.erp-table td{padding:10px;font-size:13px}.erp-back-row{flex-direction:column;align-items:stretch}.erp-link-btn,.erp-back-row .erp-btn{width:100%;justify-content:center}.erp-panel-head{flex-direction:column;align-items:flex-start}.erp-timeseries{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));min-height:160px}.erp-time-col{height:160px;min-width:40px}}@media (prefers-reduced-motion: reduce){.erp-btn,.erp-input,.erp-select,.erp-bar span,.erp-time-bar,.erp-table-clickable tbody tr{transition:none}}.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}}.app-name-upper{text-transform:uppercase;letter-spacing:.015em}.MuiPaper-root.MuiPaper-elevation0,.MuiPaper-root.MuiPaper-elevation1{border:1px solid var(--app-border-soft);box-shadow:var(--app-shadow-card)!important}.MuiButton-root{text-transform:none!important;font-weight:600!important;border-radius:var(--app-radius)!important;min-height:40px;transition:background-color var(--app-duration) var(--app-ease),box-shadow var(--app-duration) var(--app-ease),border-color var(--app-duration) var(--app-ease)!important}.MuiButton-containedPrimary{background:var(--app-nav-active-gradient)!important;box-shadow:0 2px 8px #2563eb47!important}.MuiButton-containedPrimary:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;box-shadow:0 4px 12px #2563eb59!important}.MuiButton-outlined{border-color:var(--app-border-input)!important;color:var(--app-text-body)!important}.MuiButton-outlined:hover{border-color:var(--app-primary-hover-border)!important;background:var(--app-surface-muted)!important}.MuiOutlinedInput-root{border-radius:var(--app-radius)!important;background:var(--app-surface);transition:box-shadow var(--app-duration) var(--app-ease)}.MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline{border-color:var(--app-border-input)!important}.MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline{border-color:var(--app-primary)!important;border-width:2px!important}.MuiOutlinedInput-root.Mui-focused{box-shadow:0 0 0 3px #2563eb1f}.MuiInputLabel-root{color:var(--app-text-muted)!important}.MuiTableHead-root .MuiTableCell-head{background:var(--app-surface-muted)!important;color:var(--app-text-muted)!important;font-weight:600!important;font-size:12px!important;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--app-border)!important}.MuiTableBody-root .MuiTableRow-root:hover{background:var(--app-primary-soft)!important}.MuiTableCell-root{border-color:var(--app-border-soft)!important;color:var(--app-text-body)}.MuiChip-root{font-weight:600}.MuiAlert-root{border-radius:var(--app-radius)!important}.MuiToggleButtonGroup-root{border-radius:var(--app-radius)!important;overflow:hidden;border:1px solid var(--app-border-soft)!important;background:var(--app-surface-muted)}.MuiToggleButton-root{text-transform:none!important;font-weight:600!important;border:none!important;color:var(--app-text-muted)!important}.MuiToggleButton-root.Mui-selected{background:var(--app-nav-active-gradient)!important;color:#fff!important}.app-page-title{font-size:1.35rem;font-weight:700;color:var(--app-text-heading);letter-spacing:-.02em;margin-bottom:var(--app-space-2)}.app-page-desc{color:var(--app-text-muted);font-size:14px;line-height:1.55;max-width:42rem}.app-card{background:var(--app-surface);border:1px solid var(--app-border-soft);border-radius:var(--app-radius-lg);box-shadow:var(--app-shadow-card);overflow:hidden}.app-card-header{padding:var(--app-space-4) var(--app-space-5);background:linear-gradient(135deg,var(--app-primary-soft) 0%,var(--app-surface) 100%);border-bottom:1px solid var(--app-border-soft);font-weight:700;color:var(--app-primary-dark);display:flex;align-items:center;gap:var(--app-space-3);flex-wrap:wrap}.app-card-body{padding:var(--app-space-5)}.main-content::-webkit-scrollbar,.sidebar::-webkit-scrollbar{width:8px;height:8px}.main-content::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.main-content::-webkit-scrollbar-thumb:hover{background:#94a3b8}.sidebar::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--app-primary: #2563eb;--app-primary-hover: #1d4ed8;--app-primary-dark: #1e40af;--app-primary-soft: #eff6ff;--app-primary-soft-border: #bfdbfe;--app-primary-hover-border: #93c5fd;--app-nav-active-to: #3b82f6;--app-nav-active-gradient: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);--page-bg: #f1f5f9;--app-surface: #ffffff;--app-surface-muted: #f8fafc;--app-surface-subtle: #f1f5f9;--app-surface-elevated: #ffffff;--text-color: #1e293b;--app-text-heading: #0f172a;--app-text-body: #334155;--app-text-muted: #64748b;--app-text-subtle: #94a3b8;--app-border: #e2e8f0;--app-border-soft: #e2e8f0;--app-border-input: #cbd5e1;--app-radius-sm: 6px;--app-radius: 10px;--app-radius-lg: 14px;--app-radius-xl: 18px;--app-shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--app-shadow-card: 0 1px 3px rgba(15, 23, 42, .06), 0 8px 24px rgba(15, 23, 42, .06);--app-shadow-md: 0 4px 16px rgba(15, 23, 42, .08);--app-shadow-sidebar: 4px 0 24px rgba(15, 23, 42, .12);--app-success: #059669;--app-success-soft: #ecfdf5;--app-warning: #d97706;--app-warning-bg: #fffbeb;--app-warning-border: #fcd34d;--app-danger: #dc2626;--app-danger-soft: #fef2f2;--app-info: #0284c7;--app-sidebar-width: 268px;--app-content-max: 1280px;--app-space-1: 4px;--app-space-2: 8px;--app-space-3: 12px;--app-space-4: 16px;--app-space-5: 20px;--app-space-6: 24px;--app-space-8: 32px;--app-ease: cubic-bezier(.4, 0, .2, 1);--app-duration: .2s;--sidebar-bg: linear-gradient(180deg, #1e293b 0%, #0f172a 100%);--sidebar-text: #e2e8f0;--sidebar-text-muted: #94a3b8;--sidebar-hover: rgba(255, 255, 255, .06);--sidebar-active-bg: rgba(59, 130, 246, .22);--sidebar-active-border: rgba(147, 197, 253, .35)}html{scroll-behavior:smooth}body{font-family:Segoe UI,-apple-system,BlinkMacSystemFont,Roboto,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--page-bg);color:var(--text-color);min-height:100svh;overflow-x:hidden;line-height:1.5;font-size:14px}code{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:.9em}button,input,select,textarea{font:inherit}a{color:var(--app-primary)}::selection{background:var(--app-primary-soft);color:var(--app-primary-dark)}
