:root {
  --ink: #101b2f;
  --navy: #0d1b32;
  --navy-2: #142742;
  --slate: #5f6d84;
  --muted: #8b97a9;
  --line: #e6eaf0;
  --surface: #ffffff;
  --canvas: #f6f8fb;
  --indigo: #6c63ff;
  --indigo-soft: #eeedff;
  --mint: #55d6bd;
  --mint-soft: #e4faf5;
  --amber: #e3a446;
  --amber-soft: #fff4df;
  --rose: #ed798a;
  --shadow: 0 14px 44px rgba(19, 34, 59, 0.06);
}

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; background: var(--canvas); color: var(--ink); font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; -webkit-font-smoothing: antialiased; }
button, input { font: inherit; }
button { border: 0; cursor: pointer; }
button:focus-visible, input:focus-visible { outline: 2px solid #a49fff; outline-offset: 2px; }
button:focus:not(:focus-visible), input:focus:not(:focus-visible) { outline: none; }
svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.svg-sprite { position: absolute; overflow: hidden; }
.app-shell { display: flex; min-height: 100vh; }
.sidebar { width: 254px; flex: 0 0 254px; padding: 25px 14px 17px; background: var(--navy); color: #e7edf7; display: flex; flex-direction: column; position: sticky; top: 0; height: 100vh; overflow-y: auto; z-index: 20; }
.brand-lockup { display: flex; align-items: center; gap: 11px; padding: 1px 12px 25px; }
.brand-name { font-family: 'Space Grotesk', sans-serif; font-size: 19px; letter-spacing: -.045em; color: #f6f8ff; line-height: 1; }
.brand-name span { color: var(--mint); }
.brand-caption { color: #8292aa; font-size: 9px; letter-spacing: .1em; text-transform: uppercase; margin-top: 6px; white-space: nowrap; }
.brand-mark { width: 29px; height: 31px; position: relative; border: 1px solid rgba(85,214,189,.65); border-radius: 9px 9px 11px 3px; display: flex; align-items: center; justify-content: center; gap: 2px; transform: rotate(-2deg); }
.brand-mark:after { content: ''; position: absolute; inset: -4px; border: 1px solid rgba(108,99,255,.42); border-radius: 12px 12px 14px 5px; transform: rotate(8deg); }
.brand-mark span { height: 10px; width: 2px; background: var(--mint); border-radius: 2px; transform: skew(-15deg); }
.brand-mark span:nth-child(2) { height: 15px; background: var(--indigo); }
.brand-mark b { width: 3px; height: 3px; border-radius: 50%; background: #fff; position: absolute; top: 8px; right: 6px; }
.workspace-switcher { padding: 11px 10px; border: 1px solid rgba(187,201,225,.12); background: rgba(255,255,255,.045); border-radius: 12px; display: flex; align-items: center; gap: 9px; margin: 0 3px 25px; }
.workspace-avatar, .user-avatar, .topbar-avatar { display: grid; place-items: center; font-weight: 700; letter-spacing: -.04em; }
.workspace-avatar { width: 26px; height: 26px; border-radius: 7px; color: #d9f7f1; background: #265755; font-size: 9px; }
.workspace-copy { min-width: 0; flex: 1; display: flex; flex-direction: column; gap: 4px; }
.workspace-copy strong { font-size: 11px; color: #e8edf6; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.workspace-copy span { color: #778aa7; font-size: 9px; }
.chevron { color: #7184a1; font-size: 16px; margin-top: -5px; }
.nav-label { color: #5c718f; font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .15em; padding: 0 13px 9px; }
.nav-label-spaced { padding-top: 23px; }
.nav-item { width: 100%; display: flex; align-items: center; gap: 11px; background: transparent; color: #8fa0b8; min-height: 38px; padding: 0 12px; border-radius: 9px; text-align: left; font-size: 11px; transition: background .2s ease, color .2s ease, transform .2s ease; }
.nav-item svg { width: 16px; height: 16px; color: #6f829f; flex: none; }
.nav-item span:not(.nav-pulse) { flex: 1; }
.nav-item em { font-style: normal; font-size: 9px; color: #677d9b; min-width: 18px; text-align: right; }
.nav-item:hover { color: #eef4ff; background: rgba(255,255,255,.055); transform: translateX(1px); }
.nav-item:hover svg { color: #b4c3d9; }
.nav-item.active { color: #fff; background: linear-gradient(90deg, rgba(108,99,255,.27), rgba(108,99,255,.1)); box-shadow: inset 2px 0 0 var(--indigo); }
.nav-item.active svg { color: #a9a4ff; }
.nav-item.active em { color: #b4b0ff; }
.nav-alert { color: #ffbc70 !important; background: rgba(227,164,70,.13); border-radius: 5px; padding: 3px 5px; }
.nav-pulse { width: 5px; height: 5px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 3px rgba(85,214,189,.12); }
.sidebar-bottom { margin-top: auto; }
.source-health { margin: 25px 6px 14px; padding: 13px 11px; border-top: 1px solid rgba(214,224,241,.1); border-bottom: 1px solid rgba(214,224,241,.1); }
.source-health-top, .source-health-foot { display: flex; align-items: center; gap: 6px; font-size: 9px; }
.source-health-top { color: #a1aec1; }
.source-health-top strong { margin-left: auto; font-size: 8px; color: var(--mint); font-weight: 600; }
.status-dot, .green-dot { width: 5px; height: 5px; border-radius: 50%; background: var(--mint); display: inline-block; box-shadow: 0 0 0 3px rgba(85,214,189,.12); }
.health-meter { height: 3px; background: #1c3554; border-radius: 5px; margin: 11px 0 8px; overflow: hidden; }
.health-meter span { display: block; height: 100%; width: 99%; background: linear-gradient(90deg, #3eb69f, var(--mint)); border-radius: inherit; }
.source-health-foot { justify-content: space-between; color: #607590; font-size: 8px; }
.utility-item { min-height: 34px; font-size: 10px; }
.user-chip { display: flex; align-items: center; gap: 9px; border-top: 1px solid rgba(214,224,241,.1); margin-top: 8px; padding: 16px 8px 1px; }
.user-avatar { width: 29px; height: 29px; border-radius: 8px; background: #6a5d4c; color: #ffe7c3; font-size: 9px; }
.user-chip div:nth-child(2) { display: flex; flex-direction: column; gap: 3px; min-width: 0; flex: 1; }
.user-chip strong { font-size: 10px; color: #e4ebf4; font-weight: 600; }
.user-chip span { font-size: 8px; color: #70839e; }
.user-more { color: #7386a1 !important; letter-spacing: 2px; font-size: 10px !important; }
.sidebar-close.icon-button, .menu-trigger.icon-button { display: none; }
.main-content { flex: 1; min-width: 0; }
.topbar { height: 72px; background: rgba(255,255,255,.8); border-bottom: 1px solid var(--line); display: flex; align-items: center; justify-content: space-between; padding: 0 41px; position: sticky; top: 0; z-index: 10; backdrop-filter: blur(13px); }
.crumbs { display: flex; align-items: center; gap: 11px; color: #9ca7b7; font-size: 10px; }
.crumbs b { color: #ccd2db; font-weight: 400; }
.crumbs strong { color: var(--ink); font-weight: 600; }
.topbar-actions { display: flex; align-items: center; gap: 17px; }
.global-search { width: 264px; height: 34px; display: flex; align-items: center; gap: 8px; color: #a5afbd; background: #f6f8fa; border: 1px solid #eef1f5; border-radius: 8px; padding: 0 9px; }
.global-search svg { width: 14px; height: 14px; }
.global-search input { border: 0; outline: 0; min-width: 0; width: 100%; background: transparent; color: var(--ink); font-size: 10px; }
.global-search input::placeholder { color: #aab3c0; }
kbd { padding: 3px 4px; border-radius: 4px; border: 1px solid #e3e8ef; color: #9da8b6; font-size: 8px; white-space: nowrap; background: #fff; }
.icon-button { display: grid; place-items: center; width: 32px; height: 32px; color: #7c8a9e; background: transparent; border-radius: 8px; transition: .2s ease; }
.icon-button:hover { color: var(--indigo); background: var(--indigo-soft); }
.notification-button { position: relative; }
.notification-button span { position: absolute; width: 5px; height: 5px; border-radius: 50%; top: 7px; right: 7px; border: 1px solid #fff; background: var(--rose); }
.topbar-avatar { width: 30px; height: 30px; border-radius: 50%; font-size: 9px; background: #e9e3d9; color: #6b5840; }
.content-wrap { max-width: 1440px; margin: 0 auto; padding: 41px 42px 23px; }
.page-intro { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; margin-bottom: 28px; }
.eyebrow, .card-kicker { color: #8b97aa; text-transform: uppercase; font-size: 9px; letter-spacing: .14em; font-weight: 700; }
.eyebrow { display: flex; align-items: center; gap: 9px; margin-bottom: 13px; }
.eyebrow-line { width: 19px; height: 1px; background: var(--indigo); }
.eyebrow-divider { width: 1px; height: 12px; background: #d9dee6; margin-left: 3px; }
.live-indicator { color: #4caa98; display: inline-flex; align-items: center; gap: 5px; letter-spacing: .1em; }
.live-indicator i { width: 5px; height: 5px; border-radius: 50%; background: var(--mint); box-shadow: 0 0 0 3px var(--mint-soft); }
h1, h2, h3, p { margin: 0; }
h1 { font-family: 'Space Grotesk', sans-serif; font-size: clamp(29px, 3.2vw, 43px); letter-spacing: -.06em; line-height: 1.03; color: var(--ink); }
.title-period { color: var(--indigo); }
.intro-copy { color: #8290a3; font-size: 12px; margin-top: 10px; }
.intro-actions { display: flex; gap: 9px; }
.primary-button, .secondary-button, .full-button, .filter-button, .load-more { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border-radius: 8px; height: 35px; padding: 0 13px; font-size: 10px; font-weight: 600; transition: .2s ease; }
.primary-button { background: var(--indigo); color: #fff; box-shadow: 0 6px 14px rgba(108,99,255,.2); }
.primary-button:hover { background: #574fef; transform: translateY(-1px); }
.primary-button svg { width: 14px; }
.secondary-button { color: #65748a; background: #fff; border: 1px solid #e4e8ee; }
.secondary-button:hover, .filter-button:hover { border-color: #cfd6e1; color: var(--ink); }
.secondary-button svg { width: 13px; }
.demo-notice { min-height: 37px; display: flex; align-items: center; gap: 9px; padding: 0 13px; border: 1px solid #d9e8f0; background: #f0f9fc; color: #6d8293; border-radius: 8px; font-size: 9px; margin-bottom: 19px; }
.demo-notice svg { width: 15px; height: 15px; color: #4da3bb; flex: none; }
.demo-notice strong { color: #427a8a; font-weight: 700; }
.demo-notice button { margin-left: auto; color: #89a2af; background: transparent; font-size: 18px; line-height: 1; padding: 0 4px; }
.signal-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(270px, .88fr); gap: 18px; margin-bottom: 25px; }
.signal-card, .panel { background: var(--surface); border: 1px solid var(--line); border-radius: 13px; box-shadow: var(--shadow); }
.signal-card { min-height: 214px; padding: 22px 23px 17px; }
.signal-card-heading, .panel-heading, .section-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 15px; }
.signal-card h2, .panel h2, .section-heading h2 { font-family: 'Space Grotesk', sans-serif; letter-spacing: -.04em; font-size: 17px; margin-top: 7px; color: var(--ink); }
.period-label { color: #a1acba; font-size: 9px; display: inline-flex; align-items: center; gap: 5px; }
.period-label svg { width: 11px; height: 11px; }
.posture-row { display: flex; align-items: center; gap: 18px; padding: 20px 0 12px; }
.posture-score { font-family: 'Space Grotesk', sans-serif; color: var(--ink); font-size: 40px; letter-spacing: -.08em; line-height: 1; }
.posture-score span { color: #adb7c4; font-family: Inter, sans-serif; font-size: 11px; letter-spacing: -.01em; margin-left: 4px; }
.posture-status { align-self: center; min-width: 154px; }
.status-pill { display: inline-flex; gap: 6px; align-items: center; border-radius: 20px; padding: 6px 8px; font-size: 9px; font-weight: 600; }
.status-pill.healthy { color: #298a79; background: var(--mint-soft); }
.status-pill i { width: 5px; height: 5px; border-radius: 50%; background: currentColor; }
.posture-status p { color: #9aa5b4; font-size: 9px; margin-top: 8px; white-space: nowrap; }
.posture-status strong { color: #2e9f89; }
.signal-chart { margin-left: auto; width: min(44%, 200px); height: 74px; color: var(--mint); }
.signal-chart svg { width: 100%; height: 55px; overflow: visible; stroke-width: 2.1; }
.chart-area { fill: url(#chartFill); stroke: none; }
.chart-line { fill: none; stroke: currentColor; }
.chart-axis { display: flex; justify-content: space-between; color: #b4becb; font-size: 7px; margin-top: 2px; }
.posture-meta { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid #edf0f4; padding-top: 12px; gap: 15px; }
.posture-meta div { display: flex; flex-direction: column; gap: 5px; }
.posture-meta span { color: #9ba6b4; font-size: 8px; }
.posture-meta strong { font-family: 'Space Grotesk', sans-serif; color: var(--ink); font-size: 15px; letter-spacing: -.04em; }
.posture-meta small { color: #9aa6b5; font-family: Inter, sans-serif; font-size: 8px; letter-spacing: 0; font-weight: 500; margin-left: 2px; }
.amber-text { color: var(--amber) !important; }
.sync-card { position: relative; display: flex; flex-direction: column; overflow: hidden; background: linear-gradient(122deg, #122846 0%, #10213a 75%); border-color: #1e385a; color: #fff; }
.sync-card:after { content: ''; position: absolute; width: 170px; height: 170px; right: -74px; top: -68px; background: radial-gradient(circle, rgba(108,99,255,.27), transparent 68%); pointer-events: none; }
.sync-copy { padding-left: 102px; position: relative; z-index: 1; }
.sync-card .card-kicker { color: #6e83a0; }
.sync-card h2 { color: #f6f8ff; }
.sync-copy p { color: #a8b8ca; font-size: 9px; margin-top: 11px; display: flex; align-items: center; gap: 6px; }
.text-button, .tiny-link { background: none; color: #9d9aff; font-size: 9px; padding: 0; display: inline-flex; gap: 6px; align-items: center; margin-top: 17px; }
.text-button svg, .tiny-link svg { width: 12px; height: 12px; }
.sync-orbit { position: absolute; left: 19px; top: 50px; width: 68px; height: 68px; }
.orbit-ring { position: absolute; border: 1px solid rgba(85,214,189,.3); border-radius: 50%; }
.ring-one { inset: 8px 1px; transform: rotate(30deg) skew(-10deg); }
.ring-two { inset: 1px 8px; transform: rotate(-30deg) skew(10deg); border-color: rgba(108,99,255,.45); }
.orbit-core { display: grid; place-items: center; position: absolute; inset: 19px; border-radius: 50%; color: #99f1df; background: rgba(85,214,189,.1); border: 1px solid rgba(85,214,189,.5); }
.orbit-core svg { width: 17px; }
.sync-footer { border-top: 1px solid rgba(214,227,241,.12); margin-top: auto; padding-top: 12px; display: flex; justify-content: space-between; color: #6d84a0; font-size: 8px; position: relative; z-index: 1; }
.sync-footer strong { color: #62d2bc; font-weight: 600; }
.dashboard-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(285px, .88fr); gap: 18px; align-items: start; }
.feed-column { min-width: 0; }
.section-heading { margin: 0 0 14px; align-items: flex-end; }
.section-heading h2 { display: flex; align-items: center; gap: 8px; font-size: 19px; margin-top: 6px; }
.count-badge { display: inline-grid; place-items: center; min-width: 21px; height: 18px; border-radius: 5px; background: var(--indigo-soft); color: var(--indigo); font-family: Inter, sans-serif; font-size: 8px; letter-spacing: 0; }
.filter-button { border: 1px solid #e4e8ee; color: #6c788a; background: #fff; height: 29px; font-size: 9px; padding: 0 9px; }
.filter-button svg { width: 13px; }
.filter-button span { color: #b1bac5; margin-left: 3px; }
.intelligence-feed { display: flex; flex-direction: column; gap: 9px; }
.intelligence-item { display: flex; position: relative; border: 1px solid var(--line); border-radius: 10px; background: #fff; min-height: 137px; overflow: hidden; transition: .2s ease; }
.intelligence-item:hover { box-shadow: 0 8px 25px rgba(19,34,59,.06); transform: translateY(-1px); }
.intelligence-item.urgent { border-color: #e9e8f7; }
.item-rail { width: 3px; flex: 0 0 3px; background: var(--indigo); }
.intelligence-item:not(.urgent) .item-rail { background: #cad3df; }
.item-body { flex: 1; padding: 17px 19px 14px; min-width: 0; }
.item-meta { display: flex; gap: 10px; align-items: center; margin-bottom: 9px; }
.source-tag { font-size: 8px; font-weight: 700; letter-spacing: .1em; }
.source-bahrain { color: #7d6af3; }
.source-international { color: #4f91aa; }
.source-saudi { color: #3e9b8b; }
.item-time { color: #a6b0bc; font-size: 8px; }
.intelligence-item h3 { font-size: 12px; letter-spacing: -.015em; color: var(--ink); font-weight: 700; margin-bottom: 7px; }
.intelligence-item p { color: #758397; line-height: 1.55; font-size: 10px; max-width: 88%; }
.item-footer { display: flex; align-items: center; gap: 14px; margin-top: 15px; }
.impact-chip { display: inline-flex; align-items: center; gap: 5px; font-size: 8px; font-weight: 600; }
.impact-chip i { width: 5px; height: 5px; border-radius: 50%; }
.impact-high { color: #cf6b77; }.impact-high i { background: #e5818e; }
.impact-medium { color: #bf8b3e; }.impact-medium i { background: #e4ac58; }
.impact-low { color: #4c9f91; }.impact-low i { background: #5cc8b2; }
.item-action { display: inline-flex; align-items: center; gap: 5px; font-size: 8px; color: #a2adba; }
.item-action svg { width: 11px; height: 11px; }
.review-button { margin-left: auto; color: var(--indigo); background: none; font-size: 8px; font-weight: 600; display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; padding: 0; }
.review-button svg { width: 12px; height: 12px; }
.review-button:hover { color: #443bd2; }
.verification { width: 107px; flex: 0 0 107px; background: #fbfcfd; border-left: 1px solid #edf0f4; padding: 18px 12px; display: flex; flex-direction: column; align-items: flex-end; gap: 7px; color: #5aa695; text-align: right; }
.verification svg { width: 15px; height: 15px; padding: 3px; box-sizing: content-box; border-radius: 50%; background: var(--mint-soft); }
.verification span { font-size: 8px; font-weight: 600; white-space: nowrap; }
.verification small { color: #a5b0bd; font-size: 8px; white-space: nowrap; }
.load-more { margin-top: 12px; width: 100%; color: #727e91; border: 1px dashed #d9dfe8; background: transparent; font-size: 9px; }
.load-more:hover { background: #fff; border-color: #c0c9d5; color: var(--indigo); }
.load-more span { color: #adb6c1; font-weight: 400; }
.load-more svg { width: 13px; }
.right-column { display: flex; flex-direction: column; gap: 14px; }
.panel { padding: 19px 19px 17px; box-shadow: 0 10px 32px rgba(19,34,59,.04); }
.more-button { font-size: 12px; letter-spacing: 2px; color: #b2bac6; background: none; padding: 0; }
.change-highlight { display: flex; align-items: center; gap: 11px; margin: 21px 0 16px; padding: 12px 11px; border-radius: 8px; background: #f8f7ff; border: 1px solid #ecebff; }
.change-icon { width: 28px; height: 28px; display: grid; place-items: center; color: var(--indigo); background: var(--indigo-soft); border-radius: 7px; }
.change-icon svg { width: 14px; height: 14px; }
.change-highlight div:last-child { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.change-label { color: var(--indigo); text-transform: uppercase; font-size: 7px; font-weight: 700; letter-spacing: .12em; }
.change-highlight strong { font-size: 10px; color: var(--ink); }
.change-date { color: #a3adbb; font-size: 8px; }
.change-detail { display: flex; flex-direction: column; gap: 5px; border-bottom: 1px solid #edf0f4; padding-bottom: 15px; }
.change-detail span, .change-progress span { color: #a0abb8; font-size: 8px; }
.change-detail strong { color: #58687d; font-size: 9px; font-weight: 600; line-height: 1.4; }
.change-progress { padding: 14px 0 16px; }
.change-progress > div:first-child { display: flex; justify-content: space-between; margin-bottom: 9px; }
.change-progress strong { color: var(--indigo); font-size: 8px; font-weight: 600; }
.progress-track { height: 4px; background: #efeff8; border-radius: 5px; overflow: hidden; }
.progress-track span { display: block; height: 100%; background: var(--indigo); border-radius: inherit; }
.full-button { width: 100%; height: 32px; color: #6a61e8; background: #f1f0ff; font-size: 9px; justify-content: space-between; padding: 0 10px; }
.full-button:hover { background: #e9e7ff; }
.full-button svg { width: 13px; }
.compare-panel { padding-bottom: 12px; }
.compare-panel .panel-heading { align-items: flex-end; }
.compare-panel h2 { font-size: 16px; }
.tiny-link { margin: 0 0 2px; color: var(--indigo); font-size: 8px; font-weight: 600; }
.compare-head, .compare-row { display: grid; grid-template-columns: 1.45fr .63fr .63fr; align-items: center; gap: 6px; }
.compare-head { margin-top: 19px; padding: 0 8px 8px; color: #a3acb9; font-size: 7px; text-transform: uppercase; letter-spacing: .08em; }
.jurisdiction-pill { display: inline-grid; place-items: center; width: 24px; height: 17px; border-radius: 4px; font-size: 7px; font-weight: 700; letter-spacing: 0; }
.jurisdiction-pill.bh { color: #7567e9; background: var(--indigo-soft); }.jurisdiction-pill.sa { color: #429b8d; background: var(--mint-soft); }
.compare-row { padding: 10px 8px; border-top: 1px solid #f0f2f5; font-size: 8px; color: #66758a; }
.compare-value { font-size: 8px; font-weight: 600; color: #4f5f74; }
.compare-foot { display: flex; align-items: flex-start; gap: 5px; padding: 11px 8px 0; color: #70a297; font-size: 8px; line-height: 1.35; }
.compare-foot svg { width: 11px; height: 11px; flex: none; }
.assistant-panel { position: relative; overflow: hidden; border-color: #e5e2ff; background: linear-gradient(140deg, #fbfaff 0%, #f6f7ff 100%); }
.assistant-glow { position: absolute; width: 125px; height: 125px; background: radial-gradient(circle, rgba(108,99,255,.15), transparent 66%); right: -37px; top: -43px; }
.assistant-panel > *:not(.assistant-glow) { position: relative; z-index: 1; }
.assistant-kicker { color: var(--indigo); display: flex; align-items: center; gap: 5px; }
.spark-dot { width: 5px; height: 5px; border-radius: 50%; background: var(--indigo); box-shadow: 0 0 0 3px rgba(108,99,255,.13); }
.beta-label { color: #9c91e9; font-size: 7px; letter-spacing: .11em; border: 1px solid #ddd9fb; border-radius: 4px; padding: 4px 5px; }
.assistant-copy { font-size: 9px; color: #7c89a1; line-height: 1.55; margin: 14px 0 13px; max-width: 92%; }
.prompt-list { display: flex; gap: 5px; flex-wrap: wrap; margin-bottom: 12px; }
.prompt-chip { color: #776ee7; font-size: 8px; padding: 6px 7px; border-radius: 5px; border: 1px solid #e4e1fb; background: #fff; }
.prompt-chip:hover { background: var(--indigo-soft); border-color: #d9d4fb; }
.assistant-form { display: flex; align-items: center; gap: 7px; padding: 5px 5px 5px 10px; border: 1px solid #dddaf5; border-radius: 8px; background: #fff; box-shadow: 0 4px 10px rgba(75,63,188,.04); }
.assistant-form input { flex: 1; min-width: 0; border: 0; outline: 0; background: none; color: var(--ink); font-size: 9px; }
.assistant-form input::placeholder { color: #acb4c4; }
.assistant-form button { width: 26px; height: 26px; display: grid; place-items: center; border-radius: 6px; color: #fff; background: var(--indigo); }
.assistant-form button:hover { background: #554ce8; }
.assistant-form button svg { width: 13px; height: 13px; }
.assistant-response { display: none; margin-top: 9px; padding: 9px; border-radius: 7px; background: #fff; border: 1px solid #ebe8ff; color: #717c94; font-size: 8px; line-height: 1.45; }
.assistant-response.visible { display: block; animation: responseIn .25s ease both; }
.assistant-response strong { color: var(--indigo); }
@keyframes responseIn { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }
.assistant-foot { display: flex; align-items: center; gap: 5px; color: #a198db; font-size: 8px; margin-top: 12px; }
.assistant-foot svg { width: 12px; height: 12px; }
.page-footer { border-top: 1px solid #e4e8ed; display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 34px; padding-top: 15px; color: #a1abb8; font-size: 8px; }
.page-footer strong { color: #718096; font-weight: 600; }
.footer-mark { display: inline-grid; place-items: center; width: 14px; height: 14px; background: var(--navy); color: #fff; font-size: 8px; border-radius: 4px; margin-right: 4px; }
.toast { position: fixed; right: 28px; bottom: 24px; z-index: 30; display: flex; align-items: center; gap: 9px; transform: translateY(120px); opacity: 0; transition: .25s ease; padding: 9px 13px 9px 9px; background: var(--navy); color: #eaf0f7; border-radius: 8px; box-shadow: 0 12px 28px rgba(13,27,50,.22); font-size: 9px; }
.toast.show { transform: translateY(0); opacity: 1; }
.toast-icon { width: 21px; height: 21px; display: grid; place-items: center; border-radius: 6px; background: rgba(85,214,189,.14); color: var(--mint); }.toast-icon svg { width: 13px; height: 13px; }
.visually-hidden { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }

@media (max-width: 1100px) {
  .sidebar { width: 226px; flex-basis: 226px; }
  .topbar { padding: 0 26px; }.content-wrap { padding-left: 27px; padding-right: 27px; }
  .signal-grid, .dashboard-grid { grid-template-columns: minmax(0, 1.45fr) minmax(265px, .9fr); gap: 14px; }
  .verification { width: 93px; flex-basis: 93px; padding-left: 8px; padding-right: 8px; }
  .sync-copy { padding-left: 91px; }
  .sync-orbit { left: 13px; }
}
@media (max-width: 860px) {
  .sidebar { position: fixed; left: 0; top: 0; bottom: 0; transform: translateX(-101%); transition: transform .25s ease; box-shadow: 15px 0 45px rgba(9,20,38,.25); }
  .sidebar.open { transform: translateX(0); }
  .sidebar-close.icon-button, .menu-trigger.icon-button { display: grid; }
  .sidebar-close { margin-left: auto; color: #7c8fa8; }
  .menu-trigger { margin-left: -8px; margin-right: 8px; }
  .topbar { justify-content: flex-start; padding: 0 21px; }.topbar-actions { margin-left: auto; }
  .global-search { width: 215px; }
  .signal-grid, .dashboard-grid { grid-template-columns: 1fr; }
  .right-column { display: grid; grid-template-columns: 1fr 1fr; align-items: start; }
  .assistant-panel { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
  .topbar { height: 60px; }.crumbs { font-size: 9px; }.global-search { display: none; }.topbar-actions { gap: 7px; }
  .content-wrap { padding: 28px 15px 18px; }.page-intro { display: block; margin-bottom: 21px; }.intro-actions { margin-top: 17px; }
  .intro-actions button { flex: 1; }.primary-button, .secondary-button { padding: 0 8px; font-size: 9px; }
  .demo-notice { align-items: flex-start; padding: 10px 11px; line-height: 1.5; }
  .signal-card { padding: 18px 15px 14px; }.period-label { font-size: 8px; }.posture-row { gap: 12px; }.posture-score { font-size: 34px; }.posture-status { min-width: 132px; }.status-pill { font-size: 8px; }.signal-chart { width: 31%; }
  .posture-meta { gap: 8px; }.posture-meta span { font-size: 7px; }.posture-meta strong { font-size: 13px; }
  .right-column { display: flex; }.section-heading h2 { font-size: 16px; }.filter-button { margin-bottom: 1px; }
  .intelligence-item { min-height: 0; }.item-body { padding: 15px 14px 13px; }.intelligence-item p { max-width: 100%; }.item-footer { gap: 8px; flex-wrap: wrap; }.review-button { margin-left: 0; }.verification { display: none; }
  .page-footer { align-items: flex-start; flex-direction: column; gap: 7px; margin-top: 26px; }
}
@media (max-width: 390px) {
  .eyebrow { flex-wrap: wrap; }.eyebrow-divider { display: none; }.eyebrow { row-gap: 7px; }
  .posture-row { flex-wrap: wrap; }.signal-chart { width: 100%; margin-left: 0; }.posture-status { flex: 1; }.posture-meta { grid-template-columns: 1fr 1fr; }.posture-meta div:last-child { grid-column: 1 / -1; }
  .section-heading { align-items: flex-start; flex-direction: column; gap: 9px; }.filter-button { align-self: flex-end; }
}
