/* Infohitech App — Air ciel. Surfaces are separate from semantic status colors. */
.portal-air {
    --pa-canvas:#f6fafb;--pa-surface:#fff;--pa-header:#c2e6e9;--pa-header-ink:#244f55;
    --pa-header-line:#9dcbd0;--pa-inset:#f5fafa;--pa-selection:#d5eff0;
    --pa-line:#cce0e2;--pa-ink:#203b3f;--pa-muted:#4c686c;--pa-link:#006e76;
    --pa-brand:#009da8;--pa-shadow:0 4px 18px #174e5514;--pa-radius:15px;--pa-space:15px;
    background:var(--pa-canvas);color:var(--pa-ink);
}
.dark .portal-air {
    --pa-canvas:#122326;--pa-surface:#1c3034;--pa-header:#315b62;--pa-header-ink:#e3f0ef;
    --pa-header-line:#527a80;--pa-inset:#1a2c30;--pa-selection:#245257;
    --pa-line:#3d565b;--pa-ink:#e3f0ef;--pa-muted:#adc5c6;--pa-link:#7cdee2;
    --pa-shadow:0 4px 18px #00000024;
}
.portal-air :is([data-flux-main],.pa-main),.portal-air :is([data-flux-main],.pa-main):has(.cu),.portal-air>.bg-background {background:var(--pa-canvas)}
.portal-air [data-flux-sidebar],.portal-air [data-flux-header] {background:var(--pa-surface);border-color:var(--pa-line);color:var(--pa-ink)}
.portal-air [data-flux-sidebar-item][data-current] {background:var(--pa-selection);color:var(--pa-link);box-shadow:inset 3px 0 var(--pa-brand)}
.portal-air :is([data-flux-heading],h1,h2,h3) {color:inherit}
.portal-air [data-flux-text] {color:var(--pa-muted)}
.portal-air :is(.text-zinc-400,.text-zinc-500,.text-zinc-600) {color:var(--pa-muted)}
.portal-air :is(.text-zinc-700,.text-zinc-800,.text-zinc-900) {color:var(--pa-ink)}
.portal-air :is(.border-zinc-100,.border-zinc-200,.border-zinc-300) {border-color:var(--pa-line)}
.portal-air :is([data-flux-main],.pa-main) :is(.bg-zinc-50,.bg-zinc-100,.bg-neutral-50,.bg-neutral-100) {background-color:var(--pa-inset)}
.portal-air :is([data-flux-main],.pa-main) .bg-white {background-color:var(--pa-surface)}
.portal-air :is([data-flux-main],.pa-main) :is([class~="bg-[#004EA2]"],[class~="bg-[#004ea2]"]) {background-color:var(--pa-brand)}
.portal-air :is([data-flux-main],.pa-main) :is([class~="text-[#004EA2]"],[class~="text-[#004ea2]"]) {color:var(--pa-link)}

/* The approved Dashboard “Νέο ΔΤΕ” button: white, quiet border, legible text. */
.portal-air [data-flux-button].pa-primary-button,
.portal-air :is(.crm-work,.crm-composer) [data-flux-button].pa-primary-button,
.portal-air .cu .cu-button.primary,.portal-air .crm-edit-small {
    background:var(--pa-surface);color:var(--pa-ink);border:1px solid var(--pa-line);
    box-shadow:none;font-weight:500;
}
.portal-air [data-flux-button].pa-primary-button:not(:disabled):hover,
.portal-air .cu .cu-button.primary:hover,.portal-air .crm-edit-small:hover {background:var(--pa-inset);border-color:var(--pa-header-line);color:var(--pa-ink)}
.portal-air [data-flux-button].pa-primary-button:not(:disabled):active,
.portal-air .cu .cu-button.primary:active,.portal-air .crm-edit-small:active {background:var(--pa-selection)}
.portal-air [data-flux-button].pa-primary-button:disabled {opacity:.5}
.portal-air [data-flux-button][data-variant="outline"] {background:var(--pa-surface);border-color:var(--pa-line);color:var(--pa-ink)}
.portal-air :is([data-flux-input],[data-flux-textarea],[data-flux-select]) {background-color:var(--pa-surface);border-color:var(--pa-line);color:var(--pa-ink)}
.portal-air :is(input,textarea,select):focus-visible,.portal-air :is(button,a,summary):focus-visible {outline-color:var(--pa-link)}

