/* 教学执事屏幕主题，沿用 8888 内网工作台的暖米色与墨青色。 */
@media screen {
  :root {
    color-scheme: light;
    --primary: #365f63; --primary-dark: #294b50; --primary-light: #72918b;
    --primary-bg: #e3ebe6; --success: #476b50; --warning: #8a632a;
    --danger: #ae4941; --info: #416875;
    --bg-page: #f4f1e9; --bg-card: #fcfaf4; --bg-soft: #efebe0;
    --bg-sidebar: #eeece3; --bg-sidebar-hover: #e5e7dc; --bg-sidebar-active: #dce7df;
    --text-primary: #344541; --text-secondary: #53625b; --text-muted: #606b64;
    --text-sidebar: #53625b; --text-sidebar-active: #24474b;
    --border: #d8d2c4; --border-light: #e7e2d7; --border-strong: #b9b4a5; --gold: #89754f;
    --heading: #24474b; --brand-border: #a4b4a7; --brand-bg: #e2e8dc;
    --placeholder: #7a8176; --bg-hover: #efefe4; --reading-bg: #faf6e9;
    --danger-line: #ddbbb0; --danger-bg: #f8eae5; --success-bg: #eaf0e4;
    --gold-bg: #eee6d3; --gold-text: #76613c; --warning-bg: #f5edda;
    --primary-contrast: #fff; --bg-subtle: var(--bg-soft); --border-color: var(--border);
    --shadow-sm: 0 2px 8px rgba(47,58,49,.025);
    --shadow-md: 0 8px 28px rgba(47,58,49,.06);
    --shadow-lg: 0 18px 48px rgba(47,58,49,.13);
    --font-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", "Noto Sans CJK SC", "Source Han Sans SC", sans-serif;
    --sidebar-width: 224px;
  }
  :root[data-ui-theme="dark"] {
    color-scheme: dark;
    --primary: #a1c8bc; --primary-dark: #c2dfd4; --primary-light: #789e92;
    --primary-contrast: #17392f; --primary-bg: #293e36;
    --success: #a6cda7; --warning: #e3c18c; --danger: #eeaaa2; --info: #a2c8d3;
    --bg-page: #171d1c; --bg-card: #202927; --bg-soft: #29322f;
    --bg-sidebar: #1b2321; --bg-sidebar-hover: #293630; --bg-sidebar-active: #30453c;
    --text-primary: #e2e8e1; --text-secondary: #c1ccc2; --text-muted: #a4b2a8;
    --text-sidebar: #b9c6bb; --text-sidebar-active: #e0eee3; --heading: #e3eee4;
    --border: #3b4741; --border-light: #323d37; --border-strong: #56645b;
    --gold: #c7b58f; --gold-bg: #3c372a; --gold-text: #dfc99b;
    --brand-border: #607c6e; --brand-bg: #2e4238; --placeholder: #9ba99f;
    --bg-hover: #2a3831; --reading-bg: #242f29;
    --danger-line: #73504b; --danger-bg: #422e2b; --warning-bg: #413829; --success-bg: #2b3e2e;
    --shadow-sm: 0 2px 8px #00000012; --shadow-md: 0 8px 28px #00000024;
    --shadow-lg: 0 18px 48px #00000050;
  }
  body { background: var(--bg-page); color: var(--text-primary); font-size: 15px; }
  a { color: var(--primary); text-underline-offset: 3px; }
  button, input, select, textarea { font: inherit; }
  button, a, input, select, textarea, summary { -webkit-tap-highlight-color: transparent; }
  :is(button, a, input, select, textarea, summary):focus-visible { outline: 2px solid var(--primary); outline-offset: 3px; }
  .sidebar { border-right: 1px solid var(--border); box-shadow: none; }
  .sidebar-header { padding: 25px 18px; border-color: var(--border); }
  .logo { gap: 9px; }
  .logo-text { color: var(--heading); font-size: 17px; letter-spacing: 0; }
  .brand-mark { display: inline-grid; place-items: center; width: 30px; height: 34px; border: 1px solid var(--brand-border); border-radius: 7px; color: var(--primary); font-family: "Songti SC", serif; font-size: 21px; background: var(--brand-bg); }
  .nav-menu { padding: 14px 10px; }
  .nav-section-title { color: var(--gold); background: transparent; border: 0; font-size: 14px; letter-spacing: .04em; }
  .nav-section-title:hover { color: var(--primary-dark); background: var(--bg-sidebar-hover); }
  .nav-item a { padding: 9px 12px; font-size: 14px; }
  .nav-item a:hover { color: var(--primary-dark); }
  .nav-item.active a { background: var(--bg-sidebar-active); color: var(--text-sidebar-active); box-shadow: inset 3px 0 var(--primary); }
  .nav-icon { font-size: 16px; }
  .sidebar-footer { color: var(--text-muted); opacity: 1; border-color: var(--border); }
  .page-header { background: var(--bg-page); box-shadow: none; gap: 16px; min-height: 82px; }
  .theme-switch { display: inline-flex; gap: 3px; padding: 4px; border: 1px solid var(--border); border-radius: 10px; background: var(--bg-soft); flex-shrink: 0; }
  .theme-switch button { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 32px; padding: 5px 10px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: var(--text-muted); font-size: 14px; cursor: pointer; white-space: nowrap; }
  .theme-switch button svg { width: 17px; height: 17px; }
  .theme-switch button[aria-pressed="true"] { background: var(--bg-card); border-color: var(--border); color: var(--heading); box-shadow: var(--shadow-sm); }
  .theme-switch button:hover { color: var(--heading); }
  .login-theme-switch { position: absolute; top: 20px; right: 24px; }
  .page-title { color: var(--heading); font-size: 22px; letter-spacing: .02em; }
  .content-body { padding: 26px 32px 48px; }
  .user-menu-trigger, .user-menu-dropdown { background: var(--bg-card); border-color: var(--border); color: var(--text-primary); }
  .user-avatar { background: var(--primary-bg); color: var(--primary-dark); }
  .user-role-chip { background: var(--bg-soft); color: var(--text-secondary); }
  .card, .stat-card { border: 1px solid var(--border); box-shadow: var(--shadow-sm); }
  .card:hover, .stat-card:hover { transform: none; border-color: var(--border); box-shadow: var(--shadow-sm); }
  .card-header { border-color: var(--border-light); }
  .btn { font-size: 14px; justify-content: center; min-height: 38px; border: 1px solid transparent; line-height: 1.4; box-shadow: none; transition: background .15s, border-color .15s; }
  .btn-primary { background: var(--primary); color: var(--primary-contrast); }
  .btn-primary:hover { background: var(--primary-dark); box-shadow: none; filter: none; }
  .btn-secondary { background: var(--bg-card); border-color: var(--border); color: var(--text-primary); }
  .btn-secondary:hover { background: var(--bg-soft); border-color: var(--border-strong); }
  .btn-success { background: var(--success); }
  .btn-danger { background: var(--danger); }
  .btn-success:hover, .btn-danger:hover { box-shadow: none; }
  .btn-sm { min-height: 30px; padding: 5px 10px; }
  .btn:disabled { opacity: .55; cursor: wait; }
  :is(.content-body, dialog) :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]):not([type=color]), select, textarea), .form-control {
    font-size: 15px; max-width: 100%; min-height: 41px; padding: 9px 11px; border: 1px solid var(--border-strong);
    border-radius: 8px; color: var(--text-primary); background-color: var(--bg-card); box-shadow: none;
  }
  .form-control:focus, .content-body :is(input, select, textarea):focus { border-color: var(--primary); box-shadow: 0 0 0 3px #365f6318; background-color: var(--bg-card); }
  input::placeholder, textarea::placeholder { color: var(--placeholder); }
  input[type=checkbox], input[type=radio] { accent-color: var(--primary); }
  .content-body :is(.table, .data-table, .ct-table, .aw-table, .ss-table, .ms-table, .bl-table, .ap-table, .al-table, .tp-table, .tt-list-table) { width: 100%; border-collapse: separate; border-spacing: 0; }
  .content-body :is(.table, .data-table, .ct-table, .aw-table, .ss-table, .ms-table, .bl-table, .ap-table, .al-table, .tp-table, .tt-list-table) th { padding: 13px 16px; background: var(--bg-soft); color: var(--text-secondary); font-size: 14px; text-align: left; font-weight: 600; white-space: nowrap; border-bottom: 1px solid var(--border); }
  .content-body :is(.table, .data-table, .ct-table, .aw-table, .ss-table, .ms-table, .bl-table, .ap-table, .al-table, .tp-table, .tt-list-table) td { padding: 16px; color: var(--text-primary); font-size: 15px; border-bottom: 1px solid var(--border-light); vertical-align: middle; line-height: 1.65; }
  .content-body :is(.table, .data-table, .ct-table, .aw-table, .ss-table, .ms-table, .bl-table, .ap-table, .al-table, .tp-table, .tt-list-table) tbody tr:hover td { background: var(--bg-hover); }
  .content-body :is(.table, .data-table, .ct-table, .aw-table, .ss-table, .ms-table, .bl-table, .ap-table, .al-table, .tp-table, .tt-list-table) tr:last-child td { border-bottom: 0; }
  .table-scroll { overflow: auto; max-width: 100%; scrollbar-width: thin; }
  .table-scroll:focus-visible { outline: 2px solid var(--primary); outline-offset: 2px; }
  .table-scroll table { min-width: 720px; }
  .table-scroll .teachers-table { min-width: 1440px; }
  .teachers-table th:first-child, .teachers-table td:first-child { position: sticky; left: 0; z-index: 1; background: var(--bg-card); min-width: 110px; }
  .teachers-table th:first-child { background: var(--bg-soft); z-index: 2; }
  .teachers-table td { vertical-align: top; }
  .teacher-profile-type { display: flex; gap: 8px; align-items: center; white-space: nowrap; }
  .teacher-source-value { display: flex; align-items: baseline; gap: 10px; min-height: 32px; white-space: nowrap; }
  .teacher-source-label { min-width: 3em; color: var(--text-muted); font-size: 14px; }
  .teacher-class-group { min-width: 210px; margin-bottom: 6px; }
  .content-body .teacher-class-group > summary { display: flex; align-items: center; gap: 9px; min-height: 32px; font-size: 14px; font-weight: 400; color: var(--text-secondary); }
  .teacher-class-group > summary::before { content: '›'; color: var(--text-muted); }
  .teacher-class-group[open] > summary::before { transform: rotate(90deg); }
  .content-body .teacher-class-group[open] > summary { margin-bottom: 6px; }
  .teacher-class-list { display: grid; gap: 6px; max-width: 300px; padding: 4px 0 10px 18px; font-size: 15px; }
  .table-scroll .table-name { font-weight: 600; color: var(--heading); }
  .table-scroll .cell-list { min-width: 180px; white-space: normal; }
  .cell-muted { color: var(--text-muted); font-size: 14px; }
  .row-actions { display: flex; gap: 8px; flex-wrap: wrap; }
  .page-intro { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 24px; }
  .page-intro > .btn { flex-shrink: 0; white-space: nowrap; }
  .page-intro h2 { font-size: 24px; font-weight: 600; color: var(--heading); margin: 4px 0 8px; }
  .page-intro p { color: var(--text-muted); max-width: 760px; line-height: 1.85; }
  .section-label { color: var(--gold); font-size: 14px; font-weight: 600; letter-spacing: .12em; }
  .section-heading { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 22px; border-bottom: 1px solid var(--border-light); }
  .section-heading h2, .section-heading h3 { color: var(--heading); font-size: 15px; font-weight: 600; }
  .section-heading p { font-size: 14px; color: var(--text-muted); margin-top: 4px; }
  .section-heading .section-label { margin-bottom: 3px; }
  .page-links { display: flex; gap: 18px; flex-wrap: wrap; padding: 18px 2px; font-size: 14px; }
  .workspace-toolbar, .ct-bar, .aw-toolbar { padding: 18px 20px; border: 1px solid var(--border); border-radius: 12px; background: var(--bg-card); display: flex; align-items: end; flex-wrap: wrap; gap: 14px; margin-bottom: 20px; }
  .workspace-toolbar label, .ct-bar label, .aw-toolbar label, .workspace-form label { display: flex; flex-direction: column; gap: 7px; font-size: 14px; color: var(--text-secondary); }
  .workspace-toolbar .search-field { flex: 1; min-width: 180px; }
  .workspace-toolbar .search-field input { width: 100%; }
  .workspace-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
  .workspace-form input, .workspace-form select { width: 100%; }
  .workspace-form .wide { grid-column: 1 / -1; }
  .workspace-form [hidden] { display: none; }
  .workspace-dialog { margin: auto; width: min(520px, calc(100vw - 32px)); padding: 0; border: 1px solid var(--border); border-radius: 16px; background: var(--bg-card); color: var(--text-primary); box-shadow: var(--shadow-lg); }
  .workspace-dialog form { padding: 24px; }
  .workspace-dialog h2 { color: var(--heading); font-size: 19px; margin-bottom: 6px; }
  .workspace-dialog .dialog-description { color: var(--text-muted); font-size: 14px; margin-bottom: 24px; }
  .dialog-actions { display: flex; justify-content: flex-end; gap: 10px; margin-top: 24px; }
  dialog { background: var(--bg-card); color: var(--text-primary); border-color: var(--border); }
  dialog::backdrop { background: #283b3559; backdrop-filter: blur(2px); }
  .workspace-message:not(:empty), :is(#pointMessage, #teacherMessage, #awMessage, #ctMessage):not(:empty) { padding: 12px 16px; margin-bottom: 16px; border: 1px solid var(--danger-line); border-radius: 8px; background: var(--danger-bg); color: var(--danger); }
  .empty-state { text-align: center; padding: 38px 24px; color: var(--text-muted); }
  .empty-state strong { display: block; color: var(--text-secondary); font-size: 14px; margin-bottom: 6px; }
  .status-pill { display: inline-block; padding: 3px 9px; border-radius: 6px; font-size: 14px; white-space: nowrap; background: var(--primary-bg); color: var(--primary-dark); }
  .status-pill.partner { background: var(--gold-bg); color: var(--gold-text); }
  .status-pill.pending { background: var(--warning-bg); color: var(--warning); }
  .summary-strip { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-bottom: 24px; }
  .summary-item { border: 1px solid var(--border); border-radius: 12px; background: var(--bg-card); padding: 18px 22px; }
  .summary-item span { display: block; color: var(--text-muted); font-size: 14px; }
  .summary-item strong { display: block; font-size: 27px; color: var(--heading); font-weight: 600; margin-top: 4px; font-variant-numeric: tabular-nums; }
  .handoff-panel { margin-bottom: 24px; overflow: hidden; }
  .handoff-list { padding: 0 22px; }
  .handoff-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 18px 0; border-bottom: 1px solid var(--border-light); }
  .handoff-item:last-child { border-bottom: 0; }
  .handoff-item h4 { font-size: 14px; color: var(--heading); margin-bottom: 6px; overflow-wrap: anywhere; }
  .handoff-meta { color: var(--text-muted); font-size: 14px; display: flex; gap: 12px; flex-wrap: wrap; }
  .handoff-action { display: flex; align-items: center; gap: 14px; }
  .aw-preview h3 { color: var(--heading); margin-bottom: 12px; }
  .aw-meta, .ct-muted, .tm-note, .sc-meta { color: var(--text-muted); }
  .aw-body { margin: 18px 0; }
  .aw-preview .aw-toolbar { margin-top: 16px; }
  .content-body details.card { padding: 20px; margin-bottom: 20px; }
  .content-body summary { cursor: pointer; color: var(--heading); font-weight: 600; line-height: 1.7; }
  .content-body details[open] > summary { margin-bottom: 18px; }
  .cr-grid .cr-card h3 { margin-bottom: 18px; color: var(--heading); }
  .cr-grid .cr-form label:has(input:not([type=checkbox])), .cr-grid .cr-form label:has(select) { display: grid; grid-template-columns: 1fr; gap: 6px; font-size: 14px; }
  .cr-grid .cr-card p { margin: 12px 0; color: var(--text-muted); }
  .ss-bar, .ms-bar, .sc-toolbar { gap: 14px; padding: 16px 0; }
  .ss-muted, .ms-muted { color: var(--text-muted); }
  .class-tag, .class-tag.class-tag-more { background: var(--bg-soft); color: var(--text-secondary); }
  .modal, .filter-popover, .column-drag-item { background: var(--bg-card); border-color: var(--border); }
  .filter-popover-search { background: var(--bg-card); }
  .nav-section-children { border-color: var(--border); }
  .tt-tab { color: var(--text-muted); }
  .tt-tab.active { color: var(--primary); border-color: var(--primary); }
  .tt-cal { background: var(--border); border-color: var(--border); }
  .tt-cal-head, .tt-cal-day.out-of-month { background: var(--bg-soft); color: var(--text-muted); }
  .tt-cal-day, .tt-nav-btn { background: var(--bg-card); color: var(--text-primary); border-color: var(--border); }
  .tt-cal-day.today { background: var(--primary-bg); }
  .tt-label-range, .tt-cal-date { color: var(--text-secondary); }
  .tt-empty { color: var(--text-muted); }
  [data-center-control] label, .tm-form label, .ct-form label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--text-secondary); }
  [data-center-control] form { display: flex; gap: 14px; flex-wrap: wrap; align-items: end; padding: 16px 0; }
  [data-center-control] p { color: var(--text-muted); font-size: 14px; margin: 12px 0; line-height: 1.8; }
  .tm-section h3 { color: var(--heading); padding-bottom: 12px; border-bottom: 1px solid var(--border-light); }
  .ct-metric { background: var(--bg-card); border-color: var(--border); }
  .stat-icon.blue, .stat-icon.green, .stat-icon.purple { background: var(--primary-bg); color: var(--primary); }
  .stat-icon.orange { background: var(--gold-bg); color: var(--gold); }
  .login-body { background: var(--bg-page); }
  .login-card { background: var(--bg-card); border: 1px solid var(--border); box-shadow: var(--shadow-md); }
  .login-logo { margin: 0 auto 16px; width: 46px; height: 50px; font-size: 30px; }
  .login-title { color: var(--heading); }
  .login-subtitle, .login-footer, .form-hint { color: var(--text-muted); }
  .login-tabs { background: var(--bg-soft); }
  .login-tab { color: var(--text-muted); }
  .login-tab.active { background: var(--bg-card); color: var(--primary); }
  body .sc-student, body .sc-event { background: var(--bg-card); border-color: var(--border); color: var(--text-primary); }
  body .sc-student.active { background: var(--primary-bg); }
  body .pf-layout { min-height: 550px; height: calc(100dvh - 225px); }
  body .pf-queue-item, body .pf-work { background: var(--bg-card); border: 1px solid var(--border); box-shadow: none; }
  body .pf-queue-item.active { border-color: var(--primary); background: var(--primary-bg); }
  body .pf-queue-item .badge-ocr { background: var(--primary-bg); color: var(--primary-dark); }
  body .pf-image-panel { background: var(--bg-soft); }
  body .pf-text-panel textarea { background: var(--reading-bg); font-size: 16px; line-height: 2; }
  body .pf-work { min-width: 0; }
  body .pf-text-panel, body .pf-image-panel { min-width: 0; }
  body .pf-actions { flex-wrap: wrap; }
  body .zoom-controls button { background: var(--bg-card); color: var(--text-primary); }
  /* 旧页面中的中性控件共用主题，业务状态仍保留各自语义。 */
  body :is(.dropdown-menu, .custom-select-box, .custom-select-dropdown, .drawer-content, .mobile-card) { background: var(--bg-card); border-color: var(--border); color: var(--text-primary); }
  body :is(.custom-select-option.selected, .segmented-control, .top-scrollbar-wrapper, .column-drag-item.mandatory-column) { background: var(--bg-soft); color: var(--text-primary); border-color: var(--border); }
  body :is(.custom-select-option:hover, .column-drag-item:hover, .filter-popover-search:focus) { background: var(--bg-hover); color: var(--text-primary); }
  body :is(.custom-select-pill, .segmented-control .segment.active) { background: var(--primary-bg); color: var(--primary); }
  body .segmented-control .segment { color: var(--text-secondary); font-size: 14px; }
  body .custom-select-placeholder { color: var(--text-muted); }
  body .th-filterable:hover { background-color: var(--bg-hover) !important; }
  :root[data-ui-theme="dark"] :is(.btn-success, .btn-danger) { color: var(--bg-page); }
  :root[data-ui-theme="dark"] :is(.ap-tab.active, .score-high, .ms-success) { color: var(--success); border-color: var(--success); }
  :root[data-ui-theme="dark"] :is(.ap-step-meta, .bl-empty, .al-empty, .tp-empty, .ap-empty) { color: var(--text-muted); }
  :root[data-ui-theme="dark"] :is(.st-paid, .as-approved, .badge-settled, .badge-success, .bl-hours-section) { background: var(--success-bg); color: var(--success); }
  :root[data-ui-theme="dark"] :is(.st-pending, .as-pending, .badge-part, .badge-warning, .as-mgmt_review, .as-biz_review) { background: var(--warning-bg); color: var(--warning); }
  :root[data-ui-theme="dark"] :is(.st-cancelled, .tp-enrollment, .badge-info, .tp-teacher-header td) { background: var(--primary-bg); color: var(--primary); }
  :root[data-ui-theme="dark"] :is(.st-refunded, .st-partial_refunded, .as-rejected, .badge-unsettled, .badge-danger, .tp-refund, .ms-error) { background: var(--danger-bg); color: var(--danger); }
  :root[data-ui-theme="dark"] :is(.tm-error, .aw-error, .sc-error, .ct-error, .cr-error, .al-money.neg, .al-balance-neg, .refund-tag) { color: var(--danger); }
  :root[data-ui-theme="dark"] :is(.bl-table tr:hover, .ap-table tr:hover, .al-table tr.session-row:hover) { background: var(--bg-hover); }
  :root[data-ui-theme="dark"] :is(.al-detail-row td, .al-roster-table th, .bl-items-row td) { background: var(--bg-soft); color: var(--text-secondary); }
  :root[data-ui-theme="dark"] .tp-total-row td { background: var(--success-bg); }
  /* 部分历史页仍从脚本生成内联中性色；兼容它们，避免深色下出现白底白字。 */
  :root[data-ui-theme="dark"] :is(.content-body, .modal, dialog) [style*="background" i]:is([style*="#fff" i], [style*="white" i], [style*="#f8fafc" i], [style*="#f9fafb" i], [style*="#f3f4f6" i], [style*="#f1f5f9" i]) { background-color: var(--bg-soft) !important; }
  :root[data-ui-theme="dark"] :is(.content-body, .modal, dialog) [style*="color" i]:is([style*="#64748b" i], [style*="#6b7280" i], [style*="#94a3b8" i], [style*="#9ca3af" i], [style*="#475569" i], [style*="#334155" i], [style*="#374151" i], [style*="#1e293b" i]) { color: var(--text-secondary) !important; }
  :root[data-ui-theme="dark"] :is(.content-body, .modal, dialog) :is([style*="color:#dc2626" i], [style*="color: #dc2626" i], [style*="color:#ef4444" i], [style*="color: #ef4444" i]) { color: var(--danger) !important; }
  @media (max-width: 1000px) {
    body .pf-queue { width: 220px; }
    body .pf-work-split { flex-direction: column; overflow: auto; }
    body .pf-image-panel { min-height: 240px; border-right: 0; border-bottom: 1px solid var(--border); }
    body .pf-text-panel { min-height: 380px; }
  }
  @media (max-width: 768px) {
    .page-header { min-height: 64px; padding: 12px 16px; gap: 8px; }
    .page-title { font-size: 17px; }
    .page-actions-wrap { gap: 6px; }
    .theme-switch { padding: 3px; gap: 2px; }
    .theme-switch button { padding: 5px 7px; }
    .theme-switch button svg { display: none; }
    #centerInboxButton { padding: 7px 9px; font-size: 14px; }
    .content-body { padding: 20px 16px 32px; }
    .page-intro { flex-direction: column; gap: 12px; margin-bottom: 20px; }
    .page-intro h2 { font-size: 21px; }
    .summary-strip { gap: 8px; }
    .summary-item { padding: 14px 12px; }
    .summary-item strong { font-size: 23px; }
    .workspace-toolbar { padding: 16px; gap: 12px; }
    .workspace-toolbar label { flex: 1; min-width: 130px; }
    .workspace-form { grid-template-columns: 1fr; }
    .section-heading { padding: 16px; }
    .handoff-list { padding: 0 16px; }
    .handoff-item { grid-template-columns: 1fr; gap: 12px; }
    .handoff-action { justify-content: space-between; }
    .mobile-desktop-hint { background: var(--gold-bg); color: var(--gold-text); border-color: var(--border); }
    body .pf-layout { height: auto; flex-direction: column; }
    body .pf-queue { width: 100%; max-height: 250px; }
    body .pf-work { min-height: 520px; }
    body .pf-empty { min-height: 280px; padding: 24px; text-align: center; }
  }
  @media (max-width: 380px) {
    .page-header { flex-wrap: wrap; }
    .page-actions-wrap { margin-left: auto; }
  }
  @media (prefers-reduced-motion: reduce) { *, *::before, *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; } }
}
