:root {
  --bg: #f3f5f7;
  --surface: #ffffff;
  --dark: #111827;
  --dark-soft: #1f2937;
  --text: #17202a;
  --muted: #73808d;
  --line: #e3e8ec;
  --lime: #60a5fa;
  --lime-dark: #1d4ed8;
  --blue: #58b9ff;
  --purple: #a887f4;
  --red: #ef6a73;
  --orange: #f2a65a;
  --green: #35c878;
  --radius: 18px;
  --shadow: 0 18px 50px rgba(18, 34, 48, .08);
}

* { box-sizing: border-box; }
html { min-width: 320px; background: var(--bg); }
body { margin: 0; color: var(--text); background: var(--bg); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 14px; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
button { color: inherit; }
a { color: inherit; text-decoration: none; }
.hidden { display: none !important; }

.login-screen { min-height: 100vh; display: grid; place-items: center; position: relative; overflow: hidden; padding: 24px; background: #0a1119; color: #f5f8fa; }
.login-ambient { position: absolute; inset: 0; background: radial-gradient(circle at 75% 18%, rgba(83,151,167,.18), transparent 25rem), radial-gradient(circle at 15% 85%, rgba(199,243,106,.07), transparent 25rem); }
.login-ambient::before, .login-ambient::after { content: ""; position: absolute; border: 1px solid rgba(255,255,255,.055); border-radius: 50%; }
.login-ambient::before { width: 560px; height: 560px; top: -270px; right: -160px; }.login-ambient::after { width: 420px; height: 420px; bottom: -240px; left: -100px; }
.login-card { width: min(430px, 100%); position: relative; z-index: 1; padding: 37px; border: 1px solid rgba(255,255,255,.1); border-radius: 24px; background: rgba(16,26,37,.88); box-shadow: 0 30px 100px rgba(0,0,0,.35); backdrop-filter: blur(20px); }
.login-kicker { margin: 48px 0 8px; color: var(--lime); font-size: 10px; font-weight: 800; letter-spacing: .15em; text-transform: uppercase; }
.login-card h1 { margin: 0; font-size: 40px; line-height: 1.05; letter-spacing: -.055em; }.login-copy { margin: 16px 0 28px; color: #91a0ad; line-height: 1.65; }
.local-note { margin: 21px 0 0; display: flex; align-items: center; justify-content: center; gap: 8px; color: #6f7c88; }.local-note i { width: 6px; height: 6px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 10px var(--lime); }

.logo { display: flex; align-items: center; gap: 10px; font-size: 17px; font-weight: 800; letter-spacing: -.04em; }.logo > span:last-child > span { color: var(--lime); }
.logo-large { font-size: 20px; }.logo-mark { width: 31px; height: 31px; display: grid; place-items: center; position: relative; border: 1px solid rgba(255,255,255,.18); border-radius: 50%; }.logo-mark::before, .logo-mark::after { content: ""; position: absolute; background: var(--lime); }.logo-mark::before { width: 17px; height: 1px; }.logo-mark::after { width: 1px; height: 17px; }.logo-mark i { width: 6px; height: 6px; border-radius: 50%; background: var(--lime); box-shadow: 0 0 14px var(--lime); }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 238px minmax(0, 1fr); }
.sidebar { height: 100vh; position: sticky; top: 0; display: flex; flex-direction: column; padding: 26px 18px 19px; color: #e8eef3; background: var(--dark); border-right: 1px solid rgba(255,255,255,.06); z-index: 20; }
.sidebar > .logo { padding: 0 8px; }
.workspace-card { margin: 29px 0 23px; padding: 11px; display: flex; align-items: center; gap: 10px; border: 1px solid rgba(255,255,255,.08); border-radius: 11px; background: rgba(255,255,255,.035); }.workspace-icon { width: 30px; height: 30px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 8px; color: #1b2610; background: var(--lime); font-size: 11px; font-weight: 800; }.workspace-card div { min-width: 0; display: flex; flex-direction: column; }.workspace-card small { color: #657484; font-size: 8px; text-transform: uppercase; letter-spacing: .08em; }.workspace-card b { margin-top: 2px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 10px; }
.side-nav { display: flex; flex-direction: column; gap: 4px; }.nav-item { width: 100%; min-height: 43px; padding: 0 11px; display: flex; align-items: center; gap: 11px; border: 0; border-radius: 9px; background: transparent; color: #7f8f9e; cursor: pointer; text-align: left; font-size: 11px; font-weight: 600; transition: color .2s, background .2s; }.nav-item:hover { color: #dce5eb; background: rgba(255,255,255,.04); }.nav-item.active { color: #f4f8fa; background: rgba(255,255,255,.075); }.nav-icon { width: 22px; color: #6d7b88; font-size: 16px; text-align: center; }.nav-item.active .nav-icon { color: var(--lime); }.nav-item em { margin-left: auto; min-width: 20px; padding: 2px 6px; border-radius: 99px; color: #9ba8b2; background: rgba(255,255,255,.07); font-size: 8px; font-style: normal; text-align: center; }
.sidebar-bottom { margin-top: auto; }.bot-indicator { margin-bottom: 11px; padding: 11px; display: flex; align-items: center; gap: 9px; border-top: 1px solid rgba(255,255,255,.07); border-bottom: 1px solid rgba(255,255,255,.07); }.bot-indicator > span { width: 7px; height: 7px; border-radius: 50%; background: #66727d; }.bot-indicator > span.online { background: var(--green); box-shadow: 0 0 9px rgba(53,200,120,.55); }.bot-indicator div { display: flex; flex-direction: column; }.bot-indicator small { color: #647381; font-size: 8px; text-transform: uppercase; }.bot-indicator b { font-size: 9px; }.logout-button { width: 100%; padding: 9px; border: 0; background: transparent; color: #687785; cursor: pointer; font-size: 9px; }.logout-button:hover { color: #f0f4f6; }

.main-area { min-width: 0; padding: 0 30px 50px; }.topbar { height: 100px; display: flex; align-items: center; justify-content: space-between; gap: 25px; }.topbar p { margin: 0 0 3px; color: #89939c; font-size: 8px; font-weight: 700; text-transform: uppercase; letter-spacing: .13em; }.topbar h1 { margin: 0; font-size: 24px; letter-spacing: -.045em; }.top-actions { display: flex; gap: 8px; }.mobile-menu { display: none; border: 0; background: transparent; font-size: 24px; cursor: pointer; }
.primary-button, .secondary-button { min-height: 39px; padding: 0 15px; border-radius: 9px; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; gap: 14px; font-size: 10px; font-weight: 750; transition: transform .18s, background .18s, border-color .18s; }.primary-button { border: 1px solid #111b25; background: #111b25; color: white; }.primary-button:hover { transform: translateY(-1px); background: #1e2e3e; }.primary-button.full { width: 100%; min-height: 48px; color: #15200d; background: var(--lime); border-color: var(--lime); }.secondary-button { border: 1px solid #dce2e6; background: #fff; color: #56616b; }.secondary-button:hover { border-color: #b9c2c9; }.text-button { border: 0; background: transparent; color: #7c878f; cursor: pointer; font-size: 9px; }.text-button:hover { color: #26323b; }
.warning-banner { min-height: 48px; margin-bottom: 14px; padding: 9px 14px; display: flex; align-items: center; gap: 11px; border: 1px solid #f2d59d; border-radius: 10px; background: #fff8e8; color: #725116; font-size: 10px; }.warning-banner > span { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: #f3c96c; font-weight: 800; }.warning-banner p { margin: 0; }

.page { display: none; }.page.active { display: block; }
.kpi-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }.kpi-card { min-height: 136px; padding: 18px 18px 14px; position: relative; overflow: hidden; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); box-shadow: 0 8px 27px rgba(26,39,52,.035); }.kpi-head { display: flex; align-items: center; justify-content: space-between; gap: 8px; }.kpi-head > span { color: #67737e; font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }.trend { padding: 4px 6px; border-radius: 6px; font-size: 7px; font-style: normal; text-transform: uppercase; }.trend.neutral { color: #7d8993; background: #f1f3f4; }.trend.alert { color: #ae454e; background: #fff0f1; }.kpi-card strong { margin-top: 19px; display: block; font-size: 32px; line-height: 1; letter-spacing: -.06em; }.kpi-card sup { margin-left: 4px; color: #7d8993; font-size: 10px; font-weight: 600; letter-spacing: 0; }.kpi-card > small { color: #9aa3aa; font-size: 8px; }.mini-line { position: absolute; height: 3px; bottom: 0; left: 0; width: 42%; }.mini-line.lime { background: var(--lime); }.mini-line.red { background: var(--red); }.mini-line.blue { background: var(--blue); }.mini-line.purple { background: var(--purple); }

.dashboard-grid { margin-top: 10px; display: grid; grid-template-columns: 1.45fr .75fr; gap: 10px; }.surface { border: 1px solid var(--line); border-radius: var(--radius); background: var(--surface); box-shadow: 0 10px 35px rgba(29,43,57,.035); }.surface-head { min-height: 66px; padding: 17px 19px; display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; border-bottom: 1px solid #edf0f2; }.section-label { color: #99a2a9; font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .13em; }.surface-head h2 { margin: 4px 0 0; font-size: 14px; letter-spacing: -.03em; }.pipeline-surface { min-height: 306px; }.pipeline { height: 237px; padding: 26px 20px 21px; display: flex; align-items: flex-end; gap: 8px; }.pipeline-column { min-width: 0; height: 100%; flex: 1; display: flex; flex-direction: column; justify-content: flex-end; }.pipeline-number { margin-bottom: 6px; color: #394550; font-size: 11px; font-weight: 750; }.pipeline-bar-wrap { height: 145px; display: flex; align-items: flex-end; padding: 0 5px; border-left: 1px dashed #edf0f2; }.pipeline-bar { width: 100%; min-height: 3px; border-radius: 5px 5px 2px 2px; transition: height .5s ease; }.pipeline-column small { height: 27px; margin-top: 8px; display: block; color: #7e8992; font-size: 7px; line-height: 1.25; overflow: hidden; }
.focus-surface { background: var(--dark-soft); border-color: var(--dark-soft); color: #eff5f7; }.focus-surface .surface-head { border-color: rgba(255,255,255,.08); }.focus-surface .section-label { color: #677685; }.pulse-badge { color: var(--lime); font-size: 7px; font-weight: 800; }.focus-content { padding: 21px; }.focus-level { display: inline-flex; align-items: center; gap: 6px; padding: 5px 7px; border-radius: 6px; background: rgba(239,106,115,.1); color: #ff9098; font-size: 7px; text-transform: uppercase; letter-spacing: .08em; }.focus-content h3 { margin: 14px 0 8px; font-size: 17px; letter-spacing: -.04em; }.focus-content p { margin: 0; color: #8f9da8; font-size: 10px; line-height: 1.65; }.focus-metric { margin-top: 18px; padding-top: 14px; display: flex; align-items: end; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.08); }.focus-metric strong { color: var(--lime); font-size: 25px; }.focus-metric small { max-width: 90px; color: #647482; font-size: 8px; text-align: right; }
.activity-surface, .workload-surface { min-height: 286px; }.activity-list { padding: 6px 18px 14px; }.activity-item { min-height: 42px; display: grid; grid-template-columns: 25px 1fr auto; align-items: center; gap: 8px; border-bottom: 1px solid #f0f2f3; }.activity-item:last-child { border: 0; }.activity-dot { width: 23px; height: 23px; display: grid; place-items: center; border-radius: 50%; background: #f1f5e8; color: #78923e; font-size: 8px; }.activity-item div { min-width: 0; display: flex; flex-direction: column; }.activity-item b { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 8px; }.activity-item span { color: #8d979f; font-size: 7px; }.activity-item time { color: #a5adb3; font-size: 7px; }.workload-list { padding: 13px 18px; }.workload-item { margin-bottom: 17px; }.workload-info { margin-bottom: 6px; display: flex; justify-content: space-between; align-items: center; }.workload-person { display: flex; align-items: center; gap: 8px; }.avatar { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 8px; background: #edf2e2; color: #657a35; font-size: 8px; font-weight: 800; }.workload-person div { display: flex; flex-direction: column; }.workload-person b { font-size: 8px; }.workload-person small { color: #9ca5ab; font-size: 7px; }.workload-count { color: #67737d; font-size: 8px; }.workload-count.alert { color: var(--red); }.progress-track { height: 4px; border-radius: 9px; background: #eef1f2; overflow: hidden; }.progress-track i { height: 100%; display: block; border-radius: inherit; background: #9bc24a; }

.toolbar { min-height: 64px; margin-bottom: 10px; padding: 11px; display: flex; align-items: center; gap: 8px; }.search-box { height: 40px; flex: 1; min-width: 220px; display: flex; align-items: center; gap: 9px; padding: 0 12px; border: 1px solid var(--line); border-radius: 9px; background: #fafbfb; }.search-box span { color: #929da5; font-size: 18px; }.search-box input { width: 100%; border: 0; outline: 0; background: transparent; font-size: 10px; }.toolbar select { height: 40px; min-width: 145px; padding: 0 10px; border: 1px solid var(--line); border-radius: 9px; outline: 0; background: #fff; color: #59656f; font-size: 9px; }.check-filter { min-height: 40px; display: flex; align-items: center; gap: 7px; color: #65717a; font-size: 9px; white-space: nowrap; }.check-filter input { accent-color: #6f8d33; }.export-button { white-space: nowrap; }.orders-board { min-height: 540px; overflow: hidden; }.table-wrap { width: 100%; overflow-x: auto; }.orders-table { width: 100%; border-collapse: collapse; }.orders-table th { height: 44px; padding: 0 15px; color: #9aa3a9; background: #fafbfb; border-bottom: 1px solid var(--line); font-size: 7px; font-weight: 800; letter-spacing: .08em; text-align: left; text-transform: uppercase; white-space: nowrap; }.orders-table td { height: 63px; padding: 8px 15px; border-bottom: 1px solid #edf0f2; font-size: 9px; vertical-align: middle; }.orders-table tr:hover td { background: #fcfdfb; }.order-number { display: block; font-size: 9px; font-weight: 800; }.priority-dot { width: 5px; height: 5px; margin-right: 5px; display: inline-block; border-radius: 50%; background: #9ea8af; }.priority-dot.high { background: var(--red); }.priority-dot.low { background: var(--green); }.client-cell { min-width: 170px; }.client-cell b, .client-cell small { display: block; }.client-cell b { font-size: 9px; }.client-cell small { max-width: 210px; margin-top: 2px; color: #8d979f; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 7px; }.stage-pill { padding: 5px 7px; display: inline-flex; align-items: center; gap: 6px; border-radius: 99px; background: #f2f4f5; color: #53616c; font-size: 7px; font-weight: 700; white-space: nowrap; }.stage-pill i { width: 5px; height: 5px; border-radius: 50%; background: var(--stage-color, #8b98a2); }.person-cell { display: flex; align-items: center; gap: 7px; white-space: nowrap; }.person-cell .avatar { width: 23px; height: 23px; }.due-date.overdue { color: var(--red); font-weight: 750; }.money { white-space: nowrap; font-weight: 700; }.paid-mark { margin-left: 4px; color: var(--green); }.row-action { width: 28px; height: 28px; border: 1px solid var(--line); border-radius: 8px; background: #fff; cursor: pointer; }.row-action:hover { border-color: #aeb8bf; }.empty-state { min-height: 450px; display: grid; place-content: center; justify-items: center; color: #87929b; }.empty-state > span { font-size: 34px; }.empty-state h3 { margin: 12px 0 4px; color: #45515a; }.empty-state p { margin: 0; font-size: 10px; }

.analytics-kpis { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 10px; }.compact-stat { min-height: 91px; padding: 17px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); }.compact-stat span { color: #88929a; font-size: 8px; }.compact-stat strong { margin-top: 9px; display: block; font-size: 21px; letter-spacing: -.045em; }.analytics-grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 10px; }.analytics-grid > .surface { min-height: 340px; }.recommendations { grid-column: 1 / -1; min-height: 0 !important; }.horizontal-chart { padding: 20px; }.chart-row { margin-bottom: 15px; display: grid; grid-template-columns: 150px 1fr 55px; align-items: center; gap: 10px; }.chart-row label { color: #606c75; font-size: 8px; }.chart-track { height: 9px; border-radius: 9px; background: #f0f2f3; overflow: hidden; }.chart-track i { height: 100%; display: block; border-radius: inherit; background: linear-gradient(90deg, #9ecb4c, var(--lime)); }.chart-row strong { font-size: 9px; text-align: right; }.donut-layout { min-height: 265px; padding: 24px 20px; display: grid; place-items: center; }.reason-list { width: 100%; }.reason-item { margin-bottom: 13px; }.reason-info { display: flex; justify-content: space-between; color: #66717a; font-size: 8px; }.reason-bar { height: 5px; margin-top: 5px; border-radius: 5px; overflow: hidden; background: #f0f2f3; }.reason-bar i { display: block; height: 100%; border-radius: inherit; background: var(--purple); }.recommendation-list, #recommendation-list { padding: 10px 18px 18px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }.recommendation-item { padding: 14px; border: 1px solid #e5e9ec; border-radius: 11px; background: #fbfcfc; }.recommendation-item > span { color: #b36167; font-size: 7px; font-weight: 800; text-transform: uppercase; letter-spacing: .08em; }.recommendation-item h3 { margin: 7px 0 5px; font-size: 10px; }.recommendation-item p { margin: 0; color: #7d8890; font-size: 8px; line-height: 1.55; }

.page-intro { margin-bottom: 13px; display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; }.page-intro h2 { margin: 0; font-size: 19px; }.page-intro p { margin: 5px 0 0; color: #7c8790; font-size: 9px; }.team-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }.team-card { min-height: 190px; padding: 18px; border: 1px solid var(--line); border-radius: 15px; background: var(--surface); }.team-top { display: flex; align-items: center; gap: 11px; }.team-top .avatar { width: 40px; height: 40px; font-size: 12px; }.team-top div { display: flex; flex-direction: column; }.team-top b { font-size: 11px; }.team-top small { color: #89939b; font-size: 8px; }.team-status { margin-left: auto; width: 7px; height: 7px; border-radius: 50%; background: #cad0d4; }.team-status.active { background: var(--green); }.team-metrics { margin-top: 27px; padding-top: 14px; display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid #edf0f2; }.team-metrics div { display: flex; flex-direction: column; }.team-metrics div + div { padding-left: 15px; border-left: 1px solid #edf0f2; }.team-metrics strong { font-size: 17px; }.team-metrics small { color: #929ca3; font-size: 7px; }
.settings-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }.setting-card { min-height: 130px; padding: 20px; display: grid; grid-template-columns: 36px 1fr auto; align-items: start; gap: 13px; }.setting-card.wide { grid-column: 1 / -1; }.setting-icon { width: 34px; height: 34px; display: grid; place-items: center; border-radius: 9px; color: #5d7530; background: #edf4dc; font-weight: 800; }.setting-card h2 { margin: 1px 0 7px; font-size: 12px; }.setting-card p { max-width: 560px; margin: 0; color: #7e8991; font-size: 9px; line-height: 1.6; }.setting-card code { font-size: 8px; }.setting-state { padding: 5px 7px; border-radius: 7px; color: #68747e; background: #f0f2f3; font-size: 7px; font-weight: 800; text-transform: uppercase; }.setting-state.online { color: #318c59; background: #e8f7ef; }

.modal { width: min(680px, calc(100% - 28px)); max-height: calc(100vh - 36px); padding: 0; border: 0; border-radius: 20px; background: white; color: var(--text); box-shadow: 0 35px 100px rgba(13,27,40,.28); overflow: auto; }.modal::backdrop { background: rgba(8,15,22,.68); backdrop-filter: blur(4px); }.modal form { padding: 23px; }.small-modal { max-width: 480px; }.detail-modal { max-width: 790px; }.modal-head { margin-bottom: 20px; display: flex; justify-content: space-between; align-items: flex-start; }.modal-head h2 { margin: 5px 0 0; font-size: 20px; letter-spacing: -.04em; }.icon-button { width: 31px; height: 31px; border: 1px solid var(--line); border-radius: 8px; background: #fff; color: #7c878f; cursor: pointer; font-size: 19px; }.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }.form-grid.one-column { grid-template-columns: 1fr; }.field { display: flex; flex-direction: column; gap: 6px; }.field.full { grid-column: 1 / -1; }.field > span { color: #657079; font-size: 8px; font-weight: 750; text-transform: uppercase; letter-spacing: .06em; }.field input, .field select, .field textarea { width: 100%; border: 1px solid #dce2e6; border-radius: 9px; outline: 0; background: #fbfcfc; color: #1a242d; font-size: 10px; }.field input, .field select { height: 42px; padding: 0 11px; }.field textarea { padding: 10px 11px; resize: vertical; }.field input:focus, .field select:focus, .field textarea:focus { border-color: #98b759; box-shadow: 0 0 0 3px rgba(152,183,89,.12); }.field small { color: #909aa1; font-size: 8px; line-height: 1.45; }.dark-field > span { color: #8c9aa6; }.dark-field input { height: 48px; border-color: rgba(255,255,255,.12); background: rgba(255,255,255,.04); color: #fff; }.form-error { min-height: 16px; margin: 8px 0 0; color: #d6535d; font-size: 9px; }.modal-actions { margin-top: 18px; padding-top: 16px; display: flex; justify-content: flex-end; gap: 8px; border-top: 1px solid #edf0f2; }
.detail-wrap { padding: 24px; }.detail-head { display: flex; justify-content: space-between; gap: 20px; }.detail-number { color: #8b969e; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .1em; }.detail-head h2 { margin: 6px 0 3px; font-size: 22px; }.detail-head p { margin: 0; color: #7e8991; font-size: 9px; }.detail-grid { margin-top: 20px; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }.detail-box { min-height: 63px; padding: 11px; border: 1px solid #e7eaec; border-radius: 9px; background: #fafbfb; }.detail-box span { display: block; color: #929ba2; font-size: 7px; text-transform: uppercase; }.detail-box b { margin-top: 4px; display: block; font-size: 9px; }.stage-control { margin-top: 16px; padding: 15px; border-radius: 11px; background: #111c27; color: white; }.stage-control label { display: block; margin-bottom: 8px; color: #758592; font-size: 7px; text-transform: uppercase; }.stage-row { display: flex; gap: 8px; }.stage-row select, .stage-row input { height: 39px; min-width: 0; padding: 0 10px; border: 1px solid rgba(255,255,255,.12); border-radius: 8px; outline: 0; background: rgba(255,255,255,.06); color: white; font-size: 9px; }.stage-row select { flex: 1; }.stage-row option { color: #17202a; }.timeline { margin-top: 19px; }.timeline h3 { margin: 0 0 11px; font-size: 11px; }.timeline-item { min-height: 48px; padding-left: 22px; position: relative; border-left: 1px solid #e4e8eb; }.timeline-item::before { content: ""; width: 7px; height: 7px; position: absolute; top: 4px; left: -4px; border-radius: 50%; background: #abc95e; box-shadow: 0 0 0 4px #f2f6e8; }.timeline-item b { display: block; font-size: 8px; }.timeline-item span { color: #8e989f; font-size: 7px; }.timeline-item time { margin-left: 7px; color: #a7afb5; }.detail-close { position: absolute; top: 18px; right: 18px; }

.team-edit { padding: 5px 7px; border: 1px solid #dfe4e7; border-radius: 7px; background: #fff; color: #74808a; cursor: pointer; font-size: 7px; }.team-edit:hover { border-color: #aeb8bf; color: #384650; }
.check-field { min-height: 38px; display: flex; align-items: center; gap: 8px; color: #65717a; font-size: 9px; }.check-field input, .payment-check input { accent-color: #6f8d33; }
.order-edit-form { margin-top: 12px; padding: 12px; display: grid; grid-template-columns: 1.2fr .8fr .8fr auto auto; align-items: end; gap: 8px; border: 1px solid #e5e9ec; border-radius: 10px; background: #fafbfb; }.order-edit-form label { min-width: 0; }.order-edit-form label > span { margin-bottom: 5px; display: block; color: #7d8992; font-size: 7px; font-weight: 750; text-transform: uppercase; }.order-edit-form select, .order-edit-form input[type="date"], .order-edit-form input[type="number"] { width: 100%; height: 39px; padding: 0 8px; border: 1px solid #dce2e6; border-radius: 8px; background: white; font-size: 8px; }.payment-check { height: 39px; padding: 0 7px; display: flex; align-items: center; gap: 6px; border: 1px solid #dce2e6; border-radius: 8px; background: white; white-space: nowrap; }.payment-check span { margin: 0 !important; }.note-form { margin-top: 10px; display: flex; gap: 8px; }.note-form input { flex: 1; height: 39px; padding: 0 10px; border: 1px solid #dce2e6; border-radius: 8px; font-size: 9px; }

.toast { min-width: 230px; max-width: 390px; position: fixed; right: 24px; bottom: 24px; z-index: 100; padding: 13px 15px; border-radius: 10px; background: #101b26; color: white; box-shadow: 0 18px 50px rgba(0,0,0,.22); opacity: 0; transform: translateY(15px); pointer-events: none; font-size: 9px; transition: opacity .2s, transform .2s; }.toast.show { opacity: 1; transform: translateY(0); }.toast.error { background: #8f3038; }

@media (max-width: 1080px) {
  .app-shell { grid-template-columns: 205px minmax(0, 1fr); }.main-area { padding: 0 18px 40px; }.kpi-grid { grid-template-columns: 1fr 1fr; }.dashboard-grid { grid-template-columns: 1fr; }.analytics-grid { grid-template-columns: 1fr; }.recommendations { grid-column: auto; }.team-grid { grid-template-columns: 1fr 1fr; }.toolbar { flex-wrap: wrap; }.search-box { flex-basis: 100%; }.orders-table { min-width: 850px; }
}

@media (max-width: 760px) {
  .app-shell { display: block; }.sidebar { width: 240px; position: fixed; left: -255px; transition: left .25s; box-shadow: 20px 0 50px rgba(0,0,0,.18); }.sidebar.open { left: 0; }.main-area { padding: 0 12px 30px; }.mobile-menu { display: block; }.topbar { height: 84px; }.topbar > div:first-of-type { flex: 1; }.topbar h1 { font-size: 18px; }.secondary-button span { display: none; }.top-actions { gap: 5px; }.top-actions .primary-button { padding: 0 10px; }.kpi-grid, .analytics-kpis { grid-template-columns: 1fr 1fr; }.pipeline { overflow-x: auto; }.pipeline-column { min-width: 54px; }.team-grid, .settings-grid { grid-template-columns: 1fr; }.setting-card.wide { grid-column: auto; }.recommendation-list, #recommendation-list { grid-template-columns: 1fr; }.toolbar select { flex: 1; }.check-filter { flex: 1 0 100%; }.form-grid, .detail-grid { grid-template-columns: 1fr; }.field.full { grid-column: auto; }.stage-row { flex-direction: column; }.stage-row button { min-height: 39px; }.login-card { padding: 29px 24px; }.login-card h1 { font-size: 34px; }
}

@media (max-width: 760px) {
  .order-edit-form { grid-template-columns: 1fr 1fr; }
  .order-edit-form .secondary-button { grid-column: 1 / -1; }
}

@media (max-width: 430px) {
  .kpi-grid, .analytics-kpis { grid-template-columns: 1fr; }.kpi-card { min-height: 118px; }.top-actions .secondary-button { display: none; }.topbar { gap: 7px; }.topbar h1 { font-size: 16px; }.page-intro { align-items: flex-start; flex-direction: column; }.page-intro .primary-button { width: 100%; }.setting-card { grid-template-columns: 34px 1fr; }.setting-card > :last-child:not(div) { grid-column: 2; justify-self: start; }
}

:focus-visible { outline: 2px solid #86a844; outline-offset: 2px; }


/* MasterCadastre unified workspace styling */
.mc-logo-mark{width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border:2px solid rgba(255,255,255,.82);border-radius:10px;background:#fff;color:#111827;font-size:13px;font-weight:900;letter-spacing:-.6px}
.brand-copy{display:flex!important;flex-direction:column;line-height:1.05;color:#f8fafc}.brand-copy small{margin-top:4px;color:#94a3b8;font-size:7px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.nav-external{margin-top:8px;border-top:1px solid rgba(255,255,255,.07);border-radius:0;padding-top:8px!important;min-height:51px!important}.nav-external em{color:#94a3b8;background:rgba(255,255,255,.06)}
.desktop-product-link{text-decoration:none}.desktop-product-link:hover{color:#111827}
.guide-hero{padding:25px;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:12px}.guide-hero h2{margin:6px 0 8px;font-size:22px;letter-spacing:-.035em}.guide-hero p{max-width:720px;margin:0;color:#64748b;font-size:11px;line-height:1.7}
.guide-steps{display:grid;grid-template-columns:1fr 1fr;gap:10px}.guide-step{padding:20px;display:grid;grid-template-columns:38px 1fr;gap:14px;align-items:start}.guide-number{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#eff6ff;color:#1d4ed8;font-weight:900}.guide-step h3{margin:2px 0 7px;font-size:13px}.guide-step p{margin:0 0 8px;color:#64748b;font-size:10px;line-height:1.65}.guide-tip{padding:9px 10px!important;border-left:3px solid #60a5fa;background:#f8fafc;color:#475569!important;border-radius:0 8px 8px 0}.guide-link,.guide-action-new-order{padding:0;color:#2563eb;font-size:9px;font-weight:800}.guide-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px}.guide-card{padding:20px}.guide-card h3{margin:5px 0 9px;font-size:13px}.guide-card p,.guide-card li{color:#64748b;font-size:10px;line-height:1.65}.guide-card ol{margin:8px 0 0;padding-left:20px}
@media(max-width:900px){.guide-steps,.guide-grid{grid-template-columns:1fr}.guide-hero{align-items:flex-start;flex-direction:column}.desktop-product-link{display:none}}
@media(max-width:500px){.guide-step{grid-template-columns:32px 1fr;padding:15px}.guide-number{width:30px;height:30px}.guide-hero{padding:18px}}

/* Public read-only workspace demo */
.demo-banner{min-height:64px;margin-bottom:14px;padding:12px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #bfdbfe;border-radius:12px;background:#eff6ff;color:#1e3a5f}.demo-banner>div:first-child{display:flex;flex-direction:column;gap:3px}.demo-banner b{font-size:11px}.demo-banner span{font-size:9px;line-height:1.5;color:#526b82}.demo-banner-actions{display:flex;gap:8px;flex:0 0 auto}.demo-mode .demo-locked{opacity:.55;cursor:not-allowed!important}.demo-mode .team-edit{display:none}.demo-readonly-note{margin-top:12px;padding:11px 12px;border:1px solid #bfdbfe;border-radius:9px;background:#eff6ff;color:#315a7b;font-size:9px;line-height:1.55}.demo-mode .workspace-card small::after{content:" · демо";color:#60a5fa}.demo-mode .pulse-badge{color:#2563eb;background:#eff6ff}.demo-mode .pulse-badge::first-letter{color:#60a5fa}
@media(max-width:760px){.demo-banner{align-items:flex-start;flex-direction:column}.demo-banner-actions{width:100%}.demo-banner-actions a{flex:1}}

/* beta9 QA document versions */
.qa-control{margin-top:16px;padding:16px;border:1px solid #dfe5e9;border-radius:12px;background:#f8fafb;color:#17202a}
.qa-control-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.qa-control-head span{display:block;color:#7e8a93;font-size:7px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.qa-control-head h3{margin:3px 0 0;font-size:13px}.qa-actions{display:flex;gap:7px;flex-wrap:wrap}.qa-actions a{text-decoration:none}
.version-list{display:grid;gap:8px}.version-card{padding:12px;border:1px solid #e2e7ea;border-left:4px solid #94a3b8;border-radius:10px;background:#fff}.version-card.clean{border-left-color:#65a30d}.version-card.ready{border-left-color:#16a34a;background:#f7fff8}.version-card.warning{border-left-color:#d97706}.version-card.error{border-left-color:#dc2626}.version-card.unknown{border-left-color:#64748b}.version-main{min-width:0}.version-title{display:flex;align-items:center;gap:7px;margin-bottom:4px}.version-title>b{font-size:11px}.version-main>strong{display:block;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.version-main>small{display:block;margin-top:4px;color:#81909a;font-size:7px;line-height:1.45}
.qa-badge,.latest-badge{padding:3px 6px;border-radius:999px;font-size:6px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.qa-badge.clean{background:#ecfccb;color:#3f6212}.qa-badge.ready{background:#dcfce7;color:#166534}.qa-badge.warning{background:#fef3c7;color:#92400e}.qa-badge.error{background:#fee2e2;color:#991b1b}.qa-badge.unknown{background:#e2e8f0;color:#475569}.latest-badge{background:#eef2ff;color:#4338ca}
.version-metrics{margin-top:9px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.version-metrics>span{padding:5px 7px;border-radius:7px;background:#f2f5f6;color:#64727d;font-size:7px}.version-metrics b{color:#25323d}.version-delta.better{background:#ecfdf5;color:#047857!important}.version-delta.worse{background:#fff1f2;color:#be123c!important}.ready-note{margin-top:8px;padding:7px 9px;border-radius:7px;background:#ecfdf5;color:#166534;font-size:7px;font-weight:700}.version-actions{margin-top:9px;display:flex;justify-content:flex-end}.version-action{min-height:33px;height:33px;font-size:7px}
.qa-empty{padding:14px;border:1px dashed #cbd5dc;border-radius:9px;background:#fff}.qa-empty b,.qa-empty span{display:block}.qa-empty b{font-size:9px}.qa-empty span{margin-top:4px;color:#7e8b94;font-size:8px}.comparison-head{margin-top:15px;padding-top:12px;border-top:1px solid #e3e8eb}.comparison-head b,.comparison-head span{display:block}.comparison-head b{font-size:9px}.comparison-head span{margin-top:3px;color:#82909a;font-size:7px}.comparison-list{margin-top:7px;display:grid;gap:6px}.comparison-item{padding:9px 10px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #e4e9ec;border-radius:8px;background:#fff}.comparison-item b,.comparison-item span{display:block}.comparison-item b{font-size:8px}.comparison-item span{margin-top:3px;color:#7d8992;font-size:7px}.comparison-item time{flex:0 0 auto;color:#98a2a9;font-size:7px}.comparison-empty{margin-top:7px;padding:9px 10px;border-radius:8px;background:#fff;color:#87939b;font-size:8px}
@media(max-width:760px){.qa-control-head{flex-direction:column}.qa-actions{width:100%}.qa-actions a{flex:1}.comparison-item{align-items:flex-start;flex-direction:column}.version-main>strong{white-space:normal}}
.qa-table-pill{display:inline-flex;align-items:center;padding:5px 7px;border-radius:999px;font-size:7px;font-weight:850;white-space:nowrap}.qa-table-pill.ready{background:#dcfce7;color:#166534}.qa-table-pill.clean{background:#ecfccb;color:#3f6212}.qa-table-pill.warning{background:#fef3c7;color:#92400e}.qa-table-pill.error{background:#fee2e2;color:#991b1b}.qa-table-pill.empty{background:#eef2f6;color:#64748b}

/* beta10 Team QA: responsible curator, participants, tasks and automatic version diff */
.workspace-switcher{min-width:170px;max-width:260px;height:34px;padding:0 30px 0 9px;border:1px solid #d8e0e5;border-radius:8px;background:#fff;color:#24323d;font-size:8px;font-weight:750}
.team-page-actions,.team-card-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.team-invite{min-height:31px;height:31px;padding:0 10px;font-size:7px}.connection-badge{display:inline-flex;align-items:center;margin-top:5px;padding:3px 6px;border-radius:999px;background:#f1f5f9;color:#64748b;font-size:6px;font-weight:800}.connection-badge.connected{background:#ecfdf5;color:#047857}
.collaboration-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.collab-block{padding:13px;border:1px solid #e1e7ea;border-radius:10px;background:#fff}.collab-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:9px}.collab-head b{font-size:9px}.collab-head span{display:block;margin-top:3px;color:#83919a;font-size:7px;line-height:1.4}
.participant-list{display:flex;flex-wrap:wrap;gap:6px}.participant-chip{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:999px;background:#f3f6f8;color:#33434e;font-size:7px;font-weight:750}.participant-chip small{color:#84919a;font-size:6px;font-weight:650}.participant-form{margin-top:10px;padding-top:9px;border-top:1px solid #edf1f3}.participant-choices{display:grid;grid-template-columns:1fr 1fr;gap:6px}.participant-choice{display:flex;align-items:center;gap:7px;padding:7px 8px;border:1px solid #e5eaed;border-radius:8px;background:#fafcfd;color:#42515c;font-size:7px;cursor:pointer}.participant-choice input{margin:0}.participant-choice b{font-size:7px}.participant-choice small{display:block;color:#8b969d;font-size:6px}.empty-inline{padding:8px 9px;border:1px dashed #d4dce1;border-radius:8px;color:#87949c;font-size:7px;background:#fbfcfd}
.task-list{display:grid;gap:6px}.task-row{display:grid;grid-template-columns:auto 1fr auto;align-items:start;gap:8px;padding:8px 9px;border:1px solid #e4e9ec;border-radius:8px;background:#fbfcfd}.task-row.done{background:#f5fff7;border-color:#d9f1de}.task-check{width:18px;height:18px;min-height:18px;margin:1px 0 0;border:1px solid #cdd6db;border-radius:5px;background:#fff;color:#176534;display:grid;place-items:center;font-size:10px;cursor:pointer}.task-row.done .task-check{background:#dcfce7;border-color:#86efac}.task-copy{min-width:0}.task-copy>b{display:block;font-size:8px;line-height:1.4}.task-row.done .task-copy>b{text-decoration:line-through;color:#74818a}.task-copy>span,.task-copy>small{display:block;margin-top:2px;color:#839099;font-size:6px;line-height:1.4}.task-delete{padding:2px 4px;border:0;background:transparent;color:#94a3ab;font-size:13px;cursor:pointer}.task-delete:hover{color:#b91c1c}.task-form{display:grid;grid-template-columns:1fr 130px auto;gap:6px;margin-top:9px;padding-top:9px;border-top:1px solid #edf1f3}.task-form input,.task-form select{min-width:0;height:32px;padding:0 8px;border:1px solid #dce4e8;border-radius:7px;background:#fff;color:#34434e;font-size:7px}.task-form button{min-height:32px;height:32px;font-size:7px}.control-note{margin-top:10px;padding:8px 10px;border:1px solid #dbe5ea;border-radius:8px;background:#f8fafb;color:#64747f;font-size:7px;line-height:1.5}
.auto-diff{margin-top:9px;padding:9px 10px;border:1px solid #e1e8ec;border-radius:8px;background:#f8fafb}.auto-diff.unavailable{border-style:dashed;color:#7d8991}.auto-diff.changed{border-left:3px solid #6366f1;background:#f8f8ff}.auto-diff.unchanged{border-left:3px solid #65a30d;background:#fbfff6}.auto-diff-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.auto-diff-head b{font-size:8px}.auto-diff-head span{font-size:6px;color:#818f98}.auto-diff-metrics{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}.auto-diff-metric{padding:4px 6px;border-radius:6px;background:#fff;border:1px solid #e8ecef;color:#5e6d77;font-size:6px}.auto-diff-list{margin:7px 0 0;padding-left:15px;color:#5c6b75;font-size:7px;line-height:1.5}.auto-diff-list li{margin:2px 0}
@media(max-width:900px){.collaboration-grid{grid-template-columns:1fr}.participant-choices{grid-template-columns:1fr}.task-form{grid-template-columns:1fr}.workspace-switcher{max-width:180px}}
@media(max-width:500px){.team-page-actions{width:100%}.team-page-actions button{flex:1}.workspace-switcher{min-width:120px;max-width:145px}.task-row{grid-template-columns:auto 1fr}.task-delete{grid-column:2;justify-self:end}.auto-diff-head{align-items:flex-start;flex-direction:column}}

/* beta11 Team UX: clear task ownership, larger composer, safe exits/removal, login-first identity */
.account-login{margin-bottom:8px;padding:7px 9px;border:1px solid rgba(255,255,255,.10);border-radius:8px;background:rgba(255,255,255,.04);color:#dce6ec;font-size:8px;font-weight:800;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.team-remove,.participant-leave,.danger-button{min-height:31px;height:31px;padding:0 10px;border:1px solid #fecaca;border-radius:8px;background:#fff7f7;color:#b4232d;font-size:7px;font-weight:800;cursor:pointer}.team-remove:hover,.participant-leave:hover,.danger-button:hover{background:#fee2e2;border-color:#fca5a5}.participant-leave{flex:0 0 auto}.participant-hint{max-width:180px;color:#8a5b21!important;font-size:6px!important;line-height:1.4}
.task-section{display:grid;gap:6px}.task-section.team-tasks{margin-top:11px;padding-top:10px;border-top:1px solid #edf1f3}.task-section-title{display:flex;align-items:center;justify-content:space-between;color:#42515c;font-size:7px;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.task-section-title span{min-width:20px;padding:2px 5px;border-radius:999px;background:#eef2f5;color:#71808a;text-align:center;font-size:6px}.task-check-readonly{cursor:not-allowed;background:#f4f6f8;color:#9aa5ad;border-style:dashed}.task-row.done .task-check-readonly{background:#eaf7ed;color:#5f816a}.task-form{display:grid;grid-template-columns:1fr;gap:8px;margin-top:12px;padding-top:11px;border-top:1px solid #edf1f3}.task-compose{display:grid;gap:5px}.task-compose>span{color:#65737d;font-size:7px;font-weight:800}.task-compose textarea{width:100%;min-height:82px;box-sizing:border-box;padding:9px 10px;border:1px solid #dce4e8;border-radius:8px;background:#fff;color:#283842;font-size:8px;line-height:1.5;resize:vertical;outline:0}.task-compose textarea:focus{border-color:#98b759;box-shadow:0 0 0 3px rgba(152,183,89,.12)}.task-form-actions{display:grid;grid-template-columns:minmax(130px,1fr) auto;gap:7px}.task-form-actions select{min-width:0;height:36px;padding:0 9px;border:1px solid #dce4e8;border-radius:8px;background:#fff;color:#34434e;font-size:8px}.task-form-actions button{min-height:36px;height:36px;font-size:8px}.detail-box small{display:block;margin-top:3px;color:#87939b;font-size:7px;font-weight:600}.team-card-actions{justify-content:flex-end}.connection-badge.connected{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-transform:none}
@media(max-width:500px){.task-form-actions{grid-template-columns:1fr}.task-form-actions button{width:100%}.participant-leave{width:100%;margin-top:6px}.collab-head{flex-direction:column}.participant-hint{max-width:none}}

/* beta12 — Intuitive UI refresh: readability, hierarchy, predictable actions */
:root{
  --bg:#f6f8fb;
  --surface:#ffffff;
  --dark:#0f172a;
  --dark-soft:#1e293b;
  --text:#172033;
  --muted:#64748b;
  --line:#e2e8f0;
  --lime:#60a5fa;
  --lime-dark:#2563eb;
  --blue:#2563eb;
  --purple:#7c3aed;
  --red:#dc2626;
  --orange:#ea580c;
  --green:#059669;
  --radius:16px;
  --shadow:0 12px 34px rgba(15,23,42,.06);
}
body{font-size:14px;line-height:1.5;color:var(--text)}
.app-shell{grid-template-columns:270px minmax(0,1fr)}
.sidebar{padding:24px 16px 18px;background:#0f172a}
.logo{font-size:18px;gap:11px}.brand-copy small{font-size:11px;margin-top:2px;color:#94a3b8}
.mc-logo-mark{width:38px!important;height:38px!important;border-radius:11px!important;font-size:14px!important}
.workspace-card{margin:24px 0 14px;padding:12px;border-radius:12px}.workspace-icon{width:36px;height:36px;font-size:13px}.workspace-card small{font-size:10px}.workspace-card b{font-size:12px;margin-top:3px}
.workspace-switcher{width:100%;max-width:none;height:40px;margin-bottom:14px;padding:0 34px 0 11px;font-size:12px;border-radius:10px}
.side-nav{gap:5px}.nav-item{min-height:46px;padding:0 12px;border-radius:10px;font-size:13px;gap:10px}.nav-icon{font-size:17px}.nav-item em{font-size:10px;min-width:24px;padding:3px 7px}
.account-login{font-size:12px;padding:9px 10px}.logout-button{min-height:40px;font-size:12px;border-radius:9px}.logout-button:hover{background:rgba(255,255,255,.05)}

.main-area{padding:0 28px 50px;max-width:1600px;width:100%}.topbar{height:92px;position:sticky;top:0;z-index:12;background:rgba(246,248,251,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(226,232,240,.78);margin-bottom:18px}.topbar p{font-size:10px}.topbar h1{font-size:26px}.top-actions{gap:8px}.primary-button,.secondary-button{min-height:42px;padding:0 15px;border-radius:10px;font-size:12px;gap:8px}.primary-button{background:#0f172a;border-color:#0f172a}.primary-button:hover{background:#1e293b}.secondary-button{border-color:#dbe2ea;color:#475569}.text-button{font-size:12px;font-weight:750;color:#2563eb}.text-button:hover{color:#1d4ed8}
.warning-banner{min-height:0;padding:10px 12px;border-radius:10px;font-size:12px;line-height:1.45}.warning-banner>span{width:26px;height:26px;flex:0 0 auto}.demo-banner{padding:13px 15px}.demo-banner b{font-size:13px}.demo-banner span{font-size:12px}

/* Dashboard quick start */
.quick-start{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:12px}.quick-action{min-height:88px;padding:14px 15px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;border:1px solid #e2e8f0;border-radius:14px;background:#fff;color:#172033;text-align:left;cursor:pointer;box-shadow:0 8px 24px rgba(15,23,42,.035);transition:.16s ease}.quick-action:hover{transform:translateY(-1px);border-color:#bfdbfe;box-shadow:0 10px 28px rgba(37,99,235,.08)}.quick-action b{font-size:14px}.quick-action span{font-size:11px;color:#64748b;line-height:1.4}.quick-action.primary{background:#0f172a;border-color:#0f172a;color:#fff}.quick-action.primary span{color:#cbd5e1}.quick-action.external{border-color:#dbeafe;background:#f8fbff}.quick-action .quick-icon{font-size:16px;color:#2563eb}.quick-action.primary .quick-icon{color:#93c5fd}

.kpi-grid{gap:12px}.kpi-card{min-height:150px;padding:18px;border-radius:15px;box-shadow:0 8px 26px rgba(15,23,42,.035)}.kpi-head>span{font-size:11px}.trend{font-size:9px;padding:4px 7px}.kpi-card strong{font-size:36px;margin-top:20px}.kpi-card>small{font-size:11px}
.dashboard-grid{gap:12px;margin-top:12px}.surface{border-radius:16px;box-shadow:var(--shadow)}.surface-head{min-height:72px;padding:18px 20px}.section-label{font-size:10px}.surface-head h2{font-size:16px;margin-top:5px}.pipeline-number{font-size:13px}.pipeline-column small{font-size:10px}.focus-content,.activity-list,.workload-list{font-size:12px}.activity-item{min-height:52px;grid-template-columns:30px 1fr auto;gap:10px}.activity-dot{width:28px;height:28px;font-size:10px}.activity-item b,.workload-person b{font-size:12px}.activity-item span,.activity-item time,.workload-person small,.workload-count{font-size:10px}.avatar{width:32px;height:32px;font-size:10px}

/* Orders */
.toolbar{min-height:68px;padding:12px;gap:9px;border-radius:14px}.search-box{height:44px;border-radius:10px}.search-box input{font-size:13px}.toolbar select{height:44px;font-size:12px}.check-filter{font-size:12px}.orders-board{border-radius:14px}.orders-table th{height:48px;padding:0 14px;font-size:10px;letter-spacing:.05em}.orders-table td{height:70px;padding:10px 14px;font-size:12px}.order-number,.client-cell b{font-size:12px}.client-cell small{font-size:10px}.stage-pill,.qa-table-pill{font-size:10px;padding:5px 8px}.person-cell .avatar{width:28px;height:28px}.row-action{width:34px;height:34px}.empty-state p{font-size:12px}

/* Analytics/team/settings */
.analytics-kpis{gap:12px}.compact-stat{min-height:104px;padding:18px}.compact-stat span{font-size:11px}.compact-stat strong{font-size:24px}.analytics-grid{gap:12px}.chart-row label,.reason-info{font-size:11px}.chart-row strong{font-size:12px}.recommendation-item>span{font-size:10px}.recommendation-item h3{font-size:14px}.recommendation-item p{font-size:11px}
.page-intro{margin-bottom:16px;align-items:center}.page-intro h2{font-size:24px}.page-intro p{font-size:12px;max-width:760px;line-height:1.55}.team-grid{gap:12px}.team-card{min-height:205px;padding:18px;border-radius:15px}.team-top .avatar{width:46px;height:46px;font-size:14px}.team-top b{font-size:14px}.team-top small{font-size:11px}.team-metrics strong{font-size:20px}.team-metrics small{font-size:10px}.team-edit,.team-invite,.team-remove,.danger-button{min-height:36px;height:36px;font-size:11px;padding:0 11px}.connection-badge{font-size:10px;padding:4px 7px}.settings-grid{gap:12px}.setting-card{min-height:140px;padding:20px}.setting-icon{width:38px;height:38px}.setting-card h2{font-size:15px}.setting-card p{font-size:12px}.setting-card code{font-size:11px}.setting-state{font-size:10px}

/* Guide */
.guide-hero{padding:26px}.guide-hero h2{font-size:24px}.guide-hero p{font-size:13px}.guide-steps,.guide-grid{gap:12px}.guide-step{padding:20px;grid-template-columns:42px 1fr}.guide-number{width:40px;height:40px;font-size:14px}.guide-step h3,.guide-card h3{font-size:16px}.guide-step p,.guide-card p,.guide-card li{font-size:12px}.guide-link,.guide-action-new-order{font-size:12px}

/* Order detail and collaboration */
.detail-modal{max-width:980px}.detail-wrap{padding:26px}.detail-number{font-size:10px}.detail-head h2{font-size:27px}.detail-head p{font-size:12px}.detail-grid{gap:10px}.detail-box{min-height:76px;padding:13px;border-radius:11px}.detail-box span{font-size:10px}.detail-box b{font-size:13px}.detail-box small{font-size:10px}.stage-control{padding:16px;border-radius:12px}.stage-control label{font-size:10px}.stage-row select,.stage-row input{font-size:12px;height:42px}.collaboration-grid{gap:12px;margin-top:14px}.collab-block{padding:16px;border-radius:12px}.collab-head b{font-size:14px}.collab-head span{font-size:11px}.participant-list{gap:8px}.participant-chip{padding:8px 10px;font-size:11px}.participant-chip small{font-size:10px}.participant-choice{padding:9px 10px;font-size:11px}.participant-choice b{font-size:11px}.participant-choice small{font-size:10px}.empty-inline{padding:10px 11px;font-size:11px}
.task-section{gap:8px}.task-section-title{font-size:11px}.task-section-title span{font-size:10px;padding:3px 7px}.task-row{gap:10px;padding:11px;border-radius:10px}.task-check{width:24px;height:24px;min-height:24px;font-size:13px}.task-copy>b{font-size:12px}.task-copy>span,.task-copy>small{font-size:10px}.task-compose>span{font-size:11px}.task-compose textarea{min-height:118px;padding:12px;font-size:13px;border-radius:10px}.task-form-actions select{height:42px;font-size:12px}.task-form-actions button{height:42px;font-size:12px}.participant-hint{max-width:260px;font-size:10px!important}.control-note{padding:10px 12px;font-size:11px}

/* QA versions */
.qa-control{padding:18px!important;border-radius:14px!important}.qa-control-head h3{font-size:18px!important}.qa-control-head p{font-size:11px!important}.qa-actions a{min-height:42px!important;font-size:12px!important}.version-list{gap:10px!important}.version-card{padding:15px!important;border-radius:12px!important}.version-main>strong{font-size:14px!important}.version-main>span{font-size:11px!important}.qa-badge,.latest-badge{font-size:9px;padding:4px 7px}.version-metrics>span{font-size:10px;padding:5px 8px}.ready-note{font-size:10px;padding:8px 10px}.version-action{font-size:11px;min-height:36px;height:36px}.auto-diff{padding:11px 12px}.auto-diff-head b{font-size:12px}.auto-diff-head span{font-size:10px}.auto-diff-metric{font-size:10px}.auto-diff-list{font-size:11px}.comparison-head b{font-size:12px}.comparison-head span{font-size:10px}.comparison-item b{font-size:11px}.comparison-item span,.comparison-item time{font-size:10px}.comparison-empty{font-size:11px}

/* Timeline */
.timeline h3{font-size:14px}.timeline-item{min-height:58px;padding-left:25px}.timeline-item::before{width:9px;height:9px;left:-5px}.timeline-item b{font-size:12px}.timeline-item span{font-size:10px}

/* Modal/forms */
.modal{border-radius:18px}.modal form{padding:26px}.modal-head h2{font-size:24px}.icon-button{width:36px;height:36px}.field{gap:7px}.field>span{font-size:11px}.field input,.field select{height:44px;font-size:13px}.field textarea{font-size:13px}.field small{font-size:10px}.check-field{font-size:12px}.form-error{font-size:11px}.modal-actions{margin-top:20px}
.toast{font-size:12px!important;min-width:260px!important}

@media(max-width:1120px){
  .app-shell{grid-template-columns:235px minmax(0,1fr)}.main-area{padding:0 18px 40px}.quick-start{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .app-shell{display:block}.sidebar{width:270px;left:-285px}.main-area{padding:0 12px 30px}.topbar{height:82px;margin-bottom:12px}.topbar h1{font-size:20px}.quick-start{grid-template-columns:1fr 1fr}.kpi-grid,.analytics-kpis{grid-template-columns:1fr 1fr}.team-grid,.settings-grid{grid-template-columns:1fr}.orders-table{min-width:900px}
}
@media(max-width:520px){
  .quick-start{grid-template-columns:1fr}.kpi-grid,.analytics-kpis{grid-template-columns:1fr}.top-actions .primary-button{font-size:0;width:42px;padding:0}.top-actions .primary-button::after{content:"+";font-size:22px}.page-intro{align-items:flex-start}.collaboration-grid{grid-template-columns:1fr}.detail-wrap{padding:18px}.detail-head h2{font-size:22px}
}

/* beta13 — archive / trash lifecycle */
.lifecycle-intro{align-items:flex-end;gap:20px}.lifecycle-tabs{display:flex;gap:10px;flex-wrap:wrap}.lifecycle-tab.active{background:#172033;color:#fff;border-color:#172033}.lifecycle-tab span{display:inline-flex;min-width:24px;height:24px;padding:0 7px;align-items:center;justify-content:center;border-radius:999px;background:rgba(255,255,255,.16);margin-left:6px}.lifecycle-note{display:flex;gap:10px;align-items:center;padding:16px 18px;margin-bottom:16px}.lifecycle-note b{white-space:nowrap}.lifecycle-note span{color:var(--muted,#667085)}.order-lifecycle-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;border-radius:14px;padding:14px 16px;margin-bottom:16px}.order-lifecycle-banner div{display:grid;gap:3px}.order-lifecycle-banner.archived{background:#f5f7fa;border:1px solid #d8dee8}.order-lifecycle-banner.trash{background:#fff3f1;border:1px solid #f2b8ae;color:#8b2b20}.order-lifecycle-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin:0 0 16px}.lifecycle-table .due-date{white-space:nowrap}.danger-button{border:1px solid #d92d20;background:#fff;color:#b42318;border-radius:10px;padding:10px 14px;font:inherit;font-weight:700;cursor:pointer}.danger-button:hover{background:#fff1f0}.detail-wrap .control-note{display:inline-flex;align-items:center;color:#667085;font-size:13px}.nav-item[data-page="archive"] em:empty{display:none}
@media (max-width: 760px){.lifecycle-intro{align-items:flex-start}.lifecycle-tabs{width:100%}.lifecycle-tab{flex:1}.order-lifecycle-actions{justify-content:stretch}.order-lifecycle-actions .secondary-button,.order-lifecycle-actions .danger-button{flex:1}}


/* MasterCadastre 2.0 — tools hub */
.tools-intro{padding:22px 24px;margin-bottom:12px}.tools-intro h2{margin:4px 0 8px;font-size:22px;letter-spacing:-.035em}.tools-intro p{max-width:760px;margin:0;color:#64748b;font-size:12px;line-height:1.65}
.tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tool-card{min-height:108px;padding:18px;display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid #e2e8f0;border-radius:15px;background:#fff;color:#172033;text-decoration:none;box-shadow:0 8px 24px rgba(15,23,42,.035);transition:.16s ease}.tool-card:hover{transform:translateY(-1px);border-color:#bfdbfe;box-shadow:0 12px 30px rgba(37,99,235,.08)}.tool-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#eff6ff;color:#2563eb;font-size:13px;font-weight:800}.tool-card b{display:block;margin-bottom:5px;font-size:14px}.tool-card small{color:#64748b;font-size:11px;line-height:1.45}.tool-card em{color:#94a3b8;font-size:18px;font-style:normal}.tool-card:hover em{color:#2563eb}
@media(max-width:760px){.tool-grid{grid-template-columns:1fr}.tools-intro{padding:18px}.tool-card{min-height:94px}}

/* MasterCadastre 2.0 — Stage 2 project workspace */
.detail-modal{width:min(1180px,calc(100vw - 28px));max-width:1180px;max-height:94vh}.project-workspace{padding:24px 26px 30px}.project-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:4px 44px 18px 0}.project-hero h2{margin:4px 0 5px;font-size:28px;letter-spacing:-.04em}.project-hero p{margin:0;color:#64748b;font-size:12px}.project-hero-side{display:grid;justify-items:end;gap:8px}.project-hero-side small{color:#64748b;font-size:11px}.project-tabs{display:flex;gap:4px;overflow-x:auto;padding:5px;margin:2px 0 16px;border:1px solid #e2e8f0;border-radius:13px;background:#f8fafc}.project-tab{flex:0 0 auto;border:0;background:transparent;color:#64748b;padding:9px 12px;border-radius:9px;font:inherit;font-size:11px;font-weight:700;cursor:pointer}.project-tab:hover{color:#172033;background:#fff}.project-tab.active{background:#172033;color:#fff;box-shadow:0 4px 12px rgba(15,23,42,.12)}.project-pane{display:none}.project-pane.active{display:block}.project-panel{padding:18px;border:1px solid #e2e8f0;border-radius:14px;background:#fff}.project-panel+.project-panel{margin-top:12px}.project-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.project-panel-head span{display:block;color:#64748b;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em}.project-panel-head h3{margin:4px 0 0;font-size:16px}.project-panel-head-actions{align-items:flex-start}.project-overview-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:12px}.project-control-panel{grid-column:1/-1}.project-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.project-metrics>div,.project-object{padding:12px;border:1px solid #edf1f5;border-radius:11px;background:#f8fafc}.project-metrics span,.project-object span{display:block;color:#64748b;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.project-metrics b,.project-object b{display:block;margin-top:5px;font-size:12px}.project-object{margin-top:10px}.project-object small{display:block;margin-top:3px;color:#64748b;font-size:10px}.project-panel .collab-block{padding:0;border:0;background:transparent}.project-panel .collaboration-grid{margin:0}.project-tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-tool-card{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:14px;border:1px solid #e2e8f0;border-radius:12px;color:#172033;text-decoration:none;transition:.15s}.project-tool-card:hover{border-color:#bfdbfe;box-shadow:0 8px 24px rgba(37,99,235,.07);transform:translateY(-1px)}.project-tool-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:10px;background:#eff6ff;color:#2563eb;font-size:11px;font-weight:800}.project-tool-card b{display:block;font-size:12px}.project-tool-card small{display:block;margin-top:3px;color:#64748b;font-size:10px;line-height:1.4}.project-tool-card em{font-style:normal;color:#94a3b8}.project-integration-note,.project-qa-help{display:flex;gap:9px;margin-top:12px;padding:11px 12px;border-radius:10px;background:#f8fafc;color:#64748b;font-size:10px;line-height:1.5}.project-integration-note b,.project-qa-help b{color:#172033;white-space:nowrap}.project-note-form{margin:0 0 14px}.project-timeline{margin-top:4px}.project-empty{display:grid;gap:4px;padding:20px;text-align:center;color:#64748b}.project-empty b{color:#172033}.project-panel .qa-empty{margin-top:8px}
@media(max-width:900px){.project-overview-grid{grid-template-columns:1fr}.project-control-panel{grid-column:auto}.project-metrics{grid-template-columns:1fr 1fr}.project-tools-grid{grid-template-columns:1fr}}
@media(max-width:620px){.detail-modal{width:calc(100vw - 12px)}.project-workspace{padding:18px 14px 24px}.project-hero{display:grid;padding-right:38px}.project-hero-side{justify-items:start}.project-hero h2{font-size:22px}.project-panel-head-actions{display:grid}.project-metrics{grid-template-columns:1fr 1fr}.project-tabs{margin-left:-2px;margin-right:-2px}}

/* Stage 3: persistent project artifacts */
.version-downloads{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;padding-top:10px;border-top:1px solid var(--line,#e2e8f0)}
.version-downloads>span{font-size:12px;color:#64748b;font-weight:700}
.version-download{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#1d4ed8;text-decoration:none;font-size:12px;font-weight:700}
.version-download:hover{background:#eff6ff;border-color:#93c5fd}

/* Stage 3 CSP-safe dynamic sizing and stage colors */
.pct-w-0{width:0%}
.pct-h-0{height:0%}
.pct-w-1{width:1%}
.pct-h-1{height:1%}
.pct-w-2{width:2%}
.pct-h-2{height:2%}
.pct-w-3{width:3%}
.pct-h-3{height:3%}
.pct-w-4{width:4%}
.pct-h-4{height:4%}
.pct-w-5{width:5%}
.pct-h-5{height:5%}
.pct-w-6{width:6%}
.pct-h-6{height:6%}
.pct-w-7{width:7%}
.pct-h-7{height:7%}
.pct-w-8{width:8%}
.pct-h-8{height:8%}
.pct-w-9{width:9%}
.pct-h-9{height:9%}
.pct-w-10{width:10%}
.pct-h-10{height:10%}
.pct-w-11{width:11%}
.pct-h-11{height:11%}
.pct-w-12{width:12%}
.pct-h-12{height:12%}
.pct-w-13{width:13%}
.pct-h-13{height:13%}
.pct-w-14{width:14%}
.pct-h-14{height:14%}
.pct-w-15{width:15%}
.pct-h-15{height:15%}
.pct-w-16{width:16%}
.pct-h-16{height:16%}
.pct-w-17{width:17%}
.pct-h-17{height:17%}
.pct-w-18{width:18%}
.pct-h-18{height:18%}
.pct-w-19{width:19%}
.pct-h-19{height:19%}
.pct-w-20{width:20%}
.pct-h-20{height:20%}
.pct-w-21{width:21%}
.pct-h-21{height:21%}
.pct-w-22{width:22%}
.pct-h-22{height:22%}
.pct-w-23{width:23%}
.pct-h-23{height:23%}
.pct-w-24{width:24%}
.pct-h-24{height:24%}
.pct-w-25{width:25%}
.pct-h-25{height:25%}
.pct-w-26{width:26%}
.pct-h-26{height:26%}
.pct-w-27{width:27%}
.pct-h-27{height:27%}
.pct-w-28{width:28%}
.pct-h-28{height:28%}
.pct-w-29{width:29%}
.pct-h-29{height:29%}
.pct-w-30{width:30%}
.pct-h-30{height:30%}
.pct-w-31{width:31%}
.pct-h-31{height:31%}
.pct-w-32{width:32%}
.pct-h-32{height:32%}
.pct-w-33{width:33%}
.pct-h-33{height:33%}
.pct-w-34{width:34%}
.pct-h-34{height:34%}
.pct-w-35{width:35%}
.pct-h-35{height:35%}
.pct-w-36{width:36%}
.pct-h-36{height:36%}
.pct-w-37{width:37%}
.pct-h-37{height:37%}
.pct-w-38{width:38%}
.pct-h-38{height:38%}
.pct-w-39{width:39%}
.pct-h-39{height:39%}
.pct-w-40{width:40%}
.pct-h-40{height:40%}
.pct-w-41{width:41%}
.pct-h-41{height:41%}
.pct-w-42{width:42%}
.pct-h-42{height:42%}
.pct-w-43{width:43%}
.pct-h-43{height:43%}
.pct-w-44{width:44%}
.pct-h-44{height:44%}
.pct-w-45{width:45%}
.pct-h-45{height:45%}
.pct-w-46{width:46%}
.pct-h-46{height:46%}
.pct-w-47{width:47%}
.pct-h-47{height:47%}
.pct-w-48{width:48%}
.pct-h-48{height:48%}
.pct-w-49{width:49%}
.pct-h-49{height:49%}
.pct-w-50{width:50%}
.pct-h-50{height:50%}
.pct-w-51{width:51%}
.pct-h-51{height:51%}
.pct-w-52{width:52%}
.pct-h-52{height:52%}
.pct-w-53{width:53%}
.pct-h-53{height:53%}
.pct-w-54{width:54%}
.pct-h-54{height:54%}
.pct-w-55{width:55%}
.pct-h-55{height:55%}
.pct-w-56{width:56%}
.pct-h-56{height:56%}
.pct-w-57{width:57%}
.pct-h-57{height:57%}
.pct-w-58{width:58%}
.pct-h-58{height:58%}
.pct-w-59{width:59%}
.pct-h-59{height:59%}
.pct-w-60{width:60%}
.pct-h-60{height:60%}
.pct-w-61{width:61%}
.pct-h-61{height:61%}
.pct-w-62{width:62%}
.pct-h-62{height:62%}
.pct-w-63{width:63%}
.pct-h-63{height:63%}
.pct-w-64{width:64%}
.pct-h-64{height:64%}
.pct-w-65{width:65%}
.pct-h-65{height:65%}
.pct-w-66{width:66%}
.pct-h-66{height:66%}
.pct-w-67{width:67%}
.pct-h-67{height:67%}
.pct-w-68{width:68%}
.pct-h-68{height:68%}
.pct-w-69{width:69%}
.pct-h-69{height:69%}
.pct-w-70{width:70%}
.pct-h-70{height:70%}
.pct-w-71{width:71%}
.pct-h-71{height:71%}
.pct-w-72{width:72%}
.pct-h-72{height:72%}
.pct-w-73{width:73%}
.pct-h-73{height:73%}
.pct-w-74{width:74%}
.pct-h-74{height:74%}
.pct-w-75{width:75%}
.pct-h-75{height:75%}
.pct-w-76{width:76%}
.pct-h-76{height:76%}
.pct-w-77{width:77%}
.pct-h-77{height:77%}
.pct-w-78{width:78%}
.pct-h-78{height:78%}
.pct-w-79{width:79%}
.pct-h-79{height:79%}
.pct-w-80{width:80%}
.pct-h-80{height:80%}
.pct-w-81{width:81%}
.pct-h-81{height:81%}
.pct-w-82{width:82%}
.pct-h-82{height:82%}
.pct-w-83{width:83%}
.pct-h-83{height:83%}
.pct-w-84{width:84%}
.pct-h-84{height:84%}
.pct-w-85{width:85%}
.pct-h-85{height:85%}
.pct-w-86{width:86%}
.pct-h-86{height:86%}
.pct-w-87{width:87%}
.pct-h-87{height:87%}
.pct-w-88{width:88%}
.pct-h-88{height:88%}
.pct-w-89{width:89%}
.pct-h-89{height:89%}
.pct-w-90{width:90%}
.pct-h-90{height:90%}
.pct-w-91{width:91%}
.pct-h-91{height:91%}
.pct-w-92{width:92%}
.pct-h-92{height:92%}
.pct-w-93{width:93%}
.pct-h-93{height:93%}
.pct-w-94{width:94%}
.pct-h-94{height:94%}
.pct-w-95{width:95%}
.pct-h-95{height:95%}
.pct-w-96{width:96%}
.pct-h-96{height:96%}
.pct-w-97{width:97%}
.pct-h-97{height:97%}
.pct-w-98{width:98%}
.pct-h-98{height:98%}
.pct-w-99{width:99%}
.pct-h-99{height:99%}
.pct-w-100{width:100%}
.pct-h-100{height:100%}
.stage-new{--stage-color:#8090a5}
.stage-bg-new{background:#8090a5}
.stage-waiting_docs{--stage-color:#bc8cff}
.stage-bg-waiting_docs{background:#bc8cff}
.stage-survey_scheduled{--stage-color:#58b9ff}
.stage-bg-survey_scheduled{background:#58b9ff}
.stage-fieldwork_done{--stage-color:#24c7b1}
.stage-bg-fieldwork_done{background:#24c7b1}
.stage-processing{--stage-color:#e9b949}
.stage-bg-processing{background:#e9b949}
.stage-review{--stage-color:#ff8d5c}
.stage-bg-review{background:#ff8d5c}
.stage-submitted{--stage-color:#55d187}
.stage-bg-submitted{background:#55d187}
.stage-waiting_result{--stage-color:#42a5f5}
.stage-bg-waiting_result{background:#42a5f5}
.stage-completed{--stage-color:#35c878}
.stage-bg-completed{background:#35c878}
.stage-paused{--stage-color:#ec6f78}
.stage-bg-paused{background:#ec6f78}

/* MasterCadastre 2.0 — Stage 3B integrated project workspace */
.project-upload-form{display:grid;gap:12px;margin-top:14px}.project-dropzone{position:relative;display:grid;grid-template-columns:48px 1fr;align-items:center;gap:14px;padding:18px;border:1px dashed #93c5fd;border-radius:14px;background:#f8fbff;cursor:pointer}.project-dropzone:hover{border-color:#2563eb;background:#eff6ff}.project-dropzone input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.project-upload-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:12px;background:#dbeafe;color:#1d4ed8;font-size:11px;font-weight:800}.project-dropzone b{display:block;font-size:13px}.project-dropzone small{display:block;margin-top:4px;color:#64748b;font-size:10px;line-height:1.5}.project-upload-form .primary-button{justify-self:start}.project-upload-form button:disabled,.project-compare-form button:disabled{opacity:.55;cursor:wait}
.project-latest-file{display:grid;gap:3px;padding:14px 15px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.project-latest-file>span{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-weight:700}.project-latest-file>b{font-size:13px}.project-latest-file>small{color:#64748b;font-size:10px}
.project-qa-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.project-qa-kpis>div{padding:13px;border:1px solid #e2e8f0;border-radius:11px;background:#f8fafc}.project-qa-kpis span{display:block;color:#64748b;font-size:9px;text-transform:uppercase;letter-spacing:.05em}.project-qa-kpis b{display:block;margin-top:6px;font-size:13px}.project-issue-list{display:grid;gap:7px;margin-top:12px;padding:12px;border-radius:11px;background:#fff7ed;border:1px solid #fed7aa}.project-issue-list>b{font-size:11px}.project-issue-list>span{font-size:10px;color:#7c2d12;line-height:1.45}
.project-map-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.project-map-meta span{padding:6px 9px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:10px;font-weight:700}.project-map-stage{overflow:hidden;border:1px solid #dbe3ec;border-radius:15px;background:#f8fafc}.project-map-svg{display:block;width:100%;height:auto;max-height:480px}.project-map-bg{fill:#f8fafc}.project-map-contour{fill:none;stroke:#0f766e;stroke-width:2;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}.project-map-contour.closed{fill:rgba(20,184,166,.08)}.project-map-note{margin:9px 0 0;color:#64748b;font-size:10px;line-height:1.45}
.geometry-issues{display:grid;gap:9px;margin-top:12px}.geometry-issue{display:grid;gap:5px;padding:12px;border:1px solid #e2e8f0;border-radius:11px;background:#fff}.geometry-issue.error{border-color:#fecaca;background:#fff7f7}.geometry-issue.warning{border-color:#fde68a;background:#fffdf3}.geometry-issue b{font-size:11px}.geometry-issue span,.geometry-issue small{font-size:10px;line-height:1.45;color:#64748b}.project-empty.compact{padding:14px 10px}
.project-artifact-list{display:grid;gap:9px}.project-artifact-list>div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 13px;border:1px solid #e2e8f0;border-radius:11px;background:#fff}.project-artifact-list>div>span{display:grid;gap:3px}.project-artifact-list b{font-size:11px}.project-artifact-list small{color:#64748b;font-size:10px}
.project-compare-form{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:end;gap:10px}.project-compare-form label{display:grid;gap:6px}.project-compare-form label>span{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#64748b;font-weight:700}.project-compare-form select{width:100%;min-height:40px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:8px 10px;font:inherit;font-size:11px}.compare-arrow{align-self:center;color:#94a3b8;font-size:18px;padding-top:15px}
.project-files{display:grid;gap:10px}.project-file-group{display:grid;gap:7px;padding:12px 13px;border:1px solid #e2e8f0;border-radius:12px;background:#fff}.project-file-group>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:12px}.project-file-group b{font-size:11px}.project-file-group small{color:#64748b;font-size:10px}.project-file-group .version-downloads{margin:0;padding-top:7px}.project-file-group .version-downloads>span{display:none}
@media(max-width:800px){.project-qa-kpis{grid-template-columns:1fr 1fr}.project-compare-form{grid-template-columns:1fr}.compare-arrow{display:none}.project-artifact-list>div{align-items:flex-start;flex-direction:column}.project-artifact-list .primary-button,.project-artifact-list .secondary-button{width:100%;justify-content:center}}
@media(max-width:520px){.project-qa-kpis{grid-template-columns:1fr}.project-dropzone{grid-template-columns:40px 1fr;padding:14px}.project-upload-icon{width:40px;height:40px}.project-file-group>div:first-child{align-items:flex-start;flex-direction:column}}