/* Explicit panel annotations leave warnings, timers and workflow state cards intact. */
.portal-air .pa-panel,.portal-air .app-surface,.portal-air .pa-auth-card {
    --pa-panel-pad:var(--pa-space);padding:var(--pa-panel-pad);
    background:var(--pa-surface);border:1px solid var(--pa-line);border-radius:var(--pa-radius);
    box-shadow:var(--pa-shadow);color:var(--pa-ink);min-width:0;
}
.portal-air .pa-panel-flat {--pa-panel-pad:0px}
.portal-air .pa-panel>.pa-panel-heading {
    margin:calc(-1 * var(--pa-panel-pad)) calc(-1 * var(--pa-panel-pad)) var(--pa-space)!important;
    padding:11px var(--pa-space);background:var(--pa-header);color:var(--pa-header-ink);
    border-bottom:1px solid var(--pa-header-line);border-radius:14px 14px 0 0;
}
.portal-air .pa-panel-flat>.pa-panel-heading {margin:0!important}
.portal-air .pa-panel-heading :is(.text-zinc-400,.text-zinc-500,.text-zinc-600,[data-flux-text]) {color:var(--pa-header-ink)}
.portal-air :is([data-flux-main],.pa-main) table {background:var(--pa-surface);color:var(--pa-ink)}
.portal-air :is([data-flux-main],.pa-main) thead {background:var(--pa-header);color:var(--pa-header-ink)}
.portal-air :is([data-flux-main],.pa-main) th {background:var(--pa-header);border-color:var(--pa-header-line);color:var(--pa-header-ink)}
.portal-air :is([data-flux-main],.pa-main) td {border-color:var(--pa-line)}
.portal-air :is([data-flux-main],.pa-main) tbody tr:hover {background:var(--pa-inset)}
.portal-air .pa-page-heading {display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap}
.portal-air [data-flux-modal] :is(dialog,[role="dialog"]) {background:var(--pa-surface);color:var(--pa-ink);border-color:var(--pa-line);border-radius:var(--pa-radius)}
.portal-air .pa-auth-card {padding:24px}

/* Dashboard: compact card headings and lighter shared surfaces. */
.portal-air .dashboard-square {border-radius:var(--pa-radius)}
.portal-air .dashboard-crm-card {background:var(--pa-surface);color:var(--pa-ink);border-color:var(--pa-line);border-radius:var(--pa-radius);box-shadow:var(--pa-shadow);padding:var(--pa-space)}
.portal-air .dashboard-crm-heading {margin:calc(-1 * var(--pa-space)) calc(-1 * var(--pa-space)) 12px;padding:11px var(--pa-space);background:var(--pa-header);border-bottom:1px solid var(--pa-header-line)}
.portal-air .dashboard-crm-heading h2 {color:var(--pa-header-ink)}
.portal-air .dashboard-crm-caption {color:var(--pa-header-ink)}
.portal-air .dashboard-crm-name {color:var(--pa-ink)}
.portal-air :is(.dashboard-crm-time,.dashboard-crm-empty,.dashboard-crm-sync,.dashboard-counter-label) {color:var(--pa-muted)}
.portal-air .dashboard-now-counters>a,.portal-air .dashboard-team-strip {background:var(--pa-inset);border-color:var(--pa-line)}
.portal-air .dashboard-crm-row:hover {background:var(--pa-inset)}
.dark .portal-air .dashboard-now-counters>a,.dark .portal-air .dashboard-team-strip {background:var(--pa-inset);border-color:var(--pa-line)}
.dark .portal-air :is(.dashboard-counter-label,.dashboard-crm-name,.dashboard-crm-empty) {color:var(--pa-muted)}

