.executive-grid .metric-card { position: relative; min-height: 148px; padding: 22px; overflow: hidden; }
.metric-card::after { content: ""; position: absolute; right: -30px; top: -30px; width: 90px; height: 90px; border-radius: 50%; background: currentColor; opacity: .045; }
.metric-card > span, .metric-card > small { display: block; color: var(--muted); font-size: 12px; }
.metric-card > strong { display: block; margin: 12px 0 5px; font-size: 25px; letter-spacing: -.025em; }
.metric-icon { position: absolute; top: 20px; right: 20px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 10px; font-size: 12px; font-weight: 900; }
.accent-green { color: #008f6d; }.accent-green .metric-icon { background: #e4f5ef; }
.accent-blue { color: #3b73c5; }.accent-blue .metric-icon { background: #eaf1fb; }
.accent-violet { color: #7357bc; }.accent-violet .metric-icon { background: #f0ebfa; }
.accent-orange { color: #c47b2b; }.accent-orange .metric-icon { background: #fcf0e3; }
.metric-card > span, .metric-card > strong, .metric-card > small { color: var(--ink); }
.metric-card > span, .metric-card > small { color: var(--muted); }

.overview-panels { display: grid; grid-template-columns: 1.08fr .92fr; gap: 15px; margin-top: 15px; }
.insight-panel, .performance-panel { padding: 23px; }
.panel-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 19px; }
.panel-heading h3 { margin-top: 3px; }
.panel-heading a { color: var(--green-dark); font-size: 12px; font-weight: 750; text-decoration: none; }
.insight-list { display: grid; gap: 4px; }
.insight-list > div { display: flex; gap: 12px; padding: 11px 0; border-top: 1px solid #edf0ef; }
.insight-list > div:first-child { border-top: 0; }
.insight-list strong { display: block; font-size: 13px; }
.insight-list p { color: var(--muted); font-size: 12px; }
.insight-icon { flex: 0 0 auto; width: 30px; height: 30px; display: grid; place-items: center; border-radius: 9px; font-size: 11px; font-weight: 900; }
.insight-icon.green { background: #e5f6f0; color: #078364; }.insight-icon.orange { background: #fdf0e2; color: #b9681b; }.insight-icon.blue { background: #e9f1fb; color: #3f72b7; }
.performance-number { margin: 28px 0 16px; }
.performance-number span { display: block; font-size: 31px; font-weight: 850; letter-spacing: -.03em; }
.performance-number small { color: var(--muted); }
.progress-track { height: 8px; overflow: hidden; border-radius: 99px; background: #edf1ef; }
.progress-track span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--green), #4fc7a7); }
.performance-meta { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 22px; }
.performance-meta div { padding-right: 8px; border-right: 1px solid var(--line); }
.performance-meta div:last-child { border-right: 0; }
.performance-meta span, .performance-meta strong { display: block; }
.performance-meta span { color: var(--muted); font-size: 11px; }
.performance-meta strong { margin-top: 3px; font-size: 13px; }
.demo-guide { display: flex; align-items: flex-start; gap: 13px; margin-top: 15px; padding: 15px 18px; border: 1px solid #d8e9e3; border-radius: 12px; background: #f5fbf9; color: var(--muted); font-size: 12px; }
.demo-guide > span { flex: 0 0 auto; padding: 3px 8px; border-radius: 6px; background: var(--green); color: #fff; font-size: 10px; font-weight: 800; }
.state-pill { display: inline-flex; align-items: center; padding: 4px 9px; border-radius: 999px; font-size: 11px; font-weight: 800; white-space: nowrap; }
.state-pill.positive { background: #e4f5ef; color: #08795e; }
.state-pill.neutral { background: #edf2f5; color: #51626c; }
.state-pill.warning { background: #fff0df; color: #aa6018; }
#demo-state.loading { background: #fff1d7; color: #865a08; }
#demo-state.ready { background: #dff4ed; color: #08785d; }

.project-selector { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 16px; padding: 17px 20px; border: 1px solid #d8e8e2; border-radius: 13px; background: #f5fbf9; }
.project-selector label { width: min(520px, 100%); }
.project-selector span { color: var(--muted); font-size: 11px; }
.workspace-grid { display: grid; gap: 16px; }
.inline-create { border-top: 1px solid var(--line); background: #fcfdfd; }
.inline-create form { border-top: 1px solid var(--line); }
.task-panel table { min-width: 900px; }
.cost-grid article, .status-grid article { padding: 20px; }
.cost-grid article span, .cost-grid article small, .status-grid article span, .status-grid article small { display: block; color: var(--muted); font-size: 11px; }
.cost-grid article strong, .status-grid article strong { display: block; margin: 8px 0 4px; font-size: 20px; }
.system-section { margin-top: 52px; }
.system-section > details { border: 1px solid var(--line); border-radius: 13px; background: #fff; }
.system-section .status-grid { padding: 0 18px 18px; }
.status-grid article { box-shadow: none; }

.scope-panel { margin-top: 16px; padding: 23px; border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: 0 4px 18px rgba(30,55,48,.04); }
.scope-grid { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 9px; }
.scope-grid a { min-height: 116px; padding: 15px; border: 1px solid var(--line); border-radius: 12px; color: var(--ink); text-decoration: none; transition: .18s ease; }
.scope-grid a:hover { border-color: #9ed5c5; background: #f7fcfa; transform: translateY(-2px); }
.scope-grid span, .scope-grid strong, .scope-grid small { display: block; }
.scope-grid span { color: var(--green); font-size: 10px; font-weight: 900; }
.scope-grid strong { margin: 8px 0 4px; font-size: 13px; }
.scope-grid small { color: var(--muted); font-size: 10px; line-height: 1.5; }

.compact-metrics { margin-bottom: 16px; }
.compact-metrics article { padding: 20px; }
.compact-metrics span, .compact-metrics small { display: block; color: var(--muted); font-size: 11px; }
.compact-metrics strong { display: block; margin: 7px 0 3px; font-size: 22px; }
.content-grid { display: grid; gap: 16px; }
.content-grid.two-thirds { grid-template-columns: minmax(0,1.55fr) minmax(300px,.65fr); }
.content-grid.half { grid-template-columns: minmax(0,1.25fr) minmax(310px,.75fr); margin-bottom: 16px; }
.content-grid.thirds { grid-template-columns: repeat(3,minmax(0,1fr)); margin-bottom: 16px; }
.client-wait-card, .mobile-action-card, .health-card, .budget-card, .cashflow-chart, .forecast-cards article, .assistant-card, .ai-daily, .role-matrix { padding: 22px; border: 1px solid var(--line); border-radius: 15px; background: #fff; box-shadow: 0 4px 18px rgba(30,55,48,.04); }
.client-wait-card > p { color: var(--muted); font-size: 12px; }
.wait-timeline { display: grid; grid-template-columns: repeat(3,1fr); gap: 5px; margin: 24px 0; }
.wait-timeline span { position: relative; padding-top: 13px; border-top: 4px solid #dfe6e3; color: var(--muted); font-size: 12px; font-weight: 800; }
.wait-timeline span.done { border-color: var(--green); color: var(--green-dark); }
.wait-timeline small { display: block; font-weight: 500; }
.date-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin-bottom: 18px; }
.date-comparison div { padding: 11px; border-radius: 9px; background: #f5f7f6; }
.date-comparison span, .date-comparison strong { display: block; }
.date-comparison span { color: var(--muted); font-size: 10px; }.date-comparison strong { margin-top: 2px; font-size: 13px; }

.delivery-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 16px; margin-bottom: 16px; }
.health-card { display: grid; grid-template-columns: 120px 1fr; gap: 22px; align-items: center; }
.health-score { width: 116px; height: 116px; display: flex; align-items: center; justify-content: center; flex-direction: column; border: 10px solid #f2c87a; border-radius: 50%; }
.health-score span, .health-score small { color: var(--muted); font-size: 9px; }.health-score strong { font-size: 31px; line-height: 1.1; }.health-score small { color: #a86811; font-weight: 800; }
.health-bars { display: grid; gap: 10px; }
.health-bars div { display: grid; grid-template-columns: 42px 1fr 25px; align-items: center; gap: 9px; font-size: 11px; }
progress { width: 100%; height: 7px; border: 0; border-radius: 99px; overflow: hidden; background: #edf1ef; } progress::-webkit-progress-bar { background: #edf1ef; } progress::-webkit-progress-value { background: var(--green); }
.budget-axis { display: grid; grid-template-columns: 80px 1fr 160px; gap: 12px; align-items: center; margin-top: 15px; font-size: 11px; }
.budget-axis > div { height: 8px; overflow: hidden; border-radius: 99px; background: #edf1ef; }.budget-axis i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg,var(--green),#5bd0ae); }
.budget-axis strong { text-align: right; }

.people-list { padding: 4px 20px 12px; }
.people-list > div { display: grid; grid-template-columns: 38px 1fr auto; gap: 11px; align-items: center; padding: 12px 0; border-bottom: 1px solid var(--line); }
.people-list > div:last-child { border-bottom: 0; }.people-list .avatar { width: 38px; height: 38px; }.people-list strong, .people-list small { display: block; }.people-list small { color: var(--muted); }
.mobile-action-card { color: #fff; background: linear-gradient(145deg,#12372f,#0c6652); }
.mobile-action-card .section-kicker, .mobile-action-card p, .mobile-action-card small { color: #9bd9c8; }.mobile-action-card h3 { margin-top: 5px; }.clock { margin: 24px 0 5px; font-size: 45px; font-weight: 850; letter-spacing: -.04em; }.location-ok { margin-bottom: 20px; color: #bce8dc; font-size: 11px; }.mobile-action-card > button { width: 100%; background: #fff; color: var(--green-dark); }.attendance-row { margin-top: 20px; padding-top: 15px; border-top: 1px solid rgba(255,255,255,.13); }.attendance-row span, .attendance-row strong, .attendance-row small { display: block; }.attendance-row span, .attendance-row small { color: #a7d8ca; font-size: 10px; }.attendance-row strong { margin: 4px 0; font-size: 14px; }

.legend { display: flex; gap: 7px; align-items: center; color: var(--muted); font-size: 10px; }.legend span { width: 9px; height: 9px; border-radius: 3px; }.legend .green { background:#cceee4; }.legend .yellow { background:#fae1a4; }.legend .red { background:#f3aaa4; }
.capacity-panel { overflow-x: auto; padding: 18px; border: 1px solid var(--line); border-radius: 15px; background: #fff; }
.capacity-header, .capacity-row { min-width: 880px; display: grid; grid-template-columns: 160px repeat(8,1fr); gap: 7px; align-items: center; }
.capacity-header { margin-bottom: 7px; color: var(--muted); font-size: 10px; text-align: center; }.capacity-header span:first-child { text-align: left; }
.capacity-row { padding: 7px 0; border-top: 1px solid #f0f2f1; }.capacity-row strong small { display: block; color: var(--muted); font-size: 9px; font-weight: 500; }.capacity-row i { padding: 9px 3px; border-radius: 6px; background: #dff3ed; color: #24745f; font-size: 10px; font-style: normal; font-weight: 800; text-align: center; }.capacity-row i[data-load^="7"], .capacity-row i[data-load^="8"], .capacity-row i[data-load^="9"] { background: #fcedc5; color: #926514; }.capacity-row i[data-load^="10"], .capacity-row i[data-load^="11"] { background: #f8d5d2; color: #a4443c; }
.decision-strip { display: grid; grid-template-columns: 1.4fr repeat(3,.72fr) auto; gap: 14px; align-items: center; margin-top: 15px; padding: 16px; border: 1px solid #f0d9b7; border-radius: 13px; background: #fffaf2; }.decision-strip > div { min-width: 0; }.decision-strip > div:first-child { display:flex; gap:10px; }.decision-strip span, .decision-strip strong, .decision-strip small { display: block; }.decision-strip > div > span, .decision-strip small { color: var(--muted); font-size: 10px; }.decision-strip strong { font-size: 12px; }

.finance-tabs, .scenario-controls { display: flex; gap: 7px; margin-bottom: 14px; overflow-x: auto; }.finance-tabs button, .scenario-controls button { flex: 0 0 auto; border: 1px solid var(--line); background: #fff; color: var(--muted); }.finance-tabs button.active, .scenario-controls button.active { border-color: var(--green); background: var(--green-soft); color: var(--green-dark); }.action-complete { box-shadow: 0 0 0 3px rgba(0,143,109,.13); }
.finance-pane[hidden] { display: none; }
.receipt-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 14px; padding: 20px; }.receipt-grid article { display: grid; grid-template-columns: 96px 1fr; gap: 13px; padding: 14px; border: 1px solid var(--line); border-radius: 12px; }.receipt-grid article > button { grid-column: 1/-1; }.receipt-preview { display:grid; place-items:center; min-height:90px; padding:8px; border:1px dashed #aebcb7; border-radius:7px; background:#f8faf9; font-size:9px; text-align:center; transform:rotate(-1deg); }.receipt-preview.low { filter:blur(.25px); }.receipt-preview strong { display:block; font-size:13px; }.receipt-grid article > div:nth-child(2) strong, .receipt-grid article > div:nth-child(2) span, .receipt-grid article > div:nth-child(2) small { display:block; }.receipt-grid article > div:nth-child(2) span { margin:6px 0; color:var(--green-dark); font-size:10px; }.receipt-grid article > div:nth-child(2) small { color:var(--muted); font-size:9px; }

.cashflow-layout { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr); gap:16px; }.cashflow-chart { padding-bottom:8px; }.chart-head { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; }.chart-head span,.chart-head strong { display:block; }.chart-head > div:first-child span { color:var(--muted); font-size:11px; }.chart-head > div:first-child strong { margin-top:3px; font-size:25px; }.chart-legend { display:flex; gap:13px; color:var(--muted); font-size:10px; }.chart-legend span::before { content:""; display:inline-block; width:12px; height:3px; margin-right:5px; vertical-align:middle; }.chart-legend .confirmed::before { background:#64748b; }.chart-legend .probability::before { background:#32a686; }.chart-legend .scenario::before { background:#7562ce; }.cashflow-chart svg { width:100%; height:auto; margin-top:10px; }.grid-lines line { stroke:#e9eeec; stroke-width:1; }.line { fill:none; stroke-width:4; stroke-linecap:round; stroke-linejoin:round; }.confirmed-line { stroke:#64748b; }.probability-line { stroke:#32a686; }.scenario-line { stroke:#7562ce; }.axis-labels text { fill:#7b8985; font-size:10px; }
.forecast-cards { display:grid; gap:12px; }.forecast-cards article span,.forecast-cards article strong,.forecast-cards article small { display:block; }.forecast-cards article span,.forecast-cards article small { color:var(--muted); font-size:10px; }.forecast-cards article strong { margin:6px 0 2px; font-size:20px; }.forecast-cards .risk-card { border-color:#efd5b5; background:#fffaf4; }.risk-card button { margin-top:13px; width:100%; }
.kpi-strip { display:grid; grid-template-columns:repeat(5,1fr); margin-top:16px; border:1px solid var(--line); border-radius:14px; background:#fff; overflow:hidden; }.kpi-strip div { padding:18px; border-right:1px solid var(--line); }.kpi-strip div:last-child { border-right:0; }.kpi-strip span,.kpi-strip strong,.kpi-strip small { display:block; }.kpi-strip span,.kpi-strip small { color:var(--muted); font-size:10px; }.kpi-strip strong { margin:5px 0 2px; font-size:16px; }

.global-search { display:grid; grid-template-columns:auto 1fr auto; gap:10px; align-items:center; margin-bottom:16px; padding:12px 15px; border:1px solid #bcded3; border-radius:13px; background:#fff; box-shadow:0 4px 18px rgba(30,55,48,.04); }.global-search > span { padding:5px 7px; border:1px solid var(--line); border-radius:6px; color:var(--muted); font-size:9px; }.global-search input { min-height:32px; margin:0; border:0; box-shadow:none; }.global-search small { color:var(--muted); font-size:10px; }
.document-layout { display:grid; grid-template-columns:205px 1fr; gap:16px; }.document-filter { position:static; height:auto; display:flex; flex-direction:column; gap:5px; padding:16px; border:1px solid var(--line); border-radius:14px; background:#fff; color:var(--ink); }.document-filter > strong { margin:0 7px 7px; font-size:12px; }.document-filter button { display:flex; justify-content:space-between; min-height:37px; padding:8px 10px; background:transparent; color:var(--muted); font-weight:650; text-align:left; }.document-filter button:hover,.document-filter button.active { background:var(--green-soft); color:var(--green-dark); transform:none; }.file-meta { display:block; margin-top:2px; color:var(--muted); font-size:9px; font-weight:400; }

.ai-insights-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:16px; }.ai-alert { display:grid; grid-template-columns:32px 1fr auto; gap:11px; align-items:center; padding:13px 0; border-top:1px solid var(--line); }.ai-alert > span { width:28px; height:28px; display:grid; place-items:center; border-radius:8px; font-size:9px; font-weight:900; }.ai-alert.critical > span { background:#f8d8d5; color:#a73f37; }.ai-alert.warning > span { background:#ffedc6; color:#97600c; }.ai-alert.info > span { background:#dcecfb; color:#3b6d9f; }.ai-alert p { color:var(--muted); font-size:10px; }.ai-alert button { min-height:32px; padding:6px 10px; font-size:10px; }
.assistant-card { display:flex; flex-direction:column; padding:0; overflow:hidden; }.assistant-head { display:grid; grid-template-columns:38px 1fr auto; gap:10px; align-items:center; padding:16px 18px; border-bottom:1px solid var(--line); }.assistant-head strong,.assistant-head small { display:block; }.assistant-head small { color:var(--muted); font-size:9px; }.ai-avatar { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:linear-gradient(145deg,#128568,#6655b5); color:#fff; font-weight:900; }.chat-thread { flex:1; min-height:270px; padding:18px; background:#f8faf9; }.chat { width:fit-content; max-width:88%; margin-bottom:12px; padding:10px 12px; border-radius:12px; font-size:11px; }.chat.user { margin-left:auto; border-bottom-right-radius:3px; background:var(--green); color:#fff; }.chat.assistant { border:1px solid var(--line); border-bottom-left-radius:3px; background:#fff; }.source-list { display:flex; flex-wrap:wrap; gap:5px; margin-top:9px; }.source-list span { padding:3px 6px; border-radius:5px; background:#eef4f1; color:var(--muted); font-size:8px; }.chat-form { display:grid; grid-template-columns:1fr auto; gap:8px; padding:12px; border-top:1px solid var(--line); }.chat-form input { margin:0; }.chat-form button { margin:0; }
.meeting-panel { display:grid; grid-template-columns:.65fr 1.35fr; gap:25px; margin-top:16px; padding:22px; border:1px solid var(--line); border-radius:15px; background:#fff; }.meeting-summary > p { color:var(--muted); font-size:11px; }.transcript-tags { display:flex; flex-wrap:wrap; gap:5px; margin-top:14px; }.transcript-tags span { padding:4px 7px; border-radius:6px; background:var(--green-soft); color:var(--green-dark); font-size:9px; }.action-items { display:grid; gap:9px; }.action-items label { padding:9px; border:1px solid var(--line); border-radius:8px; background:#fbfcfc; }.action-items input { display:inline-block; width:auto; min-height:auto; margin:0 7px 0 0; }

.integration-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }.integration-grid article { display:grid; grid-template-columns:42px 1fr auto; gap:11px; padding:20px; border:1px solid var(--line); border-radius:14px; background:#fff; }.integration-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:12px; color:#fff; font-weight:900; }.integration-icon.line { background:#19b85a; }.integration-icon.finance { background:#425d80; }.integration-icon.invoice { background:#ad7135; }.integration-icon.mail { background:#557eb7; }.integration-icon.storage { background:#7562b7; }.integration-grid article > div:nth-child(2) strong,.integration-grid article > div:nth-child(2) span { display:block; }.integration-grid article > div:nth-child(2) span { color:var(--muted); font-size:9px; }.integration-grid ul { grid-column:1/-1; margin:5px 0 0; padding-left:18px; color:var(--muted); font-size:10px; }.integration-grid li { margin:0; padding:2px; border:0; background:transparent; }.integration-grid article > button { grid-column:1/-1; }

.governance-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.approval-list { padding:0 20px 10px; }.approval-list > div { display:grid; grid-template-columns:34px 1fr auto; gap:10px; align-items:center; padding:13px 0; border-bottom:1px solid var(--line); }.approval-type { width:32px; height:32px; display:grid; place-items:center; border-radius:9px; background:var(--green-soft); color:var(--green-dark); font-size:10px; font-weight:900; }.approval-list strong,.approval-list small { display:block; }.approval-list small { color:var(--muted); font-size:9px; }.approval-list button { min-height:31px; padding:5px 10px; font-size:10px; }
.matrix-row { display:grid; grid-template-columns:1.25fr repeat(4,.8fr); gap:5px; padding:10px 6px; border-top:1px solid var(--line); font-size:10px; }.matrix-row.header { border-top:0; background:#f7f9f8; color:var(--muted); font-weight:800; }.matrix-row span:not(:first-child) { text-align:center; }
.audit-panel { margin-top:16px; border:1px solid var(--line); border-radius:15px; background:#fff; }.audit-timeline { padding:4px 22px 17px; }.audit-timeline > div { display:grid; grid-template-columns:42px 10px 1fr; gap:11px; align-items:start; padding:12px 0; }.audit-timeline time { color:var(--muted); font-size:9px; text-align:right; }.audit-timeline > div > span { width:8px; height:8px; margin-top:4px; border:2px solid #fff; border-radius:50%; background:var(--green); box-shadow:0 0 0 2px #b8ded3; }.audit-timeline strong,.audit-timeline small { display:block; }.audit-timeline small { color:var(--muted); font-size:9px; }

@media (max-width: 1280px) { .scope-grid { grid-template-columns:repeat(4,1fr); }.integration-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width: 1080px) { .overview-panels,.content-grid.two-thirds,.content-grid.half,.content-grid.thirds,.delivery-layout,.cashflow-layout,.ai-insights-grid,.governance-grid { grid-template-columns: 1fr; }.receipt-grid { grid-template-columns:1fr 1fr; }.decision-strip { grid-template-columns:1fr 1fr; }.decision-strip > div:first-child { grid-column:1/-1; }.kpi-strip { grid-template-columns:repeat(3,1fr); } }
@media (max-width: 680px) {
  .overview-panels { grid-template-columns: 1fr; }
  .performance-meta { grid-template-columns: 1fr; }
  .performance-meta div { padding: 5px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .project-selector { align-items: flex-start; flex-direction: column; }
  .scope-grid,.receipt-grid,.integration-grid,.kpi-strip { grid-template-columns:1fr; }
  .health-card { grid-template-columns:1fr; }.health-score { margin:auto; }
  .budget-axis { grid-template-columns:1fr; }.budget-axis strong { text-align:left; }
  .decision-strip { grid-template-columns:1fr; }.decision-strip > div:first-child { grid-column:auto; }
  .document-layout { grid-template-columns:1fr; }.document-filter { display:grid; grid-template-columns:1fr 1fr; }.document-filter > strong { grid-column:1/-1; }
  .global-search { grid-template-columns:auto 1fr; }.global-search small { grid-column:1/-1; }
  .meeting-panel { grid-template-columns:1fr; }.ai-alert { grid-template-columns:28px 1fr; }.ai-alert button { grid-column:2; }
  .matrix-row { grid-template-columns:1.2fr repeat(4,.8fr); font-size:8px; }
}

/* Autonomous accounting center */
.accounting-center { background:linear-gradient(180deg,#f7fbf9 0,#fff 260px); }
.accounting-principles { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin:14px 0; }
.accounting-principles span { padding:12px; border:1px solid #dbe8e3; border-radius:10px; background:#fff; color:var(--muted); font-size:8px; }
.accounting-principles b { display:block; margin-bottom:3px; color:var(--green-dark); font-size:10px; }
.accounting-tabs { display:flex; gap:5px; margin:18px 0 12px; padding:5px; overflow-x:auto; border:1px solid var(--line); border-radius:11px; background:#fff; }
.accounting-tabs button { flex:0 0 auto; min-height:34px; padding:7px 11px; background:transparent; color:var(--muted); font-size:8px; }
.accounting-tabs button:hover,.accounting-tabs button.active { background:var(--green-soft); color:var(--green-dark); transform:none; }
.accounting-pane[hidden] { display:none; }
.accounting-phase-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.accounting-phase-grid article { min-height:155px; padding:17px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.accounting-phase-grid article.phase-live { border-color:#9ac9b9; box-shadow:inset 0 3px 0 var(--green); }
.accounting-phase-grid span { color:var(--green); font-size:8px; font-weight:900; letter-spacing:.08em; }
.accounting-phase-grid h3 { margin:8px 0; font-size:13px; }
.accounting-phase-grid p { min-height:48px; color:var(--muted); font-size:8px; line-height:1.65; }
.accounting-phase-grid strong { display:inline-block; margin-top:10px; padding:4px 7px; border-radius:99px; background:#edf5f2; color:#4c6e63; font-size:7px; }
.accounting-flow { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:12px; padding:17px; border-radius:12px; background:#14211e; color:#fff; }
.accounting-flow div { flex:1; display:grid; grid-template-columns:28px 1fr; align-items:center; column-gap:8px; }
.accounting-flow b { grid-row:1/3; width:28px; height:28px; display:grid; place-items:center; border-radius:50%; background:var(--green); }
.accounting-flow span { font-size:9px; font-weight:800; }.accounting-flow small { color:#9eb2ac; font-size:7px; }.accounting-flow i { color:#6b827b; font-style:normal; }
.accounting-workbench { display:grid; grid-template-columns:1fr 230px; gap:12px; margin-bottom:12px; }
.accounting-form,.workflow-reference { padding:18px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.form-heading { display:flex; justify-content:space-between; gap:12px; align-items:start; margin-bottom:12px; }
.accounting-form .form-grid { grid-template-columns:repeat(3,1fr); }.accounting-form .form-grid .wide { grid-column:span 2; }
.form-actions { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:12px; }.form-actions p { color:var(--muted); font-size:8px; }
.workflow-reference ol { display:grid; gap:5px; margin:12px 0; padding-left:22px; }.workflow-reference li { padding:5px 8px; border-radius:6px; background:#f3f7f5; font-size:8px; }.workflow-reference p { color:var(--muted); font-size:8px; line-height:1.6; }
.master-health-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:9px; }.master-health-grid article { padding:16px; border:1px solid var(--line); border-radius:11px; background:#fff; }.master-health-grid span,.master-health-grid small { display:block; color:var(--muted); font-size:8px; }.master-health-grid strong { display:block; margin:5px 0; color:var(--green-dark); font-size:24px; }
.master-detail-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:10px; }.master-detail-grid article { padding:18px; border:1px solid var(--line); border-radius:12px; background:#fff; }.master-detail-grid p { margin:8px 0 12px; color:var(--muted); font-size:8px; }
.tag-list { display:flex; flex-wrap:wrap; gap:5px; }.tag-list span { padding:4px 7px; border-radius:99px; background:#edf5f2; color:#496a60; font-size:7px; }
.future-module { display:grid; grid-template-columns:70px 1.2fr 1fr; gap:18px; align-items:center; padding:28px; border:1px solid var(--line); border-radius:14px; background:#fff; }.future-module > span { width:62px; height:62px; display:grid; place-items:center; border-radius:18px; background:#14211e; color:#fff; font-size:18px; font-weight:900; }.future-module p,.future-module li { color:var(--muted); font-size:9px; line-height:1.7; }.future-module ul { margin:0; padding-left:18px; }
.billing-workbench { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:12px 0; }
.billing-workbench .accounting-form { min-width:0; }.billing-workbench .form-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.billing-health-grid strong { font-size:20px; }.billing-workbench select { max-width:100%; }
.payment-source-select { min-height:150px; line-height:1.5; }
.payment-source-select option { padding:7px 8px; border-bottom:1px solid #edf2f0; }
#petty-cash-calendar { margin-top:12px; padding:0 18px 18px; }
.treasury-transfer-form { margin:12px 0; }.treasury-transfer-form .form-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.report-basis { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px; padding:16px 18px; border:1px solid var(--line); border-radius:12px; background:#fff; }.report-basis p { color:var(--muted); font-size:8px; }.report-basis-note { display:flex; gap:12px; margin-top:10px; padding:14px 16px; border-radius:10px; background:#14211e; color:#dbe9e4; font-size:8px; line-height:1.6; }.report-basis-note strong { flex:0 0 auto; color:#fff; }
@media (max-width:1080px) { .accounting-principles,.master-health-grid { grid-template-columns:repeat(2,1fr); }.accounting-phase-grid { grid-template-columns:repeat(2,1fr); }.accounting-workbench,.billing-workbench { grid-template-columns:1fr; } }
@media (max-width:680px) { .accounting-principles,.accounting-phase-grid,.master-health-grid,.master-detail-grid { grid-template-columns:1fr; }.accounting-flow { align-items:stretch; flex-direction:column; }.accounting-flow i { transform:rotate(90deg); align-self:center; }.accounting-form .form-grid,.treasury-transfer-form .form-grid { grid-template-columns:1fr; }.accounting-form .form-grid .wide { grid-column:auto; }.future-module { grid-template-columns:1fr; }.future-module > span { width:48px; height:48px; border-radius:12px; }.form-actions { align-items:stretch; flex-direction:column; } }

/* Master Specification V2.0 full product scope */
.scope-summary-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:16px; }
.scope-summary-grid article { padding:20px; border:1px solid var(--line); border-radius:14px; background:#fff; }
.scope-summary-grid strong,.scope-summary-grid span,.scope-summary-grid small { display:block; }.scope-summary-grid strong { color:var(--green-dark); font-size:30px; }.scope-summary-grid span { font-weight:800; }.scope-summary-grid small { color:var(--muted); font-size:10px; }
.feature-catalog { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.feature-catalog details { border:1px solid var(--line); border-radius:14px; background:#fff; overflow:hidden; }
.feature-catalog summary { display:grid; grid-template-columns:34px 1fr auto; gap:10px; align-items:center; padding:15px 17px; cursor:pointer; list-style:none; }.feature-catalog summary::-webkit-details-marker { display:none; }.feature-catalog summary > span { width:30px; height:30px; display:grid; place-items:center; border-radius:8px; background:var(--green-soft); color:var(--green-dark); font-size:10px; font-weight:900; }.feature-catalog summary small { color:var(--muted); font-size:9px; }.feature-list { display:grid; grid-template-columns:repeat(2,1fr); gap:6px; padding:0 14px 14px; }.feature-list a { padding:8px 9px; border-radius:7px; background:#f8faf9; color:#4b5b56; font-size:10px; text-decoration:none; }.feature-list a:hover { background:var(--green-soft); color:var(--green-dark); }.feature-list b { margin-right:5px; color:var(--green); }
.screen-directory { margin-top:16px; padding:20px; border:1px solid var(--line); border-radius:15px; background:#fff; }.screen-grid { display:grid; grid-template-columns:repeat(5,1fr); gap:8px; }.screen-grid a { display:grid; grid-template-columns:27px 1fr; gap:7px; padding:10px; border:1px solid var(--line); border-radius:9px; color:var(--ink); text-decoration:none; }.screen-grid a:hover { border-color:#afd9cd; background:var(--green-soft); }.screen-grid b { grid-row:1/3; width:25px; height:25px; display:grid; place-items:center; border-radius:6px; background:#edf4f1; color:var(--green-dark); font-size:9px; }.screen-grid span { font-size:11px; font-weight:800; }.screen-grid small { color:var(--muted); font-size:8px; }

.today-layout { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr); gap:16px; }.today-identity { grid-column:1/-1; display:grid; grid-template-columns:1fr auto; gap:20px; align-items:center; padding:22px; border:1px solid var(--line); border-radius:15px; background:linear-gradient(120deg,#f0faf6,#fff); }.today-person { display:flex; gap:14px; align-items:center; }.avatar.large { width:58px; height:58px; font-size:18px; }.today-person span,.today-person strong,.today-person small,.today-clock span,.today-clock strong,.today-clock small { display:block; }.today-person strong { font-size:20px; }.today-person small,.today-clock span,.today-clock small { color:var(--muted); font-size:10px; }.today-clock { display:grid; grid-template-columns:1fr auto; column-gap:16px; align-items:center; }.today-clock button { grid-column:2; grid-row:1/4; }.today-column { display:grid; grid-template-columns:1fr 1fr; gap:16px; }.today-card,.today-sidebar article { padding:19px; border:1px solid var(--line); border-radius:14px; background:#fff; }.today-task,.mini-approval { display:grid; grid-template-columns:auto 1fr auto; gap:9px; align-items:center; padding:11px 0; border-top:1px solid var(--line); }.priority { display:grid; place-items:center; width:25px; height:25px; border-radius:6px; font-size:8px; font-weight:900; }.priority.high { background:#f8d8d5; color:#a73f37; }.priority.normal { background:#ffedc6; color:#97600c; }.priority.low { background:#dcecfb; color:#3b6d9f; }.today-task strong,.today-task small,.mini-approval strong,.mini-approval small { display:block; }.today-task small,.mini-approval small { color:var(--muted); font-size:9px; }.today-task button,.mini-approval button { min-height:30px; padding:5px 9px; font-size:9px; }.mini-approval > span { width:26px; height:26px; display:grid; place-items:center; border-radius:7px; background:var(--green-soft); color:var(--green-dark); font-weight:900; }.today-sidebar { display:grid; gap:12px; }.today-sidebar strong,.today-sidebar p { display:block; }.today-sidebar p { margin:4px 0 12px; color:var(--muted); font-size:10px; }.today-sidebar button { width:100%; }.today-sidebar a { color:var(--green-dark); font-size:10px; font-weight:800; text-decoration:none; }

.entity-header { display:grid; grid-template-columns:62px 1fr auto; gap:16px; align-items:center; padding:20px; border:1px solid var(--line); border-radius:15px 15px 0 0; background:#fff; }.entity-logo { width:58px; height:58px; display:grid; place-items:center; border-radius:15px; background:#dff4ed; color:var(--green-dark); font-size:20px; font-weight:900; }.entity-header h3 { margin-top:5px; font-size:21px; }.entity-header p { color:var(--muted); font-size:10px; }.entity-actions { display:flex; gap:8px; }.detail-tabs { display:flex; gap:3px; padding:9px 15px; border:1px solid var(--line); border-top:0; background:#fff; overflow-x:auto; }.detail-tabs button { flex:0 0 auto; min-height:32px; padding:6px 11px; background:transparent; color:var(--muted); font-size:10px; }.detail-tabs button.active,.detail-tabs button:hover { background:var(--green-soft); color:var(--green-dark); transform:none; }.client-360-grid { display:grid; grid-template-columns:.7fr 1.3fr 1.3fr .7fr; gap:14px; margin-top:14px; }.client-360-grid article { padding:18px; border:1px solid var(--line); border-radius:14px; background:#fff; }.data-list { margin-top:10px; }.data-list > div { display:flex; justify-content:space-between; gap:10px; padding:8px 0; border-top:1px solid var(--line); font-size:10px; }.data-list span { color:var(--muted); }.text-positive { color:var(--green-dark); }.text-warning { color:#a86811; }.client-kpis { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-top:10px; }.client-kpis div { padding:12px; border-radius:9px; background:#f7faf9; }.client-kpis strong,.client-kpis span { display:block; }.client-kpis strong { font-size:17px; }.client-kpis span { color:var(--muted); font-size:9px; }.mini-timeline > div { display:grid; grid-template-columns:70px 1fr; gap:10px; padding:9px 0; border-top:1px solid var(--line); }.mini-timeline time { color:var(--muted); font-size:9px; }.mini-timeline strong,.mini-timeline small { display:block; }.mini-timeline small { color:var(--muted); font-size:8px; }.balance-big { padding:16px 0; }.balance-big strong,.balance-big span { display:block; }.balance-big strong { font-size:21px; }.balance-big span { color:var(--muted); font-size:9px; }

.pipeline-summary { display:grid; grid-template-columns:repeat(4,1fr) 180px; gap:8px; margin-bottom:12px; }.pipeline-summary > div,.pipeline-summary label { padding:12px; border:1px solid var(--line); border-radius:10px; background:#fff; }.pipeline-summary span,.pipeline-summary strong { display:block; }.pipeline-summary span { color:var(--muted); font-size:9px; }.pipeline-summary strong { font-size:14px; }.pipeline-summary select { min-height:30px; margin:2px 0 0; padding:4px; }.kanban-board { display:grid; grid-template-columns:repeat(5,minmax(210px,1fr)); gap:10px; overflow-x:auto; padding-bottom:8px; }.kanban-column { padding:10px; border-radius:12px; background:#eef3f1; }.kanban-column > header { display:flex; justify-content:space-between; padding:5px 3px 10px; font-size:10px; }.kanban-column > header span { color:var(--muted); }.kanban-column article { margin-bottom:8px; padding:12px; border:1px solid var(--line); border-radius:9px; background:#fff; box-shadow:0 3px 10px rgba(30,55,48,.04); }.kanban-column article.selected { border-color:#83c7b4; box-shadow:0 0 0 2px rgba(0,143,109,.09); }.kanban-column h3 { margin:7px 0 4px; font-size:11px; }.kanban-column p { color:var(--muted); font-size:9px; }.kanban-column footer { display:flex; align-items:center; gap:7px; margin-top:10px; }.avatar.tiny { width:24px; height:24px; font-size:8px; }.company-chip { padding:3px 6px; border-radius:5px; background:var(--green-soft); color:var(--green-dark); font-size:8px; }.kanban-column footer small { color:var(--muted); font-size:8px; }.opportunity-detail-grid { display:grid; grid-template-columns:1fr 1fr 1fr; gap:14px; margin-top:14px; }.opportunity-detail-grid article { padding:18px; border:1px solid var(--line); border-radius:14px; background:#fff; }.opportunity-brief h4 { margin:15px 0 5px; }.opportunity-brief > p,.ai-summary-block p { color:var(--muted); font-size:10px; }.tag-row { display:flex; flex-wrap:wrap; gap:5px; margin-top:12px; }.tag-row span { padding:4px 7px; border-radius:5px; background:#eef4f1; color:#4c625b; font-size:8px; }.ai-summary-block { margin-top:10px; padding:10px; border-left:3px solid var(--green); background:#f7faf9; }.ai-summary-block.warning { border-color:#e0a844; background:#fffaf1; }.ai-summary-block strong { font-size:10px; }

.editor-status { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-bottom:12px; padding:14px 17px; border:1px solid var(--line); border-radius:12px; background:#fff; }.editor-status strong,.editor-status small { display:block; }.editor-status small { color:var(--muted); font-size:9px; }.version-switcher { display:flex; gap:6px; }.quotation-editor-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:16px; }.quotation-sheet { padding:26px; border:1px solid var(--line); border-radius:14px; background:#fff; }.sheet-header,.sheet-parties,.quote-footer { display:flex; justify-content:space-between; gap:24px; }.sheet-header { padding-bottom:20px; border-bottom:2px solid var(--ink); }.sheet-header div:last-child { text-align:right; }.sheet-header strong,.sheet-header span,.sheet-parties strong,.sheet-parties span,.sheet-parties small { display:block; }.sheet-header > div:first-child strong { font-size:20px; }.sheet-header span,.sheet-parties span,.sheet-parties small { color:var(--muted); font-size:9px; }.sheet-parties { margin:20px 0; }.quote-lines { border-top:1px solid var(--line); }.quote-line { display:grid; grid-template-columns:1fr 60px 95px 95px 42px; gap:8px; align-items:center; padding:12px 7px; border-bottom:1px solid var(--line); font-size:10px; }.quote-line.header { color:var(--muted); font-size:9px; font-weight:800; }.quote-line strong,.quote-line small { display:block; }.quote-line small { color:var(--muted); font-size:8px; }.quote-line button { min-height:28px; padding:4px 6px; font-size:8px; }.add-line { margin-top:10px; }.quote-footer { align-items:flex-start; margin-top:20px; }.quote-footer > div:first-child { max-width:55%; }.quote-footer p { margin-bottom:10px; font-size:9px; }.quote-footer span { color:var(--muted); font-size:9px; }.quote-totals { min-width:230px; }.quote-totals > div { display:flex; justify-content:space-between; gap:12px; padding:7px 0; border-bottom:1px solid var(--line); }.quote-totals .grand-total strong { color:var(--green-dark); font-size:18px; }.editor-sidebar { display:grid; gap:12px; }.editor-sidebar article { padding:17px; border:1px solid var(--line); border-radius:13px; background:#fff; }.margin-gauge { padding:15px 0; text-align:center; }.margin-gauge strong,.margin-gauge span { display:block; }.margin-gauge strong { color:var(--green-dark); font-size:29px; }.margin-gauge span { color:var(--muted); font-size:9px; }.approval-steps > div { display:grid; grid-template-columns:28px 1fr; gap:8px; padding:8px 0; }.approval-steps b { width:25px; height:25px; display:grid; place-items:center; border-radius:50%; background:#edf1ef; font-size:9px; }.approval-steps .done b { background:var(--green); color:#fff; }.approval-steps .current b { background:#f3c56d; color:#76500d; }.approval-steps strong,.approval-steps small { display:block; }.approval-steps small { color:var(--muted); font-size:8px; }

.project-hero { display:grid; grid-template-columns:1fr 120px auto; gap:22px; align-items:center; padding:22px; border:1px solid var(--line); border-radius:15px 15px 0 0; background:linear-gradient(120deg,#f3faf7,#fff); }.project-hero h3 { margin-top:6px; font-size:22px; }.project-hero p { color:var(--muted); font-size:10px; }.project-health-ring { width:105px; height:105px; display:grid; place-items:center; align-content:center; border:9px solid #f2c87a; border-radius:50%; }.project-health-ring strong { font-size:28px; line-height:1; }.project-health-ring span { margin-top:4px; color:var(--muted); font-size:8px; }.project-dates { min-width:235px; }.project-dates div { display:flex; justify-content:space-between; gap:10px; padding:6px 0; font-size:9px; }.project-dates span { color:var(--muted); }.project-control-grid { display:grid; grid-template-columns:1.2fr .8fr 1fr 1fr; gap:14px; margin-top:14px; }.project-control-grid article { padding:18px; border:1px solid var(--line); border-radius:14px; background:#fff; }.progress-track.large { height:10px; }.milestone-track { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; margin-top:18px; }.milestone-track div { display:grid; grid-template-columns:25px 1fr; gap:7px; }.milestone-track b { width:24px; height:24px; display:grid; place-items:center; border-radius:50%; background:#edf1ef; font-size:9px; }.milestone-track .done b { background:var(--green); color:#fff; }.milestone-track .current b { background:#f2c87a; color:#76500d; }.milestone-track span,.milestone-track small { display:block; font-size:9px; }.milestone-track small { color:var(--muted); font-size:8px; }.team-stack > div { display:grid; grid-template-columns:30px 1fr auto; gap:8px; align-items:center; padding:8px 0; border-top:1px solid var(--line); }.team-stack .avatar { width:30px; height:30px; font-size:9px; }.team-stack strong,.team-stack small { display:block; }.team-stack small { color:var(--muted); font-size:8px; }.risk-entry { display:grid; grid-template-columns:28px 1fr auto; gap:8px; align-items:center; padding:10px 0; border-top:1px solid var(--line); }.risk-entry > span { width:26px; height:26px; display:grid; place-items:center; border-radius:7px; font-size:8px; font-weight:900; }.risk-entry.high > span { background:#f8d8d5; color:#a73f37; }.risk-entry.medium > span { background:#ffedc6; color:#97600c; }.risk-entry strong,.risk-entry small { display:block; }.risk-entry small { color:var(--muted); font-size:8px; }.risk-entry button { min-height:28px; padding:4px 7px; font-size:8px; }

.task-drawer-demo { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(270px,.55fr); gap:16px; }.task-main,.task-context article { padding:20px; border:1px solid var(--line); border-radius:14px; background:#fff; }.task-title-row { display:flex; justify-content:space-between; gap:20px; }.task-title-row h3 { margin:8px 0 2px; font-size:21px; }.task-title-row p { color:var(--muted); font-size:9px; }.task-description { margin-top:18px; padding:15px; border-radius:10px; background:#f7faf9; }.task-description p { margin-top:5px; color:#53615d; font-size:10px; }.task-properties { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:14px; }.task-properties div { padding:10px; border:1px solid var(--line); border-radius:8px; }.task-properties span,.task-properties strong { display:block; }.task-properties > div > span { color:var(--muted); font-size:8px; }.task-properties strong { margin-top:2px; font-size:10px; }.subtask-block,.task-comments { margin-top:18px; padding-top:17px; border-top:1px solid var(--line); }.subtask-block > label { display:grid; grid-template-columns:auto 1fr auto; gap:8px; padding:9px 4px; border-top:1px solid #eff2f1; }.subtask-block input { width:auto; min-height:auto; margin:2px 0 0; }.subtask-block small { color:var(--muted); font-size:8px; }.comment { display:grid; grid-template-columns:32px 1fr; gap:9px; padding:10px 0; border-top:1px solid var(--line); font-size:10px; }.comment .avatar { width:32px; height:32px; font-size:9px; }.comment strong,.comment small { display:block; }.comment small { color:var(--muted); font-size:8px; font-weight:400; }.comment-form { display:grid; grid-template-columns:1fr auto; gap:8px; padding:10px 0 0; }.comment-form input,.comment-form button { margin:0; }.task-context { display:grid; gap:12px; align-content:start; }.timer-card { text-align:center; }.timer-card > strong { display:block; margin:10px 0 2px; font-size:27px; }.timer-card p { margin-bottom:12px; color:var(--muted); font-size:9px; }.timer-card button { width:100%; }.dependency,.attachment { display:grid; grid-template-columns:auto 1fr; gap:8px; padding:9px 0; border-top:1px solid var(--line); }.dependency strong,.dependency small,.attachment strong,.attachment small { display:block; }.dependency small,.attachment small { color:var(--muted); font-size:8px; }.attachment > span { width:31px; height:31px; display:grid; place-items:center; border-radius:7px; background:#edf4f1; color:var(--green-dark); font-size:7px; font-weight:900; }.status-history p { padding:8px 0; border-top:1px solid var(--line); }.status-history strong,.status-history small { display:block; }.status-history small { color:var(--muted); font-size:8px; }

.notification-layout { display:grid; grid-template-columns:180px minmax(0,1fr) 260px; gap:14px; }.notification-filter,.notification-preferences { padding:16px; border:1px solid var(--line); border-radius:14px; background:#fff; }.notification-filter > button { display:flex; justify-content:space-between; width:100%; min-height:35px; padding:7px 9px; background:transparent; color:var(--muted); text-align:left; }.notification-filter > button.active,.notification-filter > button:hover { background:var(--green-soft); color:var(--green-dark); transform:none; }.channel-health { margin-top:18px; padding-top:14px; border-top:1px solid var(--line); }.channel-health p { margin-top:7px; color:var(--muted); font-size:9px; }.health-dot { display:inline-block; width:7px; height:7px; margin-right:6px; border-radius:50%; }.health-dot.good { background:#32b383; }.health-dot.warning { background:#dda13a; }.notification-list { overflow:hidden; border:1px solid var(--line); border-radius:14px; background:#fff; }.notification-list article { display:grid; grid-template-columns:38px 1fr auto; gap:11px; align-items:center; padding:15px; border-bottom:1px solid var(--line); }.notification-list article:last-child { border-bottom:0; }.notification-list article.unread { background:#f7fcfa; }.notice-icon { width:36px; height:36px; display:grid; place-items:center; border-radius:10px; color:#fff; font-size:9px; font-weight:900; }.notice-icon.finance { background:#557eb7; }.notice-icon.project { background:#248e71; }.notice-icon.hr { background:#a06db8; }.notice-icon.task { background:#c27a36; }.notice-icon.system { background:#64748b; }.notification-list article > div > div { display:flex; justify-content:space-between; gap:12px; }.notification-list strong { font-size:11px; }.notification-list time,.notification-list p { color:var(--muted); font-size:8px; }.channel-tag { display:inline-block; margin-top:6px; padding:2px 5px; border-radius:4px; background:#edf4f1; color:#66766f; font-size:7px; }.notification-list button { min-height:29px; padding:5px 8px; font-size:8px; }.notification-preferences h3 { margin:3px 0 15px; }.preference-row { display:flex; justify-content:space-between; gap:9px; align-items:center; padding:11px 0; border-top:1px solid var(--line); }.preference-row strong,.preference-row small { display:block; }.preference-row strong { font-size:10px; }.preference-row small { color:var(--muted); font-size:8px; }.toggle { width:34px; height:20px; display:grid; place-items:center; border-radius:99px; background:#d7dedb; color:#fff; font-size:7px; font-weight:900; }.toggle.on { background:var(--green); }.notification-preferences > button { width:100%; margin-top:12px; }

.settings-layout { display:grid; grid-template-columns:200px 1fr; gap:14px; }.settings-nav { position:static; height:auto; display:flex; flex-direction:column; gap:4px; padding:14px; border:1px solid var(--line); border-radius:14px; background:#fff; color:var(--ink); }.settings-nav button { min-height:38px; background:transparent; color:var(--muted); text-align:left; }.settings-nav button.active,.settings-nav button:hover { background:var(--green-soft); color:var(--green-dark); transform:none; }.settings-content { min-width:0; }.settings-pane { padding:20px; border:1px solid var(--line); border-radius:14px; background:#fff; }.settings-pane[hidden] { display:none; }.settings-heading { display:flex; justify-content:space-between; gap:20px; align-items:flex-start; margin-bottom:16px; }.settings-heading p { color:var(--muted); font-size:9px; }.security-settings { display:grid; grid-template-columns:repeat(2,1fr); gap:9px; }.security-settings article { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:14px; border:1px solid var(--line); border-radius:10px; }.security-settings strong,.security-settings p { display:block; }.security-settings p { margin-top:3px; color:var(--muted); font-size:8px; }.login-preview { display:grid; grid-template-columns:.65fr 1fr .8fr; gap:14px; align-items:center; margin-top:16px; padding:20px; border-radius:13px; background:#14211e; color:#fff; }.login-brand { text-align:center; }.login-brand .brand-mark { margin:0 auto 8px; }.login-brand strong,.login-brand small { display:block; }.login-brand small { color:#8ea39d; font-size:8px; }.login-card { padding:18px; border-radius:12px; background:#fff; color:var(--ink); }.login-card > p,.login-card > span { color:var(--muted); font-size:8px; }.login-card label { margin-top:8px; }.login-card input { min-height:35px; }.login-card button { width:100%; margin:10px 0 8px; }.mfa-preview { text-align:center; }.mfa-preview > div { display:flex; justify-content:center; gap:4px; margin:13px 0; }.mfa-preview b { width:29px; height:35px; display:grid; place-items:center; border-radius:6px; background:#fff; color:var(--ink); }.mfa-preview p { color:#94aaa4; font-size:8px; }.full-role-matrix .matrix-row { grid-template-columns:1.3fr repeat(5,1fr); }.setting-form-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }.rule-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }.rule-grid article { display:grid; grid-template-columns:1fr auto; gap:5px; padding:16px; border:1px solid var(--line); border-radius:10px; }.rule-grid p { grid-column:1; color:var(--muted); font-size:9px; }.rule-grid .state-pill { grid-column:2; grid-row:1/3; align-self:center; }

@media (max-width: 1280px) {
  .screen-grid { grid-template-columns:repeat(4,1fr); }
  .client-360-grid,.project-control-grid { grid-template-columns:repeat(2,1fr); }
  .pipeline-summary { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 1080px) {
  .feature-catalog,.today-column,.opportunity-detail-grid,.quotation-editor-layout,.task-drawer-demo,.notification-layout,.settings-layout { grid-template-columns:1fr; }
  .screen-grid { grid-template-columns:repeat(3,1fr); }
  .today-layout { grid-template-columns:1fr; }.today-sidebar { grid-template-columns:repeat(3,1fr); }
  .notification-filter { display:grid; grid-template-columns:repeat(4,1fr); }.channel-health { grid-column:1/-1; }
  .settings-nav { flex-direction:row; overflow-x:auto; }.settings-nav button { flex:0 0 auto; }
}
@media (max-width: 680px) {
  .scope-summary-grid,.feature-catalog,.screen-grid,.client-360-grid,.project-control-grid,.security-settings,.setting-form-grid,.rule-grid { grid-template-columns:1fr; }
  .feature-list { grid-template-columns:1fr; }.feature-catalog summary { grid-template-columns:30px 1fr; }.feature-catalog summary small { grid-column:2; }
  .today-identity,.project-hero { grid-template-columns:1fr; }.today-clock { grid-template-columns:1fr; }.today-clock button { grid-column:1; grid-row:auto; margin-top:10px; }.today-column,.today-sidebar { grid-template-columns:1fr; }
  .entity-header { grid-template-columns:50px 1fr; }.entity-actions { grid-column:1/-1; }.entity-actions button { flex:1; }
  .pipeline-summary { grid-template-columns:1fr 1fr; }.opportunity-detail-grid { grid-template-columns:1fr; }
  .editor-status,.sheet-header,.sheet-parties,.quote-footer { align-items:flex-start; flex-direction:column; }.version-switcher { width:100%; overflow-x:auto; }.quotation-sheet { padding:16px; }.quote-line { grid-template-columns:1fr 42px 70px; }.quote-line > :nth-child(3),.quote-line > :nth-child(5) { display:none; }.quote-totals,.quote-footer > div:first-child { width:100%; max-width:none; }
  .project-dates { min-width:0; }.project-health-ring { margin:auto; }.task-properties { grid-template-columns:1fr 1fr; }
  .notification-filter { grid-template-columns:1fr 1fr; }.notification-list article { grid-template-columns:35px 1fr; }.notification-list article > button { grid-column:2; justify-self:start; }
  .login-preview { grid-template-columns:1fr; }.login-brand { display:none; }.full-role-matrix { overflow-x:auto; }.full-role-matrix .matrix-row { min-width:650px; }
}
