/* OLD SCHOOL PRODUCTIONS — shared dark Casting workspace */
:root {
    --os-bg: #040b13;
    --os-bg-soft: #07111d;
    --os-panel: #0a1624;
    --os-panel-2: #0c1a2a;
    --os-border: rgba(255,255,255,.085);
    --os-border-strong: rgba(255,255,255,.14);
    --os-gold: #d7a64a;
    --os-gold-bright: #f0c66d;
    --os-gold-soft: rgba(215,166,74,.14);
    --os-white: #f7f8fa;
    --os-text: #dfe4eb;
    --os-muted: #8e9aaa;
    --os-radius: 14px;
    --os-shadow: 0 18px 46px rgba(0,0,0,.24);
}

body.old-school-casting-mode {
    margin: 0 !important;
    overflow: hidden !important;
    background: var(--os-bg) !important;
    color: var(--os-text) !important;
    font-family: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}
body.old-school-casting-mode > .navbar,
body.old-school-casting-mode > #navbar,
body.old-school-casting-mode > .web-footer,
body.old-school-casting-mode > .page-content-wrapper,
body.old-school-casting-mode > .main-section { display: none !important; }

#old-school-casting-app,
#old-school-casting-app * { box-sizing: border-box; }
#old-school-casting-app {
    position: fixed;
    z-index: 999999;
    inset: 0;
    display: grid;
    grid-template-columns: 255px minmax(0,1fr);
    overflow: hidden;
    background:
        radial-gradient(circle at 78% -20%,rgba(189,135,42,.075),transparent 34%),
        linear-gradient(135deg,#050c15 0%,#06111e 48%,#030912 100%);
    color: var(--os-text);
    font-family: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.os-sidebar {
    height: 100vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border-right: 1px solid rgba(255,255,255,.075);
    background: linear-gradient(180deg,#06101b 0%,#040b13 100%);
    box-shadow: 12px 0 40px rgba(0,0,0,.18);
}
.os-brand {
    min-height: 116px;
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 0 25px;
    border-bottom: 1px solid var(--os-border);
    color: var(--os-white) !important;
    text-decoration: none !important;
}
.os-brand strong,.os-brand small { display: block; }
.os-brand strong { color: var(--os-gold-bright);font-size: 17px;font-weight: 800;letter-spacing: .055em; }
.os-brand small { margin-top: 5px;color: #b79a61;font-size: 10px;letter-spacing: .20em; }
.os-reel {
    position: relative;
    flex: 0 0 43px;
    width: 43px;height: 43px;
    overflow: hidden;
    border: 1px solid rgba(255,224,153,.65);
    border-radius: 50%;
    background: radial-gradient(circle at 35% 28%,#f7d889,#d19c3e 55%,#8d6222);
    box-shadow: 0 0 0 4px rgba(216,165,73,.07),0 9px 28px rgba(0,0,0,.25);
}
.os-reel::before {
    content: "";position: absolute;top: 9px;left: 9px;width: 9px;height: 9px;border-radius: 50%;
    background: #172130;box-shadow: 16px 0 0 #172130,0 16px 0 #172130,16px 16px 0 #172130;
}
.os-reel i { position: absolute;top: 18px;left: 18px;width: 7px;height: 7px;border-radius: 50%;background: #172130; }

.os-nav { display: flex;flex-direction: column;gap: 7px;padding: 21px 15px;overflow-y: auto; }
.os-nav-item {
    min-height: 51px;display: flex;align-items: center;gap: 15px;padding: 0 17px;
    border: 1px solid transparent;border-radius: 10px;background: transparent;
    color: #b5becb !important;font-size: 13px;font-weight: 500;text-decoration: none !important;
    transition: background .16s ease,color .16s ease,border .16s ease,transform .16s ease;
}
.os-nav-item:hover { transform: translateX(2px);background: rgba(255,255,255,.035);color: #fff !important; }
.os-nav-item.active {
    border-color: rgba(215,166,74,.42);
    background: linear-gradient(100deg,rgba(120,83,29,.32),rgba(57,43,23,.72));
    color: #fff !important;box-shadow: 0 10px 27px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.035);
}
.os-nav-icon { width: 22px;color: #9aa6b7;font-size: 19px;line-height: 1;text-align: center; }
.os-nav-item.active .os-nav-icon,.os-ai-link .os-nav-icon { color: var(--os-gold-bright); }
.os-ai-link { margin-top: 5px; }

.os-sidebar-bottom { margin-top: auto;padding: 15px 17px 20px; }
.os-user-card {
    min-height: 66px;display: grid;grid-template-columns: 38px minmax(0,1fr) auto;align-items: center;gap: 10px;
    padding: 11px;border: 1px solid var(--os-border);border-radius: 12px;background: rgba(255,255,255,.022);
}
.os-avatar {
    width: 38px;height: 38px;display: grid;place-items: center;border: 1px solid rgba(215,166,74,.28);
    border-radius: 50%;background: linear-gradient(135deg,#4c371b,#17120c);color: #ffe5a8;font-size: 11px;font-weight: 800;
}
.os-user-copy { min-width: 0; }
.os-user-copy strong,.os-user-copy small { display: block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap; }
.os-user-copy strong { color: var(--os-white);font-size: 11px; }
.os-user-copy small { margin-top: 3px;color: var(--os-muted);font-size: 9px; }
.os-user-chevron { color: var(--os-muted); }
.os-support { min-height: 43px;display: flex;align-items: center;gap: 10px;margin-top: 10px;padding: 0 10px;color: var(--os-muted) !important;font-size: 10px;text-decoration: none !important; }
.os-support > span { width: 22px;height: 22px;display: grid;place-items: center;border-radius: 50%;background: #9da8b7;color: #07111d;font-weight: 900; }
.os-support b { margin-left: auto;font-size: 17px; }

.os-main { min-width: 0;height: 100vh;overflow-y: auto;padding: 39px 45px 24px;color: var(--os-text); }
.os-topbar { min-height: 91px;display: flex;align-items: flex-start;justify-content: space-between;gap: 28px;margin-bottom: 22px; }
.os-eyebrow { display: block;margin-bottom: 7px;color: var(--os-gold-bright);font-size: 9px;font-weight: 800;letter-spacing: .18em; }
.os-topbar h1 { margin: 0;color: var(--os-white);font-size: 29px;font-weight: 720;letter-spacing: -.035em;text-shadow: 0 1px 1px rgba(0,0,0,.2); }
.os-topbar p { margin: 7px 0 0;color: #a8b1bf;font-size: 13px; }
.os-topbar-actions { display: flex;align-items: center;gap: 14px; }
.os-search {
    width: 290px;height: 43px;display: grid;grid-template-columns: auto 1fr auto;align-items: center;gap: 9px;
    padding: 0 10px 0 14px;border: 1px solid rgba(255,255,255,.11);border-radius: 11px;
    background: rgba(9,20,34,.92);box-shadow: inset 0 1px 0 rgba(255,255,255,.02);color: var(--os-muted);
}
.os-search input { min-width: 0;border: 0 !important;outline: 0 !important;background: transparent !important;color: #eef1f5 !important;font-size: 11px;box-shadow: none !important; }
.os-search input::placeholder { color: #8290a2; }
.os-search kbd { padding: 3px 7px;border: 1px solid var(--os-border);border-radius: 6px;background: #07111d;color: #aeb6c3;font: 9px/1.2 inherit; }
.os-home-button { width: 43px;height: 43px;display: grid;place-items: center;border: 1px solid var(--os-border);border-radius: 11px;background: rgba(9,20,34,.92);color: var(--os-gold-bright) !important;text-decoration: none !important; }
.os-content { min-height: calc(100vh - 205px); }
.os-footer { padding: 24px 2px 4px;color: #5f6b7a;font-size: 9px;letter-spacing: .08em; }

/* Existing page behavior remains intact; only presentation changes. */
.os-content .proit-dashboard,.os-content .cast-shell,.os-content .q-shell {
    width: 100% !important;max-width: none !important;margin: 0 !important;padding: 0 !important;
    color: var(--os-text) !important;background: transparent !important;font-family: inherit !important;
}
.os-content .proit-top,.os-content .cast-header,.os-content .q-header { display: none !important; }
.os-content button,.os-content input,.os-content select,.os-content textarea { font-family: inherit !important; }

.os-content .proit-panel,.os-content .cast-panel,.os-content .q-panel,
.os-content .pro-modal-box,.os-content .cast-modal-box,.os-content .q-editor,.os-content .workflow-modal-box {
    border: 1px solid var(--os-border) !important;border-radius: var(--os-radius) !important;
    background: linear-gradient(145deg,rgba(12,28,46,.96),rgba(7,18,31,.98)) !important;
    color: var(--os-text) !important;box-shadow: var(--os-shadow) !important;
}
.os-content .proit-panel,.os-content .cast-panel,.os-content .q-panel { padding: 19px !important;margin-bottom: 16px !important; }

.os-content .proit-filter-row,.os-content .q-toolbar {
    display: grid !important;grid-template-columns: minmax(170px,.75fr) minmax(170px,.75fr) minmax(240px,1.5fr) !important;gap: 11px !important;
}
.os-content .proit-input,.os-content .q-input,
.os-content .cast-field input,.os-content .cast-field select,.os-content .cast-field textarea,
.os-content .workflow-field input,.os-content .workflow-field select,.os-content .workflow-field textarea {
    width: 100% !important;min-height: 43px !important;padding: 0 13px !important;
    border: 1px solid var(--os-border-strong) !important;border-radius: 10px !important;outline: 0 !important;
    background: #07111d !important;color: var(--os-text) !important;box-shadow: none !important;
}
.os-content textarea.q-input,.os-content .cast-field textarea,.os-content .workflow-field textarea { padding-top: 11px !important; }
.os-content input::placeholder,.os-content textarea::placeholder { color: #667487 !important; }
.os-content select option { background: #07111d;color: var(--os-text); }

.os-content .proit-stats { display: grid !important;grid-template-columns: repeat(7,minmax(105px,1fr)) !important;gap: 12px !important;margin-bottom: 16px !important; }
.os-content .proit-stat,.os-content .workflow-stat {
    min-height: 112px !important;padding: 17px !important;border: 1px solid var(--os-border) !important;border-radius: 13px !important;
    background: linear-gradient(145deg,#0c1a2b,#081421) !important;color: var(--os-text) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.17) !important;text-align: left !important;
}
.os-content .proit-stat:hover,.os-content .proit-candidate:hover,.os-content .q-row:hover { transform: translateY(-2px) !important;border-color: rgba(215,166,74,.3) !important; }
.os-content .proit-stat-number,.os-content .workflow-number { color: var(--os-white) !important;font-size: 27px !important;font-weight: 750 !important; }
.os-content .proit-stat-label,.os-content .workflow-label { margin-top: 5px !important;color: var(--os-muted) !important;font-size: 11px !important; }
.os-content .proit-stat:first-child { border-color: rgba(215,166,74,.35) !important;background: linear-gradient(145deg,rgba(89,62,24,.36),#0a1624 72%) !important; }

.os-content .proit-layout { display: grid !important;grid-template-columns: minmax(0,1.7fr) minmax(280px,.8fr) !important;gap: 16px !important; }
.os-content .proit-section-title,.os-content .cast-section-title,.os-content .q-editor-title,.os-content .q-panel h2,.os-content h2,.os-content h3 { color: var(--os-white) !important;font-weight: 680 !important; }
.os-content .proit-section-title,.os-content .cast-section-title { margin-bottom: 15px !important;font-size: 16px !important; }
.os-content .proit-funnel-row { display: grid !important;grid-template-columns: 118px 1fr 34px !important;gap: 12px !important;align-items: center !important;margin: 14px 0 !important;color: #c7ced8 !important;font-size: 11px !important; }
.os-content .proit-funnel-track { height: 8px !important;overflow: hidden !important;border-radius: 99px !important;background: rgba(255,255,255,.055) !important; }
.os-content .proit-funnel-fill { height: 100% !important;border-radius: inherit !important;background: linear-gradient(90deg,#9a6f2d,var(--os-gold-bright)) !important;box-shadow: 0 0 16px rgba(215,166,74,.22) !important; }

.os-content .proit-attention { display: grid !important;gap: 9px !important; }
.os-content .proit-attention-item,.os-content .proit-upcoming-item,.os-content .q-row,
.os-content .cast-application,.os-content .cast-interview,.os-content .cast-review,.os-content .cast-comment,.os-content .cast-question,.os-content .workflow-event {
    border: 1px solid var(--os-border) !important;border-radius: 10px !important;background: rgba(255,255,255,.025) !important;color: var(--os-text) !important;
}
.os-content .proit-attention-item { min-height: 50px !important;display: flex !important;align-items: center !important;justify-content: space-between !important;padding: 0 13px !important; }
.os-content .proit-attention-item strong { color: var(--os-gold-bright) !important; }
.os-content .proit-upcoming-item { padding: 12px !important;margin-bottom: 8px !important; }
.os-content .proit-projects { display: flex !important;flex-wrap: wrap !important;gap: 8px !important; }
.os-content .proit-project-chip,.os-content .proit-badge,.os-content .workflow-tag,.os-content .pro-card-tags span {
    border: 1px solid rgba(215,166,74,.25) !important;border-radius: 999px !important;background: var(--os-gold-soft) !important;color: var(--os-gold-bright) !important;
}
.os-content .proit-project-chip { min-height: 34px !important;padding: 0 12px !important; }

.os-content .pro-main-nav {
    width: fit-content !important;max-width: 100% !important;display: flex !important;align-items: center !important;
    gap: 5px !important;margin: 0 0 16px !important;padding: 6px !important;overflow-x: auto !important;
    border: 1px solid var(--os-border) !important;border-radius: 11px !important;background: rgba(7,17,29,.82) !important;
    box-shadow: none !important;backdrop-filter: blur(12px) !important;
}
.os-content .pro-nav-item,.os-content #pro-open-nova {
    flex: 0 0 auto !important;min-height: 36px !important;display: inline-flex !important;align-items: center !important;
    padding: 0 12px !important;border: 1px solid transparent !important;border-radius: 8px !important;
    background: transparent !important;color: var(--os-muted) !important;font-size: 11px !important;font-weight: 650 !important;
    text-decoration: none !important;white-space: nowrap !important;box-shadow: none !important;
}
.os-content .pro-nav-item:hover,.os-content .pro-nav-item.active,.os-content #pro-open-nova:hover {
    border-color: rgba(215,166,74,.22) !important;background: var(--os-gold-soft) !important;color: var(--os-gold-bright) !important;
}

.os-content .proit-grid-header { display: flex !important;align-items: center !important;justify-content: space-between !important;margin-bottom: 16px !important; }
.os-content .proit-candidate-grid { display: grid !important;grid-template-columns: repeat(auto-fill,minmax(245px,1fr)) !important;gap: 14px !important; }
.os-content .proit-candidate {
    overflow: hidden !important;border: 1px solid var(--os-border) !important;border-radius: 13px !important;
    background: linear-gradient(160deg,#0d1b2c,#071321) !important;color: var(--os-text) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.18) !important;transition: transform .18s ease,border-color .18s ease !important;
}
.os-content .proit-photo-wrap { height: 245px !important;background: #040b13 !important; }
.os-content .proit-photo { width: 100% !important;height: 100% !important;object-fit: cover !important; }
.os-content .proit-card-body { padding: 15px !important; }
.os-content .proit-name,.os-content .cast-name { color: var(--os-white) !important;font-weight: 720 !important; }
.os-content .proit-name { font-size: 16px !important; }
.os-content .proit-city,.os-content .proit-show,.os-content .cast-meta,.os-content .q-muted,.os-content .cast-time,.os-content small { color: var(--os-muted) !important; }
.os-content .proit-score-row { border-color: var(--os-border) !important;color: #b7c0cd !important; }

.os-content .proit-open,.os-content .cast-button,.os-content .q-btn,.os-content .workflow-pro-btn,.os-content .pro-bulk-btn {
    min-height: 39px !important;padding: 0 15px !important;border: 1px solid rgba(215,166,74,.48) !important;border-radius: 9px !important;
    background: linear-gradient(135deg,#9c6b25,#d7a64a) !important;color: #130e07 !important;font-weight: 750 !important;
    text-decoration: none !important;box-shadow: 0 8px 22px rgba(0,0,0,.16) !important;
}
.os-content .cast-button.secondary,.os-content .q-btn.secondary,.os-content .q-btn.light,.os-content .pro-bulk-btn.secondary {
    border-color: var(--os-border-strong) !important;background: #0a1624 !important;color: var(--os-text) !important;
}
.os-content .proit-open { width: calc(100% - 30px) !important;margin: 0 15px 15px !important; }

.os-content .cast-profile { display: grid !important;grid-template-columns: 210px minmax(0,1fr) !important;gap: 24px !important; }
.os-content .cast-photo { width: 210px !important;height: 270px !important;overflow: hidden !important;border: 1px solid var(--os-border) !important;border-radius: 12px !important;background: var(--os-bg) !important; }
.os-content .cast-photo img { width: 100% !important;height: 100% !important;object-fit: cover !important; }
.os-content .cast-gallery { display: grid !important;grid-template-columns: repeat(auto-fill,minmax(150px,1fr)) !important;gap: 12px !important; }
.os-content .cast-gallery-item { overflow: hidden !important;border: 1px solid var(--os-border) !important;border-radius: 11px !important;background: var(--os-bg-soft) !important; }
.os-content .cast-video,.os-content .cast-intro-video { border: 1px solid var(--os-border) !important;border-radius: 12px !important;background: #02060b !important; }
.os-content .cast-answer { color: #cbd2dc !important; }

.os-content .q-nav { display: flex !important;gap: 6px !important;margin: 0 0 16px !important;padding: 6px !important;overflow-x: auto !important;border: 1px solid var(--os-border) !important;border-radius: 11px !important;background: rgba(7,17,29,.82) !important; }
.os-content .q-nav a { min-height: 36px !important;display: inline-flex !important;align-items: center !important;padding: 0 12px !important;border-radius: 8px !important;color: var(--os-muted) !important;text-decoration: none !important;font-size: 11px !important;font-weight: 650 !important;white-space: nowrap !important; }
.os-content .q-nav a.active { background: var(--os-gold-soft) !important;color: var(--os-gold-bright) !important; }
.os-content .q-list { display: grid !important;gap: 10px !important; }
.os-content .q-row { padding: 14px !important;transition: transform .18s ease,border-color .18s ease !important; }
.os-content .q-editor-header,.os-content .q-editor-footer { border-color: var(--os-border) !important;background: #07111d !important; }
.os-content .q-question-card,.os-content .q-preview-question { border-color: var(--os-border) !important;background: rgba(255,255,255,.025) !important;color: var(--os-text) !important; }

.os-content .pro-modal,.os-content .cast-modal,.os-content .q-modal,.os-content .workflow-modal { z-index: 2000000 !important;background: rgba(1,5,10,.82) !important;backdrop-filter: blur(10px) !important; }
.os-content .pro-modal-box,.os-content .cast-modal-box,.os-content .q-editor,.os-content .workflow-modal-box { max-height: min(86vh,900px) !important;overflow-y: auto !important; }
.os-content .pro-modal-header,.os-content .q-editor-header { border-color: var(--os-border) !important; }
.os-content .pro-close-btn,.os-content .q-delete { border-color: var(--os-border) !important;background: #07111d !important;color: var(--os-muted) !important; }
.os-content .proit-empty,.os-content .cast-empty { color: var(--os-muted) !important; }
.os-content a { color: var(--os-gold-bright); }

.os-content #pro-nova-modal .pro-modal-box {
    width: min(680px,calc(100vw - 28px)) !important;
    border: 1px solid var(--os-border-strong) !important;
    background: linear-gradient(145deg,#0c1a2a,#07111d) !important;
    color: var(--os-text) !important;
}
.os-content #pro-nova-modal .pro-modal-title { color: var(--os-white) !important; }
.os-content #pro-nova-modal .pro-nova-subtitle { color: var(--os-muted) !important; }
.os-content #pro-nova-modal .pro-nova-dropzone {
    display: block !important;
    border-color: rgba(215,166,74,.28) !important;
    background: rgba(215,166,74,.055) !important;
    color: var(--os-white) !important;
    cursor: pointer !important;
    transition: border-color .16s ease,background .16s ease !important;
}
.os-content #pro-nova-modal .pro-nova-dropzone:hover,
.os-content #pro-nova-modal .pro-nova-dropzone:focus-within {
    border-color: rgba(240,198,109,.68) !important;
    background: rgba(215,166,74,.09) !important;
}
.os-content #pro-nova-modal .pro-nova-file-name {
    display: block !important;
    margin-top: 10px !important;
    color: var(--os-gold-bright) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    overflow-wrap: anywhere !important;
}
.os-content #pro-nova-modal .pro-nova-preview-panel {
    border-color: var(--os-border) !important;
    background: rgba(255,255,255,.025) !important;
    color: var(--os-text) !important;
}
.os-content #pro-nova-modal .pro-nova-project-label { color: var(--os-white) !important; }
.os-content #pro-nova-modal input[type="file"],
.os-content #pro-nova-modal select {
    border-color: var(--os-border-strong) !important;
    background: #06111d !important;
    color: var(--os-text) !important;
}
.os-content #pro-nova-modal button:disabled { cursor:not-allowed!important;opacity:.48!important; }
.os-content #pro-open-nova-bulk { white-space:nowrap!important; }

/* Public application: branded, without operator navigation. */
body:has(.casting-card):not(.old-school-casting-mode) {
    min-height: 100vh !important;background: radial-gradient(circle at 50% -15%,rgba(189,135,42,.14),transparent 35%),linear-gradient(145deg,#06101b,#030912) !important;
    color: var(--os-text) !important;font-family: Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
}
body:has(.casting-card):not(.old-school-casting-mode) .casting-card { border: 1px solid var(--os-border) !important;border-radius: 16px !important;background: linear-gradient(145deg,#0c1a2a,#07111d) !important;color: var(--os-text) !important;box-shadow: var(--os-shadow) !important; }
body:has(.casting-card):not(.old-school-casting-mode) .casting-title,
body:has(.casting-card):not(.old-school-casting-mode) .section-title,
body:has(.casting-card):not(.old-school-casting-mode) .question-label { color: var(--os-white) !important; }
body:has(.casting-card):not(.old-school-casting-mode) input,
body:has(.casting-card):not(.old-school-casting-mode) select,
body:has(.casting-card):not(.old-school-casting-mode) textarea { border-color: var(--os-border-strong) !important;background: #07111d !important;color: var(--os-text) !important; }
body:has(.casting-card):not(.old-school-casting-mode) .submit-button,
body:has(.casting-card):not(.old-school-casting-mode) .photo-upload-button,
body:has(.casting-card):not(.old-school-casting-mode) .video-upload-button { border-color: rgba(215,166,74,.45) !important;background: linear-gradient(135deg,#9c6b25,#d7a64a) !important;color: #130e07 !important; }

@media (max-width: 1180px) {
    #old-school-casting-app { grid-template-columns: 220px minmax(0,1fr); }
    .os-main { padding: 32px 25px 22px; }
    .os-content .proit-stats { grid-template-columns: repeat(4,minmax(110px,1fr)) !important; }
}
@media (max-width: 820px) {
    body.old-school-casting-mode { overflow: auto !important; }
    #old-school-casting-app { position: relative;min-height: 100vh;grid-template-columns: 1fr;overflow: visible; }
    .os-sidebar { height: auto;position: sticky;top: 0;z-index: 5;border-right: 0;border-bottom: 1px solid var(--os-border); }
    .os-brand { min-height: 70px; }
    .os-nav { flex-direction: row;overflow-x: auto;padding: 9px 14px; }
    .os-nav-item { min-width: max-content;min-height: 42px;padding: 0 12px; }
    .os-sidebar-bottom { display: none; }
    .os-main { height: auto;overflow: visible;padding: 24px 16px; }
    .os-topbar { flex-direction: column; }
    .os-topbar-actions,.os-search { width: 100%; }
    .os-content .proit-filter-row,.os-content .q-toolbar,.os-content .proit-layout,.os-content .cast-profile { grid-template-columns: 1fr !important; }
    .os-content .proit-stats { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
    .os-content .cast-photo { width: 100% !important;max-width: 260px !important; }
}

/* ==========================================================
   STAGE 4.1 — consolidated Casting UI
   These rules intentionally come last. The legacy page templates contain
   several embedded style blocks, so the shared workspace owns the final
   component presentation here.
========================================================== */

#proit-portal-shell .psh-content {
    width: 100%;
    max-width: 1580px;
    margin: 0 auto;
}

#proit-portal-shell .os-content .proit-panel,
#proit-portal-shell .os-content .cast-panel {
    box-shadow: 0 14px 36px rgba(0,0,0,.16) !important;
}

/* Dashboard candidate collection */
body.casting-dashboard-page #proit-portal-shell .pro-candidates-panel {
    min-height: 0 !important;
    padding: 20px !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-candidate-grid {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 16px !important;
    align-items: stretch !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-candidate {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(138px,42%) minmax(0,1fr) !important;
    min-width: 0 !important;
    min-height: 286px !important;
    overflow: hidden !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-photo-wrap {
    height: 100% !important;
    min-height: 286px !important;
    flex-basis: auto !important;
    border-right: 1px solid var(--os-border) !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-photo {
    transition: transform .3s ease !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-candidate:hover .proit-photo {
    transform: scale(1.025) !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-card-body {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 16px !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-name {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 15px !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-city,
body.casting-dashboard-page #proit-portal-shell .proit-show {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-badge {
    align-self: flex-start !important;
    width: auto !important;
    max-width: 100% !important;
    margin-top: 8px !important;
    padding: 4px 9px !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-status-new {
    border-color: rgba(80,145,238,.32) !important;
    background: rgba(59,130,246,.13) !important;
    color: #91bfff !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-status-review,
body.casting-dashboard-page #proit-portal-shell .pro-status-interview {
    border-color: rgba(215,166,74,.32) !important;
    background: var(--os-gold-soft) !important;
    color: var(--os-gold-bright) !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-status-shortlist {
    border-color: rgba(139,92,246,.32) !important;
    background: rgba(139,92,246,.14) !important;
    color: #c4a8ff !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-status-approved {
    border-color: rgba(45,189,112,.3) !important;
    background: rgba(45,189,112,.13) !important;
    color: #77dca5 !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-status-rejected {
    border-color: rgba(235,87,87,.3) !important;
    background: rgba(235,87,87,.12) !important;
    color: #ff9a9a !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-score-row {
    display: flex !important;
    justify-content: space-between !important;
    gap: 10px !important;
    margin-top: 10px !important;
    padding: 10px 0 0 !important;
    border-top: 1px solid var(--os-border) !important;
    font-size: 11px !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-workflow-info {
    margin-top: 9px !important;
    padding-top: 9px !important;
    border-top: 1px solid var(--os-border) !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-human-score {
    min-height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 10px !important;
    padding: 7px 9px !important;
    border: 1px solid var(--os-border) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.035) !important;
    color: #aeb8c6 !important;
    font-size: 10px !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-human-score strong {
    color: var(--os-gold-bright) !important;
    font-size: 13px !important;
    white-space: nowrap !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-card-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    margin-top: 8px !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-card-tag,
body.casting-dashboard-page #proit-portal-shell .pro-card-tags span {
    margin: 0 !important;
    padding: 3px 7px !important;
    border: 1px solid rgba(215,166,74,.2) !important;
    border-radius: 999px !important;
    background: rgba(215,166,74,.09) !important;
    color: #d9bd82 !important;
    font-size: 9px !important;
    line-height: 1.3 !important;
}

body.casting-dashboard-page #proit-portal-shell .proit-open {
    width: 100% !important;
    min-height: 37px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: auto 0 0 !important;
    padding: 8px 12px !important;
}

body.casting-dashboard-page #proit-portal-shell .pro-select-wrap {
    top: 9px !important;
    left: 9px !important;
    width: 30px !important;
    height: 30px !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    border-radius: 8px !important;
    background: rgba(4,11,19,.86) !important;
    backdrop-filter: blur(7px) !important;
}

/* Candidate dossier layout */
body.casting-candidate-page #proit-portal-shell #dossier {
    display: grid !important;
    grid-template-columns: repeat(12,minmax(0,1fr)) !important;
    gap: 16px !important;
    align-items: start !important;
}

body.casting-candidate-page #proit-portal-shell #dossier > .cast-panel {
    grid-column: 1 / -1 !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
}

body.casting-candidate-page #proit-portal-shell #dossier > .cast-panel-application {
    grid-column: span 5 !important;
}

body.casting-candidate-page #proit-portal-shell #dossier > .cast-panel-questionnaire {
    grid-column: span 7 !important;
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 10px !important;
    align-content: start !important;
}

body.casting-candidate-page #proit-portal-shell .cast-panel-questionnaire > .cast-section-title,
body.casting-candidate-page #proit-portal-shell .cast-panel-questionnaire > .cast-empty {
    grid-column: 1 / -1 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-panel-profile {
    display: grid !important;
    grid-template-columns: minmax(500px,1.2fr) minmax(300px,.8fr) !important;
    gap: 24px !important;
    align-items: start !important;
    padding: 20px !important;
}

body.casting-candidate-page #proit-portal-shell .cast-panel-profile:not(:has(#candidate-profile-gallery)) .cast-profile {
    grid-column: 1 / -1 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-profile {
    display: grid !important;
    grid-template-columns: 210px minmax(0,1fr) !important;
    gap: 22px !important;
    align-items: start !important;
}

body.casting-candidate-page #proit-portal-shell .cast-photo {
    width: 210px !important;
    height: 270px !important;
    display: block !important;
    border-radius: 12px !important;
}

body.casting-candidate-page #proit-portal-shell .cast-name {
    margin: 0 0 8px !important;
    color: var(--os-white) !important;
    font-size: clamp(24px,2vw,32px) !important;
    line-height: 1.12 !important;
    letter-spacing: -.025em !important;
}

body.casting-candidate-page #proit-portal-shell .cast-meta {
    margin-top: 6px !important;
    color: #9aa6b5 !important;
    font-size: 13px !important;
    line-height: 1.5 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-socials {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin-top: 14px !important;
}

body.casting-candidate-page #proit-portal-shell .cast-social {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 34px !important;
    padding: 0 11px !important;
    border: 1px solid rgba(215,166,74,.28) !important;
    border-radius: 999px !important;
    background: rgba(215,166,74,.09) !important;
    color: var(--os-gold-bright) !important;
    font-size: 11px !important;
    font-weight: 650 !important;
}

body.casting-candidate-page #proit-portal-shell #candidate-profile-gallery {
    min-width: 0 !important;
}

body.casting-candidate-page #proit-portal-shell #candidate-profile-gallery .cast-section-title {
    margin: 0 0 12px !important;
}

body.casting-candidate-page #proit-portal-shell .cast-gallery {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(120px,1fr)) !important;
    gap: 10px !important;
    margin: 0 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-gallery-item {
    width: 100% !important;
    height: 188px !important;
    margin: 0 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-application,
body.casting-candidate-page #proit-portal-shell .cast-interview,
body.casting-candidate-page #proit-portal-shell .cast-review,
body.casting-candidate-page #proit-portal-shell .cast-comment,
body.casting-candidate-page #proit-portal-shell .workflow-score {
    height: auto !important;
    min-height: 0 !important;
    padding: 14px !important;
    border: 1px solid var(--os-border) !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.025) !important;
    color: var(--os-text) !important;
}

body.casting-candidate-page #proit-portal-shell .cast-status-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 7px !important;
    margin-top: 12px !important;
}

body.casting-candidate-page #proit-portal-shell .cast-status {
    min-height: 34px !important;
    padding: 0 11px !important;
    border: 1px solid var(--os-border-strong) !important;
    border-radius: 999px !important;
    background: #091522 !important;
    color: #b9c2ce !important;
    font-size: 11px !important;
    font-weight: 600 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-status:hover {
    border-color: rgba(215,166,74,.36) !important;
    color: var(--os-white) !important;
}

body.casting-candidate-page #proit-portal-shell .cast-status.current {
    border-color: rgba(215,166,74,.65) !important;
    background: var(--os-gold-soft) !important;
    color: var(--os-gold-bright) !important;
}

body.casting-candidate-page #proit-portal-shell [data-delete-application] {
    border-color: rgba(235,87,87,.28) !important;
    background: rgba(235,87,87,.07) !important;
    color: #ff8d8d !important;
    box-shadow: none !important;
}

body.casting-candidate-page #proit-portal-shell .cast-panel-questionnaire .cast-question {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 13px 14px !important;
    border: 1px solid var(--os-border) !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.024) !important;
    color: #dce2ea !important;
    line-height: 1.45 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-panel-questionnaire .cast-question > strong {
    display: block !important;
    color: #f0f2f5 !important;
    font-size: 11px !important;
    line-height: 1.45 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-panel-questionnaire .cast-answer {
    min-height: 0 !important;
    margin: 7px 0 0 !important;
    padding: 0 !important;
    color: #aeb8c6 !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
}

body.casting-candidate-page #proit-portal-shell .cast-panel-media [style*="background:#f4f6f9"] {
    border: 1px solid var(--os-border) !important;
    background: rgba(255,255,255,.025) !important;
    color: var(--os-muted) !important;
}

body.casting-candidate-page #proit-portal-shell .cast-video,
body.casting-candidate-page #proit-portal-shell .cast-intro-video video,
body.casting-candidate-page #proit-portal-shell .cast-panel-media video,
body.casting-candidate-page #proit-portal-shell .cast-panel-media img {
    width: 100% !important;
    max-height: 540px !important;
    border: 1px solid var(--os-border) !important;
    border-radius: 11px !important;
    background: #02060b !important;
}

body.casting-candidate-page #proit-portal-shell .cast-ai {
    margin-top: 14px !important;
    padding: 14px !important;
    border: 1px solid rgba(139,92,246,.22) !important;
    border-left: 3px solid #8b67e8 !important;
    border-radius: 9px !important;
    background: rgba(139,92,246,.075) !important;
    color: #d8d0ef !important;
}

body.casting-candidate-page #proit-portal-shell #workflow-pro-ui {
    display: grid !important;
    gap: 16px !important;
    margin-top: 16px !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-pro-grid {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 12px !important;
    margin: 0 !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-stat {
    min-height: 104px !important;
    padding: 17px !important;
    border: 1px solid var(--os-border) !important;
    border-radius: 12px !important;
    background: linear-gradient(145deg,#0c1a2b,#081421) !important;
    color: var(--os-text) !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.15) !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-number {
    color: var(--os-gold-bright) !important;
    font-size: 27px !important;
    font-weight: 750 !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-label {
    margin-top: 5px !important;
    color: var(--os-muted) !important;
    font-size: 11px !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-tag {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 30px !important;
    margin: 3px !important;
    padding: 0 10px !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-matrix {
    display: grid !important;
    grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    gap: 8px !important;
    margin-top: 12px !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-timeline {
    padding-left: 14px !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-event {
    position: relative !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 0 18px 18px !important;
    border: 0 !important;
    border-left: 1px solid rgba(215,166,74,.24) !important;
    border-radius: 0 !important;
    background: transparent !important;
}

body.casting-candidate-page #proit-portal-shell .workflow-event::before {
    left: -5px !important;
    top: 3px !important;
    width: 9px !important;
    height: 9px !important;
    background: var(--os-gold) !important;
}

body.casting-candidate-page #proit-portal-shell .cast-modal-box,
body.casting-candidate-page #proit-portal-shell .workflow-modal-box {
    border: 1px solid var(--os-border-strong) !important;
    background: linear-gradient(145deg,#0c1a2a,#07111d) !important;
}

@media (max-width: 1380px) {
    body.casting-dashboard-page #proit-portal-shell .proit-candidate-grid {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-panel-profile {
        grid-template-columns: 1fr !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-panel-profile .cast-profile,
    body.casting-candidate-page #proit-portal-shell #candidate-profile-gallery {
        grid-column: 1 !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-gallery {
        grid-template-columns: repeat(auto-fill,minmax(130px,170px)) !important;
    }
}

@media (max-width: 1020px) {
    body.casting-candidate-page #proit-portal-shell #dossier > .cast-panel-application,
    body.casting-candidate-page #proit-portal-shell #dossier > .cast-panel-questionnaire {
        grid-column: 1 / -1 !important;
    }
}

@media (max-width: 760px) {
    body.casting-dashboard-page #proit-portal-shell .proit-candidate-grid {
        grid-template-columns: 1fr !important;
    }

    body.casting-dashboard-page #proit-portal-shell .proit-candidate {
        grid-template-columns: minmax(125px,40%) minmax(0,1fr) !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-profile {
        grid-template-columns: 112px minmax(0,1fr) !important;
        gap: 14px !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-photo {
        width: 112px !important;
        height: 150px !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-panel-questionnaire,
    body.casting-candidate-page #proit-portal-shell .workflow-pro-grid,
    body.casting-candidate-page #proit-portal-shell .workflow-matrix {
        grid-template-columns: 1fr !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-panel-questionnaire > * {
        grid-column: 1 !important;
    }
}

@media (max-width: 520px) {
    body.casting-dashboard-page #proit-portal-shell .proit-candidate {
        grid-template-columns: 1fr !important;
    }

    body.casting-dashboard-page #proit-portal-shell .proit-photo-wrap {
        height: 280px !important;
        min-height: 280px !important;
        border-right: 0 !important;
        border-bottom: 1px solid var(--os-border) !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-profile {
        grid-template-columns: 1fr !important;
    }

    body.casting-candidate-page #proit-portal-shell .cast-photo {
        width: 100% !important;
        height: 320px !important;
        max-width: none !important;
    }
}