/* Customer, company, finance and their forms share the same surface tokens. */
.portal-air .cu {
    --cu-canvas:var(--pa-canvas);--cu-surface:var(--pa-surface);--cu-inset:var(--pa-inset);
    --cu-text:var(--pa-ink);--cu-muted:var(--pa-muted);--cu-border:var(--pa-line);
    --cu-accent:var(--pa-brand);--cu-link:var(--pa-link);--cu-focus:var(--pa-link);--cu-shadow:var(--pa-shadow);gap:18px;
}
.portal-air .cu .cu-header {padding:15px;background:var(--pa-header);border:1px solid var(--pa-header-line);border-radius:var(--pa-radius);color:var(--pa-header-ink)}
.portal-air .cu .cu-header :is(.cu-muted,.cu-eyebrow) {color:var(--pa-header-ink)}
.portal-air .cu :is(.cu-card,.cu-filters) {padding:var(--pa-space);border-radius:var(--pa-radius)}
.portal-air .cu .cu-directory-panel {padding:0;border:0;background:transparent;box-shadow:none}
.portal-air .cu .cu-directory-panel .cu-list>.cu-directory {padding:var(--pa-space);border-radius:var(--pa-radius)}
.portal-air .cu .cu-card>h2,.portal-air .cu .cu-card:not(.cu-directory-panel)>.cu-row:first-child {
    padding:11px var(--pa-space);margin:calc(-1 * var(--pa-space)) calc(-1 * var(--pa-space)) var(--pa-space);
    background:var(--pa-header);color:var(--pa-header-ink);border-radius:14px 14px 0 0;border-bottom:1px solid var(--pa-header-line);
}
.portal-air .cu .cu-tabs {box-shadow:none;padding:5px;background:var(--pa-surface);border-radius:10px}
.portal-air .cu .cu-tabs button[aria-selected="true"],.portal-air .cu .cu-button.active {background:var(--pa-selection);color:var(--pa-link);border-color:var(--pa-line);box-shadow:none}
.portal-air .cu .cu-tabs button[aria-selected="true"] .cu-badge {background:var(--pa-surface);color:var(--pa-link);border-color:var(--pa-line)}
.portal-air .cu .customer-finance button.cf-active {background:var(--pa-selection);color:var(--pa-link);border-color:var(--pa-header-line)}
.portal-air .cu .customer-finance .cf-card[data-balance="closing"] {background:var(--pa-selection);color:var(--pa-ink);border-color:var(--pa-header-line)}
.portal-air .cu .customer-finance .cf-card[data-balance="closing"] .cf-muted {color:var(--pa-muted)}
.portal-air .cu .customer-finance th {background:var(--pa-header);color:var(--pa-header-ink);border-color:var(--pa-header-line)}

/* CRM history keeps its gray change records and clear green acknowledgment cues. */
.portal-air :is(.crm-work,.crm-detail,.crm-composer,.crm-edit-modal) {
    --crm-soft:var(--pa-selection);--crm-surface:var(--pa-surface);--crm-history:var(--pa-surface);
    --crm-canvas:var(--pa-canvas);--crm-line:var(--pa-line);--crm-muted:var(--pa-muted);--crm-ink:var(--pa-ink);
}
.portal-air .crm-panel {background:var(--pa-surface);border-color:var(--pa-line);border-radius:var(--pa-radius);box-shadow:var(--pa-shadow)}
.portal-air :is(.crm-detail-heading,.crm-panel-heading) {background:var(--pa-header);color:var(--pa-header-ink);border-color:var(--pa-header-line)}
.portal-air :is(.crm-detail-meta,.crm-detail-pair) {color:var(--pa-header-ink)}
.portal-air .crm-note>header {background:var(--pa-header);color:var(--pa-header-ink)}
.portal-air .crm-edit-modal .crm-modal-heading {background:var(--pa-header);color:var(--pa-header-ink);padding:14px 32px 14px 15px;margin:-24px -24px 14px;border-bottom:1px solid var(--pa-header-line)}
.portal-air .crm-edit-modal .crm-modal-heading>span {color:var(--pa-header-ink)}
.portal-air .crm-rows {background:transparent}

/* Chat and calendar chrome: headers carry color, the work area stays clear. */
.portal-air .pa-chat {background:var(--pa-surface);border-color:var(--pa-line);box-shadow:var(--pa-shadow)}
.portal-air .pa-chat-heading {background:var(--pa-header);color:var(--pa-header-ink);border-color:var(--pa-header-line)}
.portal-air .pa-chat aside {background:var(--pa-inset)}
.portal-air .pa-chat .pa-chat-heading .text-zinc-500 {color:var(--pa-header-ink)}
.portal-air [data-dashboard-calendar] .bg-zinc-100 {background:var(--pa-surface)}

