:root {
  --navy: #0a1b33;
  --navy-2: #102844;
  --blue: #2e6bff;
  --blue-soft: #eaf0ff;
  --gold: #d6b273;
  --gold-soft: #f7f0e4;
  --green: #17b89b;
  --green-soft: #e6f7f3;
  --canvas: #f5f7fa;
  --surface: #ffffff;
  --text: #142033;
  --muted: #728096;
  --line: #e4e9f0;
  --danger: #c95858;
  --radius: 18px;
  --shadow: 0 12px 34px rgba(19, 35, 58, .08);
  font-family: "Manrope", "Segoe UI Variable", "Segoe UI", Arial, sans-serif;
  color: var(--text);
  background: var(--canvas);
}

* { box-sizing: border-box; }
html, body { min-height: 100%; }
body { margin: 0; background: var(--canvas); color: var(--text); }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
svg { width: 20px; height: 20px; fill: currentColor; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 264px 1fr; }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 16px 18px 12px; background: linear-gradient(180deg, var(--navy), #071426); color: #fff; display: flex; flex-direction: column; z-index: 20; overflow: hidden; }
.product-mark, .login-product { display: flex; align-items: center; gap: 13px; padding: 0 10px 12px; }
.product-mark strong, .login-product strong { display: block; font-size: 16px; letter-spacing: .12em; }
.product-mark small, .login-product small { display: block; margin-top: 3px; color: #8fa3bc; font-size: 9px; letter-spacing: .14em; }
.product-glyph { display: grid; place-items: center; width: 40px; height: 40px; border: 1px solid rgba(214, 178, 115, .8); border-radius: 12px; color: var(--gold); font-weight: 800; font-size: 19px; box-shadow: inset 0 0 22px rgba(214, 178, 115, .08); }
.product-glyph-large { width: 54px; height: 54px; border-radius: 16px; font-size: 25px; }
.nav { display: flex; flex:1 1 auto; min-height:0; flex-direction: column; gap: 2px; overflow:visible; }
.nav-item { position: relative; display: flex; align-items: center; gap: 11px; min-height: clamp(29px, 4.15vh, 42px); padding: 0 12px; border-radius: 10px; color: #aebed1; font-size: 12px; transition: .18s ease; }
.nav-item:hover { color: #fff; background: rgba(255,255,255,.06); }
.nav-item.is-active { color: #fff; background: rgba(46,107,255,.18); box-shadow: inset 0 0 0 1px rgba(89,137,255,.16); }
.nav-item.is-active::before { content: ""; position: absolute; left: -18px; width: 3px; height: 24px; border-radius: 0 4px 4px 0; background: var(--gold); }
.nav-item svg { width: 18px; height: 18px; color: currentColor; }
.sidebar-footer { flex:0 0 auto; margin-top:8px; }
.sidebar-version{display:block;margin:3px 14px 0;color:#71859e;font-size:9px;font-weight:700;line-height:1.2;letter-spacing:.06em}
.environment { display: flex; align-items: center; gap: 8px; margin: 22px 14px 0; color: #8296af; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.environment span, .status-dot { width: 8px; height: 8px; border-radius: 50%; background: var(--green); box-shadow: 0 0 0 4px rgba(23,184,155,.12); }
.environment.is-test span { background: var(--gold); box-shadow: 0 0 0 4px rgba(214,178,115,.12); }
@media(max-height:850px) and (min-width:901px){.sidebar{padding-top:12px;padding-bottom:8px}.product-mark{padding-bottom:8px}.nav{gap:1px}.nav-item{min-height:clamp(27px,4vh,34px);font-size:11px}.environment{margin-top:5px}.environment-block{gap:1px}}

.workspace { min-width: 0; }
.topbar { height: 86px; padding: 0 34px; border-bottom: 1px solid var(--line); background: rgba(255,255,255,.92); backdrop-filter: blur(10px); display: flex; align-items: center; justify-content: space-between; gap: 20px; position: sticky; top: 0; z-index: 10; }
.title-wrap p { margin: 0 0 4px; color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .12em; }
.title-wrap h1 { margin: 0; font-size: 22px; letter-spacing: -.02em; }
.user-area { display: flex; align-items: center; gap: 10px; }
.data-environment-badge { display: inline-flex; padding: 7px 10px; border-radius: 999px; color: #087864; background: var(--green-soft); border: 1px solid #c7e9e1; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .07em; }
.data-environment-badge.is-test { color: #7b5b25; background: var(--gold-soft); border-color: #ead9bb; }
.user-avatar { width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; color: var(--navy); background: var(--gold-soft); border: 1px solid #ead9bb; font-weight: 800; }
.user-copy strong, .user-copy small { display: block; }
.user-copy strong { font-size: 13px; }
.user-copy small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.icon-button, .menu-button { display: grid; place-items: center; width: 40px; height: 40px; padding: 0; border: 1px solid var(--line); border-radius: 12px; color: var(--muted); background: #fff; cursor: pointer; }
.icon-button:hover, .menu-button:hover { color: var(--blue); border-color: #cdd9f7; }
.menu-button { display: none; }

.content { padding: 34px; max-width: 1600px; margin: 0 auto; }
.welcome-row, .page-actions { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 26px; }
.welcome-row h2, .page-actions h2 { margin: 7px 0 7px; font-size: clamp(24px, 2.2vw, 34px); letter-spacing: -.035em; }
.welcome-row p, .page-actions p, .placeholder-card p { margin: 0; color: var(--muted); line-height: 1.6; }
.eyebrow { display: inline-block; color: var(--gold); font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; }
.eyebrow-dark { color: #94733e; }
.primary-button, .secondary-button { border: 0; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 7px; border-radius: 9px; font-size: 12px; font-weight: 750; white-space: nowrap; }
.primary-button { min-height: 36px; padding: 0 14px; color: white; background: var(--blue); box-shadow: 0 7px 16px rgba(46,107,255,.16); }
.primary-button:hover { background: #225ce5; transform: translateY(-1px); }
.primary-button.compact { min-height: 34px; font-size: 11px; }
.secondary-button { min-height: 36px; padding: 0 14px; color: var(--navy); background: #fff; border: 1px solid var(--line); }

.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-bottom: 20px; }
.metric-card { min-height: 142px; padding: 22px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); display: flex; align-items: flex-start; gap: 16px; }
.metric-card > div:last-child { min-width: 0; }
.metric-card span, .metric-card small { display: block; }
.metric-card span { color: var(--muted); font-size: 12px; }
.metric-card strong { display: block; margin: 9px 0 6px; font-size: 26px; letter-spacing: -.03em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.metric-card small { color: #94a0b1; font-size: 11px; }
.metric-icon { flex: 0 0 auto; width: 42px; height: 42px; border-radius: 13px; display: grid; place-items: center; }
.metric-icon.blue { color: var(--blue); background: var(--blue-soft); }
.metric-icon.gold { color: #aa7f36; background: var(--gold-soft); }
.metric-icon.green { color: #088a74; background: var(--green-soft); }
.metric-icon.sick{color:#a34242;background:#fbeaea}
.metric-card-dark { color: #fff; border-color: var(--navy-2); background: linear-gradient(145deg, var(--navy-2), var(--navy)); }
.metric-card-dark span, .metric-card-dark small { color: #9fb0c5; }
.metric-icon.outline { color: var(--gold); border: 1px solid rgba(214,178,115,.4); background: rgba(214,178,115,.05); }

.dashboard-grid { display: grid; grid-template-columns: 1.55fr 1fr; gap: 20px; }
.panel { border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: var(--shadow); }
.panel-head { padding: 24px 24px 18px; }
.panel-head h3 { margin: 6px 0 0; font-size: 20px; }
.panel-head-actions { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.document-actions { display: flex; gap: 9px; }
.download-link { color: var(--blue); font-weight: 750; }
.quick-grid { padding: 0 18px 20px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.quick-grid a { min-height: 96px; padding: 16px; border: 1px solid var(--line); border-radius: 14px; display: grid; grid-template-columns: 40px 1fr; grid-template-rows: auto auto; column-gap: 13px; align-items: center; transition: .18s ease; }
.quick-grid a:hover { border-color: #cbd8f7; transform: translateY(-2px); box-shadow: 0 10px 22px rgba(19,35,58,.07); }
.quick-icon { grid-row: 1 / 3; width: 40px; height: 40px; border-radius: 12px; display: grid; place-items: center; color: var(--blue); background: var(--blue-soft); }
.quick-grid strong { align-self: end; font-size: 14px; }
.quick-grid small { align-self: start; margin-top: 4px; color: var(--muted); font-size: 11px; }
.empty-state { min-height: 210px; padding: 25px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: var(--muted); }
.empty-state svg { width: 38px; height: 38px; margin-bottom: 14px; color: var(--gold); }
.empty-state strong { color: var(--text); font-size: 14px; }
.empty-state small { max-width: 270px; margin-top: 7px; line-height: 1.55; }
.birthday-list { list-style: none; margin: 0; padding: 0 24px 24px; }
.birthday-list li { display: flex; align-items: center; gap: 12px; padding: 12px 0; border-top: 1px solid var(--line); }
.birthday-list li > span { width: 38px; height: 38px; border-radius: 12px; background: var(--gold-soft); display: grid; place-items: center; font-weight: 800; color: #987337; }
.birthday-list strong, .birthday-list small { display: block; }
.birthday-list small { margin-top: 3px; color: var(--muted); }
.system-strip { margin-top: 20px; padding: 18px 22px; border: 1px solid #cfebe5; border-radius: 15px; background: #f3fbf9; display: flex; align-items: center; justify-content: space-between; }
.system-strip > div { display: grid; grid-template-columns: 10px 1fr; column-gap: 12px; }
.system-strip .status-dot { grid-row: 1 / 3; align-self: center; }
.system-strip strong { font-size: 13px; }
.system-strip small { margin-top: 3px; color: var(--muted); font-size: 11px; }
.neutral-badge { display: inline-flex; width: fit-content; padding: 7px 10px; border-radius: 999px; color: #72582c; background: var(--gold-soft); border: 1px solid #ead9bb; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }

.table-panel { overflow: hidden; }
.search-row { display: flex; gap: 10px; padding: 18px; border-bottom: 1px solid var(--line); }
.input-wrap { position: relative; display: flex; align-items: center; }
.input-wrap svg { position: absolute; left: 14px; width: 18px; color: #8b99ad; pointer-events: none; }
.input-wrap input { width: 100%; height: 48px; padding: 0 14px 0 44px; border: 1px solid var(--line); border-radius: 12px; outline: none; color: var(--text); background: #fff; }
.input-wrap input:focus { border-color: #9bb7ff; box-shadow: 0 0 0 4px rgba(46,107,255,.09); }
.login-database-select { width:100%; height:48px; margin-bottom:14px; padding:0 13px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.search-input { flex: 1; }
.search-input input { height: 44px; }
.filter-select { min-width: 180px; height: 44px; padding: 0 34px 0 12px; border: 1px solid var(--line); border-radius: 12px; color: var(--text); background: #fff; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; font-size: 13px; }
th { padding: 13px 18px; text-align: left; color: var(--muted); background: #fafbfd; border-bottom: 1px solid var(--line); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
td { padding: 16px 18px; border-bottom: 1px solid var(--line); }
tbody tr:hover { background: #fbfcff; }
.clickable-row { cursor: pointer; }
.review-flag { display: inline-flex; margin-left: 8px; padding: 4px 7px; border-radius: 999px; color: #9a6717; background: #fff2d9; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.empty-table { padding: 45px 20px; color: var(--muted); text-align: center; }
.status-pill { display: inline-flex; padding: 6px 9px; border-radius: 999px; color: #526279; background: #eef1f5; font-size: 10px; font-weight: 800; }
.status-active { color: #087864; background: var(--green-soft); }
.status-onboarding { color: #8c682d; background: var(--gold-soft); }
.status-sick { color: #a34242; background: #fbeaea; }
.pagination { padding: 15px 18px; border-top: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; color: var(--muted); font-size: 12px; }
.pagination > div, .action-group { display: flex; gap: 10px; }

.detail-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.detail-card { padding: 24px; }
.detail-card h3 { margin: 0 0 18px; font-size: 17px; }
.detail-card dl { margin: 0; display: grid; grid-template-columns: minmax(130px, .7fr) 1.3fr; gap: 0; }
.detail-card dt, .detail-card dd { margin: 0; padding: 10px 0; border-top: 1px solid var(--line); }
.detail-card dt { color: var(--muted); font-size: 12px; }
.detail-card dd { font-size: 13px; font-weight: 650; }
.review-panel { margin-bottom: 20px; padding: 18px 20px; border: 1px solid #f0d49d; border-radius: 14px; color: #725020; background: #fff8e9; }
.review-panel ul { margin: 8px 0 0; padding-left: 20px; }

.messages { display: grid; gap: 8px; margin-bottom: 18px; }
.message { padding: 13px 16px; border: 1px solid #cce8e1; border-radius: 12px; color: #087864; background: #f1faf8; }
.search-row-wrap { flex-wrap: wrap; }
.wide-table { min-width: 1480px; }
.indicator-line { display: inline-flex; align-items:center; gap:4px; min-width: 92px; font-size: 17px; letter-spacing: 0; cursor: help; white-space:nowrap; }
.indicator-line small{letter-spacing:0;font-variant-numeric:tabular-nums}
.attention-row { background: #fff7e8; }
.muted { color: var(--muted); }

.employee-hero { display: grid; grid-template-columns: 76px minmax(0, 1fr) auto; gap: 20px; align-items: center; padding: 26px; margin-bottom: 18px; }
.employee-avatar { width: 76px; height: 76px; display: grid; place-items: center; border-radius: 22px; color: var(--gold); background: linear-gradient(145deg, var(--navy-2), var(--navy)); font-size: 28px; font-weight: 850; }
.employee-identity h2 { margin: 6px 0; font-size: clamp(25px, 2.2vw, 34px); letter-spacing: -.035em; }
.employee-identity > p { margin: 0; color: var(--muted); }
.profile-badges { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.experience-badge, .profile-label, .inline-label { display: inline-flex; align-items: center; padding: 6px 10px; border: 1px solid #ead9bb; border-radius: 999px; color: #72582c; background: var(--gold-soft); font-size: 11px; font-weight: 750; }
.inline-label { margin: 2px 4px 2px 0; }
.hero-actions { display: flex; align-items: center; gap: 10px; }
.profile-tabs { position: sticky; top: 100px; z-index: 6; display: flex; gap: 6px; padding: 7px; margin-bottom: 18px; border: 1px solid var(--line); border-radius: 14px; background: rgba(255,255,255,.96); box-shadow: 0 8px 24px rgba(19,35,58,.06); overflow-x: auto; }
.profile-tabs button { min-height: 40px; padding: 0 16px; border: 0; border-radius: 10px; color: var(--muted); background: transparent; font-weight: 750; white-space: nowrap; cursor: pointer; }
.profile-tabs button.is-active { color: #fff; background: var(--blue); box-shadow: 0 7px 16px rgba(46,107,255,.18); }
.profile-tab { display: none; }
.profile-tab.is-active { display: block; }
.profile-summary-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; margin-bottom: 18px; }
.summary-card { min-height: 132px; padding: 20px; }
.summary-card span, .summary-card small { display: block; color: var(--muted); }
.summary-card span { font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.summary-card strong { display: block; margin: 13px 0 8px; font-size: 19px; line-height: 1.25; }
.summary-card small { font-size: 11px; }
.profile-overview { padding: 24px; }
.profile-overview h3 { margin-top: 0; }
.profile-disclaimer { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); color: var(--muted); font-size: 12px; }
.labels-notes-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.management-card { overflow: hidden; }
.record-list { padding: 0 24px; }
.record-item { display: flex; justify-content: space-between; gap: 16px; padding: 15px 0; border-top: 1px solid var(--line); }
.record-item strong, .record-item small { display: block; }
.record-item small { margin-top: 5px; color: var(--muted); }
.record-item p { margin: 7px 0; line-height: 1.5; }
.text-danger { border: 0; color: var(--danger); background: transparent; cursor: pointer; }
.empty-copy { color: var(--muted); }
.inline-form { display: grid; gap: 12px; margin-top: 20px; padding: 20px 24px 24px; border-top: 1px solid var(--line); background: #fafbfd; }
.inline-form label { display: block; margin-bottom: 6px; color: var(--muted); font-size: 11px; font-weight: 750; }
.inline-form select, .inline-form input, .inline-form textarea { width: 100%; min-height: 42px; padding: 9px 11px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.password-field{position:relative;display:block;width:100%}.password-field input{width:100%;padding-right:86px!important;box-sizing:border-box}.password-toggle{position:absolute;right:7px;top:50%;transform:translateY(-50%);min-height:30px;padding:0 9px;border:0;border-radius:7px;color:var(--blue);background:#eef3ff;font-size:10px;font-weight:800;cursor:pointer}.password-toggle:hover{background:#dfe9ff}.role-create-form{grid-template-columns:minmax(180px,.55fr) minmax(260px,1fr) auto;align-items:end}.role-create-form button{min-height:42px}@media(max-width:760px){.role-create-form{grid-template-columns:1fr}}
.form-disclosure { margin-bottom: 18px; overflow: hidden; }
.form-disclosure > summary { padding: 18px 22px; color: var(--navy); font-weight: 800; cursor: pointer; list-style-position: inside; }
.form-disclosure[open] > summary { border-bottom: 1px solid var(--line); background: #fafbfd; }
.two-column-forms { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.store-card-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.store-card { padding: 22px; transition: .18s ease; }
.store-card:hover { transform: translateY(-2px); border-color: #cbd8f7; }
.store-card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.store-card-head span { color: var(--muted); font-size: 10px; text-transform: uppercase; letter-spacing: .08em; }
.store-card h3 { margin: 7px 0 0; font-size: 20px; }
.store-card > p { min-height: 42px; color: var(--muted); line-height: 1.5; }
.store-metrics { display: flex; gap: 24px; padding-top: 15px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.store-metrics strong { display: block; margin-bottom: 4px; color: var(--text); font-size: 18px; }
.decision-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.decision-card { padding: 24px; }
.decision-card h3 { margin: 8px 0 14px; }
.decision-card > strong { display: block; font-size: 30px; }
.decision-card ul { margin: 16px 0 0; padding: 14px 0 0 20px; border-top: 1px solid var(--line); color: var(--muted); line-height: 1.8; }
.decision-card p { color: var(--muted); line-height: 1.6; }
.ai-workspace { min-height: 480px; }
.ai-empty { min-height: 350px; display: grid; place-content: center; padding: 30px; text-align: center; }
.ai-empty p { max-width: 520px; color: var(--muted); line-height: 1.6; }
.chat-list { max-height: 560px; overflow-y: auto; padding: 0 24px 20px; }
.chat-message { max-width: 82%; margin: 10px 0; padding: 14px 16px; border-radius: 14px; background: #f4f6f9; }
.chat-message p { margin: 7px 0 0; line-height: 1.55; }
.chat-user { margin-left: auto; color: #fff; background: var(--blue); }
.chat-form { display: grid; grid-template-columns: 1fr auto; gap: 10px; padding: 18px 24px 24px; border-top: 1px solid var(--line); }
.chat-form textarea { min-height: 74px; padding: 12px; border: 1px solid var(--line); border-radius: 12px; resize: vertical; }
.metric-card-danger { border-color: #efc5c5; background: #fff7f7; }

/* Windows 12.9.0 parity: AI, store passport and document-set matrix. */
.ai-layout { display: grid; grid-template-columns: minmax(0, 1.7fr) minmax(320px, .75fr); gap: 18px; margin-bottom: 18px; }
.ai-side-stack { display: grid; align-content: start; gap: 18px; }
.ai-connection { display: inline-flex; align-items: center; padding: 9px 12px; border-radius: 999px; font-size: 11px; font-weight: 800; }
.ai-connection.is-online { color: #087864; background: var(--green-soft); }
.ai-connection.is-offline { color: #9a4b42; background: #fbeaea; }
.ai-warning { margin-bottom: 18px; padding: 18px 22px; display: flex; align-items: center; justify-content: space-between; gap: 20px; border-color: #efd09b; background: #fff9ed; }
.ai-warning p { margin: 5px 0 0; color: var(--muted); }
.ai-warning code { padding: 2px 6px; border-radius: 6px; background: #f0e6cf; }
.ai-quick-actions { display: flex; flex-wrap: wrap; gap: 8px; padding: 0 24px 14px; }
.ai-quick-actions button, .text-button { padding: 7px 10px; border: 1px solid var(--line); border-radius: 999px; color: #526279; background: #fff; font: inherit; font-size: 11px; font-weight: 750; cursor: pointer; }
.confirm-actions { display: grid; justify-items: end; gap: 6px; }
.document-upload-inline { display: flex; flex-wrap: wrap; align-items: end; gap: 10px; }
.document-upload-inline > div { min-width: 240px; }
.document-upload-inline label { display: block; margin-bottom: 6px; color: var(--muted); font-size: 11px; }
.document-upload-inline input { max-width: 360px; padding: 9px; border: 1px solid var(--line); border-radius: 10px; }
.ai-inbox-panel { margin-top: 18px; }
.table-note { display: block; margin-top: 5px; color: var(--muted); font-size: 10px; line-height: 1.45; }
.collapsible-panel { margin-bottom: 18px; overflow: hidden; }
.collapsible-panel[hidden] { display: none; }
.collapsible-panel details > summary { padding: 18px 22px; font-weight: 800; cursor: pointer; }
.store-register .wide-table { min-width: 1420px; }
.store-status { display: inline-flex; padding: 6px 9px; border: 1px solid color-mix(in srgb, var(--status-color, #6b7280) 35%, white); border-radius: 999px; color: var(--status-color, #6b7280); background: color-mix(in srgb, var(--status-color, #6b7280) 8%, white); font-size: 10px; font-weight: 800; white-space: nowrap; }
.mini-custom-icon { width: 20px; height: 20px; object-fit: contain; }
.store-avatar { font-size: 24px; }
.store-economics { margin-bottom: 18px; padding-bottom: 20px; }
.period-filter { display: flex; flex-wrap: wrap; align-items: end; gap: 8px; }
.period-filter label { display: grid; gap: 4px; color: var(--muted); font-size: 10px; font-weight: 750; }
.period-filter select, .period-filter input { width: 100px; height: 38px; padding: 0 9px; border: 1px solid var(--line); border-radius: 9px; background: #fff; }
.profitability-grid { padding: 0 24px; }
.profitability-grid .summary-card { border: 1px solid var(--line); box-shadow: none; background: #fafbfd; }
.margin-bars { min-height: 170px; margin: 0 24px; padding: 20px 14px 0; border-top: 1px solid var(--line); display: flex; align-items: end; gap: 9px; overflow-x: auto; }
.margin-point { min-width: 36px; height: 150px; display: grid; grid-template-rows: 1fr auto auto; justify-items: center; align-items: end; color: var(--muted); font-size: 9px; }
.margin-point > span { width: 20px; max-height: 115px; min-height: 3px; border-radius: 6px 6px 2px 2px; background: linear-gradient(180deg, var(--blue), #74a0ff); }
.margin-point b { color: var(--text); font-size: 9px; }
.margin-point.negative > span { background: linear-gradient(180deg, #c95858, #e28b8b); }
.store-admin { margin-top: 18px; }
.store-admin-grid { display: grid; grid-template-columns: minmax(0, 2fr) minmax(260px, 1fr); gap: 24px; padding-top: 18px; }
.store-admin-grid form { padding: 18px; border: 1px solid var(--border); border-radius: 16px; background: #fbfcff; }
.store-admin-grid label { display: grid; gap: 8px; font-weight: 700; }
.form-help { color: var(--muted); font-size: 13px; line-height: 1.55; }
.document-upload-card { margin-bottom: 18px; padding: 22px; display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.document-upload-card h3 { margin: 5px 0; }
.document-upload-card p { margin: 0; color: var(--muted); }
.document-set-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.document-set-list { margin: 0; padding: 0 24px 22px 42px; }
.document-set-list li { padding: 9px 0; border-top: 1px solid var(--line); }
.document-set-list span, .document-set-list small { display: block; }
.document-set-list small { margin-top: 4px; color: var(--muted); }
.city-map-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.city-card { padding: 22px; }
.city-card h3 { margin: 7px 0 18px; }
.city-card > div { display: flex; align-items: baseline; gap: 8px; padding: 9px 0; border-top: 1px solid var(--line); }
.city-card > div strong { font-size: 22px; }
.city-card > div small { color: var(--muted); }

.employee-form { padding: 24px; }
.form-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.form-field { min-width: 0; }
.form-field.wide { grid-column: span 2; }
.form-field label { display: block; margin-bottom: 7px; color: var(--muted); font-size: 11px; font-weight: 750; }
.form-control { width: 100%; height: 44px; padding: 0 12px; border: 1px solid var(--line); border-radius: 11px; color: var(--text); background: #fff; outline: none; }
.form-control[type="checkbox"] { width: 20px; height: 20px; }
.form-control:focus { border-color: #9bb7ff; box-shadow: 0 0 0 4px rgba(46,107,255,.09); }
.field-error { display: block; margin-top: 5px; color: var(--danger); }
.form-actions { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--line); display: flex; justify-content: flex-end; }
.row-actions { min-width: 130px; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.row-actions a, .row-actions button { border: 0; padding: 0; color: var(--blue); background: transparent; font: inherit; font-size: 11px; font-weight: 750; cursor: pointer; }
.row-actions .text-danger { color: var(--danger); }
.table-subtitle { display: block; margin-top: 4px; color: var(--muted); font-size: 10px; }
.form-panel { padding: 24px; }
.form-panel form > div { margin-bottom: 14px; }
.form-panel form > div > label { display: block; margin-bottom: 6px; color: var(--muted); font-size: 11px; font-weight: 750; }
.form-panel input, .form-panel select, .form-panel textarea { width: 100%; min-height: 44px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 11px; background: #fff; }
.form-panel input[type="checkbox"] { width: 20px; min-height: 20px; }
.store-card > a { display: block; color: inherit; }

/* Full Windows 12.9 functional parity, rendered with the TIREQ design system. */
.dashboard-brief-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-bottom:22px; }
.brief-card { padding:22px; }
.brief-card h3 { margin:7px 0 10px; }
.brief-card p,.brief-card li { color:var(--muted); line-height:1.55; }
.brief-card ul { margin:8px 0 0; padding-left:18px; }
.brief-card a { color:var(--green); font-size:12px; font-weight:800; }
.section-heading { display:flex; align-items:center; gap:14px; margin:28px 0 14px; }
.section-heading h3 { margin:0; font-size:20px; }
.section-heading span { color:var(--danger); font-size:11px; font-weight:750; }
.metric-grid-five { grid-template-columns:repeat(5,minmax(0,1fr)); }
.metric-grid-six { grid-template-columns:repeat(6,minmax(0,1fr)); }
.metric-grid-seven{grid-template-columns:repeat(7,minmax(0,1fr));gap:14px}.metric-grid-seven .metric-card{padding:18px 14px;min-width:0}.metric-grid-seven .metric-card strong{font-size:24px}.metric-grid-seven .metric-card span{font-size:11px}
.metric-grid a { color:inherit; }
.compact-metrics .metric-card { min-height:100px; }
.dashboard-wide { grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr); }
.reference-grid { padding:0 24px 24px; grid-template-columns:repeat(3,minmax(0,1fr)); }
.reference-grid a { border:1px solid var(--line); border-radius:14px; }
.reference-list { max-height:760px; overflow:auto; }
.reference-list .record-item { align-items:center; }
.single-column { grid-template-columns:1fr; }
.danger-button { min-height:36px; padding:0 14px; border:0; border-radius:9px; color:white; background:var(--danger); font-size:12px; font-weight:800; cursor:pointer; white-space:nowrap; }
.lease-workspace { display:grid; grid-template-columns:minmax(0,1.6fr) minmax(340px,.8fr); gap:18px; margin:18px 0; }
.lease-passport { padding:24px; }
.lease-passport h3 { margin:8px 0; font-size:22px; }
.lease-passport h4 { margin:22px 0 8px; }
.lease-passport p { color:var(--muted); line-height:1.55; }
.profile-summary-grid.mini { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.profile-summary-grid.mini article { padding:12px; border:1px solid var(--line); border-radius:10px; background:#fafbfd; }
.profile-summary-grid.mini span,.profile-summary-grid.mini strong { display:block; }
.profile-summary-grid.mini span { color:var(--muted); font-size:10px; }
.profile-summary-grid.mini strong { margin-top:5px; }
.table-wrap tr.is-selected { background:var(--blue-soft); }
.registry-panel { display:grid; gap:18px; }
.form-panel summary { cursor:pointer; }
.record-item[href] { color:inherit; }

.placeholder-card { min-height: 520px; padding: 60px 30px; border: 1px solid var(--line); border-radius: var(--radius); background: white; box-shadow: var(--shadow); display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.placeholder-card h2 { margin: 10px 0 10px; font-size: 30px; letter-spacing: -.03em; }
.placeholder-card p { max-width: 600px; margin-bottom: 20px; }
.placeholder-icon { width: 68px; height: 68px; margin-bottom: 24px; border-radius: 20px; display: grid; place-items: center; color: var(--blue); background: var(--blue-soft); }
.placeholder-icon svg { width: 30px; height: 30px; }

.login-page { background: var(--navy); }
.login-shell { min-height: 100vh; display: grid; grid-template-columns: minmax(420px, 1.05fr) minmax(430px, .95fr); }
.login-visual { position: relative; overflow: hidden; padding: 42px clamp(42px, 7vw, 100px); color: white; background: radial-gradient(circle at 20% 80%, rgba(46,107,255,.28), transparent 38%), linear-gradient(145deg, #0d2543, #071426 70%); display: flex; flex-direction: column; }
.login-visual::before { content: ""; position: absolute; inset: 0; opacity: .16; background-image: linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px); background-size: 44px 44px; mask-image: linear-gradient(to bottom, transparent, black 25%, black 70%, transparent); }
.login-product { position: relative; z-index: 1; padding: 0; display:flex;align-items:center;gap:16px; }
.login-product strong,.product-mark strong{letter-spacing:.12em}.login-product small{display:block;color:#c9d5e5;font-size:10px;letter-spacing:.16em;margin-top:4px}
.tireq-q{width:40px;height:40px;object-fit:contain;flex:0 0 auto}.tireq-q-large{width:76px;height:76px}
.product-mark .tireq-q{width:42px;height:42px}.mobile-product .tireq-q{width:36px;height:36px}
.visual-copy { position: relative; z-index: 1; margin: auto 0; max-width: 680px; }
.visual-copy h1 { margin: 16px 0 20px; font-size: clamp(40px, 5vw, 68px); line-height: 1.04; letter-spacing: -.05em; }
.visual-copy p { max-width: 570px; color: #a9bbd0; font-size: 16px; line-height: 1.7; }
.visual-foot { position: relative; z-index: 1; display: flex; align-items: center; gap: 10px; color: #8da2ba; font-size: 11px; text-transform: uppercase; letter-spacing: .09em; }
.visual-foot span { width: 28px; height: 1px; background: var(--gold); }
.login-panel { padding: 40px; display: grid; place-items: center; background: #f6f8fb; }
.login-card { width: min(100%, 390px); padding:32px; border:1px solid var(--line); border-radius:18px; background:#fff; box-shadow:0 22px 55px rgba(17,35,58,.1); }
.login-card h2 { margin: 8px 0 8px; font-size: 30px; letter-spacing: -.04em; }
.form-intro { margin: 0 0 30px; color: var(--muted); }
.login-card label { display: block; margin: 16px 0 8px; font-size: 12px; font-weight: 750; }
.login-card .primary-button { width: 100%; min-height:44px; margin-top: 24px; }
.form-error { padding: 12px 14px; border-radius: 11px; color: #8f3434; background: #fceaea; font-size: 12px; }
.security-note { margin: 18px 0 0; display: flex; align-items: center; justify-content: center; gap: 8px; color: #8b98aa; font-size: 10px; text-transform: uppercase; letter-spacing: .06em; }
.security-note svg { width: 14px; height: 14px; color: var(--green); }
.mobile-product { display: none; }
.period-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end}.period-filter label{display:grid;gap:5px;color:var(--muted);font-size:10px;font-weight:700}.period-filter select{width:100%;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fff}.period-filter button{grid-column:1/-1;justify-content:center}
.dashboard-profitability{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);gap:16px;padding:18px}.profit-chart{min-height:260px;border:1px solid var(--line);padding:14px}.profit-chart svg{display:block;width:100%;height:230px}.store-status-wide{margin-top:18px}.store-status-wide .status-cell{white-space:nowrap}.dashboard-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.registry-toolbar{display:flex;align-items:center;gap:7px;padding:9px;margin-bottom:12px;overflow:auto}.registry-toolbar form{margin:0;flex:0 0 auto}.registry-toolbar .secondary-button,.registry-toolbar .primary-button{min-height:34px;padding:0 11px;font-size:11px}.registry-search{margin-left:auto;min-width:210px;min-height:34px}.hierarchy-group td{font-weight:800;background:#f6f8fb;color:#18324f}.hierarchy-group.level-city td{font-weight:700;background:#fafbfd}.hierarchy-group.level-store td{font-weight:650;background:#fff}.hierarchy-toggle{border:0;background:transparent;color:inherit;font:inherit;font-weight:inherit;cursor:pointer;padding:0}.hierarchy-toggle::before{content:"▾";display:inline-block;width:18px;transition:transform .15s}.hierarchy-toggle.is-collapsed::before{transform:rotate(-90deg)}.leave-balance-card{margin:14px 24px;padding:14px 16px;border:1px solid #cdd9f7;border-radius:11px;background:#f5f8ff}.leave-balance-card strong,.leave-balance-card span,.leave-balance-card small{display:block}.leave-balance-card span{margin-top:5px;color:#234caa;font-weight:750}.leave-balance-card small{margin-top:4px;color:var(--muted)}

@media (max-width: 1180px) {
  .metric-grid { grid-template-columns: repeat(2, 1fr); }
  .dashboard-grid { grid-template-columns: 1fr; }
  .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .profile-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .store-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ai-layout { grid-template-columns: 1fr; }
  .document-set-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .city-map-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .metric-grid-five, .metric-grid-six { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dashboard-brief-grid,.lease-workspace { grid-template-columns:1fr; }
  .reference-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width: 880px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: fixed; left: -280px; width: 264px; transition: left .2s ease; }
  .sidebar.is-open { left: 0; box-shadow: 20px 0 50px rgba(0,0,0,.25); }
  .menu-button { display: grid; }
  .topbar { padding: 0 18px; }
  .content { padding: 22px 18px; }
  .login-shell { grid-template-columns: 1fr; }
  .login-visual { display: none; }
  .login-panel { min-height: 100vh; padding: 24px; }
  .mobile-product { margin-bottom: 44px; display: flex; align-items: center; gap: 12px; }
}

@media (max-width: 620px) {
  .metric-grid { grid-template-columns: 1fr; }
  .welcome-row, .page-actions { align-items: flex-start; flex-direction: column; }
  .quick-grid { grid-template-columns: 1fr; }
  .user-copy { display: none; }
  .data-environment-badge { display: none; }
  .system-strip { align-items: flex-start; gap: 16px; flex-direction: column; }
  .search-row { flex-direction: column; }
  .detail-grid, .form-grid { grid-template-columns: 1fr; }
  .form-field.wide { grid-column: auto; }
  .employee-hero { grid-template-columns: 58px 1fr; }
  .employee-avatar { width: 58px; height: 58px; border-radius: 17px; }
  .hero-actions { grid-column: 1 / -1; }
  .profile-summary-grid, .labels-notes-grid { grid-template-columns: 1fr; }
  .store-card-grid, .decision-grid, .two-column-forms { grid-template-columns: 1fr; }
  .document-set-grid { grid-template-columns: 1fr; }
  .city-map-grid { grid-template-columns: 1fr; }
  .store-admin-grid { grid-template-columns: 1fr; }
  .document-upload-card, .ai-warning { align-items: stretch; flex-direction: column; }
  .dashboard-brief-grid,.reference-grid { grid-template-columns:1fr; }
}
.table-wrap table{border-collapse:collapse}
.table-wrap th{position:relative}
.table-sortable{cursor:pointer;user-select:none;padding-right:22px!important}
.table-sort-indicator{display:inline-block;min-width:10px;margin-left:5px;color:#2e6bff;font-size:8px;vertical-align:middle}
.table-sortable:hover{background:#f3f7ff}
.column-resize-handle{position:absolute;top:0;right:-4px;width:9px;height:100%;cursor:col-resize;z-index:4;touch-action:none}
.column-resize-handle::after{content:"";position:absolute;top:18%;bottom:18%;left:4px;width:1px;background:#d7deea}
.is-resizing-column,.is-resizing-column *{cursor:col-resize!important;user-select:none!important}
.table-wrap table.has-column-customization .table-column-hidden,.table-scroll table.has-column-customization .table-column-hidden{display:none!important}
.table-columns-button{margin-left:auto;border:1px solid #d9e1ec;background:#f6f8fb;color:#16304f;border-radius:8px;padding:7px 11px;font-weight:700;cursor:pointer;white-space:nowrap}
.table-wrap+.table-columns-button,.table-columns-button+.table-wrap{margin-top:8px}
.column-settings-overlay{position:fixed;inset:0;background:rgba(6,20,38,.56);display:grid;place-items:center;z-index:1000;padding:20px}
.column-settings-dialog{width:min(560px,96vw);max-height:86vh;overflow:auto;background:#fff;border-radius:16px;box-shadow:0 24px 70px rgba(3,19,38,.28);padding:20px}
.column-settings-head,.column-settings-actions,.column-settings-row{display:flex;align-items:center;justify-content:space-between;gap:14px}
.column-settings-head strong{display:block;font-size:20px;color:#0a1b33}.column-settings-head small{display:block;color:#71809a;margin-top:4px}.column-settings-head>button{border:0;background:transparent;font-size:28px;cursor:pointer}
.column-settings-list{display:grid;gap:7px;margin:18px 0}.column-settings-row{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px}.column-settings-row label{display:flex;align-items:center;gap:9px;font-weight:650}.column-settings-row button{border:1px solid #d9e1ec;background:#f7f9fc;border-radius:7px;padding:4px 9px;cursor:pointer}
.column-settings-actions{border-top:1px solid #e8edf4;padding-top:14px}.column-settings-actions>button:not(.primary-button){border:0;background:transparent;color:#64748b;cursor:pointer}
.column-label-input{width:min(280px,48vw);padding:8px 10px;border:1px solid #d9e1ec;border-radius:8px;font:inherit}
.reference-hint{grid-column:1/-1;display:grid;gap:5px;margin-top:12px;padding:14px 16px;border:1px solid #dce5f2;border-left:4px solid #9aa9c0;border-radius:12px;background:#f7f9fc;color:#52627a}
.reference-hint.has-reference{border-left-color:#2e6bff;background:#f3f7ff;color:#0a1b33}.reference-hint-warning.has-reference{border-left-color:#d6a646;background:#fffaf0}.reference-hint strong{color:#0a1b33}.reference-hint small{line-height:1.45;color:#65758c}

/* Полные рабочие экраны настольной версии в визуальной системе TIREQ. */
.ai-import-banner{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:22px 24px;margin:18px 0;border-left:4px solid var(--blue)}
.ai-import-banner h3{margin:5px 0 7px}.ai-import-banner p{margin:0;color:var(--muted);max-width:760px;line-height:1.55}
.ai-import-banner form{min-width:min(100%,520px);display:flex;align-items:flex-end;gap:12px}.compact-upload-fields{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:8px;flex:1}.compact-upload-fields .form-control{min-width:0}
.review-layout{display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.4fr);gap:20px}.recognition-card{padding:24px}.recognition-card h3{margin:8px 0 20px}.recognition-card dl,.management-card dl{display:grid;grid-template-columns:minmax(120px,.42fr) 1fr;gap:0;margin:0}.recognition-card dt,.recognition-card dd,.management-card dt,.management-card dd{margin:0;padding:9px 0;border-bottom:1px solid var(--line)}.recognition-card dt,.management-card dt{color:var(--muted);font-size:11px;font-weight:750}.recognition-card dd,.management-card dd{overflow-wrap:anywhere}.source-letter{padding:18px;border:1px solid var(--line);border-radius:12px;background:#fafbfd;white-space:pre-wrap;line-height:1.55}
.lease-attention{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 18px;padding:12px 16px;border:1px solid #f4d5ca;background:#fff8f4}.lease-attention strong{color:var(--danger);text-transform:uppercase;font-size:11px}.lease-attention span{padding-left:10px;border-left:1px solid #ecd4cb;color:#754437;font-size:11px}
.contract-passport-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px}.contract-passport-grid .management-card{padding:22px}.contract-passport-grid h3{margin:0 0 15px}.contract-passport-grid p{color:var(--muted);line-height:1.55}.lease-crm-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(330px,.7fr);gap:18px;margin-top:18px}.ai-analysis-text{padding:14px;border-left:3px solid var(--blue);background:var(--blue-soft);line-height:1.55;white-space:normal}
.store-passport-workspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(370px,.75fr);gap:18px;margin:18px 0}.store-passport-side{padding:24px;align-self:start;position:sticky;top:92px}.store-passport-side h3{font-size:22px;margin:8px 0}.store-passport-side>p{color:var(--muted);line-height:1.5}.store-passport-side h4{margin:22px 0 8px}.profitability-upload{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.profitability-grid strong{font-size:19px}.store-health-copy{display:grid;gap:3px;margin:14px 0;padding:12px;border-left:3px solid var(--gold);background:#fffaf1}.store-health-copy span{color:var(--muted);font-size:11px}.passport-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}.passport-actions a{justify-content:center;text-align:center}.profile-badges{display:flex;flex-wrap:wrap;gap:7px;margin:14px 0}.profile-label{padding:6px 9px;border:1px solid;border-radius:999px;font-size:10px;font-weight:750}
@media(max-width:1180px){.review-layout,.lease-crm-grid,.store-passport-workspace{grid-template-columns:1fr}.ai-import-banner{align-items:stretch;flex-direction:column}.ai-import-banner form{min-width:0}.store-passport-side{position:static}.compact-upload-fields{grid-template-columns:1fr}.contract-passport-grid{grid-template-columns:1fr}}

/* Проверка кадрового реестра и компактный паспорт магазина. */
.employee-import-review .table-wrap{max-height:66vh;overflow:auto}.employee-import-review table{min-width:1900px}.employee-import-review th{position:sticky;top:0;z-index:3;background:#f7f9fc}.employee-import-review td{vertical-align:top}.employee-import-review input,.employee-import-review select{min-width:150px;padding:7px 8px;border:1px solid var(--line);border-radius:7px;background:#fff;font:inherit}.employee-import-review .narrow-input{min-width:64px;width:64px}.employee-import-review .salary-input{min-width:105px;width:105px}.employee-import-review td small{display:block;margin-top:4px;color:var(--muted)}.import-row-error{background:#fff1f1}.import-row-warning{background:#fff9e9}.import-row-ready{background:#f3fbf7}.import-issues{display:grid;min-width:220px;gap:4px}.import-issues strong{color:#c22d2d}.import-issues span{color:#8b6200}.import-issues em{color:#188757;font-style:normal}.sticky-import-actions{position:sticky;bottom:16px;z-index:6;display:flex;justify-content:space-between;align-items:center;gap:20px;margin:14px 0;padding:14px 18px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.96);box-shadow:0 12px 35px rgba(9,30,66,.15)}
.import-structure-panel{margin:14px 0;padding:0}.import-structure-panel summary{display:flex;justify-content:space-between;gap:18px;padding:16px 18px;cursor:pointer}.import-structure-panel summary span{color:var(--muted);font-size:11px}.structure-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:8px;padding:0 16px 16px}.structure-grid article{padding:10px;border:1px solid var(--line);border-radius:9px;background:#f8fafc}.structure-grid h4{margin:0 0 7px}.structure-grid p{display:flex;flex-wrap:wrap;gap:5px;margin:0}.structure-grid p span{padding:4px 6px;border-radius:6px;background:#fff;font-size:10px}.structure-grid small{display:block;margin-top:6px;color:var(--muted)}
.store-passport-workspace{grid-template-columns:minmax(0,1fr) minmax(350px,390px);height:clamp(580px,72vh,760px);min-height:580px;align-items:stretch}.store-list-panel,.store-passport-side{height:100%;max-height:100%;box-sizing:border-box}.store-list-panel{display:flex;min-width:0;min-height:0;flex-direction:column;overflow:hidden}.store-list-panel .panel-head{flex:0 0 auto}.store-list-panel .table-wrap{flex:1 1 auto;min-height:0;overflow:auto}.store-list-panel table{min-width:1180px}.store-list-panel thead th{position:sticky;top:0;z-index:2;background:#f7f9fc}.store-passport-side{position:static;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;padding:17px}.store-passport-side>*{min-width:0}.store-passport-side h3{font-size:18px;line-height:1.2;margin:5px 0;overflow-wrap:anywhere}.store-passport-side>p{font-size:11px;line-height:1.45;margin:0 0 10px;overflow-wrap:anywhere}.store-passport-side .profile-summary-grid{gap:6px;margin:9px 0}.store-passport-side .profile-summary-grid article{padding:9px}.store-passport-side .profile-summary-grid strong{font-size:16px}.store-passport-side .period-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;margin:9px 0}.store-passport-side .period-filter button{grid-column:1/-1}.store-passport-side .period-filter select{width:100%;min-width:0;padding:7px;height:34px}.store-passport-side .profitability-grid{margin-top:10px}.store-passport-side .store-health-copy{margin:9px 0;padding:9px}.store-passport-side .profile-badges{margin:8px 0}.store-passport-side .passport-actions{gap:6px;margin-top:10px}.store-passport-side .passport-actions a{min-height:34px;padding:7px 8px;font-size:10px}.period-note{display:block;color:var(--muted);line-height:1.35}.lease-summary{display:grid;gap:3px;padding:9px 0;border-top:1px solid var(--line);font-size:11px}.lease-summary span{color:var(--muted);line-height:1.35;overflow-wrap:anywhere}.mapping-form{display:flex;align-items:center;gap:7px}.mapping-form select{min-width:280px}.profitability-mapping-panel{margin:16px 0}.loss-making-store td:first-child,.loss-making-store td:first-child a{color:#c72d2d!important;font-weight:800}.store-name-link{display:grid;gap:2px}.store-name-link small{color:var(--muted);font-size:10px;font-weight:500}.label-icon-image{width:18px;height:18px;object-fit:contain;vertical-align:middle;border-radius:4px}
@media(max-width:1180px){.store-passport-workspace{height:auto;max-height:none}.store-list-panel .table-wrap{max-height:620px}.store-passport-side{overflow:visible}.sticky-import-actions{bottom:8px}}
.store-status-wide .table-wrap{max-height:560px;overflow:auto}.store-status-wide thead th{position:sticky;top:0;z-index:2;background:#f7f9fc}.store-status-wide td:nth-child(2){white-space:normal;line-height:1.8}.vacancy-link-panel{border-color:#efc46a;background:#fff9e9}.status-vacancy{color:#895d00;background:#fff0bf}
.store-status-wide .table-wrap{height:min(520px,58vh);max-height:none;overflow-x:auto!important;overflow-y:scroll!important;scrollbar-gutter:stable}.store-status-wide table{min-width:760px}
.environment-block{display:grid;gap:5px;padding:0 12px}.environment-block .environment{padding:0}.build-version{padding-left:16px;color:#7f90a7;font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.staffing-hierarchy-panel .level-kind td{background:#eaf0ff;color:#173d8f}.staffing-hierarchy-panel .level-city td{padding-left:28px;background:#f3f6fb}.staffing-hierarchy-panel .level-store td:first-child{padding-left:46px}.staffing-position-row td:first-child{padding-left:76px}.staffing-position-name{font-weight:750}.summary-card[href]{cursor:pointer;transition:.18s ease}.summary-card[href]:hover{border-color:#b7c9f5;transform:translateY(-2px)}#team,#vacancies{scroll-margin-top:105px}
.readonly-banner{display:flex;align-items:center;gap:12px;margin-bottom:18px;padding:11px 15px;border:1px solid #b9d5ff;border-radius:12px;background:#f2f7ff;color:#204d91}.readonly-banner strong{white-space:nowrap}.readonly-banner span{font-size:11px}.is-read-only .readonly-action{position:relative;opacity:.58}.is-read-only .readonly-action button{cursor:not-allowed}.is-read-only a[href*="/passport/"]{pointer-events:none;opacity:.5;cursor:not-allowed}
@media(max-width:620px){.ai-import-banner form{align-items:stretch;flex-direction:column}.passport-actions{grid-template-columns:1fr}}
.store-list-panel td:nth-child(7) span { display:block; margin:.2rem 0; white-space:normal; }
.store-list-panel tbody tr[data-href]{cursor:pointer}.store-list-panel tbody tr[data-href]:hover td{background:#f5f8ff}
.store-passport-workspace{height:max(620px,calc(100vh - 120px));max-height:760px}.store-passport-side{height:auto;max-height:none;align-self:start;position:sticky;top:98px;overflow:visible}.store-passport-side .profile-summary-grid article{padding:7px 8px}.store-passport-side .profile-summary-grid strong{margin:3px 0;font-size:15px}.store-passport-side .profile-badges{gap:4px}.store-passport-side .profile-label{padding:4px 6px}.store-passport-side .lease-summary{padding:6px 0}.store-passport-side .passport-actions{margin-top:7px}
@media(max-height:760px) and (min-width:1181px){.store-passport-side{font-size:10px;padding:12px}.store-passport-side h3{font-size:16px}.store-passport-side>p{line-height:1.3;margin-bottom:5px}.store-passport-side .profile-summary-grid{margin:5px 0}.store-passport-side .period-filter{margin:5px 0}.store-passport-side .period-filter select{height:30px;padding:4px}.store-passport-side .store-health-copy,.store-passport-side .profile-badges{margin:5px 0}.store-passport-side .passport-actions a{min-height:29px;padding:4px 6px}}
@media(max-width:1180px){.store-passport-workspace{height:auto;max-height:none}.store-passport-side{position:static;top:auto}}
.store-passport-workspace{height:auto;max-height:none;align-items:start}.store-list-panel{height:min(760px,max(620px,calc(100vh - 120px)));max-height:760px}.store-passport-side{height:auto;max-height:none;position:static;overflow:visible}.store-correspondence-preview{display:grid;gap:6px;padding:9px 0;border-top:1px solid var(--line);font-size:11px}.store-correspondence-preview>a{display:grid;gap:2px;padding:6px 0;color:var(--ink);text-decoration:none;border-bottom:1px solid #edf1f6}.store-correspondence-preview>a span{color:var(--muted);font-size:10px}.store-correspondence-preview .store-correspondence-all{color:var(--primary);font-weight:750;border-bottom:0}
.turnover-badge { display:block; width:max-content; margin-top:.35rem; padding:.18rem .45rem; border-radius:999px; font-size:.75rem; font-weight:700; }
.turnover-high { background:#fee2e2; color:#b91c1c; }
.turnover-medium { background:#fef3c7; color:#92400e; }
.turnover-low { background:#d1fae5; color:#065f46; }
.urgent-document { border:2px solid #ef4444; background:#fff7f7; }
.workspace-alerts{margin:0 0 18px;padding:0;border:1px solid #efc4c4;background:#fffafa;overflow:hidden}.workspace-alerts>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;cursor:pointer;list-style:none}.workspace-alerts>summary::-webkit-details-marker{display:none}.workspace-alerts>summary>span:first-child{display:grid;gap:3px}.workspace-alerts>summary>span:last-child{color:var(--blue);font-size:11px;font-weight:800}.workspace-alerts[open]>summary{border-bottom:1px solid #f0d5d5}.workspace-alert-list{max-height:280px;overflow:auto;padding:5px 14px}.workspace-alert-list .record-item{padding:10px 4px}
.scenario-block{margin:14px 18px 18px;padding-top:12px;border-top:1px solid var(--line)}.scenario-block h4{margin:0 0 4px}.scenario-block .data-table small{display:block;margin-top:3px;color:var(--muted);font-size:9px}.scenario-block .data-table{min-width:980px}
.scenario-sources{margin:0 18px 16px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fafbfd}.scenario-sources>summary{cursor:pointer;font-size:11px;font-weight:800}.scenario-sources[open]>summary{margin-bottom:10px}
.location-category-settings{margin-bottom:12px}.location-category-settings>details>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 18px;cursor:pointer;list-style:none}.location-category-settings>details>summary::-webkit-details-marker{display:none}.location-category-settings>details>summary>div{display:grid;gap:3px}.location-category-settings>details>summary small{color:var(--muted);font-size:10px}.category-profiles-form{padding:0 16px 14px}.category-profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.category-profile-card{padding:11px;border:1px solid var(--line);border-radius:10px;background:#fafbfd}.category-profile-card h4{margin:0 0 8px;font-size:13px}.category-profile-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 8px}.category-profile-fields label{display:block;margin-bottom:2px;color:var(--muted);font-size:8px;font-weight:750}.category-profile-fields input{width:100%;height:31px;padding:4px 7px;box-sizing:border-box;border:1px solid var(--line);border-radius:7px}.category-profile-fields .errorlist{font-size:8px;color:var(--danger)}
.location-attachments-bar{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;margin-bottom:12px}.compact-attachment-form{display:grid;grid-template-columns:auto minmax(140px,1fr) minmax(120px,.7fr) auto;align-items:center;gap:8px;padding:10px 12px;margin:0}.compact-attachment-form>div{display:grid;min-width:130px}.compact-attachment-form small{color:var(--muted);font-size:9px}.compact-attachment-form input,.compact-attachment-form select{min-width:0;height:32px;padding:4px 7px;border:1px solid var(--line);border-radius:7px}.compact-attachment-form input[type=file]{padding:4px;font-size:9px}.compact-attachment-form:nth-child(2){grid-template-columns:auto minmax(150px,1fr) 110px minmax(130px,.8fr) auto}
.ai-proposals{margin-bottom:12px}.ai-proposals>.panel-head{padding:14px 18px}.ai-proposals>.panel-head p{margin:3px 0 0;font-size:10px}.ai-proposals form{padding:0 16px 12px}.ai-proposal-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.ai-proposal-card{display:flex;gap:7px;padding:9px;border:1px solid var(--line);border-radius:9px;background:#fafbfd;cursor:pointer}.ai-proposal-card:has(input:checked){border-color:var(--blue);background:#f0f6fb}.ai-proposal-card input{margin-top:3px}.ai-proposal-card span{display:grid;gap:3px;min-width:0}.ai-proposal-card strong{font-size:10px}.ai-proposal-card b{font-size:14px;color:var(--navy)}.ai-proposal-card small,.ai-proposal-card em{color:var(--muted);font-size:8px;line-height:1.3}.ai-proposal-card em{font-style:normal;color:#8a650d}
.location-calculator>.panel-head{padding:14px 18px}.location-calculator>.panel-head p{margin:3px 0 0;font-size:10px}.scenario-block{margin:10px 16px 12px;padding-top:10px}.scenario-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:7px}.scenario-heading h4,.scenario-heading p{margin:0}.scenario-heading p{margin-top:3px}.scenario-editor .data-table{min-width:960px}.scenario-editor input{width:78px;height:30px;padding:4px 6px;box-sizing:border-box;border:1px solid var(--line);border-radius:7px;font-variant-numeric:tabular-nums}.scenario-editor td,.scenario-editor th{padding:7px 6px}.scenario-editor .text-button{font-size:9px}.scenario-editor td strong{font-variant-numeric:tabular-nums}
@media(max-width:1200px){.location-edit-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.ai-proposal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.location-attachments-bar{grid-template-columns:1fr}.category-profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.location-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-profile-grid,.ai-proposal-grid{grid-template-columns:1fr}.compact-attachment-form,.compact-attachment-form:nth-child(2){grid-template-columns:1fr}.location-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
.lease-key-list { display:grid; gap:.55rem; margin:.75rem 0; padding-left:1.25rem; }
.lease-key-list li { line-height:1.45; }
.lease-questions { margin:1rem 0; padding:1rem 1.15rem; border-left:4px solid #f59e0b; background:#fffbeb; border-radius:10px; }
.lease-questions ul { margin:.6rem 0 0; padding-left:1.2rem; display:grid; gap:.45rem; }
.lease-conclusions { line-height:1.65; white-space:normal; }
.contract-passport-grid { align-items:start; }
.contract-passport-grid .management-card { padding:1.35rem; }
.contract-passport-grid .management-card p { margin:.65rem 0; line-height:1.55; }
.priority-card { border:2px solid #f59e0b; background:linear-gradient(180deg,#fffdf5,#fff); }
.structured-copy { line-height:1.65; margin:.65rem 0 1rem; }
.user-editor { display:block; padding:0; }
.user-editor > summary { cursor:pointer; padding:1rem; display:flex; flex-direction:column; gap:.25rem; }
.user-editor > form, .user-editor > .form-actions { padding:0 1rem 1rem; }
.user-editor[open] > summary { border-bottom:1px solid #e5e7eb; margin-bottom:1rem; }
.store-quick-label{display:grid;grid-template-columns:1fr;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #dbe3ef}.store-quick-label select,.store-quick-label input{min-width:0}.profile-badges a.profile-label{text-decoration:none;cursor:pointer}
.store-passport-workspace{align-items:stretch}.store-passport-workspace>.store-list-panel,.store-passport-workspace>.store-passport-side{height:100%;min-height:620px;max-height:none;align-self:stretch}.store-passport-workspace>.store-passport-side{overflow:auto}.table-wrap table{width:100%;table-layout:fixed}.table-wrap th,.table-wrap td{box-sizing:border-box;overflow-wrap:anywhere}.table-wrap th{position:relative}.table-wrap{scrollbar-gutter:stable}
@media(max-width:1180px){.store-passport-workspace>.store-list-panel,.store-passport-workspace>.store-passport-side{height:auto;min-height:0}.store-passport-workspace>.store-passport-side{overflow:visible}}
.location-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(320px,.8fr);gap:18px;align-items:start}
.location-main,.location-side{display:grid;gap:18px;min-width:0}
.analysis-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.source-link-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;overflow-wrap:anywhere}
.decision-panel{border-left:5px solid #d6a84b}
.decision-recommend,.status-recommended{border-color:#17a673!important;color:#0d7652!important;background:#eaf8f2!important}
.decision-reject,.status-rejected{border-color:#d35b65!important;color:#a32c38!important;background:#fff0f1!important}
.status-review,.status-rework,.status-analyzing{border-color:#d6a84b!important;color:#806014!important;background:#fff8e6!important}
.analysis-summary{font-size:1.05rem;line-height:1.65;white-space:pre-wrap}
.fact-list{display:grid;gap:9px;margin:14px 0}
.fact-list div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid #e8edf3;padding-bottom:8px}
.fact-list dt{color:#687486}.fact-list dd{margin:0;text-align:right;font-weight:700}
.analysis-list{display:grid;gap:8px;padding-left:20px;line-height:1.5}
.tag-list{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 16px}.tag-list span{padding:6px 9px;border-radius:999px;background:#eef3f8;color:#26384d;font-size:.85rem}
.location-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:16px}
.location-photo-grid figure{margin:0}.location-photo-grid img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;border:1px solid #dfe6ee}.location-photo-grid figcaption{font-size:.78rem;color:#687486;margin-top:4px}
.single-column{grid-template-columns:1fr!important}
.traffic-map-panel{padding:0}.traffic-map-panel details{padding:0 20px 16px}.traffic-map-panel summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 0;cursor:pointer;list-style:none}.traffic-map-panel summary::-webkit-details-marker{display:none}.traffic-map-panel summary>span{display:grid;gap:3px}.traffic-map-panel summary strong{font-size:15px}.traffic-map-panel summary small{color:var(--muted);font-size:10px}.traffic-map-tools{display:flex;align-items:center;gap:12px;margin:0 0 10px}.traffic-map-tools .muted{font-size:10px}.traffic-map{height:270px;border-radius:12px;border:1px solid #dfe6ee;overflow:hidden;background:#eef3f8}
.location-defaults-settings{scroll-margin-top:100px}.location-defaults-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 14px}.location-defaults-grid>div{min-width:0}.location-defaults-grid label{font-size:10px}.location-defaults-grid input{min-height:36px;padding:7px 10px}.location-defaults-note{display:flex;gap:10px;margin:14px 0 0;padding:10px 12px;border-left:3px solid var(--gold);background:#fffaf1;font-size:11px}.location-defaults-note span{color:var(--muted)}.location-defaults-compact{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 18px;margin:0 0 16px}.location-defaults-compact>div{display:grid;gap:4px}.location-defaults-compact strong{font-size:13px;line-height:1.4}.location-defaults-compact small{color:var(--muted);font-size:10px}
.location-defaults-settings>details>summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 20px;cursor:pointer;list-style:none}.location-defaults-settings>details>summary::-webkit-details-marker{display:none}.location-defaults-settings>details>summary>div{display:grid;gap:4px}.location-defaults-settings>details>summary strong{font-size:15px}.location-defaults-settings>details>summary small{color:var(--muted);font-size:10px}.location-defaults-settings>details[open]>summary{border-bottom:1px solid var(--line);background:#fafbfd}.location-defaults-settings>details>.employee-form{padding:18px 20px}.location-defaults-settings>details>.location-defaults-note{margin:16px 20px}
.navigation-order-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:0 22px 22px}.navigation-order-row{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fafbfd}.navigation-order-row>strong{font-size:12px}.navigation-order-row>div{display:flex;gap:4px}.navigation-order-row form{margin:0}.navigation-order-row .icon-button{width:30px;height:30px;border-radius:8px}.navigation-order-row .icon-button:disabled{opacity:.3;cursor:not-allowed}.navigation-position{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:var(--blue-soft);color:var(--blue);font-size:10px;font-weight:800}

@media(max-width:1300px){.metric-grid-seven{grid-template-columns:repeat(4,minmax(0,1fr))}.location-defaults-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.location-defaults-grid{grid-template-columns:1fr 1fr}.location-defaults-compact{align-items:flex-start;flex-direction:column}.metric-grid-seven{grid-template-columns:1fr 1fr}}
.location-economics-grid{margin-bottom:16px}
.comparison-table th:first-child{position:sticky;left:0;background:#f7f9fc;z-index:2;min-width:210px}
.comparison-table td{min-width:190px}.comparison-table small{display:block;margin-top:5px;color:#687486}
.letter-preview{margin-top:12px;padding:14px;border-radius:10px;background:#f7f9fc;white-space:normal;line-height:1.55}
.muted{color:#687486;font-size:.86rem}
.location-chat-history{display:grid;gap:10px;max-height:520px;overflow:auto;margin:14px 0;padding-right:4px}
.chat-message{max-width:88%;padding:12px 14px;border-radius:14px;background:#f1f5f9;line-height:1.5}.chat-message p{margin:.35rem 0}
.chat-user{justify-self:end;background:#e8f1fa}.chat-assistant{justify-self:start;border-left:3px solid #d6a84b}.chat-message small{color:#687486}
.location-chat-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.location-chat-form textarea{width:100%;resize:vertical}
@media(max-width:720px){.location-chat-form{grid-template-columns:1fr}.chat-message{max-width:100%}}
.table-scroll{width:100%;max-width:100%;overflow-x:auto;box-sizing:border-box;scrollbar-gutter:stable}
.location-funnel-table{width:max-content!important;min-width:100%!important}
.planned-transfer-fields{grid-column:1/-1;padding:12px;border:1px solid #e2b95f;border-radius:12px;background:#fffaf0}
.planned-transfer-fields[hidden]{display:none!important}
@media(max-width:1100px){.location-layout{grid-template-columns:1fr}.analysis-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.analysis-grid{grid-template-columns:1fr}.source-link-panel{align-items:flex-start;flex-direction:column}.location-photo-grid{grid-template-columns:1fr}}
.location-summary-strip{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}.location-summary-strip span,.location-summary-strip small{padding:7px 11px;border:1px solid var(--border,#dbe3ee);border-radius:999px;background:#fff}.location-summary-strip strong{color:#0b2345}.location-ai-intake{padding:20px 24px}.location-ai-intake .panel-head{margin-bottom:14px}.location-ai-intake .panel-head p{max-width:980px;margin:4px 0 0}.ai-intake-form{display:grid;gap:12px;max-width:1100px}.ai-intake-form label{display:block;font-weight:700;margin-bottom:5px}.ai-intake-form input[type="url"],.ai-intake-form textarea{width:100%;box-sizing:border-box}.ai-intake-files{display:grid;grid-template-columns:1fr 1fr;gap:12px}.ai-intake-files>div{padding:12px;border:1px solid var(--border,#dbe3ee);border-radius:12px;background:#f8fafc}.ai-intake-files input[type="file"]{width:100%}.ai-intake-note{max-width:720px}.ai-intake-note summary{cursor:pointer;font-weight:700;margin-bottom:8px}.ai-intake-form .primary-button{justify-self:start}.ai-intake-form ul.errorlist{margin:6px 0;color:#b42318}.ai-intake-form.is-running{opacity:.72;pointer-events:none}@media(max-width:760px){.location-ai-intake{padding:16px}.ai-intake-files{grid-template-columns:1fr}}

/* Readable location workspace: full-width analysis, compact KPIs and an on-demand editor. */
.location-hero{align-items:flex-start;margin-bottom:16px}.location-hero>div:first-child{min-width:0;max-width:920px}.location-hero .back-link{display:block;margin-bottom:8px;color:var(--blue);font-size:11px;font-weight:750}.location-hero h2{font-size:clamp(22px,2vw,30px);line-height:1.15;overflow-wrap:anywhere}.location-actions{align-items:center;justify-content:flex-end;flex-wrap:wrap;flex:0 0 auto}.location-actions form{margin:0}.location-delete-button{min-height:34px;padding:0 10px;border:0;background:transparent;color:var(--danger);font-size:11px;font-weight:750;cursor:pointer}
.location-kpi-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 12px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 5px 16px rgba(19,35,58,.04);overflow:hidden}.location-kpi-strip>div{min-width:0;padding:10px 13px;border-right:1px solid var(--line)}.location-kpi-strip>div:last-child{border-right:0}.location-kpi-strip span,.location-kpi-strip small{display:block;color:var(--muted);font-size:9px}.location-kpi-strip strong{display:block;margin:3px 0 2px;color:var(--navy);font-size:15px;line-height:1.15;white-space:normal;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.source-link-panel{padding:18px 22px;margin-bottom:16px}.source-link-panel h3{margin:5px 0;font-size:16px}.source-link-panel p{margin:0;color:var(--muted);font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.location-economics-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:0 16px 10px;box-shadow:none}.location-economics-grid+ .table-scroll table{table-layout:auto}.location-economics-grid+ .table-scroll th,.location-economics-grid+ .table-scroll td{white-space:nowrap}.location-economics-grid~small{display:block;padding:12px 22px 18px;color:var(--muted);line-height:1.45}
.location-layout{grid-template-columns:1fr}.location-main{gap:16px}.location-side{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.location-side>.panel{min-width:0}.analysis-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.analysis-grid>.panel,.analysis-card{min-width:0;padding:20px 22px}.analysis-grid h3{margin:5px 0 12px;font-size:17px}.decision-panel .analysis-summary{margin:0;padding:0 24px 22px;font-size:14px;line-height:1.65;white-space:normal;overflow-wrap:anywhere}.analysis-decision-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.analysis-score{flex:0 0 auto;color:var(--navy);font-size:30px;font-variant-numeric:tabular-nums}.analysis-score small{font-size:12px;color:var(--muted)}.fact-list dd{max-width:62%;white-space:normal;overflow-wrap:anywhere}.fact-list dd small{display:block;margin-top:3px;color:var(--muted);font-weight:500}.analysis-method{margin-top:14px;padding:12px 14px;border-radius:10px;background:#f6f8fb}.analysis-method strong{font-size:11px}.analysis-method p{margin:5px 0 0;color:#455468;font-size:12px;line-height:1.55;overflow-wrap:anywhere}
.location-editor{margin-bottom:12px;overflow:hidden}.location-editor-shell>summary{list-style:none}.location-editor-shell>summary::-webkit-details-marker{display:none}.location-editor-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:11px 16px;cursor:pointer}.location-editor-summary>div{display:grid;gap:2px}.location-editor-summary strong{font-size:13px}.location-editor-summary small{color:var(--muted);font-size:9px}.location-editor-shell[open]>.location-editor-summary{border-bottom:1px solid var(--line);background:#fafbfd}.location-editor-shell>.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:10px 16px;border-bottom:1px solid var(--line)}.location-editor-shell>.panel-head h3{margin:0;font-size:14px}.location-editor-shell>.panel-head p{margin:2px 0 0;color:var(--muted);font-size:9px}.location-editor-shell>form{padding:0 16px 10px}.location-form-section{padding:0;border-bottom:1px solid var(--line)}.location-form-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;margin:0;cursor:pointer;list-style:none}.location-form-heading::-webkit-details-marker{display:none}.location-form-heading>span:first-child{display:grid;gap:1px}.location-form-heading>span:last-child{color:var(--blue);font-size:8px;font-weight:750}.location-form-heading strong{font-size:11px}.location-form-heading small{display:block;color:var(--muted);font-size:8px}.location-edit-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px 8px;padding:0 0 9px}.location-edit-field{min-width:0}.location-edit-field.span-2{grid-column:span 2}.location-edit-field label{display:block;margin-bottom:2px;color:var(--muted);font-size:8px;font-weight:750}.location-edit-field input:not([type=checkbox]),.location-edit-field select,.location-edit-field textarea{width:100%;min-width:0;height:30px;padding:3px 7px;border:1px solid var(--line);border-radius:7px;background:#fff;font-size:11px}.location-edit-field textarea{height:52px;resize:vertical}.location-edit-field>small{display:block;margin-top:2px;color:var(--muted);font-size:7px;line-height:1.2}.location-edit-field .errorlist{margin:3px 0 0;padding-left:15px;color:var(--danger);font-size:8px}.location-editor .form-actions{margin-top:7px;padding-top:6px}
.evidence-registry-compact{margin-top:14px;overflow:hidden}.evidence-registry-compact>details>summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 16px;cursor:pointer;list-style:none}.evidence-registry-compact>details>summary::-webkit-details-marker{display:none}.evidence-registry-compact>details>summary>div{display:grid;gap:2px}.evidence-registry-compact>details>summary strong{font-size:13px}.evidence-registry-compact>details>summary small{color:var(--muted);font-size:9px}.evidence-registry-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:0 14px 14px}.evidence-registry-groups>details{border:1px solid var(--line);border-radius:9px;background:#fafbfd}.evidence-registry-groups>details>summary{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;cursor:pointer;list-style:none}.evidence-registry-groups>details>summary::-webkit-details-marker{display:none}.evidence-registry-groups>details>div{border-top:1px solid var(--line)}.evidence-registry-groups article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;padding:7px 9px;border-bottom:1px solid var(--line)}.evidence-registry-groups article:last-child{border-bottom:0}.evidence-registry-groups article span{display:grid;gap:2px}.evidence-registry-groups article strong{font-size:10px}.evidence-registry-groups article small,.evidence-registry-groups article p,.evidence-registry-groups article a{font-size:8px}.evidence-registry-groups article p{grid-column:1/-1;margin:0;color:var(--muted);line-height:1.3}
.table-scroll th{position:relative}.location-funnel-table{width:1540px;min-width:1540px;table-layout:fixed!important}.location-funnel-table th,.location-funnel-table td{padding:12px 10px;vertical-align:middle}.location-funnel-table th:nth-child(1),.location-funnel-table td:nth-child(1){width:42px}.location-funnel-table th:nth-child(2),.location-funnel-table td:nth-child(2){width:270px}.location-funnel-table th:nth-child(3),.location-funnel-table td:nth-child(3){width:105px}.location-funnel-table th:nth-child(4),.location-funnel-table td:nth-child(4){width:110px}.location-funnel-table th:nth-child(5),.location-funnel-table td:nth-child(5){width:220px}.location-funnel-table th:nth-child(6),.location-funnel-table td:nth-child(6){width:130px}.location-funnel-table th:nth-child(7),.location-funnel-table td:nth-child(7){width:95px}.location-funnel-table th:nth-child(8),.location-funnel-table td:nth-child(8){width:120px}.location-funnel-table th:nth-child(9),.location-funnel-table td:nth-child(9){width:70px}.location-funnel-table th:nth-child(10),.location-funnel-table td:nth-child(10){width:145px}.location-funnel-table th:nth-child(11),.location-funnel-table td:nth-child(11){width:82px;text-align:center}.location-funnel-table th:nth-child(12),.location-funnel-table td:nth-child(12){width:128px;white-space:nowrap}.location-funnel-table th:nth-child(13),.location-funnel-table td:nth-child(13){width:125px}.location-funnel-table td small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.location-row-actions{display:flex;align-items:center;gap:8px;white-space:nowrap}.location-row-actions a{color:var(--blue);font-size:11px;font-weight:750}.location-row-actions button{padding:0;font-size:11px;font-weight:750}
@media(max-width:1250px){.location-kpi-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.location-kpi-strip>div:nth-child(3){border-right:0}.location-kpi-strip>div:nth-child(-n+3){border-bottom:1px solid var(--line)}.location-economics-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.location-edit-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.evidence-registry-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.location-side,.analysis-grid{grid-template-columns:1fr}.location-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.location-hero{flex-direction:column}.location-actions{justify-content:flex-start}.location-economics-grid{grid-template-columns:1fr 1fr}.evidence-registry-groups{grid-template-columns:1fr}.location-editor-summary{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.location-kpi-strip,.location-economics-grid,.location-edit-grid{grid-template-columns:1fr}.location-kpi-strip>div,.location-kpi-strip>div:nth-child(3){border-right:0;border-bottom:1px solid var(--line)}.location-kpi-strip>div:last-child{border-bottom:0}.location-edit-field.span-2{grid-column:auto}.location-economics-grid{margin-left:14px;margin-right:14px}.analysis-decision-head{align-items:flex-start}.source-link-panel{padding:15px}}
.analysis-sources-panel .panel-head{padding-bottom:8px}.analysis-source-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 16px 16px}.analysis-source-groups>details{border:1px solid var(--line);border-radius:10px;background:#fafbfd}.analysis-source-groups>details>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;cursor:pointer;list-style:none}.analysis-source-groups>details>summary::-webkit-details-marker{display:none}.analysis-source-groups>details>summary span:first-child{display:flex;align-items:baseline;gap:7px}.analysis-source-groups>details>summary small{color:var(--muted)}.analysis-source-list{display:grid;border-top:1px solid var(--line)}.analysis-source-list article{padding:8px 10px;border-bottom:1px solid var(--line)}.analysis-source-list article:last-child{border-bottom:0}.analysis-source-list article div{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.analysis-source-list article a{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analysis-source-list article small{flex:none;color:var(--muted);font-size:9px}.analysis-source-list article p{margin:4px 0 0;color:var(--muted);font-size:10px;line-height:1.35}@media(max-width:800px){.analysis-source-groups{grid-template-columns:1fr}}

/* Compact employee editor and HR operations. */
.employee-editor-compact,.hr-operation-card{max-width:1320px;margin-left:auto;margin-right:auto;padding:18px 22px}.employee-editor-compact .form-actions,.hr-operation-card .form-actions{margin-top:14px;padding-top:14px}.compact-form-section{padding:0 0 14px;margin:0 0 14px;border-bottom:1px solid var(--line)}.compact-form-section:last-of-type{margin-bottom:0}.compact-section-head{display:flex;align-items:center;gap:9px;margin-bottom:10px}.compact-section-head>span{display:grid;place-items:center;width:24px;height:24px;border-radius:8px;color:#fff;background:var(--blue);font-size:11px;font-weight:850}.compact-section-head h3{margin:0;font-size:14px}.compact-section-head small{display:block;margin-top:1px;color:var(--muted);font-size:10px}.compact-form-grid{display:grid;gap:10px 12px}.compact-form-grid.four-columns{grid-template-columns:repeat(4,minmax(0,1fr))}.compact-form-grid.two-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-field{min-width:0}.compact-field.span-2{grid-column:span 2}.compact-field label{display:block;margin:0 0 4px;color:var(--muted);font-size:10px;font-weight:750}.compact-field .form-control,.compact-field input:not([type="checkbox"]),.compact-field select,.compact-field textarea{width:100%;height:38px;min-height:38px;padding:0 10px;border:1px solid var(--line);border-radius:9px;background:#fff;box-sizing:border-box}.compact-field textarea{padding-top:8px;resize:vertical}.compact-field input[type="checkbox"]{width:18px;height:18px}.compact-field .field-help{display:block;margin-top:3px;color:var(--muted);font-size:9px;line-height:1.25}.compact-field.has-error input,.compact-field.has-error select,.compact-field.has-error textarea{border-color:var(--danger)}.compact-subsection,.compact-extra{margin-top:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fafbfd}.compact-subsection summary,.compact-extra>summary{cursor:pointer;color:var(--text);font-size:11px;font-weight:800}.compact-subsection[open] summary,.compact-extra[open]>summary{margin-bottom:10px}.compact-extra{padding-bottom:10px}.hr-operation-card{max-width:1180px}.hr-operation-card>.panel-head{margin-bottom:12px}.hr-operation-card>.panel-head h3{margin:3px 0}.hr-operation-card>.panel-head p{margin:3px 0;font-size:11px}.compact-hint{margin-top:10px;padding:10px 12px;min-height:unset}.compact-hint strong,.compact-hint span,.compact-hint small{font-size:10px}.compact-operation-tabs{top:82px;margin-bottom:12px;padding:5px}.compact-operation-tabs button{min-height:34px;padding:0 12px;font-size:11px}.compact-two-column{grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);gap:14px}.compact-side-form{align-self:start}.hr-operation-card .form-error,.employee-editor-compact .form-error{margin-bottom:10px}.hr-operation-card ul.errorlist,.employee-editor-compact ul.errorlist{margin:3px 0 0;padding-left:14px;font-size:10px}@media(max-width:1050px){.compact-form-grid.four-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.compact-two-column{grid-template-columns:1fr}}@media(max-width:620px){.employee-editor-compact,.hr-operation-card{padding:14px}.compact-form-grid.four-columns,.compact-form-grid.two-columns{grid-template-columns:1fr}.compact-field.span-2{grid-column:auto}}
.searchable-select{position:relative;width:100%}.searchable-select-source{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none}.searchable-select-results{position:absolute;z-index:40;top:calc(100% + 4px);left:0;right:0;max-height:250px;overflow:auto;padding:5px;border:1px solid var(--line);border-radius:10px;background:#fff;box-shadow:0 12px 30px rgba(24,39,75,.16)}.searchable-select-option{display:block;width:100%;padding:8px 10px;border:0;border-radius:7px;background:transparent;color:var(--text);text-align:left;font-size:11px;line-height:1.35;cursor:pointer}.searchable-select-option:hover,.searchable-select-option:focus{background:var(--blue-soft);color:var(--blue)}
