:root {
  --bg: #061512;
  --panel: #0a211b;
  --panel-2: #0d2d25;
  --text: #ecf6ef;
  --muted: #9fb8ae;
  --green: #4bd5ad;
  --red: #ef6f65;
  --amber: #f5be61;
  --blue: #6da7ff;
  --line: rgba(182, 218, 203, .22);
  --shadow: 0 24px 80px rgba(0, 0, 0, .28);
  font-family: Inter, "PingFang SC", "Microsoft YaHei", Arial, sans-serif;
  color: var(--text);
  background: var(--bg);
}
* { box-sizing: border-box; }
html, body { margin: 0; min-height: 100%; background: var(--bg); }
body { letter-spacing: 0; }
body.report-dialog-open { overflow: hidden; }
button, input, select, textarea { font: inherit; letter-spacing: 0; }
button { cursor: pointer; }
.app-shell { min-height: 100vh; display: grid; grid-template-columns: 232px minmax(0, 1fr); }
.embedded .app-shell { grid-template-columns:minmax(0,1fr); }
.embedded .side-nav { display:none; }
.embedded .main-content { padding:16px 10px 28px; }
.side-nav { position: sticky; top: 0; height: 100vh; padding: 24px 18px; background: #102923; border-right: 1px solid var(--line); display: flex; flex-direction: column; z-index: 5; }
.brand { display: grid; grid-template-columns: 54px 1fr; align-items: center; gap: 0 12px; padding: 4px 4px 30px; }
.brand-mark { grid-row: 1 / 3; display: grid; place-items: center; width: 54px; height: 54px; background: var(--green); color: #062019; font-weight: 900; border-radius: 8px; }
.brand strong { font-size: 19px; }
.brand small { color: var(--muted); margin-top: 4px; }
.side-nav nav { display: grid; gap: 8px; }
.nav-button { width: 100%; min-height: 48px; border: 1px solid transparent; border-radius: 6px; background: transparent; color: var(--muted); text-align: left; padding: 0 12px; font-weight: 700; }
.nav-button span { display: inline-block; width: 32px; color: #6e8c82; font-size: 11px; }
.nav-button:hover, .nav-button.active { color: var(--text); background: rgba(75, 213, 173, .1); border-color: rgba(75, 213, 173, .25); }
.nav-button.active span { color: var(--green); }
.side-note { margin-top: auto; padding: 14px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; line-height: 1.7; }
.side-note b { color: var(--text); }
.side-note p { margin: 6px 0 0; }
.main-content { min-width: 0; padding: 18px 24px 32px; }
.topbar { min-height: 54px; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 12px 0 0; margin-top: 18px; border-top: 1px solid var(--line); }
.topbar h1 { margin: 2px 0 0; font-size: 17px; line-height: 1.25; }
.topbar p { margin: 0; color: var(--muted); font-size: 13px; }
.topbar .eyebrow { color: var(--green); font-size: 10px; font-weight: 800; }
.top-actions { display: flex; align-items: center; gap: 8px; white-space: nowrap; }
.period-select { min-height:34px; max-width:150px; border:1px solid #b9c7c1; border-radius:5px; padding:4px 8px; color:#243832; background:#fff; }
.top-actions strong { min-width: 112px; text-align: center; font-size: 16px; }
.operation-view-active .bottom-toolbar .period-select,
.operation-view-active .bottom-toolbar #previousMonth,
.operation-view-active .bottom-toolbar #periodLabel,
.operation-view-active .bottom-toolbar #nextMonth { display:none; }
.icon-button { width: 34px; height: 34px; display: inline-grid; place-items: center; padding: 0; border: 1px solid var(--line); border-radius: 5px; color: var(--text); background: rgba(255, 255, 255, .04); font-size: 20px; }
.icon-button:hover { border-color: var(--green); color: var(--green); }
.sample-badge { display: inline-flex; align-items: center; height: 28px; padding: 0 10px; border: 1px solid var(--amber); color: #ffe2a9; background: rgba(245, 190, 97, .12); border-radius: 4px; font-size: 12px; font-weight: 800; }
.hidden { display: none !important; }
.notice { margin: 14px 0; padding: 11px 14px; border: 1px solid rgba(109, 167, 255, .35); background: rgba(109, 167, 255, .08); color: #cde0ff; border-radius: 6px; font-size: 13px; }
.notice.error { border-color: rgba(239, 111, 101, .5); background: rgba(239, 111, 101, .1); color: #ffc5c0; }
.simulation-preview-notice { display:flex; align-items:center; justify-content:space-between; gap:14px; border-color:rgba(245,190,97,.6); background:rgba(245,190,97,.12); color:#ffe2a9; }
.simulation-preview-notice b { flex:0 0 auto; font-size:13px; }
.simulation-preview-notice span { color:#f8ddb0; line-height:1.5; }
.view { display: none; padding-top: 16px; }
.view.active { display: block; }
.section-heading { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; margin: 4px 0 12px; }
.section-heading h2, .section-heading h3 { margin: 0 0 5px; }
.section-heading h2 { font-size: 20px; }.section-heading h3 { font-size: 16px; }
.section-heading p { margin: 0; color: var(--muted); font-size: 12px; line-height: 1.6; }
.metric-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-bottom: 18px; }
.metric { min-height: 94px; padding: 15px; border: 1px solid var(--line); border-radius: 7px; background: linear-gradient(145deg, rgba(13, 45, 37, .92), rgba(7, 25, 20, .94)); }
.metric small { color: var(--muted); }.metric strong { display: block; margin-top: 9px; font-size: 27px; }.metric em { font-style: normal; color: var(--green); font-size: 11px; }
.metric.danger { border-color: rgba(239, 111, 101, .5); background: linear-gradient(145deg, rgba(65, 25, 24, .78), rgba(20, 15, 14, .94)); }
.metric.warning { border-color: rgba(245, 190, 97, .5); }
.warning-board { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 0 0 16px; }
.warning-card { min-height: 76px; padding: 11px 12px; border: 1px solid rgba(239, 111, 101, .35); border-radius: 6px; background: linear-gradient(135deg, rgba(88, 31, 29, .72), rgba(18, 31, 26, .94)); }
.warning-card.warning { border-color: rgba(245, 190, 97, .42); background: linear-gradient(135deg, rgba(72, 55, 22, .55), rgba(18, 31, 26, .94)); }
.warning-card b { display: block; font-size: 13px; margin-bottom: 4px; }.warning-card span { color: #e7c4bd; font-size: 11px; }
.goal-wall-alerts { display:grid; grid-template-columns:280px minmax(0,1fr); gap:10px; margin-bottom:12px; }
.goal-wall-alert-total { min-height:112px; padding:13px 14px; border:1px solid rgba(239,111,101,.62); border-radius:7px; background:linear-gradient(145deg,rgba(77,29,27,.72),rgba(9,31,25,.96)); }
.goal-wall-alert-total > b { display:block; margin-bottom:12px; color:#ffd5d1; font-size:15px; }
.goal-wall-alert-total > div { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
.goal-wall-alert-total span { min-width:0; }.goal-wall-alert-total small,.goal-wall-alert-total strong { display:block; }
.goal-wall-alert-total small { color:#bca7a3; font-size:9px; white-space:nowrap; }.goal-wall-alert-total strong { margin-top:5px; color:#ff9f96; font-size:19px; }
.goal-wall-department-alerts { display:flex; gap:9px; min-width:0; overflow-x:auto; padding-bottom:3px; scrollbar-color:#315b50 transparent; }
.goal-wall-department-alert { flex:0 0 184px; min-height:112px; display:flex; flex-direction:column; gap:8px; padding:12px; border:1px solid rgba(245,190,97,.38); border-radius:7px; color:var(--text); background:linear-gradient(145deg,rgba(49,39,21,.58),rgba(8,30,24,.98)); text-align:left; }
.goal-wall-department-alert.has-alert { border-color:rgba(239,111,101,.58); background:linear-gradient(145deg,rgba(65,28,25,.68),rgba(8,30,24,.98)); }
.goal-wall-department-alert:hover,.goal-wall-department-alert:focus-visible { border-color:var(--green); outline:none; }
.goal-wall-department-alert > span { display:flex; align-items:center; justify-content:space-between; gap:8px; }.goal-wall-department-alert b { font-size:13px; }.goal-wall-department-alert strong { color:var(--amber); font-size:18px; }
.goal-wall-department-alert.has-alert strong { color:var(--red); }.goal-wall-department-alert small { min-height:29px; overflow:hidden; color:#ddc7c1; font-size:10px; line-height:1.45; }.goal-wall-department-alert em { margin-top:auto; color:var(--green); font-size:10px; font-style:normal; font-weight:800; }
.goal-wall-toolbar { display:flex; align-items:center; justify-content:space-between; gap:14px; margin:0 0 9px; }
.goal-wall-toolbar > div { display:grid; gap:3px; }.goal-wall-toolbar b { font-size:16px; }.goal-wall-toolbar span { color:var(--muted); font-size:11px; }
.goal-wall-table-wrap { max-width:100%; overflow:auto; border:1px solid rgba(182,218,203,.28); border-radius:7px; background:#eef4f1; box-shadow:var(--shadow); scrollbar-color:#4a796c #dce8e3; }
.goal-wall-table { width:100%; min-width:2180px; border-collapse:separate; border-spacing:0; table-layout:fixed; color:#18322b; font-size:12px; }
.goal-wall-table th { position:sticky; top:0; z-index:4; height:64px; padding:10px 12px; border-right:1px solid #c7d6d0; border-bottom:1px solid #bdcec7; color:#1c2c27; background:#edf3f0; text-align:left; font-size:14px; }
.goal-wall-table th small { display:block; margin-top:3px; color:#72857e; font-size:10px; line-height:1.35; }
.goal-wall-table th:first-child { left:0; z-index:6; width:130px; }.goal-wall-table th:nth-child(2) { width:260px; }.goal-wall-table th:nth-child(3) { width:280px; }.goal-wall-table th:nth-child(4) { width:180px; }.goal-wall-table th:nth-child(n+5) { width:290px; }
.goal-wall-table td { min-height:150px; padding:9px; vertical-align:top; border-right:1px solid #cbd9d3; border-bottom:1px solid #cbd9d3; background:#f8fbfa; }
.goal-wall-table tbody tr:nth-child(even) td { background:#f1f6f4; }.goal-wall-table tbody tr:hover td { background:#edf7f3; }
.goal-wall-table td:first-child { position:sticky; left:0; z-index:3; background:#f5f9f7; }
.goal-wall-table tbody tr:nth-child(even) td:first-child { background:#eaf2ef; }
.goal-wall-department button { width:100%; display:grid; gap:6px; padding:4px 2px; border:0; color:#172d27; background:transparent; text-align:left; }
.goal-wall-department b { font-size:16px; line-height:1.3; }.goal-wall-department small { color:#63766f; font-size:11px; }.goal-wall-department em { width:max-content; max-width:100%; padding:3px 6px; border-radius:4px; color:#a63630; background:#ffe1de; font-size:9px; font-style:normal; font-weight:800; }
.goal-wall-stack { display:grid; align-content:start; gap:7px; }
.goal-wall-item { position:relative; width:100%; min-height:58px; display:grid; grid-template-columns:minmax(0,1fr) 18px; gap:8px; align-items:start; padding:9px 8px 9px 10px; border:1px solid #a7d8ca; border-left:5px solid #16866e; border-radius:6px; color:#15584d; background:#e2f3ee; text-align:left; line-height:1.55; }
.goal-wall-item:hover,.goal-wall-item:focus-visible { border-color:#147b67; box-shadow:0 4px 14px rgba(20,95,77,.14); outline:none; }
.goal-wall-item span { min-width:0; overflow-wrap:anywhere; }.goal-wall-item span b { display:inline-block; margin-right:5px; padding:1px 4px; border-radius:4px; color:#fff; background:#16866e; font-size:10px; }
.goal-wall-item > i { width:16px; height:16px; margin-top:1px; border:2px solid #68726e; border-radius:3px; background:#59615e; }
.goal-wall-item.completed > i { border-color:#169b69; background:#169b69; box-shadow:inset 0 0 0 3px #e4fff5; }.goal-wall-item.rejected > i { border-color:#d8564d; background:#d8564d; }
.goal-wall-item.blue { border-color:#afc9e9; border-left-color:#376da7; color:#244d7c; background:#e7effa; }.goal-wall-item.blue span b { background:#376da7; }
.goal-wall-item.yellow { border-color:#e8cb86; border-left-color:#bc7d0b; color:#815508; background:#fff3d4; }.goal-wall-item.yellow span b { background:#b87908; }
.goal-wall-item.goal-a1,.owner-work-card.goal-a1,.work-card.goal-a1 { border-color:#ff9b91; border-left-color:#e53935; color:#8e211d; background:#ffe5e2; }.goal-wall-item.goal-a1 span b,.owner-work-card.goal-a1 .owner-work-code b { background:#d92f2b; }
.goal-wall-item.goal-a2,.owner-work-card.goal-a2,.work-card.goal-a2 { border-color:#83b9ff; border-left-color:#1667d9; color:#174f9c; background:#e3efff; }.goal-wall-item.goal-a2 span b,.owner-work-card.goal-a2 .owner-work-code b { background:#1667d9; }
.goal-wall-item.goal-a3,.owner-work-card.goal-a3,.work-card.goal-a3 { border-color:#f2bf47; border-left-color:#d88900; color:#765000; background:#fff0bc; }.goal-wall-item.goal-a3 span b,.owner-work-card.goal-a3 .owner-work-code b { background:#c87900; }
.goal-wall-empty { min-height:58px; display:grid; place-items:center; padding:10px; border:1px dashed #b7c8c1; border-radius:6px; color:#768982; background:rgba(255,255,255,.55); text-align:center; }
.goal-wall-status { display:grid; gap:7px; }.goal-wall-status > span { display:grid; gap:2px; padding:8px; border:1px solid #d0dcd7; border-radius:6px; background:#f7faf8; }.goal-wall-status b { color:#177360; font-size:11px; }.goal-wall-status small { color:#52665f; font-size:10px; line-height:1.4; }.goal-wall-status .alert { border-color:#efb0aa; background:#fff0ee; }.goal-wall-status .alert b { color:#b53f37; }
.goal-wall-progress i { display:block; height:5px; overflow:hidden; border-radius:5px; background:#d8e2de; }.goal-wall-progress em { display:block; height:100%; border-radius:5px; background:#1aa47d; }
.owner-status-rail { margin-bottom:10px; padding:12px; border:1px solid #315b50; border-radius:7px; background:#0b3027; }
.owner-status-rail.collapsed .owner-status-cards { display:none; }
.owner-status-rail.collapsed { padding-bottom:7px; }
.owner-status-head { display:flex; align-items:center; justify-content:space-between; gap:14px; margin-bottom:10px; }.owner-status-title { display:flex; align-items:center; gap:6px; min-width:0; }.owner-status-title > b { font-size:16px; }.owner-status-title select { width:146px; min-height:34px; padding:0 8px; border:1px solid rgba(182,218,203,.28); border-radius:5px; color:#dcece6; background:#133b31; font-weight:800; }.owner-status-head > div:last-child { display:flex; gap:7px; }
.owner-status-head button { min-height:34px; padding:0 13px; border:1px solid rgba(182,218,203,.28); border-radius:5px; color:#dcece6; background:rgba(255,255,255,.04); font-weight:800; }.owner-status-head button.next { border-color:#f5be61; color:#172318; background:#f5be61; }
.owner-status-head button.own-goal-entry { border-color:#f25f55; color:#fff; background:#d93b32; }
.owner-status-cards { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }.owner-status-card { min-width:0; max-width:none; min-height:104px; display:grid; gap:6px; padding:10px; border:1px solid rgba(75,213,173,.35); border-radius:6px; color:#ecf6ef; background:#133b31; text-align:left; }
.owner-status-card > span { display:flex; align-items:center; justify-content:space-between; gap:8px; }.owner-status-card b { font-size:14px; }.owner-status-card em { color:var(--green); font-size:12px; font-style:normal; font-weight:900; }.owner-status-card.abnormal { border-color:rgba(239,111,101,.6); }.owner-status-card.abnormal em,.owner-status-card.abnormal strong { color:#ff756d; }
.owner-status-card small { color:#b8cbc4; font-size:10px; line-height:1.45; }.owner-status-card > i { display:block; height:6px; overflow:hidden; border-radius:6px; background:#2d564b; }.owner-status-card u { display:block; height:100%; border-radius:6px; background:linear-gradient(90deg,#f5be61,#4bd5ad); text-decoration:none; }.owner-status-card strong { color:var(--green); font-size:14px; }
.owner-month-workspace { display:grid; grid-template-columns:180px minmax(540px,1fr) 330px; grid-template-areas:"profile plan daily"; min-width:1050px; overflow:hidden; border:1px solid #cad9d3; border-radius:7px; color:#243832; background:#f4f8f6; }
.owner-profile { grid-area:profile; min-width:0; padding:14px; border-right:1px solid #cbd9d3; background:#f7faf8; }.owner-profile-title { display:flex; align-items:center; gap:10px; padding:12px; border-radius:7px; color:white; background:#377f87; }.owner-profile-title span { display:grid; place-items:center; width:42px; height:42px; border-radius:7px; background:rgba(255,255,255,.18); font-size:21px; font-weight:900; }.owner-profile-title b { font-size:17px; overflow-wrap:anywhere; }
.owner-profile > h3 { margin:15px 0 8px; color:#51655e; font-size:17px; }.owner-profile > em { display:inline-flex; padding:5px 11px; border-radius:20px; color:#147661; background:#e0f1eb; font-size:12px; font-style:normal; font-weight:900; }.owner-profile > div:last-of-type { display:grid; gap:8px; margin-top:18px; }.owner-profile > div:last-of-type b { display:flex; justify-content:space-between; color:#d64d45; font-size:12px; }.owner-profile > div:last-of-type b strong { color:#147661; }.owner-profile > div:last-of-type i { display:block; height:9px; overflow:hidden; border-radius:9px; background:#dbe7e2; }.owner-profile > div:last-of-type u { display:block; height:100%; border-radius:9px; background:linear-gradient(90deg,#f1c554,#4ccda8); text-decoration:none; }.owner-profile > div:last-of-type small { color:#64766f; font-size:10px; line-height:1.6; }
.owner-profile label { display:grid; gap:5px; margin-top:18px; color:#657770; font-size:10px; }.owner-profile select { width:100%; min-height:34px; border:1px solid #b9cbc4; border-radius:5px; color:#243832; background:#fff; }
.owner-plan-area { grid-area:plan; min-width:0; border-right:1px solid #cbd9d3; }.owner-plan-top { display:grid; grid-template-columns:1fr 1.15fr; }.owner-plan-top > section { border-bottom:1px solid #cbd9d3; }.owner-plan-top > section:first-child { border-right:1px solid #cbd9d3; }
.owner-work-section { min-width:0; padding:10px; }.owner-work-section > header { min-height:31px; display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:7px; }.owner-work-section h3 { margin:0; color:#687973; font-size:15px; }.owner-work-section h3 b { color:#147661; }.owner-work-section > header > button { min-height:28px; padding:0 9px; border:1px solid #71bbaa; border-radius:5px; color:#116d5a; background:#edf8f4; font-size:10px; font-weight:900; }
.owner-work-list { display:grid; align-content:start; gap:7px; }.owner-work-card { min-width:0; min-height:68px; display:grid; grid-template-columns:58px minmax(0,1fr) auto; gap:8px; align-items:stretch; padding:7px; border:1px solid #afd8ce; border-left:5px solid #16866e; border-radius:6px; background:#e3f2ee; }.owner-work-card.blue { border-color:#b6cae6; border-left-color:#376da7; background:#e7eef8; }.owner-work-card.yellow { border-color:#e9ce8d; border-left-color:#b97a09; background:#fff1d1; }
.owner-work-code { display:grid; align-content:start; gap:4px; }.owner-work-code b { display:grid; place-items:center; min-height:34px; padding:3px; border-radius:6px; color:white; background:#16866e; font-size:13px; }.owner-work-card.blue .owner-work-code b { background:#376da7; }.owner-work-card.yellow .owner-work-code b { background:#b97a09; }.owner-work-code small { padding:2px 4px; border:1px solid currentColor; border-radius:10px; color:#16866e; font-size:8px; text-align:center; }
.owner-work-content { min-width:0; padding:4px 6px; border-radius:5px; background:rgba(255,255,255,.65); }.owner-work-content p { margin:0 0 5px; color:#15584d; font-size:12px; font-weight:800; line-height:1.5; overflow-wrap:anywhere; }.owner-work-card.blue .owner-work-content p { color:#285586; }.owner-work-card.yellow .owner-work-content p { color:#8a5907; }.owner-work-content small { display:block; color:#71817b; font-size:8px; line-height:1.4; }
.owner-work-actions { min-width:46px; display:flex; flex-direction:column; gap:4px; align-items:stretch; }.owner-work-actions button { min-height:24px; padding:0 6px; border:1px solid #76bbaa; border-radius:5px; color:#147661; background:#edf8f4; font-size:9px; font-weight:900; }.owner-work-status { display:inline-flex; align-items:center; align-self:flex-end; gap:4px; margin-top:auto; color:#65736e; font-size:8px; font-weight:900; }.owner-work-status i { width:15px; height:15px; border:2px solid #65736e; border-radius:3px; background:#66706c; }.owner-work-status i.done { border-color:#169b69; background:#169b69; box-shadow:inset 0 0 0 3px #e4fff5; }.owner-work-status small { color:inherit; font-size:8px; }
.owner-work-empty { min-height:68px; display:grid; place-items:center; padding:10px; border:1px dashed #b8c9c2; border-radius:6px; color:#7b8c85; background:rgba(255,255,255,.6); text-align:center; font-size:11px; }
.executive-monthly-only .side-nav .nav-button[data-view="dashboard"], .executive-monthly-only .side-nav .nav-button[data-view="daily"] { display:none; }
.executive-monthly-only .side-note p { font-size:0; }
.executive-monthly-only .side-note p::after { content:"A1 / A2 / A3 月度目标"; font-size:12px; }
.executive-monthly-only .owner-month-workspace.monthly-only-workspace { grid-template-columns:180px minmax(540px,1fr); grid-template-areas:"profile plan"; min-width:720px; }
.executive-monthly-only .owner-month-workspace.monthly-only-workspace .owner-plan-top { grid-template-columns:1fr; }
.executive-monthly-only .owner-month-workspace.monthly-only-workspace .owner-week-grid,
.executive-monthly-only .owner-month-workspace.monthly-only-workspace .owner-daily-panel { display:none; }
.owner-week-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }.owner-week-grid > section { border-right:1px solid #cbd9d3; }.owner-week-grid > section:last-child { border-right:0; }.owner-week-grid .owner-work-card { grid-template-columns:48px minmax(0,1fr); }.owner-week-grid .owner-work-actions { grid-column:1 / -1; flex-direction:row; min-width:0; }.owner-week-grid .owner-work-status { margin-top:0; margin-left:auto; }
.owner-daily-panel { grid-area:daily; min-width:0; padding:11px; background:#f9fbfa; }.owner-daily-panel > header { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-bottom:8px; }.owner-daily-panel h3 { margin:0; color:#243832; font-size:15px; }.owner-daily-panel h3 b { color:#147661; }.owner-daily-collapse { min-height:30px; padding:0 10px; border:1px solid #bdcec7; border-radius:6px; color:#147661; background:#fff; font-weight:800; }
.owner-calendar-week,.owner-calendar { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:4px; }.owner-calendar-week span { color:#71817b; font-size:9px; text-align:center; }.owner-calendar-day { position:relative; min-width:0; height:30px; padding:0; border:1px solid #d3dfda; border-radius:5px; color:#334740; background:#fff; font-size:10px; font-weight:800; }.owner-calendar-day.outside { color:#a9b5b0; background:#f5f7f6; }.owner-calendar-day.today { border:2px solid #147661; color:#147661; }.owner-calendar-day.grace { border-color:#d08a12; color:#8a5907; background:#fff4d6; box-shadow:inset 0 0 0 1px rgba(208,138,18,.24); }.owner-calendar-day.reported::after { position:absolute; right:3px; bottom:2px; width:5px; height:5px; border-radius:50%; background:#20a579; content:""; }.owner-calendar-day:not(:disabled) { cursor:pointer; }
.owner-daily-panel > p { margin:8px 0; color:#71817b; font-size:10px; line-height:1.45; }.owner-daily-slots { display:grid; gap:7px; }.owner-daily-slots article { min-height:78px; display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:8px; padding:8px; border:1px solid #d4dfdb; border-left:5px solid #9cacA6; border-radius:6px; background:#fff; }.owner-daily-slots article > b { display:grid; place-items:center; height:40px; border-radius:6px; color:white; background:#9caaa5; }.owner-daily-slots article > div { min-width:0; }.owner-daily-slots strong,.owner-daily-slots small { display:block; }.owner-daily-slots strong { color:#3e514a; font-size:11px; line-height:1.45; overflow-wrap:anywhere; }.owner-daily-slots small { margin-top:5px; color:#87948f; font-size:9px; }.owner-daily-slots article > button { align-self:start; min-height:28px; padding:0 8px; border:1px solid #78bdad; border-radius:5px; color:#147661; background:#edf8f4; font-size:9px; font-weight:900; }
.owner-daily-panel.collapsed { align-self:start; }.owner-daily-panel.collapsed > :not(header) { display:none; }
.historical-period-notice { margin:0 0 10px; padding:9px 11px; border-left:4px solid #356e9c; color:#24445f; background:#eaf2f8; font-weight:700; }
.owner-report-history { margin-top:10px; display:grid; gap:6px; }.owner-report-history > b { color:#3e514a; font-size:11px; }.owner-report-history article { padding:8px; border:1px solid #d4dfdb; border-radius:5px; background:#fff; }.owner-report-history article header { display:flex; justify-content:space-between; gap:8px; }.owner-report-history article p { margin:4px 0 0; color:#3e514a; font-size:11px; line-height:1.5; }.owner-report-history article small { color:#71817b; font-size:9px; }
.department-owner-heading { margin-top: 18px; }
.department-owner-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0 0 18px; isolation: isolate; }
.department-owner-card { position: relative; z-index: 1; min-width: 0; min-height: 330px; display: flex; flex-direction: column; gap: 10px; padding: 14px; border: 1px solid var(--line); border-radius: 7px; color: var(--text); background: linear-gradient(145deg, rgba(15, 48, 39, .98), rgba(7, 25, 20, .98)); text-align: left; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.department-owner-card:hover, .department-owner-card:focus-visible { z-index: 4; transform: translateY(-4px) scale(1.018); border-color: rgba(75, 213, 173, .72); box-shadow: 0 18px 48px rgba(0, 0, 0, .38); outline: none; }
.department-owner-card-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 12px; padding-bottom: 9px; border-bottom: 1px solid var(--line); }
.department-owner-card-head > span { min-width: 0; }.department-owner-card-head small { display: block; margin-bottom: 3px; color: var(--muted); font-size: 10px; }.department-owner-card-head b { display: block; font-size: 16px; overflow-wrap: anywhere; }.department-owner-card-head strong { flex: 0 0 auto; color: var(--green); font-size: 13px; }
.department-owner-stats { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 5px; }.department-owner-stats > span { min-width: 0; padding: 7px 4px; border: 1px solid rgba(182, 218, 203, .14); border-radius: 5px; background: rgba(255, 255, 255, .035); text-align: center; }.department-owner-stats b, .department-owner-stats small { display: block; }.department-owner-stats b { color: #f1fbf6; font-size: 14px; }.department-owner-stats small { margin-top: 2px; color: var(--muted); font-size: 9px; white-space: nowrap; }.department-owner-stats .alert b { color: var(--red); }
.department-owner-preview { display: grid; gap: 3px; min-width: 0; }.department-owner-preview small { color: var(--green); font-size: 9px; font-weight: 800; }.department-owner-preview b { display: block; overflow: hidden; color: #dfeee8; font-size: 11px; font-weight: 600; line-height: 1.5; text-overflow: ellipsis; white-space: nowrap; }
.department-action-progress { display:grid; gap:6px; padding:9px 10px; border:1px solid rgba(75,213,173,.22); border-radius:5px; background:rgba(75,213,173,.055); }.department-action-progress > span { display:flex; align-items:center; justify-content:space-between; gap:10px; }.department-action-progress small { color:var(--muted); font-size:10px; }.department-action-progress b { color:var(--green); font-size:11px; }.department-action-progress > i { display:block; height:6px; overflow:hidden; border-radius:6px; background:#26463d; }.department-action-progress em { display:block; height:100%; border-radius:6px; background:var(--green); }
.department-owner-open { margin-top: auto; color: var(--muted); font-size: 10px; text-align: right; }
.control-table-wrap { overflow: auto; border: 1px solid var(--line); border-radius: 7px; background: var(--panel); box-shadow: var(--shadow); }
.control-table { width: 100%; min-width: 1180px; border-collapse: separate; border-spacing: 0; table-layout: fixed; font-size: 11px; color: #17201d; }
.control-table th { position: sticky; top: 0; z-index: 2; height: 46px; padding: 8px; color: var(--text); background: #16342d; border-right: 1px solid var(--line); text-align: left; }
.control-table th:first-child { width: 112px; }.control-table th:nth-child(2) { width: 230px; }.control-table th:nth-child(3) { width: 250px; }.control-table th:nth-child(4) { width: 150px; }
.control-table td { vertical-align: top; padding: 7px; background: #f4f7f5; border-right: 1px solid #d6dfdb; border-bottom: 1px solid #d6dfdb; line-height: 1.42; }
.control-table tbody tr:nth-child(even) td { background: #edf2ef; }
.department-cell b { display: block; font-size: 13px; }.department-cell small { color: #60746c; }
.item-strip { display: block; margin: 0 0 5px; padding: 5px 7px; border-left: 4px solid #43c79f; background: rgba(67, 199, 159, .13); }
.item-strip.blue { border-color: #6d9fe8; background: rgba(109, 159, 232, .12); }.item-strip.yellow { border-color: #e6bd55; background: rgba(230, 189, 85, .14); }
.item-strip:last-child { margin-bottom: 0; }.item-strip b { margin-right: 4px; }
.status-list { display: grid; gap: 3px; color: #42544d; }.status-list b { color: #17201d; }
.progress-bar { display: grid; grid-template-columns: 1fr 34px; align-items: center; gap: 6px; margin-top: 5px; }.progress-bar i { height: 5px; background: #d4ddd9; border-radius: 5px; overflow: hidden; }.progress-bar em { display: block; height: 100%; background: #36b98f; }
.operation-toolbar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 10px 0 14px; }
.operation-toolbar select, .field-select { min-height: 36px; border: 1px solid var(--line); border-radius: 5px; background: var(--panel-2); color: var(--text); padding: 0 10px; }
.toolbar-select-label { display:grid; gap:5px; min-width:min(340px,100%); color:var(--muted); font-size:11px; font-weight:800; }
.toolbar-select-label select { width:100%; }
.executive-issue-toolbar { align-items:end; gap:12px; margin-bottom:4px; padding:12px; border:1px solid rgba(75,213,173,.30); border-radius:7px; background:rgba(75,213,173,.055); }
.issued-hint { min-height:36px; display:inline-flex; align-items:center; padding:0 11px; border:1px solid rgba(75,213,173,.28); border-radius:5px; color:#a9e8d3; background:rgba(75,213,173,.08); font-size:11px; font-weight:800; }
.primary, .secondary, .small-button { min-height: 34px; padding: 0 12px; border-radius: 5px; font-weight: 700; }
.primary { border: 1px solid var(--green); background: var(--green); color: #062019; }.secondary, .small-button { border: 1px solid var(--line); background: rgba(255,255,255,.04); color: var(--text); }
.small-button { min-height: 27px; padding: 0 8px; font-size: 11px; }.small-button.danger { color: #ffb6b0; border-color: rgba(239,111,101,.5); }
.workflow { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.workflow-column { min-width: 0; border-top: 3px solid var(--green); padding-top: 9px; }.workflow-column.blue { border-color: var(--blue); }.workflow-column.yellow { border-color: var(--amber); }
.workflow-column > h3 { margin: 0 0 9px; font-size: 14px; }
.work-card { padding: 11px; margin-bottom: 8px; border: 1px solid var(--line); border-radius: 6px; background: var(--panel); }
.work-card .code { display: inline-block; margin-right: 6px; color: var(--green); font-weight: 900; }.work-card p { min-height: 38px; margin: 7px 0; color: #d9e8e1; font-size: 12px; line-height: 1.55; }.work-card small { color: var(--muted); }
.work-card.company-target-card { border-color:rgba(75,213,173,.52); background:rgba(75,213,173,.055); }
.company-target-badge { display:block; width:max-content; max-width:100%; margin-top:7px; padding:3px 7px; border:1px solid rgba(75,213,173,.34); border-radius:4px; color:#9be8cf !important; background:rgba(75,213,173,.09); font-weight:800; overflow-wrap:anywhere; }
.work-card-actions { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 9px; }
.work-owner { display:grid; gap:2px; margin-top:9px; padding:7px 8px; border-left:3px solid rgba(75,213,173,.65); background:rgba(75,213,173,.07); }
.work-owner span { color:var(--muted); font-size:10px; }.work-owner b { color:#dff6ed; font-size:11px; line-height:1.45; }
.goal-metric { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin:9px 0; padding:8px; border:1px solid rgba(75,213,173,.25); border-radius:5px; background:rgba(75,213,173,.06); }
.goal-metric > div { min-width:0; }.goal-metric span { display:block; color:var(--muted); font-size:10px; }.goal-metric b { display:block; margin-top:3px; color:#e9f8f2; font-size:13px; overflow-wrap:anywhere; }
.goal-metric > small { grid-column:1 / -1; padding-top:5px; border-top:1px solid var(--line); line-height:1.5; }.goal-metric.unmatched { border-color:rgba(245,190,97,.38); background:rgba(245,190,97,.07); }.goal-metric.unmatched > small { color:#f5ce85; }
.goal-metric .metric-source-button { grid-column:1 / -1; justify-self:start; }
.my-work-queue { margin:0 0 16px; padding:14px; border:1px solid rgba(245,190,97,.48); border-radius:7px; background:#17251f; box-shadow:0 12px 34px rgba(0,0,0,.2); }
.my-work-queue.priority-open { animation:priorityQueueOpen .65s ease-out 1; }
.my-work-queue.complete { display:flex; align-items:center; justify-content:space-between; gap:14px; border-color:rgba(75,213,173,.35); background:rgba(75,213,173,.06); }
.queue-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }.queue-head h3,.my-work-queue.complete h3 { margin:3px 0 4px; font-size:16px; }.queue-head p,.my-work-queue.complete p { margin:0; color:var(--muted); font-size:11px; }
.queue-kicker { color:var(--amber); font-size:10px; font-weight:900; }.complete .queue-kicker { color:var(--green); }.queue-count { flex:0 0 auto; padding:5px 8px; border-radius:4px; color:#1e1607; background:var(--amber); font-size:11px; font-weight:900; }.complete .queue-count { color:#062019; background:var(--green); }
.queue-items { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; margin-top:11px; }.queue-item { min-width:0; min-height:66px; padding:8px 10px; border:1px solid var(--line); border-radius:5px; color:var(--text); background:rgba(255,255,255,.035); text-align:left; }.queue-item:hover { border-color:var(--green); }.queue-item.next { border-color:var(--amber); background:rgba(245,190,97,.1); }.queue-item span { display:block; color:var(--amber); font-size:9px; font-weight:900; }.queue-item b { display:block; margin:3px 0; font-size:12px; }.queue-item small { display:block; color:var(--muted); font-size:10px; line-height:1.4; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.work-card.focus-step { position:relative; border-color:var(--amber); box-shadow:0 0 0 3px rgba(245,190,97,.18), 0 12px 28px rgba(0,0,0,.25); animation:focusStepPulse 1.25s ease-in-out 3; }
.work-card.focus-step::before { content:"第一步 · 先完成这里"; position:absolute; right:8px; top:-13px; padding:4px 8px; border-radius:4px; color:#191105; background:var(--amber); font-size:10px; font-weight:900; }
.agent-guided-target { position:relative; outline:4px solid rgba(217,119,6,.72) !important; outline-offset:5px; box-shadow:0 0 0 9px rgba(245,190,97,.2) !important; animation:agentGuidedPulse 1.55s ease-in-out infinite; }
.agent-guided-target::before { position:absolute; z-index:80; left:8px; top:-36px; content:attr(data-agent-guide-label); padding:7px 11px; border-radius:4px; background:#b45309; color:#fff; font-size:12px; font-weight:900; line-height:1.2; pointer-events:none; }
@keyframes agentGuidedPulse { 0%,100% { outline-color:rgba(217,119,6,.6); } 50% { outline-color:rgba(217,119,6,.95); box-shadow:0 0 0 13px rgba(245,190,97,.24) !important; } }
@media (prefers-reduced-motion:reduce) { .agent-guided-target { animation:none !important; } }
@keyframes focusStepPulse { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-3px); } }
@keyframes priorityQueueOpen { 0% { transform:translateY(-8px); box-shadow:0 0 0 4px rgba(245,190,97,.25),0 16px 38px rgba(0,0,0,.28); } 100% { transform:translateY(0); box-shadow:0 12px 34px rgba(0,0,0,.2); } }
.approval-approved { color: var(--green) !important; }.approval-rejected { color: var(--red) !important; }.approval-pending { color: var(--amber) !important; }
.daily-panel { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }.daily-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }.daily-slot { min-height: 92px; padding: 10px; border: 1px solid var(--line); border-radius: 6px; background: rgba(13,45,37,.56); }.daily-slot b { color: var(--green); }.daily-slot p { font-size: 12px; line-height: 1.5; color: var(--muted); }
.mobile-daily-shell { width:min(460px,100%); margin:0 auto; display:grid; gap:12px; }
.mobile-daily-head { display:grid; gap:10px; padding:15px; border:1px solid var(--line); border-radius:7px; background:#102923; }
.mobile-daily-head h2,.mobile-daily-head p { margin:0; }.mobile-daily-head p { color:var(--muted); font-size:12px; }.mobile-daily-head select { width:100%; min-height:44px; padding:0 10px; border:1px solid var(--line); border-radius:5px; color:var(--text); background:#071813; }
.mobile-daily-progress { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }.mobile-daily-progress span { padding:12px; border:1px solid var(--line); border-radius:6px; background:var(--panel); }.mobile-daily-progress small,.mobile-daily-progress b { display:block; }.mobile-daily-progress small { color:var(--muted); }.mobile-daily-progress b { margin-top:5px; color:var(--green); font-size:20px; }
.mobile-daily-slots { display:grid; gap:9px; }.mobile-daily-slot { display:grid; grid-template-columns:44px minmax(0,1fr) auto; gap:10px; align-items:center; min-height:78px; padding:12px; border:1px solid var(--line); border-left:5px solid var(--green); border-radius:7px; background:var(--panel); }.mobile-daily-slot > b { display:grid; place-items:center; width:40px; height:40px; border-radius:5px; color:#062019; background:var(--green); }.mobile-daily-slot div { min-width:0; }.mobile-daily-slot strong,.mobile-daily-slot small { display:block; overflow-wrap:anywhere; }.mobile-daily-slot strong { font-size:13px; line-height:1.45; }.mobile-daily-slot small { margin-top:4px; color:var(--muted); font-size:10px; }.mobile-daily-slot button { min-width:58px; min-height:40px; border:0; border-radius:5px; color:#062019; background:var(--green); font-weight:900; }.mobile-daily-slot.complete { border-left-color:#6da7ff; }.mobile-daily-slot.complete > b { color:white; background:#286fcc; }
.handoff-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }.handoff-block { padding: 16px; border: 1px solid var(--line); border-radius: 7px; background: var(--panel); }.handoff-block h3 { margin: 0 0 9px; font-size: 15px; }.handoff-block ul, .handoff-block ol { margin: 0; padding-left: 20px; color: var(--muted); font-size: 12px; line-height: 1.8; }
.closure-zone { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.closure-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.closure-panel { min-height: 150px; padding: 14px; border: 1px solid var(--line); border-radius: 7px; background: var(--panel); }
.closure-panel h3 { margin: 0 0 4px; font-size: 14px; }.closure-panel > p { margin: 0 0 12px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.closure-value { display: block; margin: 8px 0; color: var(--green); font-size: 28px; }
.closure-list { display: grid; gap: 5px; color: var(--muted); font-size: 11px; }.closure-list b { color: var(--text); }
.generated-report { margin-top: 10px; padding: 11px; border-left: 3px solid var(--green); background: rgba(75,213,173,.08); color: #dbece5; font-size: 12px; line-height: 1.7; white-space: pre-line; }
html.embedded-dialog-open, body.embedded-dialog-open { overflow: hidden !important; }
dialog { width: min(620px, calc(100vw - 28px)); max-height: calc(100dvh - 24px); margin: auto; padding: 0; overflow: auto; border: 1px solid var(--line); border-radius: 8px; color: var(--text); background: #0b211c; box-shadow: var(--shadow); } dialog::backdrop { background: rgba(0,0,0,.72); }
#reportDialog[open] { display:flex; flex-direction:column; width:min(620px,calc(100vw - 28px)); height:min(calc(100dvh - 24px),760px); max-height:calc(100dvh - 24px); margin:auto; overflow:hidden; }
#reportDialog form { min-height:0; display:flex; flex-direction:column; overflow-y:auto; overscroll-behavior:contain; padding-bottom:0; }
#reportDialog .dialog-head { flex:0 0 auto; }
#reportDialog .dialog-actions { position:sticky; bottom:0; z-index:4; flex:0 0 auto; min-width:0; margin:15px 0 0; padding:10px 0 calc(10px + env(safe-area-inset-bottom, 0px)); border-top:1px solid var(--line); background:#0b211c; }
#reportDialog .dialog-actions > * { min-width:0; max-width:100%; overflow-wrap:anywhere; }
.department-detail-dialog { width: min(1080px, calc(100vw - 30px)); max-height: calc(100vh - 30px); max-height: calc(100dvh - 30px); margin: auto; padding: 18px; overflow: auto; }
.department-detail-head { position: sticky; top: -18px; z-index: 3; margin: -18px -18px 15px; padding: 18px; border-bottom: 1px solid var(--line); background: #0b211c; }.department-detail-head p { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.department-detail-summary { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 8px; margin-bottom: 13px; }.department-detail-summary span { padding: 11px; border: 1px solid var(--line); border-radius: 6px; background: rgba(75, 213, 173, .06); }.department-detail-summary small, .department-detail-summary b { display: block; }.department-detail-summary small { color: var(--muted); font-size: 10px; }.department-detail-summary b { margin-top: 5px; color: var(--green); font-size: 18px; }
.department-detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }.department-detail-grid > section { min-width: 0; padding: 13px; border: 1px solid var(--line); border-radius: 7px; background: rgba(5, 20, 16, .72); }.department-detail-grid h3 { margin: 0 0 10px; font-size: 15px; }.department-report-section { grid-column: 1 / -1; }
.department-week-section { grid-column:1 / -1; }
.department-week-groups { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.department-week-groups > div { min-width:0; padding:9px; border:1px solid rgba(182,218,203,.15); border-radius:5px; background:rgba(255,255,255,.025); }
.department-week-groups h4 { margin:0 0 8px; color:var(--amber); font-size:12px; }
.target-department-banner { margin-bottom:13px; padding:10px 12px; border-left:4px solid var(--green); border-radius:5px; color:#dff6ed; background:rgba(75,213,173,.09); font-size:13px; font-weight:800; }
.department-detail-list { display: grid; gap: 7px; }.department-detail-list article { display: flex; justify-content: space-between; gap: 12px; padding: 9px; border-left: 3px solid var(--green); background: rgba(75, 213, 173, .06); }.department-detail-list article b { font-size: 12px; line-height: 1.55; }.department-detail-list article small { flex: 0 0 auto; color: var(--muted); font-size: 10px; }
.department-report-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }.department-report-list article { padding: 10px; border: 1px solid var(--line); border-radius: 5px; background: rgba(255, 255, 255, .025); }.department-report-list header { display: flex; justify-content: space-between; gap: 10px; }.department-report-list header b { color: var(--green); font-size: 11px; }.department-report-list header small { color: var(--muted); font-size: 9px; }.department-report-list p { margin: 7px 0; color: #e3f0eb; font-size: 12px; line-height: 1.55; }.department-report-list em { display: block; margin-top: 4px; color: var(--amber); font-size: 10px; font-style: normal; line-height: 1.45; }
.evidence-links { grid-column:1 / -1; width:100%; display:flex; flex-wrap:wrap; gap:6px; margin-top:7px; }.evidence-links button { min-height:30px; padding:0 9px; border:1px solid rgba(75,213,173,.48); border-radius:5px; color:#baf3df; background:rgba(75,213,173,.10); font-size:10px; font-weight:800; }.evidence-links button:hover,.evidence-links button:focus-visible { border-color:var(--green); color:#062019; background:var(--green); outline:none; }.department-detail-list article { flex-wrap:wrap; }.department-detail-list article .evidence-links { flex-basis:100%; }
.evidence-dialog { width:min(960px,calc(100vw - 28px)); padding:16px; }.evidence-dialog-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:12px; }.evidence-dialog-head h2 { margin:2px 0 0; font-size:18px; overflow-wrap:anywhere; }.evidence-dialog-head small { color:var(--green); }.evidence-dialog-head p { margin:5px 0 0; color:var(--muted); font-size:11px; line-height:1.5; }.evidence-dialog-actions { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:7px; }.evidence-dialog-actions a:not([href]) { display:none; }.evidence-image-link { min-height:240px; display:grid; place-items:center; overflow:auto; border:1px solid var(--line); border-radius:6px; background:#061512; }.evidence-image-link:not([href]) { pointer-events:none; }.evidence-dialog img { display:block; max-width:100%; max-height:calc(100dvh - 160px); object-fit:contain; }
dialog form { padding: 18px; }.dialog-head { display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 14px; }.dialog-head h2 { margin: 2px 0 0; font-size: 19px; }.dialog-head small { color: var(--green); }
dialog label { display: grid; gap: 6px; margin-bottom: 12px; color: var(--muted); font-size: 12px; } dialog input, dialog select, dialog textarea { width: 100%; border: 1px solid var(--line); border-radius: 5px; padding: 9px; color: var(--text); background: #071813; resize: vertical; }
.assignment-scope { margin-bottom:14px; padding:11px; border:1px solid var(--line); border-radius:5px; color:#dff6ed; background:rgba(75,213,173,.07); font-size:13px; line-height:1.55; }
.assignment-note { margin:0; color:var(--muted); font-size:11px; line-height:1.65; }
.dialog-actions { display: flex; justify-content: flex-end; gap: 8px; margin-top: 15px; }
#toast { position: fixed; right: 22px; bottom: 22px; z-index: 30; max-width: 360px; padding: 11px 14px; color: #062019; background: var(--green); border-radius: 6px; box-shadow: var(--shadow); font-weight: 800; opacity: 0; transform: translateY(10px); pointer-events: none; transition: .18s ease; } #toast.show { opacity: 1; transform: translateY(0); } #toast.error { color: white; background: var(--red); }
@media (max-width: 760px) {
  .operation-view, .dashboard-view, .daily-view { min-width: 0; }
  .queue-item, .work-card, .operation-toolbar, .daily-panel { min-width: 0; }
  .operation-toolbar { display: grid; grid-template-columns: 1fr; gap: 8px; }
  .operation-toolbar button, .queue-item button, .mobile-daily-slot button { min-height: 44px; }
  dialog#itemDialog, dialog#reportDialog, dialog#meetingDialog, dialog#assignmentDialog, dialog#departmentDetailDialog, dialog#evidenceDialog { width: calc(100vw - 16px); max-width: calc(100vw - 16px); max-height: calc(100dvh - 16px); margin: auto; }
  dialog#reportDialog { height: min(calc(100dvh - 16px), 760px); }
  dialog form { padding: 14px; }
  dialog .dialog-head { position: sticky; top: -14px; z-index: 3; padding: 2px 0 10px; background: #0b211c; }
  dialog .dialog-actions { position: sticky; bottom: -14px; z-index: 3; padding: 10px 0 14px; background: #0b211c; flex-wrap: wrap; }
  dialog .dialog-actions > * { flex: 1 1 130px; min-height: 44px; }
  #reportDialog form { padding-bottom:0; }
  #reportDialog .dialog-head { position:sticky; top:0; padding:2px 0 10px; }
  #reportDialog .dialog-actions { bottom:0; margin-top:15px; padding:10px 0 calc(10px + env(safe-area-inset-bottom, 0px)); }
  #reportDialog .dialog-actions > * { flex:1 1 0; min-width:0; }
  .mobile-daily-slot { grid-template-columns: 42px minmax(0,1fr); }
  .mobile-daily-slot button { grid-column: 2; justify-self: stretch; width: 100%; }
}
@media (max-width: 980px) { .owner-month-workspace { min-width:0; grid-template-columns:170px minmax(520px,1fr); grid-template-areas:"profile plan" "daily daily"; }.owner-plan-area { border-right:0; }.owner-daily-panel { border-top:1px solid #cbd9d3; }.owner-daily-slots { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 1280px) { .owner-status-cards { grid-template-columns:repeat(5,minmax(0,1fr)); } }
@media (max-width: 1100px) { .owner-status-cards { grid-template-columns:repeat(5,minmax(0,1fr)); }.metric-grid, .warning-board, .workflow, .closure-grid, .department-owner-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.goal-wall-alerts { grid-template-columns:230px minmax(0,1fr); }.daily-grid,.queue-items { grid-template-columns: repeat(2, minmax(0,1fr)); }.department-week-groups { grid-template-columns:repeat(2,minmax(0,1fr)); }.department-detail-summary { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width: 760px) { .app-shell { grid-template-columns: 1fr; }.side-nav { position: sticky; height:auto; padding:10px; }.brand,.side-note { display:none; }.side-nav nav { grid-template-columns: repeat(3, 1fr); }.nav-button { min-height:42px; text-align: center; padding: 4px; font-size:12px; }.nav-button span { display:none; }.main-content { padding: 10px; }.topbar,.owner-status-head { align-items: flex-start; flex-direction: column; }.topbar { padding-bottom:4px; }.top-actions { width:100%; min-width:0; flex-wrap:wrap; white-space:normal; }.period-select { flex:1 1 100%; width:100%; max-width:none; min-width:0; }.top-actions strong { flex:1 1 auto; min-width:0; text-align:left; }.owner-status-head > div:last-child { min-width:0; }.owner-status-head button.own-goal-entry { flex-basis:100%; width:100%; }.owner-status-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }.owner-status-card { min-height:88px; }.owner-month-workspace { grid-template-columns:1fr; grid-template-areas:"profile" "plan" "daily"; }.executive-monthly-only .owner-month-workspace.monthly-only-workspace { min-width:0; grid-template-columns:1fr; grid-template-areas:"profile" "plan"; }.owner-profile { border-right:0; border-bottom:1px solid #cbd9d3; }.owner-plan-top,.owner-week-grid,.owner-daily-slots { grid-template-columns:1fr; }.owner-plan-top > section:first-child,.owner-week-grid > section { border-right:0; border-bottom:1px solid #cbd9d3; }.goal-wall-alerts { grid-template-columns:1fr; }.goal-wall-alert-total { min-height:auto; }.goal-wall-department-alert { flex-basis:160px; }.goal-wall-toolbar { align-items:flex-start; flex-direction:column; }.metric-grid, .warning-board, .workflow, .daily-grid, .handoff-grid, .closure-grid,.queue-items,.department-owner-grid,.department-detail-grid,.department-report-list,.department-week-groups { grid-template-columns: 1fr; }.department-detail-summary { grid-template-columns: repeat(2, minmax(0,1fr)); }.department-report-section,.department-week-section { grid-column:1; }.queue-head,.my-work-queue.complete { align-items:flex-start; flex-direction:column; } }
@media (max-width: 760px) { .owner-status-title { width:100%; }.owner-status-head > div:last-child { width:100%; flex-wrap:wrap; }.owner-status-head > div:last-child button { flex:1 1 auto; } }
@media (max-width: 760px) { .topbar .eyebrow { display:none; } }