@media (max-width:767px) {
    .portal-air {--pa-space:15px}
    .portal-air .cu .cu-header,.portal-air .cu .cu-card,.portal-air .cu .cu-filters {padding:15px}
    .portal-air .cu .cu-directory-panel {padding:0}
    .portal-air .pa-auth-card {padding:20px}
}
@media print {
    .portal-air {--pa-canvas:#fff;--pa-surface:#fff;--pa-ink:#000;--pa-shadow:none}
    .portal-air :is(.pa-panel,.cu-card,.crm-panel) {box-shadow:none}
}

/* Personal calendar refinements: predictable card heights and local day previews. */
.portal-air .dashboard-square>section>.pa-panel-heading,.portal-air .dashboard-square .dashboard-crm-heading {height:64px;min-height:64px;box-sizing:border-box;display:flex;align-items:center;padding:11px 15px}
.portal-air .dashboard-calendar-heading h2 {font-size:1rem;line-height:1.4;margin:0}
.portal-air .dashboard-calendar-month {display:flex;align-items:center;justify-content:space-between;gap:6px;margin:-4px 0 4px;font-size:12px;font-weight:600;text-transform:capitalize}
.portal-air .dashboard-calendar-month button {display:flex;align-items:center;justify-content:center;min-width:32px;min-height:30px;border-radius:8px;cursor:pointer}
.portal-air .dashboard-calendar-month button:hover {background:var(--pa-selection)}
.portal-air .dashboard-calendar-date {position:relative;height:28px;min-height:28px}
.portal-air .dashboard-calendar-date-link {display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:8px;font-size:12px;color:var(--pa-ink);text-decoration:none}
.portal-air .dashboard-calendar-date-link:hover {background:var(--pa-selection);color:var(--pa-link)}
.portal-air .dashboard-calendar-date-link.is-today {background:var(--pa-brand);color:#fff;font-weight:700}
.portal-air .dashboard-calendar-date-link.is-other-month {opacity:.4}
.portal-air .dashboard-date-count {position:absolute;bottom:0;right:0;display:flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 3px;border:1px solid var(--pa-line);border-radius:9px;background:var(--pa-surface);color:var(--pa-link);font-size:10px;font-weight:600;cursor:pointer}
.portal-air .dashboard-date-dot {position:absolute;bottom:4px;width:5px;height:5px;border-radius:50%;background:#d39a2b}
.portal-air .dashboard-day-preview {position:fixed;z-index:80;width:min(340px,calc(100vw - 16px));border:1px solid var(--pa-header-line);border-radius:12px;background:var(--pa-surface);color:var(--pa-ink);box-shadow:0 8px 30px #153e5526;font-size:13px;overflow:hidden}
.portal-air .dashboard-day-preview>header {display:flex;align-items:center;justify-content:space-between;padding:9px 12px;background:var(--pa-header);color:var(--pa-header-ink)}
.portal-air .dashboard-day-preview>header button {width:28px;height:28px;cursor:pointer;font-size:20px}
.portal-air .dashboard-day-preview-list {max-height:260px;overflow:auto;overscroll-behavior:contain}
.portal-air .dashboard-day-preview-list .dashboard-day-preview-item {display:grid;gap:3px;padding:10px 12px;border-bottom:1px solid var(--pa-line);text-decoration:none;color:var(--pa-ink)}
.portal-air .dashboard-day-preview-list .dashboard-day-preview-item:hover {background:var(--pa-inset)}
.portal-air .dashboard-day-preview-list span {font-size:11px;color:var(--pa-muted)}
.portal-air .dashboard-day-preview-list p {padding:14px 12px;color:var(--pa-muted)}
.portal-air .calendar-month-weekdays,.portal-air .calendar-month-grid {display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.portal-air .calendar-month-weekdays {padding:8px 0;text-align:center;font-size:12px;font-weight:600;border-bottom:1px solid var(--pa-line);color:var(--pa-muted)}
.portal-air .calendar-month-cell {position:relative;min-width:0;height:132px;overflow:hidden;border-right:1px solid var(--pa-line);border-bottom:1px solid var(--pa-line)}
.portal-air .calendar-month-cell.is-other-month {background:var(--pa-inset)}
.portal-air .calendar-month-cell.is-other-month .calendar-day-number {opacity:.45}
.portal-air .calendar-day-summary {display:flex;flex-direction:column;width:100%;height:100%;padding:8px;gap:5px;min-width:0;text-align:left;cursor:pointer;color:var(--pa-ink)}
.portal-air .calendar-day-summary:hover {background:var(--pa-inset)}
.portal-air .calendar-day-number {display:flex;align-items:center;justify-content:center;width:27px;min-height:27px;border-radius:50%;font-size:12px;font-weight:600}
.portal-air .calendar-day-number.is-today {background:var(--pa-brand);color:#fff}
.portal-air .calendar-day-previews {display:grid;gap:4px;width:100%;min-width:0}
.portal-air .calendar-day-previews>span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 5px;border-radius:5px;background:var(--pa-selection);font-size:11px;line-height:16px}
.portal-air .calendar-day-previews>span[data-source=crm] {border-left:2px solid var(--pa-brand)}
.portal-air .calendar-day-total {margin-top:auto;font-size:10px;color:var(--pa-link);line-height:16px}
.portal-air .calendar-day-mobile-count {display:none}
.portal-air .calendar-day-add {position:absolute;right:7px;top:6px;width:27px;height:27px;border-radius:7px;font-size:18px;cursor:pointer;color:var(--pa-link)}
.portal-air .calendar-day-add:hover {background:var(--pa-selection)}
.portal-air .calendar-day-modal-heading {padding-right:25px;border-bottom:1px solid var(--pa-line);padding-bottom:12px}
.portal-air .calendar-day-modal-heading p {font-size:12px;color:var(--pa-muted);margin-top:4px}
.portal-air .calendar-day-modal-list {display:grid;gap:8px;max-height:60dvh;overflow:auto;overscroll-behavior:contain;padding:14px 2px}
.portal-air .calendar-day-modal-list h3 {font-size:13px;font-weight:600;margin:6px 0}
.portal-air .calendar-day-modal-list p {font-size:14px;color:var(--pa-muted)}
.portal-air .calendar-popup-event {display:grid;gap:3px;text-align:left;padding:10px 12px;border:1px solid var(--pa-line);border-radius:8px;background:var(--pa-inset);color:var(--pa-ink);cursor:pointer}
.portal-air .calendar-popup-event>span,.portal-air .calendar-popup-event>small {font-size:12px;color:var(--pa-muted)}
.portal-air .calendar-popup-event>strong {font-size:14px;font-weight:600;overflow-wrap:anywhere}
.portal-air .calendar-day-modal footer {padding-top:12px;border-top:1px solid var(--pa-line);display:flex;justify-content:flex-end}
.portal-air .calendar-crm-day-tasks {height:62px;max-height:62px;overflow:hidden}
.portal-air .calendar-crm-day-count {text-align:left;font-size:11px;color:var(--pa-link);cursor:pointer;line-height:16px}
.portal-air .calendar-all-day {height:72px;max-height:72px;overflow:hidden}
@media(max-width:767px){
    .portal-air .calendar-month-cell {height:78px}
    .portal-air .calendar-day-summary {padding:6px 3px;align-items:center}
    .portal-air .calendar-day-previews,.portal-air .calendar-day-desktop-count,.portal-air .calendar-day-add {display:none}
    .portal-air .calendar-day-mobile-count {display:flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 4px;border-radius:7px;background:var(--pa-selection);font-size:11px;font-weight:600}
    .portal-air .calendar-mobile-week-compact {display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
    .portal-air .calendar-day-modal-list {max-height:58dvh}
}

/* Dashboard calendar: compact month with enough space for three readable upcoming rows. */
.portal-air .dashboard-top-row>.dashboard-square {width:100%;min-height:340px}
.portal-air [data-dashboard-calendar].pa-panel {padding:0;--pa-panel-pad:0px}
.portal-air [data-dashboard-calendar].pa-panel>.dashboard-calendar-heading {margin:0!important;flex:0 0 64px}
.portal-air [data-dashboard-calendar]>.dashboard-calendar-layout {display:grid;grid-template-rows:minmax(0,1fr) clamp(96px,33.333%,116px);flex:1 1 0%;min-height:0;overflow:hidden}
.portal-air .dashboard-calendar-month-panel {display:grid;grid-template-rows:30px 18px minmax(0,1fr);min-height:0;padding:4px 14px 7px;background:var(--pa-surface)}
.portal-air .dashboard-calendar-month-panel .dashboard-calendar-month {margin:0}
.portal-air .dashboard-calendar-weekdays {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:center;text-align:center;font-size:10px;line-height:12px;color:var(--pa-muted)}
.portal-air .dashboard-calendar-days {display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(var(--calendar-weeks),minmax(0,1fr));gap:2px 4px;min-height:0}
.portal-air .dashboard-calendar-days .dashboard-calendar-date {height:auto;min-height:0}
.portal-air .dashboard-calendar-days .dashboard-calendar-date-link {line-height:16px}
.portal-air .dashboard-calendar-days .dashboard-calendar-date:has(>.dashboard-date-count)>.dashboard-calendar-date-link {padding-right:14px;font-size:11px}
.portal-air .dashboard-calendar-days .dashboard-date-count {min-width:14px;height:14px;padding:0 2px;font-size:9px;line-height:12px}
.portal-air .dashboard-calendar-upcoming {position:relative;display:grid;grid-template-rows:14px minmax(0,1fr);gap:4px;min-height:0;padding:6px 14px;border-top:1px solid transparent;background:var(--pa-surface)}
.portal-air .dashboard-calendar-upcoming::before {content:"";position:absolute;top:-1px;inset-inline:var(--pa-space);border-top:1px solid var(--pa-line);pointer-events:none}
.portal-air .dashboard-calendar-upcoming h3 {margin:0;font-size:12px;line-height:14px;font-weight:600;color:var(--pa-muted)}
.portal-air .dashboard-upcoming-list {display:grid;grid-template-rows:repeat(var(--upcoming-count),minmax(0,1fr));min-height:0}
.portal-air .dashboard-upcoming-row {display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:6px;min-height:0;min-width:0;padding:0 2px;border-radius:5px;font-size:12px;line-height:16px;text-decoration:none;color:var(--pa-ink)}
.portal-air .dashboard-upcoming-row:hover {background:var(--pa-selection)}
.portal-air .dashboard-upcoming-date {font-weight:600;color:var(--pa-link)}
.portal-air .dashboard-upcoming-title {white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-air .dashboard-upcoming-meta {font-size:11px;white-space:nowrap;color:var(--pa-muted)}
.portal-air .dashboard-upcoming-empty {display:flex;align-items:center;margin:0;font-size:12px;line-height:1.4;color:var(--pa-muted)}

/* Equal chat headers and a contained customer count. */
.portal-air .pa-chat>:is(aside,section)>.pa-chat-heading {height:64px;min-height:64px;flex:0 0 64px;box-sizing:border-box;padding:12px 16px;gap:12px}
.portal-air .pa-chat>section>.pa-chat-heading>div {min-width:0;flex:1}
.portal-air .pa-chat .pa-chat-heading>a {width:36px;height:36px;flex-shrink:0}
.portal-air .pa-chat .pa-chat-heading>a svg {width:18px;height:18px}
.portal-air .cu .cu-directory-panel>.cu-row:first-child {margin:0 0 14px!important;padding:0;background:transparent;border:0;border-radius:0}
.portal-air .cu .cu-directory-panel>.cu-row:first-child>.cu-muted {display:inline-flex;align-items:center;flex:0 0 auto;width:auto;max-width:100%;padding:5px 10px;border:1px solid var(--pa-line);border-radius:8px;background:var(--pa-surface);font-size:12px;line-height:18px;color:var(--pa-muted)}

/* White editable controls on a quiet form surface; keep validation colors. */
.portal-air {--pa-form-surface:#edf5f6;--pa-field:#fff;--pa-field-border:#aac8cd;--pa-field-disabled:#e3eef0;--pa-field-error:#b93838}
.dark .portal-air {--pa-form-surface:#192e33;--pa-field:#2a454c;--pa-field-border:#607f86;--pa-field-disabled:#20373d;--pa-field-error:#f7a3a3}
.portal-air :is(.pa-panel,.app-surface,.cu-card,.pa-auth-card,[data-flux-modal] dialog,dialog[data-flux-modal]):has(:is(input:not([type=hidden],[type=checkbox],[type=radio],[type=file],[type=button],[type=submit],[type=reset],[type=range],[type=color],[type=image]),textarea,select)),
.portal-air .crm-composer,
.portal-air .pa-chat form[wire\:submit="sendMessage"] {background-color:var(--pa-form-surface)}
.portal-air :is([data-flux-input]:not(input),[data-flux-select]:not(select)) {background-color:transparent}
.portal-air :is(.pa-main,[data-flux-main],dialog,.pa-auth-card) :is(input:not([type=hidden],[type=checkbox],[type=radio],[type=file],[type=button],[type=submit],[type=reset],[type=range],[type=color],[type=image]),textarea,select) {background-color:var(--pa-field);color:var(--pa-ink)}
.portal-air :is(.pa-main,[data-flux-main],dialog,.pa-auth-card) :is(input:not([type=hidden],[type=checkbox],[type=radio],[type=file],[type=button],[type=submit],[type=reset],[type=range],[type=color],[type=image]),textarea,select):not([data-invalid],[aria-invalid=true]) {border-color:var(--pa-field-border)}
.portal-air :is(.pa-main,[data-flux-main],dialog,.pa-auth-card) :is(input:not([type=hidden],[type=checkbox],[type=radio],[type=file],[type=button],[type=submit],[type=reset],[type=range],[type=color],[type=image]),textarea,select):focus-visible {outline:2px solid var(--pa-link);outline-offset:2px}
.portal-air :is(.pa-main,[data-flux-main],dialog,.pa-auth-card) :is(input,textarea,select):is([data-invalid],[aria-invalid=true]) {border-color:var(--pa-field-error);outline-color:var(--pa-field-error)}
.portal-air :is(.pa-main,[data-flux-main],dialog,.pa-auth-card) :is(input:not([type=hidden],[type=checkbox],[type=radio],[type=file],[type=button],[type=submit],[type=reset],[type=range],[type=color],[type=image]),textarea,select):is(:disabled,[readonly]) {background-color:var(--pa-field-disabled);color:var(--pa-muted)}
.portal-air :is(.pa-main,[data-flux-main],dialog,.pa-auth-card) select option {background:var(--pa-field);color:var(--pa-ink)}

/* Compact history order control; each note keeps its header and change blocks. */
.portal-air .crm-history-order {display:inline-flex;align-items:center;justify-content:center;min-height:30px;flex-shrink:0;padding:4px 8px;border:1px solid var(--pa-line);border-radius:7px;background:var(--pa-surface);color:var(--pa-link);font-size:11px;line-height:18px;white-space:nowrap;cursor:pointer}
.portal-air .crm-history-order:hover {background:var(--pa-inset);border-color:var(--pa-header-line)}
.portal-air .crm-history-order:focus-visible {outline:2px solid var(--pa-link);outline-offset:2px}
.portal-air .crm-history-order:disabled {opacity:.6;cursor:wait}

/* Customer names open their portal card independently of the activity action. */
.portal-air .portal-linked-card {position:relative;isolation:isolate}
.portal-air .portal-activity-target {position:absolute;inset:0;z-index:1;display:block;width:100%;height:100%;padding:0;margin:0;border:0;border-radius:inherit;background:transparent;color:inherit;cursor:pointer;text-decoration:none}
.portal-air .portal-activity-target:focus-visible {outline:2px solid var(--pa-link);outline-offset:-2px}
.portal-air .portal-customer-link {position:relative;z-index:2;pointer-events:auto;color:var(--pa-link);text-decoration:underline;text-decoration-color:var(--pa-header-line);text-underline-offset:3px;border-radius:2px}
.portal-air .portal-customer-link:hover {text-decoration-color:currentColor}
.portal-air .portal-customer-link:focus-visible {outline:2px solid var(--pa-link);outline-offset:2px}
.portal-air .calendar-day-add {z-index:3}

/* Auth canvas matches the unchanged white background of tech-logo-login.png. */
.portal-air.pa-auth-screen,.dark .portal-air.pa-auth-screen,.portal-air.pa-auth-screen>.bg-background{background:#fff;background-image:none}
