@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans+Arabic:wght@400;500;600;700&display=swap";:root{color:#1f2937;background:#f6f7f9;font-family:IBM Plex Sans Arabic,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;font-weight:400;color-scheme:light;--muted: #667085}*{box-sizing:border-box}body{margin:0;background:#f6f7f9}button,input,select,textarea{font:inherit}button{border:1px solid #d9dee7;background:#fff;color:#344054;border-radius:6px;padding:8px 12px;cursor:pointer;font-weight:500}button:hover,button.active{border-color:#9aa8bd;background:#f1f5f9}button.danger{background:#b42318;border-color:#b42318;color:#fff}.primary{background:#2f5f8f;color:#fff;border-color:#2f5f8f;font-weight:500}.primary:hover{background:#284f77;color:#fff}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f6f7f9}.login-box{width:min(420px,100%);display:grid;gap:18px;background:#fff;border:1px solid #e2e7ef;border-radius:8px;padding:28px;box-shadow:0 18px 50px #1f293714}.login-box h1,.page-head h1{margin:0;font-size:25px;font-weight:600;color:#1f2937}.eyebrow{margin:0 0 4px;color:#667085;font-size:13px}label{display:grid;gap:7px;color:#344054;font-weight:500}input,select,textarea{width:100%;border:1px solid #d9dee7;border-radius:6px;padding:10px 11px;background:#fff;color:#1f2937;outline:none}input:focus,select:focus,textarea:focus{border-color:#7d95b8;box-shadow:0 0 0 3px #2f5f8f1a}textarea{min-height:110px;resize:vertical}.error{color:#9f1f1f;background:#fff5f5;border:1px solid #f0c7c7;padding:10px 12px;border-radius:6px}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}.sidebar{background:#fff;color:#344054;border-left:1px solid #e4e8ef;padding:18px;display:flex;flex-direction:column;gap:24px}.brand{display:flex;align-items:center;gap:11px;min-height:46px}.brand strong,.topbar strong{font-weight:600}.brand svg{color:#2f5f8f}.brand span,.topbar span,small,.muted{display:block;color:#667085;font-size:12px;margin-top:3px}.sidebar nav{display:grid;gap:6px}.sidebar button{display:flex;align-items:center;justify-content:flex-start;gap:10px;background:transparent;color:#475467;border-color:transparent;text-align:right;min-height:40px}.sidebar button:hover,.sidebar button.active{background:#f3f6fa;border-color:#eef1f6;color:#1f2937}.main{min-width:0;padding:22px}.topbar{min-height:58px;display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;border-bottom:1px solid #e4e8ef;padding-bottom:14px}.topbar-actions{display:flex;align-items:center;gap:8px}.icon-button{width:40px;height:40px;display:grid;place-items:center;padding:0}.login-theme-toggle{position:fixed;z-index:2;top:18px;left:18px}.theme-picker,.notification-center{position:relative}.notification-trigger{position:relative;background:var(--surface)}.notification-count{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;display:inline-grid;place-items:center;padding:0 5px;border:2px solid var(--surface);border-radius:999px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;line-height:1}.notification-menu{position:absolute;z-index:25;top:calc(100% + 10px);left:0;width:min(360px,calc(100vw - 32px));overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-hover)}.notification-menu header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border-bottom:1px solid var(--border)}.notification-menu header strong{color:var(--text);font-size:14px}.notification-menu header button{min-height:30px;padding:5px 8px;font-size:11px;box-shadow:none}.browser-notification-enable{width:calc(100% - 24px);min-height:34px;margin:10px 12px 0;padding:7px 10px;background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.22);color:var(--text);font-size:12px;box-shadow:none}.browser-notification-note{margin:0;padding:10px 12px 0;color:#b42318;font-size:12px}.notification-list{max-height:340px;overflow-y:auto}.notification-item{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border)}.notification-item:last-child{border-bottom:0}.notification-item>button:first-child,.notification-toast>button:first-child{min-height:0;display:grid;gap:3px;padding:0;background:transparent;border:0;color:var(--text);text-align:right;box-shadow:none}.notification-item>button:first-child:hover,.notification-toast>button:first-child:hover{transform:none;box-shadow:none}.notification-item strong,.notification-toast strong{color:var(--text);font-size:13px}.notification-item span,.notification-toast span{color:var(--muted);font-size:12px;line-height:1.5}.notification-empty{margin:0;padding:18px;color:var(--muted);text-align:center}.notification-toast{position:fixed;z-index:30;left:22px;bottom:22px;width:min(360px,calc(100vw - 44px));display:grid;grid-template-columns:minmax(0,1fr) 36px;gap:10px;align-items:center;padding:13px;background:var(--surface);border:1px solid var(--border);border-right:4px solid var(--accent);border-radius:16px;box-shadow:var(--shadow-hover)}.theme-picker .icon-button{background:var(--surface)}.theme-menu{position:absolute;z-index:20;top:calc(100% + 10px);left:0;width:180px;display:grid;gap:10px;padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-hover)}.theme-menu strong{color:var(--text);font-size:13px}.theme-menu div{display:grid;gap:6px}.theme-menu button{display:flex;align-items:center;justify-content:flex-start;gap:9px;min-height:34px;padding:7px 9px;color:var(--text);text-align:right;box-shadow:none}.theme-menu button:hover,.theme-menu button.active{background:rgba(var(--accent-rgb),.1);border-color:rgba(var(--accent-rgb),.22);color:var(--text);transform:none}.theme-menu button span{width:16px;height:16px;flex-shrink:0;border:2px solid #ffffff;border-radius:50%;box-shadow:0 0 0 1px #0f172a24}.modal-backdrop{position:fixed;z-index:20;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#0f172094;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.briefing-modal{width:min(600px,100%);max-height:min(760px,calc(100vh - 40px));overflow-y:auto;background:#fff;border:1px solid #e2e7ef;border-radius:12px;padding:20px;box-shadow:0 24px 70px #1f29373d}.briefing-head,.briefing-summary,.briefing-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.expected-time-review-modal{width:min(720px,100%)}.expected-review-body{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:16px 0}.expected-review-body>div,.expected-review-reason,.expected-review-input{display:grid;gap:6px;padding:12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-soft)}.expected-review-body span,.expected-review-reason span,.expected-review-input small{color:var(--muted);font-size:12px}.expected-review-body strong{color:var(--text)}.expected-review-reason{margin-bottom:12px}.expected-review-reason p{margin:0;color:var(--text);line-height:1.8}.expected-review-input{margin-bottom:12px}.expected-review-input input{max-width:180px}.row-actions{display:flex;flex-wrap:wrap;gap:6px}.row-actions button{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px;font-size:12px}.danger-subtle{color:#b42318;background:#fff5f5;border-color:#f0c7c7}.user-modal{width:min(680px,100%)}.password-modal{width:min(480px,100%)}.modal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:20px}.toggle-label{display:flex;grid-column:span 2;align-items:center;gap:9px;padding:12px;background:var(--surface-soft);border:1px solid var(--border);border-radius:10px}.toggle-label input{width:18px;margin:0}.briefing-head h2{margin:0;font-size:22px}.end-of-day-copy{margin:18px 0 0;color:var(--text);font-size:15px;line-height:1.8}.briefing-summary{flex-wrap:wrap;margin:18px 0 14px;padding:12px;background:#f4f6f9;border-radius:8px;color:#475467}.briefing-summary span,.briefing-overdue,.due-message{display:inline-flex;align-items:center;gap:5px}.briefing-overdue,.due-message.overdue{color:#b42318}.briefing-list{display:grid;gap:9px}.briefing-task{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px;text-align:right}.briefing-task div{min-width:0}.briefing-task strong,.briefing-task span{display:block}.briefing-task strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#1f2937}.briefing-task span{margin-top:4px;color:#667085;font-size:12px}.briefing-task .due-message{flex-shrink:0;color:#475467;white-space:nowrap}.briefing-task .due-message.overdue{color:#b42318}.briefing-actions{justify-content:flex-end;margin-top:18px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-bottom:16px}.stats div,.panel,.empty{background:#fff;border:1px solid #e2e7ef;border-radius:8px;padding:14px}.stats strong{display:block;font-size:24px;font-weight:600;color:#2f5f8f}.stats span{color:#667085;font-size:13px}.report-charts{display:grid;grid-template-columns:minmax(260px,.8fr) repeat(2,minmax(280px,1fr));gap:14px;margin-bottom:16px}.print-only{display:none!important}.chart-card{min-height:260px}.pie-chart-wrap{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:center}.pie-chart{width:150px;height:150px;transform:rotate(-90deg)}.pie-hole{fill:var(--surface);stroke:var(--border);stroke-width:8}.chart-legend{display:grid;gap:8px;color:var(--muted);font-size:13px}.chart-legend span{display:flex;align-items:center;gap:8px}.chart-legend i{width:10px;height:10px;border-radius:999px}.bar-chart{display:grid;gap:11px}.bar-row{display:grid;grid-template-columns:minmax(90px,1fr) minmax(120px,2fr) 38px;gap:10px;align-items:center;font-size:13px}.bar-row span{overflow:hidden;color:var(--muted);text-overflow:ellipsis;white-space:nowrap}.bar-row div{height:12px;overflow:hidden;background:var(--surface-soft);border:1px solid var(--border);border-radius:999px}.bar-row i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#7db7eb);border-radius:inherit}.bar-row strong{color:var(--text);text-align:left}.kpi-panel{margin-bottom:16px}.panel-title-with-help{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.panel-title-with-help h2{margin:0}.help-tooltip{position:relative;display:inline-grid;place-items:center;width:24px;height:24px;border:1px solid var(--border);border-radius:999px;background:var(--surface-soft);color:var(--muted);cursor:help;font-weight:800;line-height:1}.help-tooltip-content{position:absolute;top:calc(100% + 8px);left:0;z-index:20;width:min(420px,80vw);padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);box-shadow:var(--shadow);font-size:13px;font-weight:600;line-height:1.7;opacity:0;pointer-events:none;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease}.help-tooltip:hover .help-tooltip-content,.help-tooltip:focus .help-tooltip-content,.help-tooltip:focus-within .help-tooltip-content{opacity:1;transform:translateY(0)}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.kpi-grid div{padding:12px;background:var(--surface-soft);border:1px solid var(--border);border-radius:12px}.kpi-grid strong{display:block;color:var(--accent);font-size:24px}.kpi-grid span,.delay-review span{color:var(--muted);font-size:13px}.delay-review{display:grid;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border)}.production-issue-status{display:flex;align-items:center;gap:10px;color:var(--muted)}.production-issue-status img{width:28px;height:28px;object-fit:contain}.production-issue-form{margin-top:12px}.production-issue-form input{min-width:min(420px,100%)}.completion-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:16px 0}.completion-choice{display:grid;gap:10px;place-items:center;min-height:190px;padding:14px;color:var(--text);background:var(--surface-soft);border:1px solid var(--border);border-radius:16px;box-shadow:none}.completion-choice:hover{transform:translateY(-2px);border-color:rgba(var(--accent-rgb),.45)}.completion-choice img{width:min(170px,100%);height:130px;object-fit:contain}.completion-choice strong{font-size:15px}.completion-choice.is-good{background:#22c55e1a}.completion-choice.is-bad{background:#ef44441a}.filters,.actions,.inline-form{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.filters.compact button{padding:7px 11px;color:#475467}.filters select,.filters input,.inline-form input{width:auto;min-width:180px}.kanban-board{display:grid;grid-template-columns:repeat(4,minmax(300px,1fr));gap:12px;align-items:stretch;overflow-x:auto;padding-bottom:4px}.kanban-column{min-height:560px;background:#eef2f6;border:1px solid #e4e8ef;border-radius:8px;padding:10px}.column-head{display:flex;align-items:center;justify-content:space-between;min-height:34px;padding:0 4px 8px;color:#475467;font-size:13px;font-weight:600}.column-head small{display:inline-grid;place-items:center;min-width:24px;height:24px;margin:0;border-radius:999px;background:#fff;color:#667085}.column-list{display:grid;gap:9px}.task-card{position:relative;background:#fff;border:1px solid #dfe5ee;border-radius:7px;padding:11px;box-shadow:0 1px 2px #1f29370f;cursor:grab;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.task-card:hover{border-color:#bbc7d8;box-shadow:0 8px 20px #1f293714;transform:translateY(-1px)}.task-card:active{cursor:grabbing}.task-card.is-overdue{border-color:#f0b8b8;background:snow}.task-card.is-pending-approval{border-color:#f6c66d;background:#fff8e8}.task-card.is-paused-too-long .task-card-top{padding-left:34px}.approval-badge{display:inline-flex;width:fit-content;margin:0 0 8px;padding:3px 8px;border-radius:999px;background:#fff1c2;color:#9a5b00;font-size:11px;font-weight:700}.task-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#98a2b3;margin-bottom:8px}.task-card-corner{display:inline-flex;align-items:center;gap:4px;min-width:34px;justify-content:flex-end}.production-flag{width:14px;height:14px;object-fit:contain;opacity:.5}.production-flag.is-flagged{opacity:1}.paused-too-long-badge{position:absolute;top:10px;left:10px;z-index:2;display:inline-grid;place-items:center;width:26px;height:26px;border:1px solid rgba(245,158,11,.28);border-radius:9px;background:#fff7edf5;box-shadow:0 4px 12px #9a34121f;pointer-events:none}.paused-too-long-icon{width:17px;height:17px;object-fit:contain;display:block}.task-card h3{margin:0 0 7px;color:#1f2937;font-size:14px;font-weight:600;line-height:1.55}.task-card p{margin:0 0 10px;color:#667085;font-size:12px;line-height:1.6}.task-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px;color:#667085;font-size:12px}.task-meta span{display:inline-flex;align-items:center;gap:4px}.task-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#475467;font-size:12px}.delay-note{margin-top:8px;color:#9f1f1f}.pause-warning{display:block;width:fit-content;margin-top:8px;padding:4px 8px;border-radius:999px;background:#fff7ed;color:#9a3412;font-size:11px;font-weight:700}.live-timer{margin-top:10px;color:var(--muted);font-size:.78rem;font-weight:700}.live-timer.is-over,.timer-over{color:#b42318}.priority{display:inline-flex;align-items:center;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600}.priority-low{background:#eff8f1;color:#287348}.priority-normal{background:#eef4ff;color:#2f5f8f}.priority-high{background:#fff7e8;color:#93640f}.priority-urgent{background:#fff0f0;color:#a13535}.table-wrap{width:100%;overflow-x:auto;background:#fff;border:1px solid #e2e7ef;border-radius:8px}table{width:100%;border-collapse:collapse;min-width:860px}th,td{text-align:right;padding:12px 14px;border-bottom:1px solid #edf0f4;vertical-align:top}.table-task-title,.table-task-description{display:block}.table-task-title{font-weight:700;color:var(--text)}.table-task-description{margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45}th{background:#f4f6f9;color:#475467;font-weight:600}.link-button{border:0;padding:0;color:#2f5f8f;background:transparent;font-weight:500}.badge{display:inline-flex;align-items:center;min-height:26px;border-radius:999px;padding:3px 9px;font-weight:500;white-space:nowrap}.status-pending{background:#f0f2f5;color:#475467}.status-in_progress{background:#eef4ff;color:#2f5f8f}.status-blocked{background:#fff7e8;color:#93640f}.status-delayed{background:#fff0f0;color:#a13535}.status-done{background:#eff8f1;color:#287348}.status-cancelled{background:#f1eeee;color:#6b5f5f}.overdue-row td{background:snow}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;background:#fff;border:1px solid #e2e7ef;border-radius:8px;padding:18px;margin-bottom:18px}.span-2{grid-column:span 2}.details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:16px}.details-grid div{background:#fff;border:1px solid #e2e7ef;border-radius:8px;padding:14px}.details-grid span{display:block;color:#667085;margin-bottom:6px}.details-grid strong{font-weight:500}.panel{margin-bottom:16px}.panel h2{margin-top:0;font-size:18px;font-weight:600}.note{border-top:1px solid #edf0f4;padding-top:10px}.comment-note{display:grid;gap:8px}.comment-note p{margin:0;line-height:1.7}.comment-actions{display:flex;flex-wrap:wrap;gap:6px}.comment-actions button{min-height:30px;padding:5px 10px;font-size:12px}.comment-edit-form{display:grid;gap:8px}.comment-edit-form textarea{min-height:90px}:root[data-theme=dark]{color:#e5e7eb;background:#0f1720;color-scheme:dark;--muted: #9ca8b8}:root[data-theme=dark] body,:root[data-theme=dark] .login-page{background:#0f1720}:root[data-theme=dark] button,:root[data-theme=dark] input,:root[data-theme=dark] select,:root[data-theme=dark] textarea,:root[data-theme=dark] .login-box,:root[data-theme=dark] .briefing-modal,:root[data-theme=dark] .sidebar,:root[data-theme=dark] .stats div,:root[data-theme=dark] .panel,:root[data-theme=dark] .empty,:root[data-theme=dark] .task-card,:root[data-theme=dark] .table-wrap,:root[data-theme=dark] .form-grid,:root[data-theme=dark] .details-grid div,:root[data-theme=dark] .column-head small{background:#18222f;border-color:#2b3949;color:#e5e7eb}:root[data-theme=dark] .briefing-summary{background:#131d28;color:#b7c1ce}:root[data-theme=dark] .login-box,:root[data-theme=dark] .task-card{box-shadow:0 18px 50px #00000038}:root[data-theme=dark] .sidebar,:root[data-theme=dark] .topbar{border-color:#2b3949}:root[data-theme=dark] .sidebar button{color:#b7c1ce}:root[data-theme=dark] button:hover,:root[data-theme=dark] button.active,:root[data-theme=dark] .sidebar button:hover,:root[data-theme=dark] .sidebar button.active{background:#243244;border-color:#34465c;color:#fff}:root[data-theme=dark] .primary,:root[data-theme=dark] .primary:hover{background:#3f78ad;border-color:#4a86bd;color:#fff}:root[data-theme=dark] button.danger,:root[data-theme=dark] button.danger:hover{background:#b42318;border-color:#d04438;color:#fff}:root[data-theme=dark] .danger-subtle{color:#fecaca;background:#351d22;border-color:#6b2b33}:root[data-theme=dark] .kanban-column,:root[data-theme=dark] th{background:#131d28;border-color:#2b3949}:root[data-theme=dark] th,:root[data-theme=dark] td,:root[data-theme=dark] .note{border-color:#2b3949}:root[data-theme=dark] .login-box h1,:root[data-theme=dark] .page-head h1,:root[data-theme=dark] .task-card h3,:root[data-theme=dark] .briefing-head h2,:root[data-theme=dark] .briefing-task strong,:root[data-theme=dark] label,:root[data-theme=dark] .column-head,:root[data-theme=dark] .task-footer,:root[data-theme=dark] th{color:#e5e7eb}:root[data-theme=dark] .brand span,:root[data-theme=dark] .topbar span,:root[data-theme=dark] small,:root[data-theme=dark] .muted,:root[data-theme=dark] .eyebrow,:root[data-theme=dark] .stats span,:root[data-theme=dark] .task-card p,:root[data-theme=dark] .task-meta,:root[data-theme=dark] .details-grid span{color:#9ca8b8}:root[data-theme=dark] .briefing-task span,:root[data-theme=dark] .briefing-task .due-message{color:#9ca8b8}:root[data-theme=dark] .briefing-task .due-message.overdue,:root[data-theme=dark] .briefing-overdue{color:#ff9d9d}:root[data-theme=dark] .task-card.is-overdue,:root[data-theme=dark] .overdue-row td{background:#281c22}:root[data-theme=dark] .task-card.is-pending-approval{border-color:#8a6520;background:#261f13}:root[data-theme=dark] .approval-badge{background:#3a2b12;color:#ffd98a}:root[data-theme=dark] .pause-warning{background:#3a2415;color:#fdba74}:root[data-theme=dark] .paused-too-long-badge{border-color:#fbbf2442;background:#3a2415f5;box-shadow:0 4px 12px #00000038}:root[data-theme=dark] .error{color:#ffb4b4;background:#351d22;border-color:#69313a}:root[data-theme=dark] .link-button{background:transparent;border-color:transparent;color:#78aee0}@media (max-width: 980px){.report-charts{grid-template-columns:1fr}.kanban-board{grid-template-columns:repeat(4,300px)}}@media (max-width: 780px){.completion-choice-grid,.app-shell{grid-template-columns:1fr}.sidebar{border-left:0;border-bottom:1px solid #e4e8ef}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.page-head,.briefing-task{align-items:flex-start;flex-direction:column}.modal-form-grid{grid-template-columns:1fr}.toggle-label{grid-column:span 1}}@page{size:A4 portrait;margin:12mm 14mm}@media print{:root,:root[data-theme=dark]{color-scheme:light}body,:root[data-theme=dark] body,:root[data-theme=dark] .stats div,:root[data-theme=dark] .panel,:root[data-theme=dark] .table-wrap,:root[data-theme=dark] th,:root[data-theme=dark] td{background:#fff;color:#1f2937}.sidebar,.topbar,.filters,.actions,.modal-backdrop{display:none}.app-shell{display:block}.main{padding:0}}:root{--navy-950: #081426;--navy-900: #0b1b30;--navy-800: #102741;--navy-700: #173653;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-rgb: 37, 99, 235;--focus: #60a5fa;--surface: #ffffff;--surface-soft: #f8fafc;--canvas: #f3f6fa;--border: #e4eaf2;--text: #172033;--muted: #6b778b;--shadow-card: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--shadow-hover: 0 12px 28px rgba(15, 23, 42, .11), 0 3px 8px rgba(15, 23, 42, .05)}:root[data-theme=blue]{--navy-950: #082f49;--navy-900: #0c4a6e;--navy-800: #075985;--navy-700: #0369a1;--accent: #0ea5e9;--accent-hover: #0284c7;--accent-rgb: 14, 165, 233;--focus: #38bdf8;--canvas: #eff8ff;--surface-soft: #f6fbff;--border: #cfe7f6;--text: #102033;--muted: #557086}:root[data-theme=green]{--navy-950: #052e1a;--navy-900: #064e3b;--navy-800: #065f46;--navy-700: #047857;--accent: #16a34a;--accent-hover: #15803d;--accent-rgb: 22, 163, 74;--focus: #4ade80;--canvas: #f0fdf4;--surface-soft: #f7fef9;--border: #ccebd6;--text: #102719;--muted: #587464}:root[data-theme=orange]{--navy-950: #431407;--navy-900: #7c2d12;--navy-800: #9a3412;--navy-700: #c2410c;--accent: #f97316;--accent-hover: #ea580c;--accent-rgb: 249, 115, 22;--focus: #fb923c;--canvas: #fff7ed;--surface-soft: #fffbf5;--border: #f3dcc8;--text: #2d1b12;--muted: #7b6658}body{background:var(--canvas);color:var(--text);-webkit-font-smoothing:antialiased}button{min-height:38px;border-color:var(--border);border-radius:10px;padding:8px 14px;box-shadow:var(--shadow-card);transition:background .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease,transform .15s ease}button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0f172a14}.primary{background:var(--accent);border-color:var(--accent);box-shadow:0 4px 12px rgba(var(--accent-rgb),.22)}.primary:hover{background:var(--accent-hover)}input,select,textarea{border-color:var(--border);border-radius:10px;background:var(--surface-soft);padding:11px 13px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}input:focus,select:focus,textarea:focus{background:var(--surface);border-color:var(--focus);box-shadow:0 0 0 3px rgba(var(--accent-rgb),.12)}.app-shell{grid-template-columns:264px minmax(0,1fr);background:var(--canvas)}.sidebar{position:sticky;top:0;height:100vh;background:linear-gradient(180deg,var(--navy-800),var(--navy-900));border-left:0;padding:20px 14px 14px;gap:20px;box-shadow:-8px 0 28px #0814261f}.brand{min-height:54px;padding:0 8px 16px;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.brand .brand-mark{width:38px;height:38px;display:grid;place-items:center;flex-shrink:0;margin:0;border-radius:11px;background:var(--accent);color:#fff;line-height:1;box-shadow:0 7px 18px rgba(var(--accent-rgb),.35)}.brand svg{color:inherit}.brand strong{color:#fff;font-size:15px}.brand span{color:#8da3bc}.sidebar nav{flex:1;align-content:start;gap:5px}.sidebar button,.sidebar button:hover{box-shadow:none;transform:none}.sidebar nav button{min-height:44px;padding:10px 12px;border-radius:11px;color:#c4d2e2}.sidebar nav button:hover{background:#ffffff14;border-color:transparent;color:#fff}.sidebar nav button.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 7px 18px rgba(var(--accent-rgb),.28)}.sidebar-user{display:grid;grid-template-columns:36px minmax(0,1fr) 36px;gap:10px;align-items:center;padding:12px 8px 2px;border-top:1px solid rgba(255,255,255,.1)}.sidebar-user strong{display:block;overflow:hidden;color:#fff;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.sidebar-user span:not(.avatar){color:#8da3bc;font-size:11px}.sidebar-user .icon-button{width:36px;height:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;color:#9fb1c5;background:transparent;border-color:transparent}.sidebar-user .icon-button svg{display:block;margin:0}.sidebar-user .icon-button:hover{color:#fca5a5;background:#ffffff14}.avatar,.sidebar-user .avatar,.topbar .topbar-avatar{width:36px;height:36px;display:inline-grid;place-items:center;flex-shrink:0;margin:0;border-radius:50%;background:linear-gradient(135deg,#dbeafe,#bfdbfe);color:#1d4ed8;font-size:12px;font-weight:700;line-height:1;text-align:center;white-space:nowrap}.main{padding:0}.topbar{position:sticky;z-index:10;top:0;min-height:72px;margin:0;padding:12px 26px;background:#fffffff0;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.topbar strong{color:var(--text);font-size:17px;font-weight:700}.topbar span{color:var(--muted)}.page-content{width:100%;max-width:1600px;margin:0 auto;padding:26px}.page-head{margin-bottom:20px}.page-head h1,.login-box h1{color:var(--text);font-size:25px;font-weight:700;letter-spacing:-.02em}.stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px;margin-bottom:22px}.stats div,.panel,.form-grid,.details-grid div,.table-wrap{border-color:var(--border);border-radius:14px;box-shadow:var(--shadow-card)}.stats div{position:relative;min-height:104px;padding:16px 18px;overflow:hidden;transition:box-shadow .18s ease,transform .18s ease}.stats div:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.stats strong{margin-top:0;color:var(--text);font-size:30px;font-weight:700;line-height:1.15}.stats span{font-size:12px;font-weight:500}.stat-icon{position:absolute;top:16px;left:16px;width:40px;height:40px;display:grid!important;place-items:center;margin:0!important;border-radius:12px}.tone-slate .stat-icon{color:#475569;background:#f1f5f9}.tone-amber .stat-icon{color:#b45309;background:#fffbeb}.tone-blue .stat-icon{color:#2563eb;background:#eff6ff}.tone-green .stat-icon{color:#059669;background:#ecfdf5}.tone-red .stat-icon{color:#dc2626;background:#fef2f2}.filters{padding:12px;background:var(--surface);border:1px solid var(--border);border-radius:13px;box-shadow:var(--shadow-card)}.kanban-board{gap:14px}.kanban-column{min-height:600px;padding:0;overflow:hidden;background:#eef3f8;border-color:var(--border);border-radius:14px}.column-head{min-height:52px;padding:12px 14px;background:#ffffff9e;border-bottom:1px solid var(--border);font-size:13px}.column-head:before{width:8px;height:8px;margin-left:7px;border-radius:50%;background:#94a3b8;content:""}.column-head span{margin-left:auto}.column-head small{background:#fff;border:1px solid var(--border);font-weight:700}.column-list{gap:11px;padding:11px}.task-card{border-color:var(--border);border-radius:13px;padding:14px;box-shadow:var(--shadow-card)}.task-card:hover{border-color:#cbd5e1;box-shadow:var(--shadow-hover);transform:translateY(-2px)}.task-card h3{font-size:14px;font-weight:700}.task-card p{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2}.task-progress{height:5px;margin:8px 0 12px;overflow:hidden;border-radius:999px;background:#edf1f6}.task-progress span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,#60a5fa,#2563eb)}.task-card.is-overdue .task-progress span,.live-timer.is-over+.task-progress span{background:linear-gradient(90deg,#fb7185,#dc2626)}.priority,.badge{border:1px solid transparent;font-weight:600}.priority{border-radius:7px;padding:3px 8px}.badge{position:relative;gap:6px;padding:4px 10px;background:#fff;border-color:var(--border)}.badge:before{width:6px;height:6px;border-radius:50%;background:currentColor;content:""}.table-wrap{overflow:hidden}.table-wrap>table{overflow:visible}th{padding:13px 15px;background:#f8fafc;color:#64748b;font-size:12px}td{padding:14px 15px}tbody tr{transition:background .15s ease}tbody tr:hover td{background:#f8fafc}.clickable-row{cursor:pointer}.clickable-row:focus{outline:2px solid var(--accent);outline-offset:-2px}.panel{padding:18px}.panel h2{padding-bottom:13px;border-bottom:1px solid var(--border);font-size:16px;font-weight:700}.form-grid{gap:18px;padding:22px}.expected-time-field{align-content:start}.expected-time-control{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;width:fit-content;padding:4px;border-radius:14px;background:var(--surface-soft)}.expected-time-control input{width:78px;height:58px;padding:0;border:0;border-radius:7px;background:#eef0f3;color:var(--text);font-size:34px;font-weight:700;line-height:1;text-align:center;box-shadow:none}.expected-time-control input:first-child{background:#eadcff;color:#6d28d9}.expected-time-control input:focus{background:#fff;box-shadow:0 0 0 3px rgba(var(--accent-rgb),.14)}.expected-time-control span{color:var(--text);font-size:32px;font-weight:700;line-height:1}.file-upload input{padding:9px}.file-upload span{color:var(--muted);font-size:12px;line-height:1.6}.attachment-list{display:grid;gap:8px}.attachment-list button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;text-align:right}.attachment-list strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.details-grid{gap:14px}.details-grid div{min-height:92px;padding:17px}.empty-state{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px;color:var(--muted);text-align:center}.empty-state.compact{min-height:150px;padding:18px 8px}.empty-state-icon{width:46px;height:46px;display:grid;place-items:center;margin-bottom:10px;border-radius:13px;background:#e8eef5;color:#8291a6}.empty-state strong{color:#475569;font-size:13px}.empty-state span{max-width:220px;margin-top:4px;font-size:11px}.login-page{background:radial-gradient(circle at 20% 20%,#173f6e 0,transparent 35%),linear-gradient(135deg,var(--navy-800),var(--navy-950))}.login-box{border-radius:18px;padding:32px;box-shadow:0 26px 70px #02081752}.login-brand{display:flex;align-items:center;gap:11px;padding-bottom:18px;border-bottom:1px solid var(--border)}.login-brand strong{display:block;color:var(--text);font-size:15px}.login-brand span:not(.brand-mark),.login-intro{color:var(--muted);font-size:12px}.login-intro{margin:-10px 0 2px}.panel h2 small{display:inline-block;margin:0 8px 0 0;color:var(--muted);font-size:11px;font-weight:500}:root[data-theme=dark]{--surface: #142131;--surface-soft: #101b29;--canvas: #0b1420;--border: #29384a;--text: #edf2f7;--muted: #9ca8b8;--accent-rgb: 63, 120, 173;--focus: #4a86bd}:root[data-theme=dark] .topbar{background:#101b29f0}:root[data-theme=dark] .kanban-column{background:#0e1926}:root[data-theme=dark] .column-head,:root[data-theme=dark] .filters,:root[data-theme=dark] th{background:#111f2e}:root[data-theme=dark] .task-progress{background:#29384a}:root[data-theme=dark] .empty-state-icon{background:#223246;color:#91a3b8}:root[data-theme=dark] .empty-state strong{color:#cbd5e1}:root[data-theme=dark] tbody tr:hover td{background:#182739}:root[data-theme=dark] .tone-slate .stat-icon,:root[data-theme=dark] .tone-amber .stat-icon,:root[data-theme=dark] .tone-blue .stat-icon,:root[data-theme=dark] .tone-green .stat-icon,:root[data-theme=dark] .tone-red .stat-icon{background:#223246}:root[data-theme=dark] .theme-menu{background:#142131;border-color:#29384a}:root[data-theme=dark] .notification-menu,:root[data-theme=dark] .notification-toast{background:#142131;border-color:#29384a}:root[data-theme=dark] .theme-menu button{background:#101b29;border-color:#29384a;color:#edf2f7}:root[data-theme=dark] .expected-time-control input{background:#223246;color:#edf2f7}:root[data-theme=dark] .expected-time-control input:first-child{background:#34245d;color:#c4b5fd}@media (max-width: 780px){.sidebar{position:static;height:auto}.sidebar-user{display:none}.topbar{padding:11px 16px}.page-content{padding:18px 14px}}@media print{body{font-size:8.2pt;line-height:1.35;print-color-adjust:exact;-webkit-print-color-adjust:exact}.screen-only{display:none!important}.print-only{display:block!important}.page-content{max-width:none;padding:0}.reports-page{box-sizing:border-box;width:100%;max-width:178mm;margin:0 auto;padding-inline:2mm;color:#111827;background:#fff}.report-print-header{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(72mm,auto);align-items:end;justify-content:space-between;gap:8mm;margin-bottom:4mm;padding-bottom:2.2mm;border-bottom:.35mm solid #1f2937;break-inside:avoid;page-break-inside:avoid}.report-print-header h1{margin:0;color:#111827;font-size:15pt;line-height:1.1}.report-print-header p{margin:0 0 1mm;color:#475569;font-size:7.5pt;font-weight:700}.report-print-header dl{min-width:0;display:grid;grid-template-columns:repeat(3,max-content);justify-content:end;gap:2mm 5mm;margin:0;font-size:7pt}.report-print-header dl div{display:grid;gap:.4mm}.report-print-header dt,.report-print-header dd{margin:0}.report-print-header dt{color:#64748b;font-weight:700}.report-print-header dd{color:#111827;font-weight:700}.stats div,.panel,.table-wrap{box-shadow:none}.stats{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:0;margin:0 0 4mm;border:1px solid #cbd5e1;border-radius:0;break-inside:avoid;page-break-inside:avoid}.stats div{min-height:0;padding:2mm 1.6mm;border:0;border-left:1px solid #dbe3ee;border-radius:0;background:#fff;break-inside:avoid;page-break-inside:avoid}.stats div:last-child{border-left:0}.stats strong{color:#111827;font-size:11.5pt;line-height:1.1}.stats span{color:#475569;font-size:6.5pt;line-height:1.25;white-space:normal}.report-chart-print-hidden{display:none}.report-charts{grid-template-columns:repeat(2,minmax(0,1fr));gap:3mm;margin-bottom:4mm}.chart-card{min-height:0;padding:0;border:0;border-radius:0;background:#fff;break-inside:avoid;page-break-inside:avoid}.chart-card h2{margin:0 0 1.8mm;padding:0 0 1mm;border-bottom:1px solid #cbd5e1;color:#111827;font-size:9pt}.pie-chart-wrap{grid-template-columns:24mm minmax(0,1fr);gap:3mm}.pie-chart{width:24mm;height:24mm}.chart-legend{gap:1mm;font-size:7.2pt}.bar-chart{gap:1.2mm}.bar-row{grid-template-columns:minmax(32mm,1.4fr) minmax(28mm,1fr) 8mm;gap:2mm;font-size:7.2pt;break-inside:avoid;page-break-inside:avoid}.bar-row div{height:2.2mm}.bar-row span{white-space:normal;overflow:visible;text-overflow:clip}.panel{padding:0;margin-bottom:4mm;border:0;border-radius:0;background:#fff;break-inside:auto}.report-section{break-inside:avoid;page-break-inside:avoid}.report-table-section{break-inside:auto;page-break-inside:auto}.report-detail-sections{break-before:auto}.panel h2{margin:0 0 2mm;padding-bottom:1.4mm;border-bottom:1px solid #cbd5e1;color:#111827;font-size:10pt;break-after:avoid;page-break-after:avoid}.panel h2 small{color:#475569;font-size:7pt;margin-inline-start:2mm}.table-wrap{border:1px solid #cbd5e1;border-radius:0;overflow:visible}thead{display:table-header-group}tbody{display:table-row-group}tr{break-inside:avoid;page-break-inside:avoid}.table-wrap table{min-width:0;table-layout:fixed;border-collapse:collapse;font-size:7.6pt;line-height:1.45}th,td{padding:1.6mm 1.4mm;border-bottom:1px solid #e2e8f0;white-space:normal;overflow-wrap:break-word}th{color:#111827;background:#f3f4f6;font-size:7pt;font-weight:800}.table-wrap th:nth-child(1),.table-wrap td:nth-child(1){width:25%}.table-wrap th:nth-child(2),.table-wrap td:nth-child(2){width:10%}.table-wrap th:nth-child(3),.table-wrap td:nth-child(3),.table-wrap th:nth-child(6),.table-wrap td:nth-child(6),.table-wrap th:nth-child(7),.table-wrap td:nth-child(7){width:8%;text-align:center}.table-wrap th:nth-child(4),.table-wrap td:nth-child(4),.table-wrap th:nth-child(5),.table-wrap td:nth-child(5){width:11%;text-align:center;white-space:nowrap}.table-wrap th:nth-child(8),.table-wrap td:nth-child(8){width:19%}}
