/* Depth without changing layout, sizes, spacing, or existing colors. */
:root {
    --crm-shadow-panel: 0 1px 2px rgb(35 53 78 / 5%), 0 5px 16px rgb(35 53 78 / 7%);
    --crm-shadow-card: 0 1px 2px rgb(35 53 78 / 6%), 0 3px 9px rgb(35 53 78 / 8%);
    --crm-shadow-button: inset 0 1px 0 rgb(255 255 255 / 65%), 0 1px 2px rgb(35 53 78 / 12%);
    --crm-shadow-inset: inset 0 2px 4px rgb(35 53 78 / 10%), inset 0 -1px 0 rgb(255 255 255 / 85%);
}
.panel, .candidates-page .panel, .metric, .admin-model-card,
.service-admin fieldset.module, .login-card {
    box-shadow: var(--crm-shadow-panel);
}
.panel-title, .candidate-register-heading {
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 80%), 0 1px 2px rgb(35 53 78 / 4%);
}
.metric, .admin-model-card, .kanban-card, .meeting-card {
    transition: box-shadow .18s ease;
}
.metric:hover, .admin-model-card:hover {
    box-shadow: 0 2px 4px rgb(35 53 78 / 7%), 0 8px 22px rgb(35 53 78 / 11%);
}
.kanban-card, .meeting-card, .resume-facts > div,
.candidate-filter-layout .candidate-filter-section {
    box-shadow: var(--crm-shadow-card), inset 0 1px 0 rgb(255 255 255 / 75%);
}
.kanban-card:hover, .meeting-card:hover {
    box-shadow: 0 2px 4px rgb(35 53 78 / 9%), 0 6px 15px rgb(35 53 78 / 13%);
}
button, .button, .candidates-page button, .candidates-page .button {
    box-shadow: var(--crm-shadow-button);
}
button:hover, .button:hover, .candidates-page button:hover, .candidates-page .button:hover {
    box-shadow: inset 0 1px 0 rgb(255 255 255 / 70%), 0 3px 7px rgb(35 53 78 / 16%);
}
button:active, .button:active, .candidates-page button:active, .candidates-page .button:active {
    box-shadow: inset 0 2px 3px rgb(35 53 78 / 15%);
}
button:disabled { box-shadow: none; }
button.plain, .button.plain { box-shadow: none; }
input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]), select, textarea {
    box-shadow: inset 0 2px 3px rgb(35 53 78 / 10%), inset 0 -1px 0 rgb(255 255 255 / 75%);
}
.toolbar, .calendar-filter, .analytics-filters, .kanban-column,
.candidate-filter-layout .candidate-filter-section {
    box-shadow: var(--crm-shadow-inset);
}
.form-footer, .candidate-filter-footer, .candidate-bulk-bar,
.service-admin .admin-command-bar {
    box-shadow: inset 0 2px 4px rgb(35 53 78 / 6%), inset 0 -1px 0 rgb(255 255 255 / 75%);
}
.resume-facts > div {
    box-shadow: inset 0 1px 3px rgb(35 53 78 / 8%), inset 0 -1px 0 rgb(255 255 255 / 85%);
}
.candidate-table-wrap, .service-admin .results {
    box-shadow: inset 0 1px 3px rgb(35 53 78 / 7%);
}
.sidebar nav:not(.external-app-nav) a.active {
    box-shadow: inset 0 2px 3px rgb(40 107 98 / 13%), inset 0 -1px 0 rgb(255 255 255 / 65%);
}
.topbar { box-shadow: 0 1px 0 rgb(52 136 125 / 28%), 0 3px 12px rgb(32 84 77 / 13%); }
.sidebar { box-shadow: 2px 0 10px rgb(35 53 78 / 5%); }
.sidebar nav:not(.external-app-nav) a.active { box-shadow: inset 0 2px 3px rgb(40 107 98 / 13%), inset 0 -1px 0 rgb(255 255 255 / 65%); }
.wm-window { box-shadow: 0 5px 14px rgb(27 40 58 / 17%), 0 24px 65px rgb(27 40 58 / 30%); }
.wm-titlebar { box-shadow: inset 0 1px 0 rgb(255 255 255 / 60%), 0 2px 5px rgb(27 71 65 / 12%); }
.wm-tray { box-shadow: 0 -2px 4px rgb(35 53 78 / 7%), 0 -6px 20px rgb(35 53 78 / 10%); }
.wm-discard-card { box-shadow: 0 6px 16px rgb(27 40 58 / 18%), 0 22px 50px rgb(27 40 58 / 24%); }
.window-frame .panel, .window-frame .candidates-page .panel {
    box-shadow: 0 1px 2px rgb(35 53 78 / 5%), 0 3px 8px rgb(35 53 78 / 6%);
}
@media (prefers-reduced-motion: reduce) {
    .metric, .admin-model-card, .kanban-card, .meeting-card { transition: none; }
}
