/* 20260913-details01 — screen-only detail layer.
   No layout reordering, visibility, business-state or print/export overrides.
   The approved login and demolition timeline are intentionally outside the scopes. */
@font-face {
  font-family: "3S Pretendard";
  src: url("/demolition/design-assets/PretendardVariable.woff2") format("woff2");
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
}
/* The legacy mobile rules conflicted on sidebar hover and used intrinsic grid
   widths. Keep the same cards and columns, but contain them within the viewport. */
@media screen and (max-width: 850px) {
  [data-appearance="demolition"]:not(.status-mode) #appShell { grid-template-columns: minmax(0, 1fr); }
  [data-appearance="demolition"]:not(.status-mode) #appShell .sidebar { position: static; width: 100%; }
  [data-appearance="demolition"]:not(.status-mode) .workspace { min-width: 0; width: 100%; }
  [data-appearance="demolition"]:not(.status-mode) :is(.dashboard-grid, .global-control-bar) { grid-template-columns: minmax(0, 1fr); }
  [data-appearance="demolition"]:not(.status-mode) :is(.dashboard-grid > .panel, .global-control-bar > *, .global-control-actions) { min-width: 0; }
  [data-appearance="demolition"]:not(.status-mode) .global-control-actions { flex-wrap: wrap; }
  [data-appearance="demolition"]:not(.status-mode) .connection-summary { flex-wrap: wrap; }
}
@media screen {
  /* Only operational surfaces inherit the neutral palette, never login/output. */
  [data-appearance="demolition"]:not(.status-mode) .monthly-contact-action {
    word-break: keep-all;
    overflow-wrap: normal;
  }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app,
      [data-appearance="intake"] .app-shell) {
    --ink: #183454; --muted: #61738b; --line: #dce5f0;
    --suite-ink: #183454; --suite-muted: #61738b; --suite-line: #dce5f0;
    color: #183454;
  }
  [data-appearance="demolition"]:not(.status-mode) #appShell {
    font-family: "3S Pretendard", "Malgun Gothic", sans-serif;
    --shadow: 0 4px 18px rgba(27,57,94,.045);
  }
  [data-appearance="demolition"]:not(.status-mode) .workspace { background: #f4f7fc; }

  /* Neutral surfaces retain original geometry, scroll containers and column widths. */
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    :is(.panel, .metric-card, .service-card, .table-shell, .worker-tray,
        .dispatch-board, .board-toolbar, .filter-toolbar, .map-toolbar,
        .summary-grid > article, .dashboard-stat-grid > article) {
    border-color: #dce5f0; box-shadow: 0 4px 18px rgba(27,57,94,.045);
  }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    :is(h1, h2, h3) { color: #17375b; letter-spacing: -.025em; }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app) .eyebrow { color: #617d9e; }

  /* Table headers: state/urgency cells and team/leave colours are not recoloured. */
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    :is(.schedule-grid, .monthly-detail-table, .pending-table, .roster-sheet-table,
        .management-table, .staff-table, .audit-table, .company-db-table,
        .facility-db-table, .dispatch-table, .performance-table, .job-table) thead th:not(.construction-header) {
    color: #526987; background: #f1f5fb; border-color: #dce5f0;
  }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    :is(.schedule-grid, .monthly-detail-table, .pending-table, .roster-sheet-table,
        .management-table, .staff-table, .audit-table, .company-db-table,
        .facility-db-table, .dispatch-table, .performance-table, .job-table) td {
    border-color: #e5ecf5;
  }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    :is(.toolbar, .filter-toolbar, .monthly-detail-toolbar, .board-toolbar,
        .date-summary, .header-actions, .worker-tray > header, .grid-meta,
        .staff-role-guide, .dashboard-rule-note) {
    border-color: #dce5f0; background-color: #f8faff;
  }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    :is(.toolbar, .filter-toolbar, .monthly-detail-toolbar, .header-actions,
        .management-form, .staff-create-form, .audit-filters, .company-db-toolbar,
        .facility-db-toolbar, .worker-search, .management-list)
    :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea) {
    border-color: #ccd9e9; border-radius: 7px;
  }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    :is(input, select, textarea):focus-visible { outline: 2px solid #2879ef; outline-offset: 2px; }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    :is(.secondary, .tertiary):not(:disabled) {
    color: #34577f; background: #f6f9fe; border-color: #d3dfef;
  }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    .primary:not(:disabled):not(.reassign) {
    background: #086af0; border-color: #086af0; color: #fff;
    box-shadow: 0 3px 8px rgba(8,106,240,.12);
  }
  :is([data-appearance="suite"] #appShell:not(.demolition-content-active),
      [data-appearance="demolition"]:not(.status-mode) #appShell,
      [data-appearance="floor"] .floor-app,
      [data-appearance="agency"] .agency-app)
    .text-button:not(:disabled) { color: #1268cf; }

  /* Demolition — every non-timeline view, not just the top-level frame. */
  [data-appearance="demolition"]:not(.status-mode) :is(.panel, .stat-card) { border-color: #dce5f0; border-radius: 12px; }
  [data-appearance="demolition"]:not(.status-mode) .stat-card { background: #fff; color: #183454; }
  [data-appearance="demolition"]:not(.status-mode) .stat-card.accent { background: #13395f; border-color: #13395f; color: #fff; }
  [data-appearance="demolition"]:not(.status-mode) .stat-card.warning { background: #fff9ee; border-color: #efdfbd; color: #935c10; }
  [data-appearance="demolition"]:not(.status-mode) .stat-card::after { content: none; }
  [data-appearance="demolition"]:not(.status-mode) :is(.stat-card strong, .bar-item > b, .availability-row em) { font-variant-numeric: tabular-nums; }
  [data-appearance="demolition"]:not(.status-mode) .bar-track { background: #edf3fb; }
  [data-appearance="demolition"]:not(.status-mode) .bar-item .bar-fill { background: #4389df; }
  [data-appearance="demolition"]:not(.status-mode) .bar-item:nth-child(2n) .bar-fill { background: #78a5e3; }
  [data-appearance="demolition"]:not(.status-mode) .availability-row { border-color: #e5ecf5; }
  [data-appearance="demolition"]:not(.status-mode) .availability-row:not(.leave) em { color: #285f9f; }
  [data-appearance="demolition"]:not(.status-mode) .availability-row em { overflow-wrap: normal; word-break: keep-all; }
  [data-appearance="demolition"]:not(.status-mode) .panel-heading { flex-wrap: wrap; gap: 10px; }
  [data-appearance="demolition"]:not(.status-mode) .panel-heading h2 { word-break: keep-all; }
  [data-appearance="demolition"]:not(.status-mode) :is(.floor-check-actions, .pending-deadline-actions) { flex-shrink: 0; }
  [data-appearance="demolition"]:not(.status-mode) :is(.count-pill, .compact-action) { white-space: nowrap; }
  [data-appearance="demolition"]:not(.status-mode) .count-pill:not(.danger) { background: #ebf3fd; color: #285f9f; }
  [data-appearance="demolition"]:not(.status-mode) :is(.month-stepper, .shared-month-field) { background: #fff; border-color: #d3dfef; }
  [data-appearance="demolition"]:not(.status-mode) .month-step { color: #285685; background: #f6f9fe; }
  [data-appearance="demolition"]:not(.status-mode) .global-control-bar { box-shadow: 0 3px 12px rgba(27,57,94,.035); }
  [data-appearance="demolition"]:not(.status-mode) .floor-check-summary > span { border-color: #dce5f0; background: #f8faff; }
  [data-appearance="demolition"]:not(.status-mode) .floor-check-summary.has-missing > span:last-child { border-color: #efb4ad; background: #fff0ed; }
  [data-appearance="demolition"]:not(.status-mode) .pending-deadline-list.empty-state:not(.pending-deadline-error) { background: #f8faff; }
  [data-appearance="demolition"]:not(.status-mode) .roster-service-tabs { border-color: #dce5f0; background: #f6f9fe; }
  [data-appearance="demolition"]:not(.status-mode) .roster-service-tabs button.active { background: #eaf3ff; color: #1268cf; border-color: #aacbf5; }
  [data-appearance="demolition"]:not(.status-mode) .roster-service-tabs button.active small { color: #5a7494; }
  [data-appearance="demolition"]:not(.status-mode) .roster-editor > summary { background: #f5f8fe; color: #284f7a; border-color: #dce5f0; }

  /* Floor — worker/partner management, toolbar, rankings and preview details. */
  [data-appearance="floor"] :is(.panel, .worker-tray, .dispatch-board) { background-color: #fff; border-color: #dce5f0; }
  [data-appearance="floor"] .management-list > article { border-color: #dce5f0; border-radius: 8px; }
  [data-appearance="floor"] .panel > header { border-bottom-color: #e3ebf5; }
  [data-appearance="floor"] .summary-grid strong { color: #183e6c; }
  [data-appearance="floor"] .summary-grid article:first-child::before { background: #4389df; }
  [data-appearance="floor"] .ranking-card.active { border-color: #4d91eb; outline-color: #dbeaff; background: #eef5ff; }
  [data-appearance="floor"] .sort-action.active { background: #176acb; color: #fff; box-shadow: 0 3px 8px rgba(8,106,240,.12); }
  [data-appearance="floor"] .dashboard-bar-row b { color: #285f9f; font-variant-numeric: tabular-nums; }
  [data-appearance="floor"] .dashboard-preview-tools span { color: #285f9f; background: #ebf3fd; }
  [data-appearance="floor"] .dashboard-preview-row :is(time, strong) { color: #285f9f; }
  [data-appearance="floor"] .dashboard-preview-row button { background: #f4f8ff; border-color: #c6d9f2; color: #285f9f; }
  [data-appearance="floor"] .floor-view-tabs { background: #133554; border-color: #244565; }
  [data-appearance="floor"] .floor-view-tabs button.active { color: #fff; background: #214970; box-shadow: inset 0 -3px #62b2ff; }

  /* Hub/collection — previously missed metric-card and queue/map containers. */
  [data-appearance="suite"] #appShell:not(.demolition-content-active) :is(.metric-card, .service-card, .queue-panel, .hub-map-filterbar, .hub-map-sidebar) { border-color: #dce5f0; border-radius: 12px; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .metric-card-primary { background: #13395f; border-color: #13395f; color: #fff; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .metric-card::after { content: none; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .dashboard-bar-row > span { background: #edf3fb; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .dashboard-bar-row > span i { background: #4389df; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .dashboard-bar-row:nth-child(even) > span i { background: #78a5e3; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .bar-item .bar-fill { background: #4389df; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .bar-item:nth-child(2n) .bar-fill { background: #78a5e3; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) :is(.queue-toolbar, .queue-meta, .hub-map-filterbar) { background: #f8faff; border-color: #dce5f0; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .panel.received-panel { border-top-color: var(--purple); }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .panel.own-panel { border-top-color: var(--orange); }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .service-card.service-card-jal { border-top-color: var(--blue); }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .service-card.service-card-ssdam { border-top-color: var(--green-2); }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .service-card.service-card-map { border-top-color: var(--nav); }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .global-header { background: #133554; border-color: #244565; }
  [data-appearance="suite"] #appShell:not(.demolition-content-active) .service-tab.active { background: #214970; color: #fff; border-color: #4f92d8; }

  /* Agency — service/urgency/chart hues still retain their existing meanings. */
  [data-appearance="agency"] .app-header { background: #fff; }
  [data-appearance="agency"] .app-header h1 em { color: #52749b; }
  [data-appearance="agency"] .dashboard-stat-grid article.accent { color: #fff; }
  [data-appearance="agency"] .dashboard-stat-grid article.accent strong { color: #fff; }
  [data-appearance="agency"] .dashboard-stat-grid article.accent :is(span, small) { color: #d4e4f8; }
  [data-appearance="agency"] .summary-grid article:not(.accent):not(.warning) { border-color: #dce5f0; background: #fff; }
  [data-appearance="agency"] .section-heading { background: #fff; border-color: #dce5f0; }
  [data-appearance="agency"] .button.secondary:not(:disabled) { color: #285f9f; border-color: #c6d9f2; background: #f4f8ff; }
  [data-appearance="agency"] :is(.map-mode-toggle, .dashboard-period-toggle) button.active { background: #176acb; color: #fff; }
  [data-appearance="agency"] .view-tabs { background: #133554; border-color: #244565; }
  [data-appearance="agency"] .view-tabs button.active { background: #214970; border-color: #62b2ff; color: #fff; }

  /* Detail dialogs. Do not target overlays' display/open/disabled/busy state. */
  [data-appearance="suite"] :is(.reception-editor-card, .reception-confirm-card, .map-job-card, .job-content-popover),
  [data-appearance="demolition"]:not(.status-mode) :is(.quick-assign-card, .pending-editor-card, .pending-confirm-card, .reauth-card, .full-content-tooltip),
  [data-appearance="floor"] :is(.alimtalk-result-dialog, .operation-progress-card),
  [data-appearance="agency"] .detail-panel {
    border-color: #dce5f0; border-radius: 12px; box-shadow: 0 16px 52px rgba(18,45,77,.18);
  }
  [data-appearance="suite"] .reception-modal-header,
  [data-appearance="demolition"]:not(.status-mode) :is(.quick-assign-header, .pending-editor-header, .quick-assign-context),
  [data-appearance="agency"] .detail-panel > header {
    background: #f4f8ff; color: #183e6c; border-color: #dce5f0;
  }
  [data-appearance="suite"] .reception-modal-header :is(h2, p),
  [data-appearance="demolition"]:not(.status-mode) :is(.quick-assign-header, .pending-editor-header) :is(h2, p) { color: #28527f; }
  [data-appearance="demolition"]:not(.status-mode) .pending-editor-header .quick-assign-close { color: #34577f; background: #fff; border-color: #d3dfef; }
  [data-appearance="demolition"]:not(.status-mode) .quick-assign-modal { font-family: "3S Pretendard", "Malgun Gothic", sans-serif; }
  [data-appearance="demolition"]:not(.status-mode) :is(.pending-editor-card, .pending-editor-scroll) { background: #f5f8fd; }
  [data-appearance="demolition"]:not(.status-mode) :is(.pending-form label, .quick-assign-controls) { background: #fff; border-color: #dce5f0; }
  [data-appearance="demolition"]:not(.status-mode) :is(.pending-editor-intro, .pending-form .form-actions) { background: #edf4fe; color: #456489; border-color: #d3dfef; }
  [data-appearance="demolition"]:not(.status-mode) .pending-editor-intro strong { color: #285b98; }
  [data-appearance="demolition"]:not(.status-mode) .pending-editor-header .eyebrow { color: #617d9e; }
  [data-appearance="demolition"]:not(.status-mode) .quick-assign-modal .primary:not(:disabled):not(.reassign) { color: #fff; background: #086af0; border-color: #086af0; box-shadow: 0 3px 8px rgba(8,106,240,.12); }
  [data-appearance="demolition"]:not(.status-mode) .quick-assign-modal :is(input, select, textarea):focus { border-color: #3987f8; box-shadow: 0 0 0 3px #eaf2ff; }
  [data-appearance="suite"] .reception-source-pane { background: #f6f9fe; border-color: #dce5f0; }
  [data-appearance="suite"] .reception-modal-actions { background: #f8faff; border-color: #dce5f0; }

  /* Reception and calculator: chrome only; output documents are not selected. */
  [data-appearance="intake"] :is(.tab, .btn, .input, input, select, textarea) { border-radius: 7px; }
  [data-appearance="intake"] .table-wrap thead th { color: #526987; background: #f1f5fb; border-color: #dce5f0; }
  [data-appearance="intake"] :is(.order-filters, .inline-match, .field-group) { border-color: #dce5f0; }
  [data-appearance="intake"] .tab:not(.is-active) { color: #526987; border-color: #d3dfef; background: #f6f9fe; }
  [data-appearance="pricing"] > :is(.app-header, .app-shell) :is(.segmented, .detail-block, .rate-toolbar, .master-rate-toolbar) { border-color: #dce5f0; background: #f7faff; }
  [data-appearance="pricing"] > :is(.app-header, .app-shell) :is(.segmented button.active, .category-card.active) { background: #176acb; color: #fff; border-color: #176acb; }
  [data-appearance="pricing"] > .app-shell :is(.line-table, .admin-table) thead th { background: #f1f5fb; color: #526987; border-color: #dce5f0; }
  [data-appearance="pricing"] > .app-shell .panel-head h2 { color: #17375b; }
  [data-appearance="pricing"] > :is(.app-header, .app-shell) button.ghost:not(:disabled) { border-color: #c8d9ee; background: #fff; color: #285b98; }
}
