:root{--pine-950:#100e24;--pine-900:#191630;--pine-850:#211d45;--pine-800:#2b2754;--pine-700:#403a70;--paper-50:#ffffff;--paper-100:#f4f5f1;--paper-200:#eceee8;--paper-300:#d8dccf;--ink-900:#191630;--ink-700:#393653;--ink-500:#65627a;--brass:#b5dfa6;--brass-dark:#78af79;--moss:#73b286;--sage:#ddefd5;--rust:#b96255;--line:#d8dccf}
*{box-sizing:border-box}body{margin:0;font-family:"Archivo","Helvetica Neue",sans-serif;color:var(--ink-900);background:var(--paper-100);-webkit-font-smoothing:antialiased}button,textarea{font:inherit}.shell{min-height:100vh;display:grid;grid-template-columns:276px 1fr}.sidebar{position:relative;background:var(--pine-900);color:var(--paper-50);padding:28px 18px 20px;display:flex;flex-direction:column;overflow:hidden}.sidebar:before{content:"";position:absolute;inset:0;opacity:.55;pointer-events:none;background-image:repeating-linear-gradient(to right,#edeee00a 0,#edeee00a 1px,transparent 1px,transparent 92px),repeating-linear-gradient(to bottom,#edeee008 0,#edeee008 1px,transparent 1px,transparent 44px)}.sidebar>*{position:relative}.brand{display:flex;align-items:center;gap:12px;padding:0 10px 28px;border-bottom:1px solid #edeee01a}.brand-mark,.seal{display:grid;place-items:center;border:1px solid var(--brass);color:var(--brass);font-family:"Fraunces",Georgia,serif}.brand-mark{width:40px;height:40px;border-radius:11px;font-size:22px}.brand strong{font-family:"Fraunces",Georgia,serif;font-size:21px;font-weight:600}.brand small,.sidebar-footer small{display:block;color:#b9bfa3;font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.08em;margin-top:3px}nav{padding-top:24px;display:grid;gap:7px}nav a{color:#d2d6bf;text-decoration:none;padding:12px 13px;border-radius:7px;font-size:13px;display:flex;gap:11px;border:1px solid transparent}nav a:hover{border-color:#edeee019;background:#edeee008}nav a.active{background:#edeee010;color:var(--paper-50);border-color:#d8b04a45}nav a span{color:var(--brass);width:18px;text-align:center}.recent{margin-top:32px}.recent p{font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.16em;color:#9fb592;padding:0 12px}.recent button{width:100%;border:0;background:transparent;color:#d2d6bf;text-align:left;padding:10px 12px;font-size:12px}.sidebar-footer{margin-top:auto;border-top:1px solid #edeee01a;padding:20px 9px 0;display:flex;gap:10px;align-items:center;font-size:11px}.status-dot{width:8px;height:8px;background:var(--brass);border-radius:50%;box-shadow:0 0 0 4px #d8b04a20}main{min-width:0;display:grid;grid-template-rows:auto 1fr auto;height:100vh;background-color:var(--paper-100);background-image:repeating-linear-gradient(to right,#111f1a0b 0,#111f1a0b 1px,transparent 1px,transparent 120px),repeating-linear-gradient(to bottom,#111f1a07 0,#111f1a07 1px,transparent 1px,transparent 44px)}header{height:82px;border-bottom:1px solid var(--paper-300);display:flex;align-items:center;padding:0 38px;gap:16px;background:#f4f6eaf2;backdrop-filter:blur(10px)}header h1{font-family:"Fraunces",Georgia,serif;font-size:24px;font-weight:500;margin:1px 0 0;color:var(--pine-900)}.eyebrow{font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.17em;color:var(--moss);font-weight:600}.environment{margin-left:auto;font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.12em;color:var(--ink-500);padding:7px 9px;border:1px solid var(--paper-300);background:var(--paper-50);border-radius:4px}.menu{display:none}.workspace{overflow:auto;padding:54px 9vw 30px}.welcome{max-width:780px;margin:6vh auto;text-align:center}.seal{width:58px;height:58px;margin:auto;border-radius:14px;color:var(--brass-dark);font-size:28px;background:#f4f6ea;border-color:var(--brass)}.welcome h2{font-family:"Fraunces",Georgia,serif;color:var(--pine-900);font-weight:500;font-size:35px;margin:22px 0 10px}.welcome>p{color:var(--ink-500);line-height:1.65;max-width:650px;margin:0 auto}.suggestions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}.suggestions button{border:1px solid var(--paper-300);background:#f4f6eae8;border-radius:8px;padding:18px;text-align:left;line-height:1.42;color:var(--ink-700);cursor:pointer;box-shadow:0 1px 2px #0b1e1910}.suggestions button:before{content:"↗";display:block;color:var(--brass-dark);font-family:"IBM Plex Mono",monospace;margin-bottom:14px}.suggestions button:hover{border-color:var(--brass-dark);background:var(--paper-50);transform:translateY(-1px)}.conversation{max-width:850px;margin:0 auto}.question{background:var(--pine-900);color:var(--paper-50);border-radius:10px 10px 2px 10px;padding:16px 19px;margin:0 0 30px auto;max-width:72%;line-height:1.5;border:1px solid var(--pine-700)}.answer{border-left:2px solid var(--brass);padding:0 0 0 23px}.answer-label{font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.15em;color:var(--moss);font-weight:600}.answer h3{font-family:"Fraunces",Georgia,serif;color:var(--pine-900);font-size:24px;line-height:1.45;font-weight:500}.badge{display:inline-block;padding:5px 8px;border-radius:3px;background:var(--sage);color:var(--pine-800);font-family:"IBM Plex Mono",monospace;font-size:9px;font-weight:600;letter-spacing:.08em}.evidence-title{margin:30px 0 10px;color:var(--pine-900);font-family:"IBM Plex Mono",monospace;font-size:10px;letter-spacing:.1em}.source-card{border:1px solid var(--paper-300);border-radius:8px;background:#f4f6eaf0;padding:18px;box-shadow:0 10px 30px -24px #0b1e1955}.source-card strong{color:var(--pine-900);display:block}.source-card p{margin:7px 0;color:var(--ink-500);font-size:13px}.source-meta{display:flex;gap:8px;flex-wrap:wrap}.source-meta span{font-family:"IBM Plex Mono",monospace;font-size:9px;padding:5px 7px;background:var(--paper-200);color:var(--ink-500);border-radius:3px}.warning{margin-top:13px;background:#d8b04a18;border-left:2px solid var(--brass-dark);padding:11px 13px;color:#6d5718;font-size:12px}.composer{border-top:1px solid var(--paper-300);background:#f4f6eaf2;padding:15px max(28px,9vw) 12px;position:relative}.composer textarea{width:100%;resize:none;border:1px solid var(--paper-300);border-radius:8px;padding:15px 56px 15px 17px;outline:none;max-height:120px;background:#fff;color:var(--ink-900)}.composer textarea:focus{border-color:var(--moss);box-shadow:0 0 0 3px #2e7d5b16}.composer>button{position:absolute;right:calc(max(28px,9vw) + 9px);top:23px;width:34px;height:34px;border:0;border-radius:6px;background:var(--pine-900);color:var(--brass);font-size:19px;cursor:pointer}.composer>button:hover{background:var(--pine-800)}.composer>button:disabled{opacity:.5}.composer>p{text-align:center;font-family:"IBM Plex Mono",monospace;font-size:8px;letter-spacing:.02em;color:#7e8d82;margin:7px 0 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{display:none}header{padding:0 20px}.menu{display:block;border:0;background:transparent}.workspace{padding:30px 20px}.suggestions{grid-template-columns:1fr}.composer{padding-left:18px;padding-right:18px}.composer>button{right:27px}.question{max-width:90%}}

/* Pitch-deck visual system: indigo field, mint signal colour and restrained off-white surfaces. */
.sidebar{box-shadow:10px 0 36px rgba(25,22,48,.12)}
.brand{border-bottom-color:rgba(181,223,166,.2)}
.brand small,.sidebar-footer small,.recent p{color:rgba(221,239,213,.64)}
nav a,.recent button{color:rgba(255,255,255,.72)}
nav a:hover{border-color:rgba(181,223,166,.24);background:rgba(181,223,166,.06)}
nav a.active{border-color:rgba(181,223,166,.48);background:rgba(181,223,166,.11)}
.status-dot{box-shadow:0 0 0 4px rgba(181,223,166,.16)}
main{background-image:repeating-linear-gradient(to right,rgba(25,22,48,.045) 0,rgba(25,22,48,.045) 1px,transparent 1px,transparent 120px),repeating-linear-gradient(to bottom,rgba(25,22,48,.035) 0,rgba(25,22,48,.035) 1px,transparent 1px,transparent 44px)}
header,.composer{background:rgba(255,255,255,.88)}
.seal,.suggestions button,.source-card{background:rgba(255,255,255,.86)}
.suggestions button{box-shadow:0 8px 24px rgba(25,22,48,.06)}
.warning{background:rgba(181,223,166,.18);color:var(--ink-700)}
.composer textarea:focus{box-shadow:0 0 0 3px rgba(115,178,134,.16)}
.regulatory-answer{margin:18px 0;color:var(--pine-900);font-family:"Archivo","Helvetica Neue",sans-serif;font-size:15px;line-height:1.75}
.regulatory-answer strong{font-family:"Fraunces",Georgia,serif;font-size:1.08em;font-weight:600}
.model-control{display:block;padding-left:9px;padding-right:9px}.model-control label{display:flex;align-items:center;gap:9px;color:rgba(255,255,255,.68);font-family:"IBM Plex Mono",monospace;font-size:8px;letter-spacing:.14em}.model-control select{width:100%;margin-top:10px;border:1px solid rgba(181,223,166,.42);border-radius:7px;background:#211d45;color:#fff;padding:10px 30px 10px 11px;font-size:11px;outline:none;cursor:pointer}.model-control select:focus{border-color:var(--brass);box-shadow:0 0 0 3px rgba(181,223,166,.12)}.model-control small{line-height:1.45;margin-top:8px!important;letter-spacing:.02em!important}
.governance-result{margin-top:24px;padding:26px;border:1px solid var(--line);border-left:3px solid var(--moss);border-radius:8px;background:rgba(255,255,255,.88);box-shadow:0 12px 30px rgba(25,22,48,.06)}.governance-result .badge{margin-left:12px}.governance-answer{margin:18px 0;color:var(--ink-700);font-size:14px;line-height:1.75}.governance-evidence{display:grid;gap:7px;border-top:1px solid var(--line);padding-top:15px}.governance-evidence strong{font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.12em;color:var(--moss)}.governance-evidence span{font-size:12px;color:var(--ink-500)}
.progress-track i{transition:width .35s ease}.assessment-grid article.reviewed{border-color:rgba(115,178,134,.65);box-shadow:inset 0 3px 0 var(--moss)}.assessment-grid article.reviewed .module-number:after{content:" · REVIEWED";letter-spacing:.08em}.assessment-grid article.reviewed .secondary-action{color:var(--moss)}
.logout-link{margin-top:auto;display:flex;align-items:center;gap:10px;padding:12px 13px;border-top:1px solid rgba(221,239,213,.12);border-bottom:1px solid rgba(221,239,213,.12);color:rgba(255,255,255,.72);font-size:12px;text-decoration:none}.logout-link span{color:var(--brass)}.logout-link:hover{color:#fff;background:rgba(181,223,166,.07)}.logout-link+.sidebar-footer{margin-top:0}
.model-control #model-note{white-space:nowrap;font-size:8px}
.model-control+.logout-link{margin-top:12px}
.sidebar-close,.sidebar-backdrop{display:none}

@media(max-width:850px){
  body.menu-open{overflow:hidden}
  .sidebar{display:flex;position:fixed;z-index:50;inset:0 auto 0 0;width:min(86vw,320px);height:100dvh;overflow-y:auto;transform:translateX(-105%);transition:transform .25s ease;box-shadow:18px 0 50px rgba(16,14,36,.3)}
  body.menu-open .sidebar{transform:translateX(0)}
  .sidebar-close{display:grid;place-items:center;position:absolute;z-index:2;top:15px;right:14px;width:36px;height:36px;border:1px solid rgba(181,223,166,.3);border-radius:7px;background:#211d45;color:#fff;font-size:25px;line-height:1;cursor:pointer}
  .sidebar-backdrop{display:block;position:fixed;z-index:40;inset:0;border:0;background:rgba(16,14,36,.58);opacity:0;visibility:hidden;transition:opacity .25s ease,visibility .25s ease}
  body.menu-open .sidebar-backdrop{opacity:1;visibility:visible}
  .menu{width:40px;height:40px;border-radius:7px;color:var(--pine-900);font-size:22px;cursor:pointer}
  .menu:hover,.menu:focus-visible{background:rgba(25,22,48,.07);outline:2px solid transparent}
  .brand{padding-right:42px}
  .environment{font-size:8px;letter-spacing:.08em;padding:6px}
}

/* Keep feature modules on the pitch-deck visual system. This file is loaded
   after module-specific styles so older component colours cannot win. */
.module-view .progress-card,.module-view .assessment-grid article,.module-view .source-list article,.module-view .empty-state{background:rgba(255,255,255,.9);border-color:rgba(25,22,48,.16);box-shadow:0 12px 30px rgba(25,22,48,.045)}
.module-view .progress-track{background:rgba(25,22,48,.12)}
.module-view .progress-track i{background:linear-gradient(90deg,#73b286,#b5dfa6)}
.module-view .assessment-grid article.reviewed{background:linear-gradient(180deg,rgba(221,239,213,.62),rgba(255,255,255,.94));border-color:#73b286;box-shadow:inset 0 3px 0 #73b286,0 12px 30px rgba(25,22,48,.05)}
.module-view .module-note,.module-view .future-row{background:rgba(181,223,166,.14);border-left-color:#73b286}
.module-view .catalogue-summary{background:#191630;border-color:#403a70}
.module-view .primary-action{background:#191630}.module-view .primary-action:hover{background:#2b2754}

/* Primary workspace split: use cases and conversational intelligence. */
.sidebar-section-switch{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0 8px;border-bottom:1px solid rgba(221,239,213,.2)}
nav .sidebar-section-switch .section-link{position:relative;justify-content:center;align-items:center;margin-bottom:-1px;padding:11px 8px 12px;border:1px solid transparent;border-bottom:0;border-radius:8px 8px 0 0;background:transparent;color:rgba(221,239,213,.62);font-weight:600}
nav .sidebar-section-switch .section-link:hover{background:rgba(255,255,255,.035);color:var(--paper-50)}
nav .sidebar-section-switch .section-link.active{background:rgba(255,255,255,.075);border-color:rgba(181,223,166,.22);color:var(--paper-50);box-shadow:inset 0 2px 0 var(--brass)}
nav .sidebar-section-switch .section-link.active:after{content:"";position:absolute;right:0;bottom:-1px;left:0;height:1px;background:#191630}
nav .sidebar-section-switch .section-link span{color:rgba(181,223,166,.58)}
nav .sidebar-section-switch .section-link.active span{color:var(--brass)}
.use-case-navigation{display:grid;gap:7px;padding-top:13px}
.nav-label{margin:0;padding:0 13px 3px;font-family:"IBM Plex Mono",monospace;font-size:8px;letter-spacing:.2em;color:rgba(221,239,213,.52)}
.chat-view{padding:28px clamp(20px,5vw,72px)}
.demo-chat-shell{max-width:1080px;height:100%;min-height:560px;margin:0 auto;display:grid;grid-template-rows:auto minmax(0,1fr) auto;border:1px solid var(--paper-300);background:rgba(255,255,255,.92);box-shadow:0 22px 60px rgba(25,22,48,.09)}
.demo-chat-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:23px 26px;border-bottom:1px solid var(--paper-300)}
.demo-chat-toolbar h2{margin:6px 0 0;font-family:"Fraunces",Georgia,serif;font-size:27px;font-weight:500}
.demo-chat-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.demo-chat-actions label{font-family:"IBM Plex Mono",monospace;font-size:9px;letter-spacing:.12em;color:var(--ink-500);text-transform:uppercase}
.demo-chat-actions select,.demo-chat-actions button{border:1px solid var(--paper-300);background:#fff;color:var(--ink-700);border-radius:5px;padding:9px 11px;font-size:12px}
.demo-chat-actions button{cursor:pointer}.demo-chat-actions button:hover{border-color:var(--moss)}
.demo-chat-messages{min-height:0;overflow:auto;padding:26px}
.demo-chat-empty{max-width:650px;margin:clamp(18px,4vh,46px) auto 0;text-align:center}.demo-chat-empty .seal{width:52px;height:52px}
.demo-chat-empty h3{font-family:"Fraunces",Georgia,serif;font-size:31px;font-weight:500;margin:18px 0 8px}.demo-chat-empty>p{color:var(--ink-500);line-height:1.6}
.demo-chat-starters{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.demo-chat-starters button{border:1px solid var(--paper-300);background:var(--paper-100);padding:14px;text-align:left;color:var(--ink-700);font-size:12px;line-height:1.45;cursor:pointer}.demo-chat-starters button:hover{border-color:var(--moss);background:#fff}
.demo-chat-message{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;max-width:830px;margin:0 auto 20px}.demo-chat-message.user{grid-template-columns:minmax(0,1fr) 34px}.demo-chat-message.user>div{grid-column:1;grid-row:1}.demo-chat-message.user .demo-chat-avatar{grid-column:2}.demo-chat-avatar{width:32px;height:32px;border:1px solid var(--brass-dark);border-radius:8px;display:grid;place-items:center;color:var(--pine-900);font-family:"Fraunces",Georgia,serif;font-size:13px}
.demo-chat-bubble{white-space:pre-wrap;line-height:1.65;padding:13px 15px;border:1px solid var(--paper-300);background:var(--paper-100);color:var(--ink-700);font-size:14px}.demo-chat-message.user .demo-chat-bubble{background:var(--pine-900);color:#fff;border-color:var(--pine-700)}.demo-chat-message small{display:block;margin-top:6px;color:var(--ink-500);font-family:"IBM Plex Mono",monospace;font-size:8px}.demo-chat-bubble.error,.demo-chat-status.error{color:var(--rust)}
.demo-chat-composer{padding:14px 18px 12px;border-top:1px solid var(--paper-300);background:var(--paper-100)}
.demo-chat-upload{display:inline-flex;align-items:center;margin-bottom:9px;color:var(--pine-700);font-size:11px;font-weight:600;cursor:pointer}.demo-chat-upload input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}
.demo-chat-attachments{display:flex;gap:6px;flex-wrap:wrap}.demo-chat-attachments span{margin-bottom:8px;padding:5px 8px;background:var(--sage);color:var(--pine-800);font-family:"IBM Plex Mono",monospace;font-size:8px}
.demo-chat-prompt-row{display:grid;grid-template-columns:1fr 46px;border:1px solid var(--paper-300);background:#fff}.demo-chat-prompt-row:focus-within{border-color:var(--moss);box-shadow:0 0 0 3px rgba(115,178,134,.13)}.demo-chat-prompt-row textarea{resize:none;border:0;outline:0;padding:13px 15px;color:var(--ink-900);background:transparent}.demo-chat-prompt-row button{margin:7px;width:34px;height:34px;align-self:end;border:0;border-radius:6px;background:var(--pine-900);color:var(--brass);font-size:19px;cursor:pointer}.demo-chat-prompt-row button:disabled{opacity:.5}.demo-chat-composer>p{margin:7px 0 0;color:var(--ink-500);font-family:"IBM Plex Mono",monospace;font-size:8px;text-align:center}
@media(max-width:850px){.chat-view{padding:16px}.demo-chat-shell{min-height:calc(100dvh - 115px)}.demo-chat-toolbar{display:block;padding:18px}.demo-chat-actions{justify-content:flex-start;margin-top:14px}.demo-chat-messages{padding:18px}.demo-chat-starters{grid-template-columns:1fr}.demo-chat-empty{margin-top:3vh}.demo-chat-toolbar h2{font-size:23px}}

/* Supplied Regence wordmark: clean light variant for the dark application rail. */
.sidebar .brand{display:block;padding:0 10px 22px}
.sidebar .brand-logo{display:block;width:190px;max-width:100%;height:auto;margin:-14px 0 -12px}

/* The public demo preserves the original explanatory use-case screens.
   Agent workflow canvases and their submenu are exclusive to /mvp. */
body.legacy-demo .aml-nav-family .nav-submenu,
body.legacy-demo #aml-kyc-view .workflow-toolbar,
body.legacy-demo #aml-kyc-view .agent-workflow{display:none!important}
