:root{
  --bg:#f5f6fa;
  --surface:#fff;
  --surface-2:#eef0f6;
  --text:#151827;
  --muted:#626b7c;
  --line:#dfe3ec;
  --primary:#5b4cf0;
  --primary-dark:#4032c4;
  --primary-soft:#eeecff;
  --success:#17784d;
  --success-soft:#e8f7ef;
  --warning:#9a5b00;
  --warning-soft:#fff4d8;
  --danger:#b42318;
  --danger-soft:#fff0ee;
  --shadow:0 20px 55px rgba(24,30,55,.09);
  --radius:18px;
  --container:1180px
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.6
}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.container{width:min(calc(100% - 36px),var(--container));margin-inline:auto}
.topbar{
  position:sticky;top:0;z-index:30;
  background:rgba(255,255,255,.94);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(12px)
}
.nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{display:inline-flex;align-items:center;gap:10px;font-size:20px;font-weight:850;letter-spacing:-.5px}
.logo-mark{
  display:grid;place-items:center;width:35px;height:35px;border-radius:11px;
  background:var(--primary);color:white;font-weight:900
}
.nav-links{display:flex;gap:28px;color:var(--muted);font-size:15px;font-weight:700}
.nav-links a:hover{color:var(--text)}
.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:48px;
  padding:0 20px;border:1px solid var(--primary);border-radius:12px;
  background:var(--primary);color:#fff;font-weight:800;transition:.18s ease
}
.btn:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-1px)}
.btn-small{min-height:40px;padding-inline:15px;font-size:14px}
.btn-secondary{background:#fff;color:var(--text);border-color:var(--line)}
.btn-secondary:hover{background:var(--surface-2);border-color:#c9cfdb;color:var(--text)}
.btn-light{background:#fff;border-color:#fff;color:var(--primary-dark)}
.btn-block{width:100%}
.eyebrow{margin:0 0 13px;color:var(--primary);font-size:13px;font-weight:900;letter-spacing:.12em}
.hero{padding:88px 0 74px;background:linear-gradient(180deg,#fcfcff 0%,var(--bg) 100%)}
.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:64px;align-items:center}
.hero h1{margin:0;max-width:760px;font-size:clamp(48px,7vw,76px);line-height:1.02;letter-spacing:-.055em}
.lead{max-width:720px;margin:26px 0 0;color:var(--muted);font-size:20px;line-height:1.75}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.microcopy{margin:20px 0 0;color:var(--muted);font-size:13px}
.demo-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);overflow:hidden}
.demo-head{padding:19px 22px;border-bottom:1px solid var(--line);background:#f4f5f8}
.demo-head span{display:block;color:var(--primary);font-size:11px;font-weight:900;letter-spacing:.1em}
.demo-head strong{font-size:18px}
.score-row{display:grid;grid-template-columns:92px 1fr;gap:20px;padding:26px}
.score-ring{
  display:flex;align-items:baseline;justify-content:center;width:92px;height:92px;border-radius:50%;
  border:9px solid var(--warning-soft);outline:3px solid var(--warning);color:var(--warning)
}
.score-ring span{font-size:32px;font-weight:900;line-height:74px}
.score-ring small{font-weight:800}
.status{display:inline-flex;align-items:center;min-height:30px;padding:0 11px;border-radius:999px;font-size:12px;font-weight:850}
.status-warning{color:var(--warning);background:var(--warning-soft)}
.score-row p{margin:10px 0 0;color:var(--muted);font-size:14px}
.risk-list{padding:0 26px 26px}
.risk-list div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-top:1px solid var(--line);font-size:14px}
.risk-high{color:var(--danger)}
.risk-medium{color:var(--warning)}
.value-strip{background:#fff;border-block:1px solid var(--line)}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.value-grid div{padding:26px 28px;border-right:1px solid var(--line)}
.value-grid div:last-child{border-right:0}
.value-grid strong{display:block}
.value-grid span{color:var(--muted);font-size:14px}
.section{padding:96px 0}
.section-alt{background:#eef0f6;border-block:1px solid var(--line)}
.section-title{max-width:770px;margin-bottom:42px}
.section-title h2,.cta h2{margin:0;font-size:clamp(36px,5vw,56px);line-height:1.08;letter-spacing:-.045em}
.section-title>p:last-child{color:var(--muted);font-size:18px}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.feature{padding:30px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.feature>span{color:var(--primary);font-size:13px;font-weight:900}
.feature h3{margin:15px 0 7px;font-size:22px}
.feature p{margin:0;color:var(--muted)}
.workflow{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.workflow article{display:flex;gap:18px;padding:26px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.workflow article>span{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:11px;background:var(--primary);color:#fff;font-weight:900}
.workflow h3{margin:2px 0 5px}
.workflow p{margin:0;color:var(--muted)}
.audience-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}
.audience-list{border-top:1px solid var(--line)}
.audience-list div{display:grid;grid-template-columns:180px 1fr;gap:25px;padding:24px 0;border-bottom:1px solid var(--line)}
.audience-list span{color:var(--muted)}
.cta{padding:56px 0;background:var(--primary);color:#fff}
.cta .eyebrow{color:#dcd9ff}
.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.footer{padding:54px 0 25px;background:#fff;border-top:1px solid var(--line)}
.footer-grid{display:flex;justify-content:space-between;gap:30px}
.footer-grid p{margin:12px 0 0;color:var(--muted)}
.footer-links{display:flex;flex-wrap:wrap;gap:24px;color:var(--muted);font-weight:700}
.copyright{margin-top:38px;padding-top:20px;border-top:1px solid var(--line);color:var(--muted);font-size:13px}

/* App */
.app-body{background:#f2f3f7}
.app-nav-actions{display:flex;align-items:center;gap:10px}
.local-note{padding:7px 10px;border-radius:999px;background:var(--success-soft);color:var(--success);font-size:12px;font-weight:850}
.workspace{padding-top:48px;padding-bottom:42px}
.workspace-intro{max-width:820px;margin-bottom:30px}
.workspace-intro h1{margin:0 0 10px;font-size:clamp(38px,6vw,58px);line-height:1.05;letter-spacing:-.048em}
.workspace-intro>p:last-child{color:var(--muted)}
.workspace-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:18px;align-items:start}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 10px 35px rgba(24,30,55,.05)}
.form-panel,.report-panel{padding:24px}
.panel-head,.report-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}
.panel-head span,.report-kicker{color:var(--primary);font-size:11px;font-weight:900;letter-spacing:.1em}
.panel-head h2,.report-header h2{margin:3px 0 0;font-size:23px;line-height:1.2}
.link-button{border:0;background:transparent;color:var(--primary);font-weight:800}
label{display:block;margin-bottom:17px;font-size:14px;font-weight:780}
input,select,textarea{
  width:100%;margin-top:7px;padding:12px 13px;border:1px solid #cfd4df;border-radius:11px;
  background:#fff;color:var(--text);outline:0
}
textarea{resize:vertical;line-height:1.55}
input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.form-help{margin:11px 0 0;text-align:center;color:var(--muted);font-size:12px}
.report-panel{min-height:760px}
.empty-state{min-height:700px;display:grid;place-content:center;text-align:center;max-width:420px;margin:auto}
.empty-symbol{display:grid;place-items:center;width:58px;height:58px;margin:auto;border-radius:17px;background:var(--primary-soft);color:var(--primary);font-size:28px;font-weight:900}
.empty-state h2{margin:13px 0 5px}
.empty-state p{margin:0;color:var(--muted)}
.hidden{display:none!important}
.report-header p{margin:4px 0 0;color:var(--muted);font-size:12px}
.score-card{display:grid;grid-template-columns:118px 1fr;gap:22px;align-items:center;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fafafe}
.score-circle{
  display:flex;align-items:baseline;justify-content:center;width:110px;height:110px;border-radius:50%;
  border:10px solid var(--primary-soft);outline:4px solid var(--primary);color:var(--primary)
}
.score-circle strong{font-size:38px;line-height:90px}
.score-circle span{font-weight:850}
.score-card h3{margin:11px 0 5px;font-size:22px}
.score-card p{margin:0;color:var(--muted)}
.status.ready{background:var(--success-soft);color:var(--success)}
.status.clarify{background:var(--warning-soft);color:var(--warning)}
.status.risky{background:var(--danger-soft);color:var(--danger)}
.report-section{padding:22px 0;border-top:1px solid var(--line)}
.report-section h3{margin:0 0 12px;font-size:17px}
.assessment{margin:0;padding:17px;border-left:4px solid var(--primary);border-radius:0 12px 12px 0;background:var(--primary-soft);color:#33385a}
.section-head-inline{display:flex;justify-content:space-between;gap:20px;align-items:center}
.section-head-inline span{color:var(--muted);font-size:12px}
.risk-map{display:grid;gap:10px}
.risk-row{display:grid;grid-template-columns:1fr auto;gap:15px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:11px}
.risk-row span{color:var(--muted)}
.risk-badge{min-width:72px;text-align:center;padding:5px 9px;border-radius:999px;font-size:12px;font-weight:850}
.risk-badge.low{color:var(--success);background:var(--success-soft)}
.risk-badge.medium{color:var(--warning);background:var(--warning-soft)}
.risk-badge.high{color:var(--danger);background:var(--danger-soft)}
.report-list{margin:0;padding-left:21px;color:var(--muted)}
.report-list li{margin-bottom:9px}
.numbered li::marker{color:var(--primary);font-weight:850}
.copy-button{margin-top:10px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;color:var(--text);font-weight:750}
.copy-button:hover{background:var(--surface-2)}
.quote-structure{display:grid;gap:10px}
.quote-item{padding:14px;border:1px solid var(--line);border-radius:11px}
.quote-item strong{display:block;margin-bottom:3px}
.quote-item span{color:var(--muted);font-size:14px}
.next-action{padding:18px;border-radius:13px;background:#171a2a;color:#fff}
.next-action strong{display:block;margin-bottom:5px}
.next-action p{margin:0;color:#c6cad5}
.report-disclaimer{padding:15px;border-radius:11px;background:var(--surface-2);color:var(--muted);font-size:12px}
.app-footer{display:flex;justify-content:space-between;gap:20px;padding-bottom:34px;color:var(--muted);font-size:12px}

/* Simple pages */
.simple-page{padding:75px 0}
.simple-page article{max-width:820px;margin:auto;padding:40px;background:#fff;border:1px solid var(--line);border-radius:var(--radius)}
.simple-page h1{margin-top:0;font-size:46px;letter-spacing:-.04em}
.simple-page h2{margin-top:32px}
.simple-page p,.simple-page li{color:var(--muted)}

@media(max-width:920px){
  .hero-grid,.audience-grid,.workspace-grid{grid-template-columns:1fr}
  .hero{padding-top:60px}
  .demo-card{max-width:680px}
}
@media(max-width:720px){
  .nav-links{display:none}
  .hero h1{font-size:47px}
  .value-grid,.feature-grid,.workflow{grid-template-columns:1fr}
  .value-grid div{border-right:0;border-bottom:1px solid var(--line)}
  .value-grid div:last-child{border-bottom:0}
  .audience-list div{grid-template-columns:1fr;gap:5px}
  .cta-inner,.footer-grid,.app-footer{display:flex;align-items:flex-start;flex-direction:column}
  .form-row{grid-template-columns:1fr}
  .local-note{display:none}
  .report-panel{min-height:auto}
  .empty-state{min-height:420px}
  .score-card{grid-template-columns:1fr}
}
@media print{
  .topbar,.workspace-intro,.form-panel,.app-footer,.print-hide{display:none!important}
  body{background:#fff}
  .workspace{padding:0;width:100%}
  .workspace-grid{display:block}
  .report-panel{border:0;box-shadow:none;padding:0}
  .report{display:block!important}
}


/* v0.2 additions */
.baseline-preview{padding:0 26px 26px}
.baseline-preview-head{display:flex;justify-content:space-between;gap:12px;padding:14px 0;border-top:1px solid var(--line)}
.baseline-preview-head span{color:var(--primary);font-size:11px;font-weight:900;letter-spacing:.1em}
.baseline-preview>div:not(.baseline-preview-head){display:flex;justify-content:space-between;gap:20px;padding:10px 0;border-top:1px solid var(--line);font-size:14px}
.baseline-preview>div:not(.baseline-preview-head)>span{color:var(--muted)}
.approved-text{color:var(--success)}
.workspace-tabs{display:flex;gap:8px;margin-bottom:18px;overflow-x:auto}
.workspace-tab{white-space:nowrap;padding:12px 17px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--muted);font-weight:800}
.workspace-tab.active{background:var(--text);border-color:var(--text);color:#fff}
.workspace-tab span{display:inline-grid;place-items:center;min-width:21px;height:21px;padding-inline:5px;margin-left:4px;border-radius:999px;background:var(--surface-2);color:var(--text);font-size:11px}
.workspace-panel{display:none}
.workspace-panel.active{display:block}
.report-actions{display:flex;flex-wrap:wrap;gap:10px;padding:22px 0;border-top:1px solid var(--line)}
.scope-id{padding:7px 10px;border-radius:999px;background:var(--primary-soft);color:var(--primary);font-size:11px;font-weight:850;white-space:nowrap}
.label-help{float:right;color:var(--muted);font-size:11px;font-weight:650}
.baseline-actions{display:flex;flex-wrap:wrap;gap:9px}
.baseline-preview-panel{padding:24px;min-height:780px}
.empty-state.compact{min-height:700px}
.scope-document{color:#232737}
.scope-document-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:22px;border-bottom:2px solid var(--text)}
.scope-document-head span:first-child{color:var(--primary);font-size:11px;font-weight:900;letter-spacing:.1em}
.scope-document-head h2{margin:3px 0 2px;font-size:29px;line-height:1.15}
.scope-document-head p{margin:0;color:var(--muted);font-size:12px}
.baseline-status-badge{padding:7px 11px;border-radius:999px;background:var(--warning-soft);color:var(--warning);font-size:12px;font-weight:850;white-space:nowrap}
.baseline-status-badge.approved{background:var(--success-soft);color:var(--success)}
.scope-document section{padding:20px 0;border-bottom:1px solid var(--line)}
.scope-document section h3{margin:0 0 10px;font-size:16px}
.scope-document section p,.scope-document section li{color:var(--muted)}
.scope-document section p{margin:0}
.scope-document section ol,.scope-document section ul{margin:0;padding-left:21px}
.scope-document section li{margin-bottom:7px}
.scope-commercial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.scope-commercial-grid div{padding:13px;border:1px solid var(--line);border-radius:10px}
.scope-commercial-grid span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}
.scope-document-footer{display:flex;justify-content:space-between;gap:20px;padding-top:18px;color:var(--muted);font-size:11px}
.saved-panel{padding:24px}
.saved-toolbar{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:18px}
.saved-toolbar input,.saved-toolbar select{margin:0}
.saved-scopes{display:grid;gap:12px}
.saved-scope{display:grid;grid-template-columns:1fr auto;gap:18px;padding:18px;border:1px solid var(--line);border-radius:13px}
.saved-scope h3{margin:0 0 5px}
.saved-scope p{margin:0;color:var(--muted);font-size:13px}
.saved-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.saved-meta span{padding:5px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:750}
.saved-meta span.approved{background:var(--success-soft);color:var(--success)}
.saved-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.mini-btn{padding:7px 10px;border:1px solid var(--line);border-radius:8px;background:#fff;font-size:12px;font-weight:750}
.mini-btn:hover{background:var(--surface-2)}
.mini-btn.danger{color:var(--danger)}
.empty-saved{padding:70px 20px;text-align:center;color:var(--muted)}
.danger-link{color:var(--danger)}
.save-toast{position:fixed;right:22px;bottom:22px;z-index:80;padding:13px 16px;border-radius:11px;background:var(--text);color:#fff;box-shadow:var(--shadow);font-weight:750;font-size:13px}
@media(max-width:720px){
  .saved-toolbar{grid-template-columns:1fr}
  .saved-scope{grid-template-columns:1fr}
  .saved-actions{justify-content:flex-start}
  .scope-commercial-grid{grid-template-columns:1fr}
  .scope-document-head,.scope-document-footer{flex-direction:column}
}
@media print{
  .workspace-tabs,.baseline-form,.report-actions{display:none!important}
  .workspace-panel{display:none!important}
  .workspace-panel.active{display:block!important}
  #baselinePanel.active .baseline-grid{display:block}
  #baselinePanel.active .baseline-preview-panel{border:0;box-shadow:none;padding:0;min-height:0}
  #baselinePanel.active .baselinePreview{display:block!important}
}


/* v0.3 change-control additions */
.change-report-panel{padding:24px;min-height:820px}
.change-report-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:20px;border-bottom:2px solid var(--text)}
.change-report-head>div>span{color:var(--primary);font-size:11px;font-weight:900;letter-spacing:.1em}
.change-report-head h2{margin:3px 0 2px;font-size:27px;line-height:1.15}
.change-report-head p{margin:0;color:var(--muted);font-size:12px}
.change-classification{padding:7px 11px;border-radius:999px;font-size:12px;font-weight:850;white-space:nowrap}
.change-classification.outside{background:var(--danger-soft);color:var(--danger)}
.change-classification.inside{background:var(--success-soft);color:var(--success)}
.change-classification.clarify{background:var(--warning-soft);color:var(--warning)}
.change-decision-box{display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:start;margin-top:20px;padding:18px;border:1px solid var(--line);border-radius:14px}
.change-decision-box.outside{background:var(--danger-soft);border-color:#ffd1cc}
.change-decision-box.inside{background:var(--success-soft);border-color:#c7e9d7}
.change-decision-box.clarify{background:var(--warning-soft);border-color:#f2dea2}
.change-decision-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#fff;font-size:23px;font-weight:900}
.change-decision-box.outside .change-decision-symbol{color:var(--danger)}
.change-decision-box.inside .change-decision-symbol{color:var(--success)}
.change-decision-box.clarify .change-decision-symbol{color:var(--warning)}
.change-decision-box h3{margin:0 0 4px}
.change-decision-box p{margin:0;color:var(--muted)}
.selected-scope-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;margin:-3px 0 17px}
.selected-scope-summary div{padding:11px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.selected-scope-summary span{display:block;color:var(--muted);font-size:10px;margin-bottom:2px}
.selected-scope-summary strong{font-size:13px}
.change-impact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.change-impact-grid div{padding:14px;border:1px solid var(--line);border-radius:11px}
.change-impact-grid span{display:block;color:var(--muted);font-size:11px;margin-bottom:3px}
.route-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.route-card{padding:14px;text-align:left;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--text)}
.route-card strong{display:block;margin-bottom:3px}
.route-card span{display:block;color:var(--muted);font-size:12px}
.route-card:hover{border-color:#bbb5ff;background:#fbfaff}
.route-card.active{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 2px rgba(91,76,240,.08)}
.swap-field{margin-top:13px}
.change-order-document{margin-top:8px;border:1px solid var(--line);border-radius:14px;padding:20px;background:#fff}
.change-order-document>header{display:flex;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:2px solid var(--text)}
.change-order-document>header span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.change-order-document>header h3{margin:2px 0 0;font-size:23px}
.change-order-document>header>strong{font-size:12px}
.change-order-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:9px;padding:16px 0}
.change-order-meta div{padding:11px;border:1px solid var(--line);border-radius:9px}
.change-order-meta span{display:block;color:var(--muted);font-size:10px}
.change-order-meta strong{font-size:12px}
.change-order-document section{padding:15px 0;border-top:1px solid var(--line)}
.change-order-document h4{margin:0 0 5px}
.change-order-document p{margin:0;color:var(--muted)}
.change-order-document footer{display:flex;justify-content:space-between;gap:20px;padding-top:15px;border-top:1px solid var(--line);color:var(--muted);font-size:10px}
.change-actions{display:flex;gap:9px;flex-wrap:wrap;padding:20px 0}
.records-section{padding-top:18px}
.records-section+.records-section{margin-top:28px;border-top:2px solid var(--line)}
.records-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:14px}
.records-heading span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.records-heading h3{margin:2px 0 0}
.record-count{padding:6px 9px;border-radius:999px;background:var(--surface-2);color:var(--muted)!important;letter-spacing:0!important;font-weight:750!important}
.saved-meta span.change-outside{background:var(--danger-soft);color:var(--danger)}
@media(max-width:720px){
  .selected-scope-summary,.change-impact-grid,.route-grid,.change-order-meta{grid-template-columns:1fr}
  .change-report-head,.change-order-document>header,.change-order-document footer{flex-direction:column}
}
@media print{
  #changePanel.active .change-grid{display:block}
  #changePanel.active .change-form{display:none!important}
  #changePanel.active .change-report-panel{border:0;box-shadow:none;padding:0;min-height:0}
  #changePanel.active .change-report{display:block!important}
  #changePanel.active .change-order-document{border:0;padding:0}
  #changePanel.active .change-report>section:not(.change-decision-box),#changePanel.active .change-report>.change-report-head{page-break-inside:avoid}
}


/* v0.4 commercial dashboard */
.change-workflow-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.change-workflow-grid label{margin:0}
.dashboard-shell{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px;align-items:start}
.dashboard-controls,.commercial-dashboard{padding:24px}
.dashboard-controls{position:sticky;top:90px}
.dashboard-control-grid{display:grid;grid-template-columns:1fr;gap:0}
.commercial-dashboard{min-height:780px}
.dashboard-report-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;padding-bottom:20px;border-bottom:2px solid var(--text)}
.dashboard-report-head>div:first-child>span{color:var(--primary);font-size:11px;font-weight:900;letter-spacing:.1em}
.dashboard-report-head h2{margin:3px 0 2px;font-size:29px;line-height:1.1}
.dashboard-report-head p{margin:0;color:var(--muted);font-size:12px}
.dashboard-head-actions{display:flex;align-items:center;gap:9px}
.project-health{padding:7px 11px;border-radius:999px;font-size:12px;font-weight:850}
.project-health.controlled{background:var(--success-soft);color:var(--success)}
.project-health.watch{background:var(--warning-soft);color:var(--warning)}
.project-health.risk{background:var(--danger-soft);color:var(--danger)}
.dashboard-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;padding:20px 0}
.dashboard-summary-grid article{padding:17px;border:1px solid var(--line);border-radius:13px;background:#fff}
.dashboard-summary-grid span{display:block;color:var(--muted);font-size:11px;margin-bottom:5px}
.dashboard-summary-grid strong{display:block;font-size:23px;line-height:1.15}
.dashboard-summary-grid small{display:block;margin-top:5px;color:var(--muted)}
.pipeline-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px}
.pipeline-grid div{padding:13px;border:1px solid var(--line);border-radius:11px;text-align:center}
.pipeline-grid span{display:block;color:var(--muted);font-size:11px}
.pipeline-grid strong{font-size:22px}
.dashboard-warning-list li::marker{color:var(--warning)}
.decision-ledger{display:grid;gap:9px}
.ledger-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(140px,.7fr) 150px auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px}
.ledger-main strong,.ledger-impact strong{display:block}
.ledger-main span,.ledger-impact span{display:block;color:var(--muted);font-size:11px;margin-top:3px}
.ledger-status{margin:0;padding:9px 10px}
.dashboard-context-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.dashboard-context-grid div{padding:13px;border:1px solid var(--line);border-radius:11px}
.dashboard-context-grid span{display:block;color:var(--muted);font-size:11px}
@media(max-width:980px){
  .dashboard-shell{grid-template-columns:1fr}
  .dashboard-controls{position:static}
  .dashboard-summary-grid{grid-template-columns:repeat(2,1fr)}
  .ledger-row{grid-template-columns:1fr 1fr}
}
@media(max-width:720px){
  .change-workflow-grid,.dashboard-summary-grid,.pipeline-grid,.dashboard-context-grid,.ledger-row{grid-template-columns:1fr}
  .dashboard-report-head,.dashboard-head-actions{align-items:flex-start;flex-direction:column}
}
@media print{
  #dashboardPanel.active .dashboard-shell{display:block}
  #dashboardPanel.active .commercial-dashboard{border:0;box-shadow:none;padding:0;min-height:0}
  #dashboardPanel.active .dashboard-report{display:block!important}
  #dashboardPanel.active .ledger-row{grid-template-columns:1fr 1fr 130px}
  #dashboardPanel.active .ledger-open{display:none!important}
  #dashboardPanel.active .dashboard-summary-grid article,#dashboardPanel.active .ledger-row,#dashboardPanel.active .report-section{page-break-inside:avoid}
}


/* v0.4.1 layout stability and cache-refresh patch */
html,body{width:100%;max-width:100%;overflow-x:hidden}
body{min-width:0}
.container,.hero-grid,.hero-copy,.demo-card,.workspace,.workspace-grid,.workspace-grid>*,.panel,.dashboard-shell,.dashboard-shell>*,.commercial-dashboard,.change-report-panel,.baseline-preview-panel{min-width:0}
.hero-copy h1,.workspace-intro h1,.section-title h2,.cta h2{overflow-wrap:anywhere;word-break:normal}
.demo-card,.panel{max-width:100%}
.workspace-tabs{scrollbar-width:thin;padding-bottom:3px}
.workspace-tab{appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:44px;line-height:1.15;cursor:pointer;font-family:inherit;font-size:14px;text-align:center}
.workspace-tab:focus-visible{outline:3px solid var(--primary-soft);outline-offset:2px}
.baseline-preview>div:not(.baseline-preview-head){align-items:flex-start}
.baseline-preview>div:not(.baseline-preview-head) strong{text-align:right;overflow-wrap:anywhere}
@media(max-width:1100px){.hero-grid{gap:36px;grid-template-columns:minmax(0,1fr) minmax(380px,.82fr)}.hero h1{font-size:clamp(46px,6vw,68px)}}
@media(max-width:920px){.hero-grid{grid-template-columns:1fr}.demo-card{width:100%}.workspace-tabs{margin-inline:-2px}}
@media(max-width:720px){.container{width:min(calc(100% - 24px),var(--container))}.hero{padding-top:48px}.hero h1,.workspace-intro h1{font-size:clamp(38px,12vw,50px)}.workspace-tab{min-height:42px;padding:10px 13px;font-size:13px}.score-row{grid-template-columns:1fr}.score-ring{margin-inline:auto}.baseline-preview-head,.baseline-preview>div:not(.baseline-preview-head){flex-direction:column;gap:4px}.baseline-preview>div:not(.baseline-preview-head) strong{text-align:left}}


/* v0.5 practical project hub */
.practical-intro{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  max-width:none;
}
.practical-intro>div{max-width:820px}
.practical-intro h1{font-size:clamp(38px,5.3vw,62px)}
.practical-new-project{flex:0 0 auto;margin-bottom:8px}
.practical-tabs{position:sticky;top:80px;z-index:20;padding:8px;background:rgba(242,243,247,.94);border:1px solid var(--line);border-radius:14px;backdrop-filter:blur(12px)}
.practical-tabs .workspace-tab{flex:1}
.project-hub{display:grid;gap:18px}
.project-hub-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px;background:#171a2a;color:#fff;border-radius:20px}
.project-hub-header h2{margin:3px 0 5px;font-size:32px;line-height:1.15}
.project-hub-header p:last-child{margin:0;color:#c8ccda}
.panel-kicker{margin:0;color:var(--primary);font-size:11px;font-weight:900;letter-spacing:.11em}
.project-hub-header .panel-kicker{color:#b6b0ff}
.hub-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.hub-metrics article,.project-page-metrics article{padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px}
.hub-metrics span,.project-page-metrics span{display:block;color:var(--muted);font-size:12px}
.hub-metrics strong,.project-page-metrics strong{display:block;margin-top:5px;font-size:27px;line-height:1.15}
.project-toolbar{display:grid;grid-template-columns:1fr 220px;gap:12px}
.project-toolbar input,.project-toolbar select{margin:0}
.project-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.project-card{display:flex;flex-direction:column;gap:18px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:0 8px 28px rgba(24,30,55,.045)}
.project-card header{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}
.project-card header>div>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.08em}
.project-card h3{margin:3px 0 0;font-size:23px;line-height:1.2}
.project-card-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}
.project-card-metrics div{padding:11px;background:var(--surface-2);border-radius:10px}
.project-card-metrics span{display:block;color:var(--muted);font-size:10px}
.project-card-metrics strong{display:block;margin-top:3px;font-size:13px;overflow-wrap:anywhere}
.project-next-action{margin:0;padding:12px;border-left:3px solid var(--primary);background:var(--primary-soft);border-radius:0 9px 9px 0;color:#33385a;font-size:13px}
.project-card footer{display:flex;gap:9px;margin-top:auto}
.project-card footer .btn{flex:1}
.project-empty-state{grid-column:1/-1;padding:70px 20px;text-align:center;background:#fff;border:1px dashed #c9cfdb;border-radius:17px}
.project-empty-state h3{margin:14px 0 5px}
.project-empty-state p{margin:0 0 20px;color:var(--muted)}
.quick-project-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:18px;align-items:start}
.quick-project-form,.practical-explainer{padding:25px}
.quick-money-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.practical-explainer{position:sticky;top:155px}
.practical-explainer h2{margin:4px 0 22px;font-size:29px;line-height:1.15}
.practical-step{display:flex;gap:14px;padding:17px 0;border-top:1px solid var(--line)}
.practical-step>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:var(--primary);color:#fff;font-weight:900}
.practical-step strong{display:block}
.practical-step p{margin:3px 0 0;color:var(--muted);font-size:13px}
.project-page{display:grid;gap:18px}
.project-page-header{display:flex;justify-content:space-between;gap:25px;align-items:flex-end;padding:28px;background:#fff;border:1px solid var(--line);border-radius:18px}
.project-page-header h2{margin:3px 0 5px;font-size:38px;line-height:1.08}
.project-page-header>div>p:last-child{max-width:760px;margin:0;color:var(--muted)}
.back-link{display:inline-flex;margin-bottom:15px;padding:0;border:0;background:transparent;color:var(--primary);font-weight:800}
.project-header-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;justify-content:flex-end}
.project-page-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.project-page-metrics small{display:block;margin-top:4px;color:var(--muted);font-size:10px}
.project-page-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:18px;align-items:start}
.project-scope-card,.project-settings-card,.project-request-workbench,.project-change-history{padding:24px}
.project-scope-card h3{font-size:14px;margin:0 0 10px}
.compact-list{margin:0;padding-left:20px;color:var(--muted)}
.compact-list li{margin-bottom:7px}
.more-items{color:var(--primary);font-weight:750}
.project-scope-card details{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.project-scope-card summary{cursor:pointer;font-weight:800}
.details-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:18px}
.project-settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}
.project-settings-grid label{margin-bottom:0}
.project-settings-grid label:last-child{grid-column:1/-1}
.request-workbench-header{margin-bottom:22px}
.request-workbench-header h2{margin:3px 0 5px;font-size:29px}
.request-workbench-header p:last-child{margin:0;color:var(--muted)}
.project-request-form{display:grid;gap:12px;padding:18px;background:var(--surface-2);border-radius:14px}
.project-request-form label{margin:0}
.project-request-form .btn{justify-self:start}
.quick-request-result{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.quick-request-decision{display:grid;grid-template-columns:48px 1fr;gap:14px;padding:18px;border:1px solid var(--line);border-radius:14px}
.quick-request-decision.outside{background:var(--danger-soft);border-color:#ffd1cc}
.quick-request-decision.inside{background:var(--success-soft);border-color:#c7e9d7}
.quick-request-decision.clarify{background:var(--warning-soft);border-color:#f2dea2}
.quick-request-symbol{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#fff;font-size:22px;font-weight:900}
.quick-request-decision h3{margin:8px 0 3px}
.quick-request-decision p{margin:0;color:var(--muted)}
.quick-request-impact{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.quick-request-impact>div,.quick-request-impact>label{margin:0;padding:13px;border:1px solid var(--line);border-radius:10px}
.quick-request-impact span{display:block;color:var(--muted);font-size:10px}
.quick-request-impact strong{display:block;margin-top:3px}
.quick-request-impact select{margin-top:6px}
.quick-evidence-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;padding:20px 0}
.quick-evidence-grid h3{margin:0 0 8px}
.quick-request-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
.status-action{min-height:42px;padding:0 13px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:800}
.status-action:hover{background:var(--surface-2)}
.status-action.approved{border-color:#b9e2cd;color:var(--success);background:var(--success-soft)}
.status-action.rejected{border-color:#ffd1cc;color:var(--danger);background:var(--danger-soft)}
.practical-ledger-row{grid-template-columns:minmax(0,1.3fr) minmax(150px,.65fr) 150px auto}
.advanced-tools-panel{padding:32px;background:#fff;border:1px solid var(--line);border-radius:18px}
.advanced-tools-panel>header{max-width:760px;margin-bottom:28px}
.advanced-tools-panel h2{margin:4px 0 6px;font-size:34px}
.advanced-tools-panel header>p:last-child{margin:0;color:var(--muted)}
.advanced-tool-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.advanced-tool-card{padding:24px;text-align:left;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--text)}
.advanced-tool-card:hover{border-color:#b9b2ff;background:#fbfaff}
.advanced-tool-card>span{color:var(--primary);font-size:11px;font-weight:900}
.advanced-tool-card strong{display:block;margin:9px 0 4px;font-size:20px}
.advanced-tool-card p{margin:0;color:var(--muted)}
@media(max-width:980px){
  .project-cards,.quick-project-layout,.project-page-grid{grid-template-columns:1fr}
  .practical-explainer{position:static}
  .quick-money-grid,.project-page-metrics{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){
  .practical-intro,.project-hub-header,.project-page-header{align-items:flex-start;flex-direction:column}
  .practical-new-project{width:100%;margin:0}
  .practical-tabs .workspace-tab{flex:0 0 auto}
  .hub-metrics,.project-page-metrics,.quick-money-grid,.quick-request-impact{grid-template-columns:1fr}
  .project-toolbar,.project-card-metrics,.project-settings-grid,.details-grid,.quick-evidence-grid,.advanced-tool-grid{grid-template-columns:1fr}
  .project-card footer,.project-header-actions{width:100%;flex-direction:column}
  .project-card footer .btn,.project-header-actions .btn{width:100%}
  .practical-ledger-row{grid-template-columns:1fr}
}


/* v0.6 daily action center */
.today-center{display:grid;gap:18px}
.today-header{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;padding:28px;background:#171a2a;color:#fff;border-radius:20px}
.today-header h2{margin:3px 0 5px;font-size:34px;line-height:1.15}
.today-header p:last-child{margin:0;color:#c8ccda;max-width:760px}
.today-header .panel-kicker{color:#b6b0ff}
.today-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.today-metrics article{padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px}
.today-metrics span{display:block;color:var(--muted);font-size:12px}
.today-metrics strong{display:block;margin-top:4px;font-size:29px;line-height:1.1}
.today-metrics small{display:block;margin-top:5px;color:var(--muted);font-size:10px}
.today-main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:18px;align-items:start}
.inbox-capture-card,.attention-summary-card,.data-safety-card,.attention-queue-card{padding:24px}
.capture-state{padding:6px 10px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:800}
.inbox-request-form{display:grid;gap:12px}
.inbox-request-form label{margin:0}
.capture-options-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.inbox-result{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.inbox-result-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:12px 0 18px}
.inbox-result-summary>div,.inbox-result-summary>label{margin:0;padding:12px;border:1px solid var(--line);border-radius:10px}
.inbox-result-summary span{display:block;color:var(--muted);font-size:10px}
.inbox-result-summary strong{display:block;margin-top:3px}
.inbox-result-summary select{margin-top:5px}
.today-side-stack{display:grid;gap:18px}
.attention-summary{display:grid;gap:9px}
.attention-summary button,.attention-clear{display:grid;grid-template-columns:45px 1fr;gap:11px;align-items:center;width:100%;padding:12px;text-align:left;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--text)}
.attention-summary button:hover{background:var(--surface-2)}
.attention-summary strong,.attention-clear strong{font-size:21px;color:var(--primary);text-align:center}
.attention-summary span,.attention-clear span{color:var(--muted);font-size:13px}
.data-safety-card>p{color:var(--muted)}
.backup-meta{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-block:1px solid var(--line);font-size:13px}
.backup-meta span{color:var(--muted)}
.backup-actions{display:grid;gap:9px;margin-top:15px}
.import-label{cursor:pointer}
.attention-queue-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px}
.attention-queue-head>div:first-child>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.attention-queue-head h2{margin:3px 0 0}
.queue-filters{display:flex;gap:9px}
.queue-filters select{margin:0;width:auto;min-width:175px}
.attention-queue{display:grid;gap:9px}
.attention-row{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(130px,.45fr) 145px 145px auto;gap:12px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}
.attention-row.due{border-left:5px solid var(--danger)}
.attention-row.high:not(.due){border-left:5px solid var(--warning)}
.attention-row-main{min-width:0}
.attention-row-main>strong{display:block;margin:5px 0 2px;overflow-wrap:anywhere}
.attention-row-main>small{display:block;color:var(--muted)}
.attention-row-labels{display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:var(--muted);font-size:10px}
.priority-pill,.due-pill{padding:3px 7px;border-radius:999px;font-weight:850}
.priority-pill.high{background:var(--warning-soft);color:var(--warning)}
.priority-pill.normal{background:var(--surface-2);color:var(--muted)}
.priority-pill.low{background:var(--success-soft);color:var(--success)}
.due-pill{background:var(--danger-soft);color:var(--danger)}
.attention-row-impact strong{display:block}
.attention-row-impact span{display:block;color:var(--muted);font-size:10px}
.inline-followup{margin:0;color:var(--muted);font-size:10px}
.inline-followup input,.queue-status{margin-top:4px;padding:8px 9px;font-size:12px}
.attention-row-actions{display:flex;gap:6px}
.project-request-options{grid-template-columns:repeat(3,1fr)}
@media(max-width:1100px){
  .today-main-grid{grid-template-columns:1fr}
  .today-side-stack{grid-template-columns:repeat(2,1fr)}
  .attention-row{grid-template-columns:minmax(0,1fr) 145px 145px}
  .attention-row-impact{grid-column:2}
  .inline-followup{grid-column:3}
  .queue-status{grid-column:2}
  .attention-row-actions{grid-column:3;justify-content:flex-end}
}
@media(max-width:760px){
  .today-header,.attention-queue-head{align-items:flex-start;flex-direction:column}
  .today-header .btn{width:100%}
  .today-metrics,.capture-options-grid,.inbox-result-summary,.today-side-stack,.project-request-options{grid-template-columns:1fr}
  .queue-filters{width:100%;flex-direction:column}
  .queue-filters select{width:100%}
  .attention-row{grid-template-columns:1fr}
  .attention-row-impact,.inline-followup,.queue-status,.attention-row-actions{grid-column:auto}
  .attention-row-actions{justify-content:flex-start}
}


/* v0.7 actual work and profit tracker */
.today-metrics{grid-template-columns:repeat(5,1fr)}
.quick-work-card{padding:22px}
.quick-work-form{display:grid;gap:11px}
.quick-work-form label{margin:0}
.recent-work-card{padding:22px}
.work-log-list{display:grid;gap:9px}
.work-log-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(200px,.8fr) auto auto;gap:13px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:#fff}
.work-log-row>div>strong{display:block}
.work-log-row>div>span{display:block;color:var(--muted);font-size:11px;margin-top:2px}
.work-log-amount{text-align:right}
.actual-performance-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.actual-performance-strip article{padding:18px;background:#171a2a;color:#fff;border-radius:14px}
.actual-performance-strip article span{display:block;color:#bfc3d2;font-size:11px}
.actual-performance-strip article strong{display:block;margin-top:5px;font-size:25px}
.actual-performance-strip article small{display:block;margin-top:4px;color:#bfc3d2;font-size:10px}
.profit-alert{grid-column:1/-1;padding:13px 15px;border-radius:11px;background:var(--surface-2);color:var(--muted);font-size:13px;font-weight:700}
.profit-alert.controlled{background:var(--success-soft);color:var(--success)}
.profit-alert.watch{background:var(--warning-soft);color:var(--warning)}
.profit-alert.risk{background:var(--danger-soft);color:var(--danger)}
.project-work-panel{padding:24px}
.project-work-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:18px;align-items:start}
.project-work-form{display:grid;gap:11px;padding:17px;background:var(--surface-2);border-radius:13px}
.project-work-form label{margin:0}
.work-profit-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.work-profit-summary div{padding:14px;border:1px solid var(--line);border-radius:11px}
.work-profit-summary span{display:block;color:var(--muted);font-size:11px}
.work-profit-summary strong{display:block;margin-top:4px;font-size:18px}
.project-work-history{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.dashboard-actual-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}
.dashboard-actual-grid article{padding:15px;border:1px solid var(--line);border-radius:11px;background:#171a2a;color:#fff}
.dashboard-actual-grid span{display:block;color:#bfc3d2;font-size:11px}
.dashboard-actual-grid strong{display:block;margin-top:4px;font-size:20px}
.dashboard-actual-grid small{display:block;margin-top:3px;color:#bfc3d2;font-size:10px}
.project-card-metrics{grid-template-columns:repeat(4,1fr)}
@media(max-width:1050px){.today-metrics{grid-template-columns:repeat(3,1fr)}.actual-performance-strip,.dashboard-actual-grid{grid-template-columns:repeat(2,1fr)}.project-work-layout{grid-template-columns:1fr}}
@media(max-width:720px){.today-metrics,.actual-performance-strip,.dashboard-actual-grid,.work-profit-summary{grid-template-columns:1fr}.work-log-row{grid-template-columns:1fr}.work-log-amount{text-align:left}.project-card-metrics{grid-template-columns:repeat(2,1fr)}}

/* v0.7 homepage four-stage value strip */
.value-grid{grid-template-columns:repeat(4,1fr)}
@media(max-width:920px){.value-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.value-grid{grid-template-columns:1fr}}


/* v0.8 client approval portal */
.approval-center{display:grid;gap:18px}
.approval-center-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:28px;background:#171a2a;color:#fff;border-radius:20px}
.approval-center-header h2{margin:3px 0 6px;font-size:34px;line-height:1.12}
.approval-center-header p:last-child{margin:0;max-width:760px;color:#c8ccda}
.approval-center-header .panel-kicker{color:#b6b0ff}
.approval-backend-card{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;background:#fff;border:1px solid var(--line);border-radius:14px}
.approval-backend-status{display:flex;align-items:center;gap:13px}
.approval-backend-status p{margin:2px 0 0;color:var(--muted);font-size:13px}
.backend-dot{width:13px;height:13px;border-radius:50%;background:var(--warning);box-shadow:0 0 0 5px var(--warning-soft)}
.backend-dot.ready{background:var(--success);box-shadow:0 0 0 5px var(--success-soft)}
.backend-dot.error{background:var(--danger);box-shadow:0 0 0 5px var(--danger-soft)}
.approval-setup{padding:20px 24px;background:var(--warning-soft);border:1px solid #efd792;border-radius:14px}
.approval-setup h3{margin:0 0 8px}
.approval-setup ol{margin:0;padding-left:22px}
.approval-setup li{margin-bottom:6px}
.approval-setup p{margin:12px 0 0;color:var(--muted)}
.approval-center-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.8fr);gap:18px;align-items:start}
.approval-publish-card,.approval-rules-card,.approval-records-card{padding:24px}
.approval-rules-card h2{margin:4px 0 18px;font-size:28px;line-height:1.15}
.approval-rule{display:flex;gap:13px;padding:15px 0;border-top:1px solid var(--line)}
.approval-rule>span{display:grid;place-items:center;flex:0 0 33px;width:33px;height:33px;border-radius:10px;background:var(--primary);color:#fff;font-weight:900}
.approval-rule strong{display:block}
.approval-rule p{margin:2px 0 0;color:var(--muted);font-size:13px}
.approval-toolbar{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:14px}
.approval-toolbar input,.approval-toolbar select{margin:0}
.approval-records{display:grid;gap:11px}
.approval-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start;padding:18px;border:1px solid var(--line);border-radius:13px}
.approval-record-title>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.approval-record-title h3{margin:2px 0 0;font-size:18px}
.approval-record-main>p{margin:5px 0 9px;color:var(--muted);font-size:12px}
.approval-record-meta{display:flex;flex-wrap:wrap;gap:7px}
.approval-record-meta>span{padding:5px 8px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:750}
.approval-status.approved{background:var(--success-soft);color:var(--success)}
.approval-status.rejected{background:var(--danger-soft);color:var(--danger)}
.approval-status.changes{background:var(--warning-soft);color:var(--warning)}
.approval-status.pending{background:var(--primary-soft);color:var(--primary)}
.approval-record blockquote{margin:12px 0 0;padding:10px 12px;border-left:3px solid var(--primary);background:var(--primary-soft);color:#33385a;font-size:12px}
.approval-record-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:250px}
.approval-record-actions a.mini-btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.practical-ledger-row{grid-template-columns:minmax(0,1.3fr) minmax(150px,.65fr) 150px auto auto}
@media(max-width:920px){.approval-center-grid{grid-template-columns:1fr}.approval-record{grid-template-columns:1fr}.approval-record-actions{justify-content:flex-start;max-width:none}}
@media(max-width:720px){.approval-center-header,.approval-backend-card{align-items:flex-start;flex-direction:column}.approval-toolbar{grid-template-columns:1fr}.practical-ledger-row{grid-template-columns:1fr}}


/* public client approval record */
.approval-public-body{background:#f2f3f7;min-height:100vh}
.approval-public-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:0 max(22px,calc((100vw - 980px)/2));background:#fff;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}
.approval-public-shell{width:min(calc(100% - 28px),980px);margin:34px auto 70px}
.approval-public-loading,.approval-public-error{display:grid;place-items:center;text-align:center;min-height:520px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:20px}
.approval-public-loading h1,.approval-public-error h1{margin:16px 0 4px}
.approval-public-loading p,.approval-public-error p{margin:0;color:var(--muted)}
.approval-loader{width:42px;height:42px;border:4px solid var(--primary-soft);border-top-color:var(--primary);border-radius:50%;animation:approval-spin .8s linear infinite}
@keyframes approval-spin{to{transform:rotate(360deg)}}
.approval-public-record{overflow:hidden;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow)}
.approval-public-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:30px;background:#171a2a;color:#fff}
.approval-public-hero .panel-kicker{color:#b6b0ff}
.approval-public-hero h1{margin:4px 0 4px;font-size:37px;line-height:1.08}
.approval-public-hero p:last-child{margin:0;color:#c8ccda}
.approval-public-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border-bottom:1px solid var(--line)}
.approval-public-meta>div{padding:15px;background:#fff}
.approval-public-meta span,.approval-commercial-summary span{display:block;color:var(--muted);font-size:10px;margin-bottom:3px}
.approval-public-summary,.approval-public-section,.approval-decision-form,.approval-existing-decision{padding:24px 30px;border-bottom:1px solid var(--line)}
.approval-public-summary h2,.approval-public-section h2,.approval-decision-form h2,.approval-existing-decision h2{margin:0 0 9px;font-size:20px}
.approval-public-summary p,.approval-public-section p,.approval-decision-intro p{margin:0;color:var(--muted)}
.approval-public-section ul{margin:0;padding-left:22px;color:var(--muted)}
.approval-public-section li{margin-bottom:8px}
.approval-commercial-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:24px 30px;border-bottom:1px solid var(--line)}
.approval-commercial-summary>div{padding:14px;background:var(--surface-2);border-radius:10px}
.approval-change-rule{background:var(--primary-soft)}
.approval-existing-decision{background:var(--success-soft)}
.approval-existing-decision blockquote{margin:12px 0 0;padding:12px;border-left:3px solid var(--primary);background:#fff}
.approval-confirm{display:flex;align-items:flex-start;gap:10px;padding:13px;background:var(--surface-2);border-radius:10px;font-weight:650}
.approval-confirm input{width:auto;margin:4px 0 0}
.approval-decision-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:16px}
.approved-action{background:var(--success);border-color:var(--success)}
.danger-action{background:var(--danger);border-color:var(--danger)}
.approval-public-footer{padding:18px 30px;color:var(--muted);font-size:11px}
@media(max-width:720px){.approval-public-hero{flex-direction:column}.approval-public-hero h1{font-size:31px}.approval-public-meta,.approval-commercial-summary{grid-template-columns:1fr 1fr}.approval-decision-actions .btn{width:100%}}
@media(max-width:480px){.approval-public-meta,.approval-commercial-summary{grid-template-columns:1fr}.approval-public-summary,.approval-public-section,.approval-decision-form,.approval-existing-decision{padding:20px}}


/* v1.0 client email delivery */
.workflow-topbar{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.workflow-nav{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;min-height:72px}
.workflow-primary-nav{display:flex;justify-content:center;gap:6px;min-width:0}
.workflow-primary-nav .workspace-tab{min-width:120px;border:0;background:transparent;border-radius:10px;color:var(--muted)}
.workflow-primary-nav .workspace-tab:hover{background:var(--surface-2);color:var(--text)}
.workflow-primary-nav .workspace-tab.active{background:var(--primary-soft);color:var(--primary)}
.workflow-primary-nav .workspace-tab span{display:inline-grid;place-items:center;min-width:19px;height:19px;margin-left:5px;padding:0 5px;border-radius:999px;background:#fff;font-size:10px}
.workflow-header-actions{display:flex;align-items:center;gap:8px}
.workflow-header-actions .local-note{max-width:150px}
.workspace{padding-top:30px}
.workflow-page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:22px}
.workflow-page-header h1{margin:4px 0 6px;font-size:clamp(34px,5vw,56px);line-height:1.04;letter-spacing:-.035em}
.workflow-page-header p:last-child{max-width:760px;margin:0;color:var(--muted)}
.workflow-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}
.workflow-metrics article{padding:18px;background:#fff;border:1px solid var(--line);border-radius:14px}
.workflow-metrics span{display:block;color:var(--muted);font-size:12px}
.workflow-metrics strong{display:block;margin:5px 0 2px;font-size:29px}
.workflow-metrics small{color:var(--muted);font-size:10px}
.workflow-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(310px,.65fr);gap:18px;align-items:start}
.workflow-actions-panel,.workflow-health-panel{padding:24px}
.workflow-count{padding:6px 9px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:11px;font-weight:800}
.workflow-action-list{display:grid;gap:10px}
.workflow-action-item{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:13px;background:#fff}
.workflow-action-item.clear{opacity:.84}
.workflow-action-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--primary-soft);color:var(--primary);font-size:19px;font-weight:900}
.workflow-action-item>div:nth-child(2)>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.07em}
.workflow-action-item h3{margin:2px 0 3px;font-size:17px}
.workflow-action-item p{margin:0;color:var(--muted);font-size:12px}
.workflow-dashboard-side{display:grid;gap:18px}
.workflow-health-list{display:grid;gap:8px}
.workflow-health-item{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:13px;border:1px solid var(--line);border-radius:11px;background:#fff;text-align:left;color:var(--text)}
.workflow-health-item:hover{background:var(--surface-2)}
.workflow-health-item strong{display:block}
.workflow-health-item div span{display:block;margin-top:2px;color:var(--muted);font-size:10px}
.workflow-rule-card{padding:24px;background:#171a2a;color:#fff}
.workflow-rule-card>span{color:#aaa3ff;font-size:10px;font-weight:900;letter-spacing:.1em}
.workflow-rule-card h2{margin:6px 0 8px;font-size:24px}
.workflow-rule-card p{margin:0;color:#cbd0df}
.workflow-empty{padding:55px 20px;text-align:center}
.workflow-empty h3{margin:12px 0 5px}
.workflow-empty p{max-width:520px;margin:0 auto 18px;color:var(--muted)}

.project-wizard{max-width:1100px;margin:0 auto}
.wizard-page-header{margin-bottom:18px}
.wizard-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px;padding:0;list-style:none}
.wizard-progress li{display:flex;gap:11px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:13px;background:#fff;color:var(--muted)}
.wizard-progress li>span{display:grid;place-items:center;flex:0 0 32px;width:32px;height:32px;border-radius:10px;background:var(--surface-2);font-weight:900}
.wizard-progress strong,.wizard-progress small{display:block}
.wizard-progress small{font-size:10px}
.wizard-progress li.active{border-color:var(--primary);background:var(--primary-soft);color:var(--text)}
.wizard-progress li.active>span{background:var(--primary);color:#fff}
.wizard-progress li.complete>span{background:var(--success);color:#fff}
.wizard-step{display:none;padding:28px}
.wizard-step.active{display:block}
.wizard-step-head{margin-bottom:22px}
.wizard-step-head>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.wizard-step-head h2{margin:4px 0 5px;font-size:30px}
.wizard-step-head p{margin:0;color:var(--muted)}
.wizard-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.wizard-form-grid .wide{grid-column:1/-1}
.wizard-commercial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}
.wizard-scope-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}
.wizard-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}
.wizard-final-actions>div{display:flex;gap:9px}
.wizard-review-note{margin-top:14px;padding:14px;border-left:3px solid var(--warning);background:var(--warning-soft);border-radius:0 10px 10px 0;color:#6d5420}
.wizard-final-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.wizard-final-summary div{padding:14px;border:1px solid var(--line);border-radius:11px}
.wizard-final-summary span{display:block;color:var(--muted);font-size:10px}
.wizard-final-summary strong{display:block;margin-top:3px}
.wizard-approval-options{display:grid;grid-template-columns:minmax(240px,.5fr) 1fr;gap:14px;margin-top:16px;align-items:stretch}
.wizard-client-card{padding:16px;border:1px solid var(--line);border-radius:11px;background:var(--surface-2)}
.wizard-client-card span,.wizard-client-card strong,.wizard-client-card small{display:block}
.wizard-client-card span{color:var(--primary);font-size:10px;font-weight:900}
.wizard-client-card small{margin-top:4px;color:var(--muted)}

.settings-page{max-width:1100px;margin:0 auto}
.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.settings-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;align-items:start;padding:23px}
.settings-card>.btn,.settings-card>.settings-actions{grid-column:2}
.settings-card-wide{grid-column:1/-1}
.settings-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--primary-soft);color:var(--primary);font-weight:900}
.settings-card span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.08em}
.settings-card h2{margin:3px 0 4px;font-size:22px}
.settings-card p{margin:0;color:var(--muted)}
.settings-card small{display:block;margin-top:6px;color:var(--muted)}
.settings-actions{display:flex;gap:9px;flex-wrap:wrap}
.advanced-settings-grid{grid-column:2;display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.advanced-settings-grid button{padding:14px;border:1px solid var(--line);border-radius:11px;background:#fff;text-align:left;color:var(--text)}
.advanced-settings-grid button:hover{border-color:#bdb7ff;background:var(--primary-soft)}
.advanced-settings-grid strong,.advanced-settings-grid span{display:block}
.advanced-settings-grid span{margin-top:3px;color:var(--muted);font-size:11px;font-weight:500;letter-spacing:0}

.project-lifecycle{padding:16px;background:#fff;border:1px solid var(--line);border-radius:14px}
.project-lifecycle-steps{display:grid;grid-template-columns:repeat(5,1fr)}
.project-lifecycle-steps>div{position:relative;display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px}
.project-lifecycle-steps>div:not(:last-child)::after{content:"";position:absolute;left:36px;right:4px;top:15px;height:2px;background:var(--line)}
.project-lifecycle-steps span{position:relative;z-index:1;display:grid;place-items:center;width:30px;height:30px;border-radius:999px;background:var(--surface-2);font-weight:900}
.project-lifecycle-steps .active{color:var(--primary)}
.project-lifecycle-steps .active span{background:var(--primary);color:#fff}
.project-lifecycle-steps .complete{color:var(--success)}
.project-lifecycle-steps .complete span{background:var(--success);color:#fff}
.project-lifecycle-steps .complete::after{background:var(--success)!important}
.project-next-action{display:grid;grid-template-columns:50px minmax(0,1fr) auto;gap:16px;align-items:center;padding:20px;border:1px solid #c8c3ff;border-radius:15px;background:linear-gradient(135deg,#f7f5ff,#fff)}
.project-next-icon{display:grid;place-items:center;width:48px;height:48px;border-radius:13px;background:var(--primary);color:#fff;font-size:21px;font-weight:900}
.project-next-action>div:nth-child(2)>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.project-next-action h2{margin:3px 0 4px;font-size:23px}
.project-next-action p{margin:0;color:var(--muted)}
.project-next-buttons{display:flex;gap:8px}
.project-section-nav{display:flex;gap:7px;padding:7px;border:1px solid var(--line);border-radius:13px;background:#fff;overflow-x:auto}
.project-section-nav button{flex:1;min-width:120px;padding:11px;border:0;border-radius:9px;background:transparent;color:var(--muted);font-weight:800}
.project-section-nav button.active{background:var(--primary-soft);color:var(--primary)}
.project-section-nav span{display:inline-grid;place-items:center;min-width:19px;height:19px;margin-left:4px;padding:0 5px;border-radius:999px;background:#fff;font-size:10px}
[data-project-section]{display:none!important}
[data-project-section].active{display:block!important}
.project-page-metrics.active,.actual-performance-strip.active{display:grid!important}
.project-page-grid.active{display:grid!important}
.project-more-menu{position:relative}
.project-more-menu summary{list-style:none;padding:10px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:800;cursor:pointer}
.project-more-menu summary::-webkit-details-marker{display:none}
.project-more-menu>div{position:absolute;right:0;top:calc(100% + 7px);z-index:30;display:grid;min-width:210px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 15px 35px rgba(20,25,50,.15)}
.project-more-menu button{padding:11px;border:0;border-radius:8px;background:#fff;text-align:left;font-weight:750}
.project-more-menu button:hover{background:var(--surface-2)}
.project-approval-activity{display:grid;gap:10px}
.project-approval-card{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:12px}
.project-approval-card>div:first-child>span{color:var(--primary);font-size:10px;font-weight:900}
.project-approval-card h3{margin:3px 0}
.project-approval-card p,.project-approval-card small{margin:0;color:var(--muted)}
.project-approval-card>div:last-child{display:flex;gap:7px;flex-wrap:wrap}
.project-approval-card.empty{background:var(--surface-2)}
.client-review-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;max-width:760px;margin:0 auto 16px;padding:0;list-style:none}
.client-review-steps li{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--muted);font-weight:800}
.client-review-steps span{display:grid;place-items:center;width:25px;height:25px;border-radius:999px;background:var(--surface-2)}
.client-review-steps .active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}
.client-review-steps .active span{background:var(--primary);color:#fff}
.approval-decision-intro>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}

@media(max-width:980px){
  .workflow-nav{grid-template-columns:auto 1fr}
  .workflow-header-actions{grid-column:1/-1;justify-content:flex-end}
  .workflow-dashboard-grid,.settings-grid{grid-template-columns:1fr}
  .settings-card-wide{grid-column:auto}
  .workflow-metrics{grid-template-columns:repeat(2,1fr)}
  .wizard-commercial-grid{grid-template-columns:repeat(2,1fr)}
  .project-lifecycle-steps strong{display:block}
}
@media(max-width:720px){
  .workflow-nav{display:flex;flex-wrap:wrap;gap:10px;padding-block:10px}
  .workflow-primary-nav{order:3;width:100%;justify-content:flex-start;overflow-x:auto}
  .workflow-primary-nav .workspace-tab{flex:1;min-width:105px}
  .workflow-header-actions{margin-left:auto}
  .workflow-header-actions .local-note,.workflow-header-actions #headerBackupButton{display:none}
  .workspace{padding-top:18px;padding-bottom:88px}
  .workflow-page-header,.project-next-action{grid-template-columns:1fr;align-items:flex-start}
  .workflow-page-header{flex-direction:column}
  .workflow-page-header .btn{width:100%}
  .workflow-metrics,.wizard-form-grid,.wizard-commercial-grid,.wizard-scope-grid,.wizard-final-summary,.wizard-approval-options{grid-template-columns:1fr}
  .wizard-form-grid .wide{grid-column:auto}
  .wizard-progress li div{display:none}
  .wizard-final-actions{align-items:stretch;flex-direction:column}
  .wizard-final-actions>div{display:grid}
  .settings-card{grid-template-columns:40px minmax(0,1fr)}
  .advanced-settings-grid{grid-column:1/-1;grid-template-columns:1fr}
  .project-lifecycle-steps{grid-template-columns:repeat(5,34px);justify-content:space-between}
  .project-lifecycle-steps>div:not(:last-child)::after{left:30px;right:-4px}
  .project-next-buttons{width:100%;display:grid}
  .project-section-nav button{flex:0 0 auto}
  .project-approval-card{align-items:flex-start;flex-direction:column}
  .client-review-steps{font-size:12px}
}


body.modal-open{overflow:hidden}
.project-client-strip{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(250px,1.2fr) auto;gap:16px;align-items:center;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:14px}
.project-client-strip span,.project-card-client span{display:block;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.07em}
.project-client-strip strong,.project-client-strip a{display:block;margin-top:3px;font-size:16px;font-weight:800;overflow-wrap:anywhere}
.project-client-strip a{color:var(--primary)}
.project-client-strip small{display:block;margin-top:3px;color:var(--muted)}
.project-client-actions{display:flex;justify-content:flex-end}
.project-setting-wide{grid-column:1/-1}
.project-card-client{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border-radius:9px;background:var(--surface-2);font-size:11px}
.project-card-client a,.project-card-client strong{color:var(--text);font-size:11px;overflow-wrap:anywhere}
.client-directory-card{align-items:start}
.client-directory-tools{grid-column:2}
.client-directory-list{grid-column:1/-1;display:grid;gap:9px;margin-top:4px}
.client-directory-item{display:grid;grid-template-columns:42px minmax(180px,.8fr) minmax(220px,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}
.client-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--primary-soft);color:var(--primary);font-size:18px;font-weight:900}
.client-directory-item strong,.client-directory-item span,.client-directory-item a,.client-directory-item small{display:block}
.client-directory-item span,.client-directory-item small{color:var(--muted)}
.client-directory-item a{margin-top:3px;color:var(--primary);font-weight:800;overflow-wrap:anywhere}
.client-directory-item small{margin-top:4px}
.client-directory-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
.approval-recipient-preview{padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);margin-bottom:14px}
.approval-recipient-preview span,.approval-recipient-preview strong{display:block}
.approval-recipient-preview span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.08em}
.approval-recipient-preview strong{margin-top:4px;overflow-wrap:anywhere}

.email-composer-backdrop{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.72);backdrop-filter:blur(5px)}
.email-composer{width:min(1060px,100%);max-height:calc(100vh - 36px);overflow:auto;background:#fff;border-radius:20px;box-shadow:0 30px 90px rgba(0,0,0,.3)}
.email-composer>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding:24px 26px;border-bottom:1px solid var(--line)}
.email-composer>header span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.email-composer>header h2{margin:4px 0 3px;font-size:28px}
.email-composer>header p{margin:0;color:var(--muted)}
.email-composer-close{width:38px;height:38px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:24px;line-height:1}
.email-composer-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);gap:0}
.email-composer-form{padding:25px;border-right:1px solid var(--line)}
.email-composer-status{padding:11px 12px;border-radius:9px;background:var(--surface-2);color:var(--muted);font-size:12px}
.email-composer-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.email-preview{padding:30px;background:#f2f3f7}
.email-preview-brand{padding:20px 22px;border-radius:15px 15px 0 0;background:#171a2a;color:#8f84ff;font-weight:900;letter-spacing:.1em}
.email-preview>p,.email-preview>h3,.email-preview>div,.email-preview>small{background:#fff;margin:0;padding-inline:24px}
.email-preview-eyebrow{padding-top:25px;color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.email-preview h3{padding-top:6px;font-size:26px;line-height:1.2}
#emailPreviewNote{padding-top:13px;padding-bottom:18px;color:var(--muted);line-height:1.6;white-space:pre-line}
.email-preview-project{padding-top:15px;padding-bottom:15px;background:#f6f5ff!important;margin-inline:24px!important;border-radius:11px}
.email-preview-project span,.email-preview-project strong{display:block}
.email-preview-project span{color:var(--primary);font-size:9px;font-weight:900}
.email-preview-project strong{margin-top:3px}
.email-preview-summary{display:grid;gap:0;padding-top:18px}
.email-preview-summary div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}
.email-preview-summary span{color:var(--muted);font-size:12px}
.email-preview-button{margin:22px 24px 0!important;padding:14px!important;border-radius:10px;background:var(--primary)!important;color:#fff;text-align:center;font-weight:900}
.email-preview small{display:block;padding-top:15px;padding-bottom:24px;border-radius:0 0 15px 15px;color:var(--muted);text-align:center}

@media(max-width:900px){
  .project-client-strip{grid-template-columns:1fr 1fr}
  .project-client-actions{grid-column:1/-1}
  .project-client-actions .btn{width:100%}
  .client-directory-item{grid-template-columns:42px 1fr}
  .client-directory-item>div:nth-child(3),.client-directory-actions{grid-column:2}
  .client-directory-actions{justify-content:flex-start}
  .email-composer-grid{grid-template-columns:1fr}
  .email-composer-form{border-right:0;border-bottom:1px solid var(--line)}
}
@media(max-width:620px){
  .project-client-strip{grid-template-columns:1fr}
  .project-client-actions{grid-column:auto}
  .email-composer-backdrop{padding:0}
  .email-composer{height:100vh;max-height:none;border-radius:0}
  .email-composer>header{padding:18px}
  .email-composer-form,.email-preview{padding:18px}
  .email-composer-actions{display:grid}
  .client-directory-item{grid-template-columns:38px minmax(0,1fr)}
}

.project-client-strip.active{display:grid!important}


/* v1.1 project controls and request-email workflow */
.workflow-header-actions .local-note{display:none!important}
.workspace-status-pill{display:flex;align-items:center;gap:9px;min-width:190px;max-width:230px;padding:8px 11px;border:1px solid #dfe4eb;border-radius:12px;background:#fff;box-shadow:0 2px 8px rgba(22,27,42,.04)}
.workspace-status-dot{flex:0 0 9px;width:9px;height:9px;border-radius:999px;background:#9aa1b2;box-shadow:0 0 0 4px #eef0f4}
.workspace-status-dot.online{background:#168a5b;box-shadow:0 0 0 4px #e6f7ef}.workspace-status-dot.offline{background:#b56d12;box-shadow:0 0 0 4px #fff1dc}
.workspace-status-pill strong,.workspace-status-pill small{display:block}.workspace-status-pill strong{font-size:11px;line-height:1.2}.workspace-status-pill small{margin-top:2px;color:var(--muted);font-size:9px;line-height:1.25}
.project-lifecycle{overflow:hidden}.project-lifecycle-steps{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start}
.project-lifecycle-steps::before{content:"";position:absolute;z-index:0;top:15px;left:10%;right:10%;height:2px;background:var(--line)}
.project-lifecycle-steps>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center;color:var(--muted);font-size:10px}
.project-lifecycle-steps>div:not(:last-child)::after,.project-lifecycle-steps .complete::after{display:none!important}.project-lifecycle-steps span{background:var(--surface-2);box-shadow:0 0 0 6px #fff}.project-lifecycle-steps strong{display:block!important;max-width:130px;padding:0 4px;background:#fff;line-height:1.25}
.request-title-email-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:12px}.field-note{display:block;margin-top:5px;color:var(--muted);font-size:10px;font-weight:500}
.request-send-explainer{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:15px;padding:15px;border:1px solid #cfcaff;border-radius:12px;background:linear-gradient(135deg,#f7f5ff,#fff)}
.request-send-explainer span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.1em}.request-send-explainer strong{display:block;margin-top:2px;font-size:16px}.request-send-explainer p{margin:3px 0 0;color:var(--muted);font-size:11px}
.request-send-state{flex:0 0 auto;padding:8px 10px;border-radius:999px;background:var(--surface-2);color:var(--muted);font-size:10px;font-weight:900}.request-send-state.ready{background:var(--primary-soft);color:var(--primary)}.request-send-state.sending{background:var(--warning-soft);color:#7a5a14}.request-send-state.failed{background:#fff0ee;color:#a9342a}
.ledger-client-email{display:block;margin-top:5px;color:var(--primary);font-size:11px;font-weight:800;overflow-wrap:anywhere}.project-ledger-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.danger-menu-item{color:#b52c25!important}.danger-menu-item:hover{background:#fff0ee!important}.danger-zone-card{border-color:#edc3bf;background:#fffafa}.danger-zone-card>div:nth-child(2)>span{color:#b52c25}.danger-icon{background:#fff0ee!important;color:#b52c25!important}.danger-button{background:#b52c25!important;border-color:#b52c25!important;color:#fff!important}.danger-button:hover{background:#92231e!important;border-color:#92231e!important}
.danger-confirm-backdrop{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.76);backdrop-filter:blur(5px)}.danger-confirm-modal{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;width:min(620px,100%);padding:26px;background:#fff;border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.32)}.danger-confirm-icon{display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:#fff0ee;color:#b52c25;font-size:24px;font-weight:900}.danger-confirm-modal>div:nth-child(2)>span{color:#b52c25;font-size:9px;font-weight:900;letter-spacing:.1em}.danger-confirm-modal h2{margin:4px 0 5px;font-size:27px}.danger-confirm-modal p{margin:0;color:var(--muted);line-height:1.6}.danger-confirm-modal label,.danger-confirm-note,.danger-confirm-actions{grid-column:1/-1}.danger-confirm-note{padding:12px;border-left:3px solid #b52c25;border-radius:0 9px 9px 0;background:#fff5f4;color:#6c3734;font-size:11px}.danger-confirm-actions{display:flex;justify-content:flex-end;gap:9px}
@media(max-width:900px){.request-title-email-grid{grid-template-columns:1fr}.project-ledger-actions{justify-content:flex-start}}
@media(max-width:720px){.workspace-status-pill{margin-left:auto;min-width:0;max-width:190px}.workspace-status-pill small{display:none}.project-lifecycle-steps::before{left:8%;right:8%}.project-lifecycle-steps strong{font-size:8px;max-width:70px}.request-send-explainer{align-items:flex-start;flex-direction:column}.danger-confirm-modal{grid-template-columns:1fr}.danger-confirm-icon{width:42px;height:42px}}


/* v1.2 product clarity and trust */
.clarity-site{background:#fbfbfd}
.clarity-topbar{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.96);backdrop-filter:blur(14px)}
.clarity-hero{padding:86px 0 72px;background:radial-gradient(circle at 88% 8%,#e8e4ff 0,transparent 28%),linear-gradient(180deg,#fff,#f7f7fb)}
.clarity-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);gap:58px;align-items:center}
.clarity-hero-copy h1{max-width:760px;margin:8px 0 18px;font-size:clamp(48px,7vw,82px);line-height:.98;letter-spacing:-.055em}
.clarity-lead{max-width:720px;margin:0;color:#50586c;font-size:clamp(19px,2.4vw,26px);line-height:1.55}
.clarity-hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin:30px 0 20px}
.clarity-trust-row{display:flex;gap:9px 18px;flex-wrap:wrap;color:#41495d;font-size:12px;font-weight:800}
.clarity-example-card{padding:24px;border:1px solid #dcdfea;border-radius:20px;background:#fff;box-shadow:0 28px 75px rgba(29,33,53,.12)}
.clarity-example-head,.clarity-result-action{display:flex;justify-content:space-between;gap:15px;align-items:center}
.clarity-example-head span,.clarity-result-label,.clarity-result-action span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.clarity-example-card blockquote{margin:18px 0;padding:18px;border:0;border-radius:13px;background:#f2f3f7;color:#303748;font-size:17px;line-height:1.6}
.clarity-result-label{margin-bottom:9px}
.clarity-result-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}
.clarity-result-grid>div{padding:13px;border:1px solid var(--line);border-radius:11px}
.clarity-result-grid span,.clarity-result-grid strong{display:block}
.clarity-result-grid span{color:var(--muted);font-size:10px}
.clarity-result-grid strong{margin-top:4px;font-size:16px}
.clarity-result-action{margin-top:12px;padding:14px;border-radius:11px;background:#171a2a;color:#fff}
.clarity-result-action strong{font-size:13px;text-align:right}
.clarity-proof-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.clarity-proof-strip .container{display:grid;grid-template-columns:repeat(3,1fr)}
.clarity-proof-strip span{padding:17px;text-align:center;color:#4f5669;font-size:12px;font-weight:900}
.clarity-proof-strip span:not(:last-child){border-right:1px solid var(--line)}
.clarity-problem-grid{display:grid;grid-template-columns:minmax(0,.75fr) minmax(420px,1.25fr);gap:55px;align-items:center}
.clarity-before-after{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}
.clarity-before-after article{padding:25px;border-radius:17px;border:1px solid var(--line)}
.clarity-before{background:#fff8f7;border-color:#f0cbc7!important}
.clarity-after{background:#f4fff9;border-color:#bfe3d2!important}
.clarity-before-after span{font-size:10px;font-weight:900;letter-spacing:.1em}
.clarity-before span{color:#ae3930}.clarity-after span{color:#16754e}
.clarity-before-after h3{margin:8px 0 7px;font-size:24px}
.clarity-before-after p{margin:0;color:var(--muted)}
.clarity-centered{text-align:center;max-width:820px;margin-inline:auto}
.clarity-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}
.clarity-steps article{display:flex;gap:16px;padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff}
.clarity-steps article>span{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;border-radius:12px;background:var(--primary);color:#fff;font-weight:900}
.clarity-steps h3{margin:1px 0 7px;font-size:21px}
.clarity-steps p{margin:0;color:var(--muted)}
.clarity-demo-cta{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:20px 22px;border-radius:16px;background:#171a2a;color:#fff}
.clarity-demo-cta span,.clarity-demo-cta strong{display:block}
.clarity-demo-cta span{color:#9d95ff;font-size:10px;font-weight:900;letter-spacing:.1em}
.clarity-demo-cta strong{margin-top:4px}
.clarity-audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:25px}
.clarity-audience-grid article{padding:24px;border:1px solid var(--line);border-radius:16px;background:#fff}
.clarity-audience-grid span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.clarity-audience-grid h3{margin:7px 0;font-size:22px}
.clarity-audience-grid p{margin:0;color:var(--muted)}
.clarity-trust-grid{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(0,1.3fr);gap:38px;align-items:start}
.clarity-storage-map{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:9px;align-items:stretch}
.clarity-storage-map article{padding:18px;border:1px solid var(--line);border-radius:14px;background:#fff}
.clarity-storage-map article>span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.08em}
.clarity-storage-map h3{margin:6px 0;font-size:18px}
.clarity-storage-map p{margin:0;color:var(--muted);font-size:12px}
.clarity-map-arrow{display:grid;place-items:center;color:var(--primary);font-size:20px}
.clarity-trust-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.clarity-trust-facts div{padding:15px;border-top:3px solid var(--primary);border-radius:8px;background:#fff}
.clarity-trust-facts strong,.clarity-trust-facts span{display:block}
.clarity-trust-facts span{margin-top:4px;color:var(--muted);font-size:11px}
.text-link{display:inline-block;margin-top:13px;color:var(--primary);font-weight:900}
.clarity-faq-layout{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);gap:48px;align-items:start}
.clarity-faq{display:grid;gap:9px}
.clarity-faq details{padding:0 18px;border:1px solid var(--line);border-radius:13px;background:#fff}
.clarity-faq summary{padding:17px 0;cursor:pointer;font-weight:900}
.clarity-faq p{margin:0;padding:0 0 17px;color:var(--muted)}
.clarity-final-cta .cta-inner{align-items:center}
.clarity-final-cta .cta-inner p:last-child{max-width:720px;margin:8px 0 0;color:#d5d8e5}
.clarity-final-actions{display:flex;gap:9px;flex-wrap:wrap}
.clarity-dark-outline{border-color:#666d80!important;background:transparent!important;color:#fff!important}
.data-guide-page article{max-width:1080px}
.data-guide-lead{max-width:800px;font-size:20px;color:var(--muted)}
.data-guide-map{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;gap:13px;align-items:stretch;margin:28px 0}
.data-guide-map>section{padding:22px;border:1px solid var(--line);border-radius:15px;background:#fff}
.data-guide-map>div{display:grid;place-items:center;color:var(--primary);font-size:24px}
.data-guide-map span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.08em}
.data-guide-map h2{margin:6px 0 9px}
.data-guide-map p{color:var(--muted)}
.data-guide-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}

.workflow-page-actions{display:flex;gap:9px;flex-wrap:wrap}
.workflow-empty-actions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap}
.wizard-action-note{max-width:560px;color:var(--muted);font-size:11px}
.wizard-commercial-note{margin-top:15px;padding:14px;border-left:3px solid var(--warning);border-radius:0 10px 10px 0;background:var(--warning-soft);color:#6d5420}
.wizard-step[data-wizard-step="3"] .wizard-final-summary{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.settings-backup-warning{margin-top:10px;padding:10px;border-radius:9px;background:#fff1df;color:#79561b;font-size:11px;font-weight:700}

.guided-demo{max-width:980px;margin:0 auto}
.demo-safe-badge{padding:8px 11px;border-radius:999px;background:#e8f8ef;color:#16754e;font-size:10px;font-weight:900}
.demo-progress{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:0 0 18px;padding:0;list-style:none}
.demo-progress li{display:flex;align-items:center;gap:9px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--muted)}
.demo-progress li span{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;background:var(--surface-2);font-weight:900}
.demo-progress li.active{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}
.demo-progress li.active span{background:var(--primary);color:#fff}
.demo-progress li.complete span{background:var(--success);color:#fff}
.demo-step{display:none;padding:28px}
.demo-step.active{display:block}
.demo-step-heading>span{color:var(--primary);font-size:10px;font-weight:900;letter-spacing:.1em}
.demo-step-heading h2{margin:5px 0 5px;font-size:31px}
.demo-step-heading p{margin:0 0 20px;color:var(--muted)}
.demo-project-summary{display:grid;grid-template-columns:1.3fr .8fr .6fr;gap:9px;margin-bottom:15px}
.demo-project-summary>div{padding:13px;border:1px solid var(--line);border-radius:11px}
.demo-project-summary span,.demo-project-summary strong{display:block}
.demo-project-summary span{color:var(--muted);font-size:9px}
.demo-project-summary strong{margin-top:4px}
.demo-impact-alert{padding:20px;border:1px solid #efc7c3;border-radius:14px;background:#fff5f4}
.demo-impact-alert>span{color:#b1372e;font-size:10px;font-weight:900;letter-spacing:.1em}
.demo-impact-alert h3{margin:5px 0;font-size:26px}
.demo-impact-alert p{margin:0;color:#705552}
.demo-impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:13px 0}
.demo-impact-grid article{padding:15px;border:1px solid var(--line);border-radius:11px}
.demo-impact-grid span,.demo-impact-grid strong{display:block}
.demo-impact-grid span{color:var(--muted);font-size:10px}
.demo-impact-grid strong{margin-top:5px;font-size:18px}
.demo-response-preview{padding:17px;border-left:3px solid var(--primary);border-radius:0 11px 11px 0;background:var(--primary-soft)}
.demo-response-preview span{color:var(--primary);font-size:9px;font-weight:900}
.demo-response-preview p{margin:6px 0 0;color:#444b60}
.demo-email-shell{max-width:680px;margin:0 auto;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#f2f3f7}
.demo-email-brand{padding:24px;background:#171a2a;color:#8f84ff;font-weight:900;letter-spacing:.1em}
.demo-email-brand span{display:block;margin-top:6px;color:#fff;font-size:10px}
.demo-email-body{margin:18px;padding:25px;border-radius:13px;background:#fff}
.demo-email-body h3{margin:0 0 9px;font-size:27px}
.demo-email-body>p{color:var(--muted)}
.demo-email-project{padding:13px;border-radius:10px;background:var(--primary-soft)}
.demo-email-project span,.demo-email-project strong{display:block}
.demo-email-project span{color:var(--primary);font-size:9px;font-weight:900}
.demo-email-summary{margin-top:13px}
.demo-email-summary>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}
.demo-email-summary span{color:var(--muted)}
.demo-email-button{margin-top:20px;padding:14px;border-radius:10px;background:var(--primary);color:#fff;text-align:center;font-weight:900}
.demo-email-body small{display:block;margin-top:13px;color:var(--muted);text-align:center}
.demo-complete{margin-top:16px;padding:18px;border-radius:13px;background:#effaf4;text-align:center}
.demo-complete span{color:#16754e;font-size:9px;font-weight:900}
.demo-complete h3{margin:5px 0}
.demo-complete p{margin:0;color:#577064}
.demo-final-actions{justify-content:flex-end}

@media(max-width:980px){
  .clarity-hero-grid,.clarity-problem-grid,.clarity-trust-grid,.clarity-faq-layout{grid-template-columns:1fr}
  .clarity-storage-map,.data-guide-map{grid-template-columns:1fr}
  .clarity-map-arrow,.data-guide-map>div{transform:rotate(90deg);min-height:24px}
  .clarity-trust-facts{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:760px){
  .clarity-nav-links{display:none}
  .clarity-hero{padding:58px 0 48px}
  .clarity-hero-copy h1{font-size:51px}
  .clarity-result-grid,.clarity-before-after,.clarity-steps,.clarity-audience-grid,.clarity-trust-facts{grid-template-columns:1fr}
  .clarity-proof-strip .container{grid-template-columns:1fr}
  .clarity-proof-strip span:not(:last-child){border-right:0;border-bottom:1px solid var(--line)}
  .clarity-demo-cta,.clarity-final-cta .cta-inner{align-items:flex-start;flex-direction:column}
  .clarity-demo-cta .btn,.clarity-final-actions,.clarity-final-actions .btn{width:100%}
  .demo-project-summary,.demo-impact-grid{grid-template-columns:1fr 1fr}
  .demo-progress strong{font-size:10px}
}
@media(max-width:520px){
  .clarity-hero-copy h1{font-size:43px}
  .clarity-hero-actions,.clarity-hero-actions .btn{width:100%}
  .clarity-result-grid,.demo-project-summary,.demo-impact-grid{grid-template-columns:1fr}
  .demo-step{padding:19px}
  .demo-progress strong{display:none}
}


/* v1.3 first user success */
.first-success-card{margin-bottom:18px;padding:22px;border:1px solid #cfcaff;border-radius:16px;background:linear-gradient(135deg,#f8f7ff,#fff)}
.first-success-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.first-success-header>div:first-child>span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.11em}
.first-success-header h2{margin:4px 0;font-size:25px}
.first-success-header p{margin:0;color:var(--muted)}
.first-success-score{text-align:right}
.first-success-score strong,.first-success-score span{display:block}
.first-success-score strong{font-size:29px;color:var(--primary)}
.first-success-score span{color:var(--muted);font-size:10px}
.first-success-progress{height:7px;margin:17px 0;border-radius:999px;background:#e9e7f4;overflow:hidden}
.first-success-progress span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--primary),#8b7fff);transition:width .25s ease}
.first-success-list{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}
.first-success-list article{display:flex;gap:9px;align-items:flex-start;padding:11px;border:1px solid var(--line);border-radius:11px;background:#fff}
.first-success-list article>span{display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:8px;background:var(--surface-2);font-size:11px;font-weight:900}
.first-success-list strong,.first-success-list small{display:block}
.first-success-list strong{font-size:11px}
.first-success-list small{margin-top:3px;color:var(--muted);font-size:9px;line-height:1.35}
.first-success-list article.complete{border-color:#bfe2d1;background:#f6fff9}
.first-success-list article.complete>span{background:#168a5b;color:#fff}
.first-success-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:14px}
.first-success-footer small{color:var(--muted)}

.project-next-copy{min-width:0}
.project-next-why{display:flex;gap:7px;align-items:baseline;margin-top:8px;padding-top:8px;border-top:1px solid #e1def8;color:#555d70;font-size:11px}
.project-next-why strong{flex:0 0 auto;color:var(--primary);font-size:9px;text-transform:uppercase;letter-spacing:.08em}
.project-readiness-strip{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 16px;border:1px solid var(--line);border-radius:13px;background:#fff}
.project-readiness-strip>div:first-child>span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.project-readiness-strip strong,.project-readiness-strip p{display:block}
.project-readiness-strip strong{margin-top:3px}
.project-readiness-strip p{margin:3px 0 0;color:var(--muted);font-size:10px}
.project-readiness-strip.complete{border-color:#bfe2d1;background:#f6fff9}
.project-readiness-strip.incomplete{border-color:#ead3a9;background:#fffaf1}
.project-readiness-items{display:flex;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.project-readiness-items span{padding:5px 7px;border-radius:999px;font-size:9px;font-weight:800}
.project-readiness-items .ready{background:#e5f6ee;color:#16754e}
.project-readiness-items .missing{background:#fff0da;color:#8a6019}

.project-section-guide{display:flex;gap:14px;align-items:flex-start;padding:13px 15px;border-left:3px solid var(--primary);border-radius:0 11px 11px 0;background:#f6f5ff}
.project-section-guide>span{flex:0 0 auto;padding-top:2px;color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.project-section-guide h3{margin:0;font-size:15px}
.project-section-guide p{margin:3px 0 0;color:var(--muted);font-size:11px}

.request-essential-control{display:grid;grid-template-columns:minmax(230px,360px);margin-top:12px}
.request-optional-controls{margin:12px 0;padding:0 14px;border:1px solid var(--line);border-radius:11px;background:#fff}
.request-optional-controls summary{display:flex;justify-content:space-between;gap:12px;padding:13px 0;cursor:pointer;font-weight:900}
.request-optional-controls summary span{color:var(--muted);font-size:10px;font-weight:500}
.request-optional-controls .project-request-options{padding:0 0 14px}

.guided-empty-state{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:14px;align-items:center;padding:18px;border:1px dashed #cfd3dd;border-radius:13px;background:#fafbfc}
.guided-empty-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:var(--primary-soft);color:var(--primary);font-weight:900}
.guided-empty-state h3{margin:0 0 4px;font-size:16px}
.guided-empty-state p{margin:0;color:var(--muted);font-size:11px}
.project-approval-card.guidance{border-style:dashed;background:#fafbfc}

@media(max-width:1100px){
  .first-success-list{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .first-success-header,.first-success-footer,.project-readiness-strip{align-items:flex-start;flex-direction:column}
  .first-success-score{text-align:left}
  .first-success-list{grid-template-columns:1fr}
  .first-success-footer .btn{width:100%}
  .project-readiness-items{justify-content:flex-start}
  .project-next-why{align-items:flex-start;flex-direction:column}
  .guided-empty-state{grid-template-columns:42px minmax(0,1fr)}
  .guided-empty-state .btn{grid-column:1/-1;width:100%}
  .request-optional-controls summary{align-items:flex-start;flex-direction:column}
}


/* v1.4 lifecycle guidance and completion control */
.project-lifecycle{padding:18px 20px}
.project-lifecycle-header{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:17px}
.project-lifecycle-header>div>span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.1em}
.project-lifecycle-header>div>strong,.project-lifecycle-header>div>small{display:block}
.project-lifecycle-header>div>strong{margin-top:4px;font-size:17px}
.project-lifecycle-header>div>small{margin-top:3px;color:var(--muted);font-size:10px}
.project-lifecycle-help{position:relative;flex:0 0 auto}
.project-lifecycle-help>summary{cursor:pointer;color:var(--primary);font-size:11px;font-weight:900;list-style:none}
.project-lifecycle-help>summary::-webkit-details-marker{display:none}
.project-lifecycle-help-card{position:absolute;z-index:40;top:28px;right:0;width:min(440px,82vw);padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff;box-shadow:0 20px 60px rgba(24,27,43,.18)}
.project-lifecycle-help-card article{display:flex;gap:10px;padding:9px}
.project-lifecycle-help-card article+article{border-top:1px solid var(--line)}
.project-lifecycle-help-card article>span{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border-radius:8px;background:var(--primary-soft);color:var(--primary);font-size:10px;font-weight:900}
.project-lifecycle-help-card strong,.project-lifecycle-help-card p{display:block}
.project-lifecycle-help-card p{margin:2px 0 0;color:var(--muted);font-size:10px}
.project-lifecycle-steps>div{cursor:default;user-select:none}
.project-lifecycle-steps>div>small{display:block;min-height:13px;color:var(--muted);font-size:8px}
.project-lifecycle-steps>div.active>small{color:var(--primary);font-weight:900}
.project-lifecycle-steps>div.complete>small{color:#168a5b}
.project-lifecycle-guidance{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:18px;padding:15px;border:1px solid #dcd8ff;border-radius:13px;background:linear-gradient(135deg,#f7f5ff,#fff)}
.project-lifecycle-guidance>div:first-child>span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.project-lifecycle-guidance strong,.project-lifecycle-guidance p,.project-lifecycle-guidance small{display:block}
.project-lifecycle-guidance strong{margin-top:3px;font-size:15px}
.project-lifecycle-guidance p{margin:4px 0 0;color:var(--muted);font-size:11px}
.project-lifecycle-guidance small{margin-top:6px;color:#635d78;font-size:9px;font-style:italic}
.project-lifecycle-actions{display:flex;gap:8px;flex:0 0 auto}
.reopen-project-menu{color:#6955cb!important}

.completion-backdrop{position:fixed;inset:0;z-index:1150;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.78);backdrop-filter:blur(6px)}
.completion-modal{width:min(780px,100%);max-height:92vh;overflow:auto;padding:25px;border-radius:19px;background:#fff;box-shadow:0 35px 100px rgba(0,0,0,.35)}
.completion-modal>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:17px;border-bottom:1px solid var(--line)}
.completion-modal>header span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.1em}
.completion-modal>header h2{margin:4px 0;font-size:29px}
.completion-modal>header p{margin:0;color:var(--muted)}
.modal-close{border:0;background:transparent;color:var(--muted);font-size:28px;line-height:1;cursor:pointer}
.completion-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:17px 0}
.completion-summary article{padding:13px;border:1px solid var(--line);border-radius:11px}
.completion-summary span,.completion-summary strong{display:block}
.completion-summary span{color:var(--muted);font-size:9px}
.completion-summary strong{margin-top:4px;font-size:16px}
.completion-checks-section{padding:16px;border:1px solid var(--line);border-radius:13px;background:#fafbfc}
.completion-section-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}
.completion-section-head span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.completion-section-head strong{font-size:11px}
.completion-checks{display:grid;gap:7px}
.completion-checks article{display:flex;gap:10px;align-items:flex-start;padding:11px;border-radius:10px;background:#fff}
.completion-checks article>span{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:8px;font-size:11px;font-weight:900}
.completion-checks strong,.completion-checks p{display:block}
.completion-checks p{margin:2px 0 0;color:var(--muted);font-size:10px}
.completion-checks .passed{border:1px solid #bfe2d1}.completion-checks .passed>span{background:#168a5b;color:#fff}
.completion-checks .blocked{border:1px solid #efc5c1}.completion-checks .blocked>span{background:#b33a31;color:#fff}
.completion-checks .warning{border:1px solid #ead3a9}.completion-checks .warning>span{background:#fff0d5;color:#8a6019}
.completion-warning{margin-top:11px;padding:11px;border-radius:9px;background:#fff3df;color:#76551c;font-size:11px;font-weight:700}
.completion-form{display:grid;gap:12px;margin-top:16px}
.completion-confirm{display:flex!important;gap:9px;align-items:flex-start;padding:13px;border-radius:10px;background:#f4f3ff}
.completion-confirm input{flex:0 0 auto;width:auto;margin-top:3px}
.completion-confirm span{font-size:11px;line-height:1.5}
.completion-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:17px}
.project-approval-card.completion-record{border-color:#bfe2d1;background:#f6fff9}

@media(max-width:820px){
  .project-lifecycle-header,.project-lifecycle-guidance{align-items:flex-start;flex-direction:column}
  .project-lifecycle-actions{width:100%;flex-wrap:wrap}
  .project-lifecycle-actions .btn{flex:1 1 180px}
  .completion-summary{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .project-lifecycle-help{width:100%}
  .project-lifecycle-help-card{left:0;right:auto;width:100%}
  .completion-summary{grid-template-columns:1fr}
  .completion-section-head{align-items:flex-start;flex-direction:column}
  .completion-actions{flex-direction:column-reverse}
  .completion-actions .btn{width:100%}
}


/* v1.5 workspace safety and recovery */
.recovery-center-card{border-color:#c8dcf3;background:linear-gradient(135deg,#f4f9ff,#fff)}
.recovery-icon{background:#e9f3ff!important;color:#2466a7!important}
.recovery-status-row{display:flex;gap:7px 14px;flex-wrap:wrap;margin-top:8px}
.recovery-status-row small{padding:5px 8px;border-radius:999px;background:#edf3f9;color:#4d6175;font-size:9px;font-weight:700}

.recovery-backdrop,.import-preview-backdrop{position:fixed;inset:0;z-index:1180;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.8);backdrop-filter:blur(6px)}
.recovery-modal{width:min(920px,100%);max-height:92vh;overflow:auto;padding:25px;border-radius:19px;background:#fff;box-shadow:0 35px 100px rgba(0,0,0,.36)}
.recovery-modal>header,.import-preview-modal>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:17px;border-bottom:1px solid var(--line)}
.recovery-modal>header span,.import-preview-modal>header span{color:#2466a7;font-size:9px;font-weight:900;letter-spacing:.1em}
.recovery-modal>header h2,.import-preview-modal>header h2{margin:4px 0;font-size:29px}
.recovery-modal>header p,.import-preview-modal>header p{margin:0;color:var(--muted)}
.recovery-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:17px 0}
.recovery-overview article{padding:13px;border:1px solid var(--line);border-radius:11px}
.recovery-overview span,.recovery-overview strong{display:block}
.recovery-overview span{color:var(--muted);font-size:9px}
.recovery-overview strong{margin-top:4px;font-size:15px}
.recovery-toolbar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.recovery-list{display:grid;gap:9px}
.recovery-snapshot-card{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:13px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}
.recovery-snapshot-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:#e9f3ff;color:#2466a7;font-size:20px;font-weight:900}
.recovery-snapshot-copy span,.recovery-snapshot-copy strong,.recovery-snapshot-copy small{display:block}
.recovery-snapshot-copy span{color:#2466a7;font-size:9px;font-weight:900;letter-spacing:.06em}
.recovery-snapshot-copy strong{margin-top:3px}
.recovery-snapshot-copy small{margin-top:3px;color:var(--muted);font-size:9px}
.recovery-snapshot-actions{display:flex;gap:7px;align-items:center}
.recovery-footer{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:17px;padding-top:15px;border-top:1px solid var(--line)}
.recovery-footer small{max-width:650px;color:var(--muted)}
.integrity-report{margin-bottom:14px;padding:14px;border-radius:11px}
.integrity-report strong,.integrity-report p{display:block}
.integrity-report p{margin:5px 0 0;font-size:10px}
.integrity-report div{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}
.integrity-report div span{padding:5px 7px;border-radius:999px;background:rgba(255,255,255,.7);font-size:9px;font-weight:700}
.integrity-report.healthy{border:1px solid #bfe2d1;background:#f2fff8;color:#1a6c4c}
.integrity-report.issues{border:1px solid #ecd09d;background:#fff9ed;color:#79551a}

.import-preview-modal{width:min(680px,100%);padding:25px;border-radius:19px;background:#fff;box-shadow:0 35px 100px rgba(0,0,0,.36)}
.import-preview-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:17px 0}
.import-preview-summary article{padding:13px;border:1px solid var(--line);border-radius:11px}
.import-preview-summary span,.import-preview-summary strong{display:block}
.import-preview-summary span{color:var(--muted);font-size:9px}
.import-preview-summary strong{margin-top:4px;font-size:19px}
.import-preview-warning{padding:14px;border-radius:11px}
.import-preview-warning strong,.import-preview-warning p{display:block}
.import-preview-warning p{margin:4px 0 0;font-size:10px}
.import-preview-warning.valid{border:1px solid #bfe2d1;background:#f2fff8;color:#1a6c4c}
.import-preview-warning.invalid{border:1px solid #efc5c1;background:#fff4f3;color:#96372f}
.import-preview-confirm{display:flex!important;gap:9px;align-items:flex-start;margin-top:14px;padding:13px;border-radius:10px;background:#f4f6fa}
.import-preview-confirm input{flex:0 0 auto;width:auto;margin-top:3px}
.import-preview-confirm span{font-size:11px;line-height:1.5}
.import-preview-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:17px}

@media(max-width:760px){
  .recovery-overview,.import-preview-summary{grid-template-columns:repeat(2,1fr)}
  .recovery-snapshot-card{grid-template-columns:40px minmax(0,1fr)}
  .recovery-snapshot-actions{grid-column:1/-1;justify-content:flex-end}
  .recovery-footer{align-items:flex-start;flex-direction:column}
}
@media(max-width:480px){
  .recovery-overview,.import-preview-summary{grid-template-columns:1fr}
  .recovery-toolbar,.recovery-toolbar .btn{width:100%}
  .import-preview-actions{flex-direction:column-reverse}
  .import-preview-actions .btn{width:100%}
}


/* v1.6 approval evidence and follow-up */
.evidence-backdrop{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.82);backdrop-filter:blur(6px)}
.evidence-modal{width:min(960px,100%);max-height:94vh;overflow:auto;padding:25px;border-radius:20px;background:#fff;box-shadow:0 38px 110px rgba(0,0,0,.38)}
.evidence-modal>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:17px;border-bottom:1px solid var(--line)}
.evidence-modal>header span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.1em}
.evidence-modal>header h2{margin:4px 0;font-size:29px}
.evidence-modal>header p{margin:0;color:var(--muted)}
.evidence-status-strip{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:15px 0}
.evidence-status-strip>span:not(.approval-status){padding:6px 9px;border-radius:999px;background:var(--surface-2);color:#525a6e;font-size:9px;font-weight:800}
.evidence-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.evidence-summary-grid article,.evidence-content-grid article{padding:13px;border:1px solid var(--line);border-radius:11px;background:#fff}
.evidence-summary-grid span,.evidence-summary-grid strong,.evidence-content-grid span,.evidence-content-grid strong{display:block}
.evidence-summary-grid span,.evidence-content-grid span{color:var(--muted);font-size:9px}
.evidence-summary-grid strong,.evidence-content-grid strong{margin-top:4px;font-size:14px}
.evidence-party-card{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:10px}
.evidence-party-card>div{padding:15px;border-radius:12px;background:#f6f5ff}
.evidence-party-card span,.evidence-party-card strong,.evidence-party-card small{display:block}
.evidence-party-card span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.08em}
.evidence-party-card strong{margin-top:4px}
.evidence-party-card small{margin-top:3px;color:var(--muted)}
.evidence-content-section,.evidence-timeline-section{margin-top:16px;padding:17px;border:1px solid var(--line);border-radius:13px;background:#fafbfc}
.evidence-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center}
.evidence-section-head span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.evidence-section-head strong{font-size:12px}
.evidence-content-section>p{color:var(--muted)}
.evidence-content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.evidence-content-section blockquote{margin:12px 0 0;padding:12px;border-left:3px solid var(--primary);border-radius:0 9px 9px 0;background:#f4f2ff}
.evidence-follow-up-section{display:grid;grid-template-columns:minmax(0,1fr) 180px auto auto;gap:10px;align-items:end;margin-top:16px;padding:15px;border:1px solid #e4d4a5;border-radius:13px;background:#fffaf0}
.evidence-follow-up-section>div>span,.evidence-follow-up-section>div>strong,.evidence-follow-up-section>div>small{display:block}
.evidence-follow-up-section>div>span{color:#80601f;font-size:9px;font-weight:900;letter-spacing:.09em}
.evidence-follow-up-section>div>strong{margin-top:3px}
.evidence-follow-up-section>div>small{margin-top:3px;color:#7a6b4a}
.evidence-follow-up-section.resolved{border-color:#c9e3d5;background:#f5fff9}
.follow-up-state.overdue{color:#b0372e}.follow-up-state.scheduled{color:#7a5c1c}.follow-up-state.resolved{color:#16754e}
.evidence-timeline{display:grid;margin-top:11px}
.evidence-timeline article{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:8px 0}
.evidence-timeline article:not(:last-child)::before{content:"";position:absolute;left:7px;top:22px;bottom:-8px;width:2px;background:#dfe2e9}
.evidence-timeline-dot{position:relative;z-index:1;width:16px;height:16px;border:4px solid #dcd8ff;border-radius:999px;background:var(--primary)}
.evidence-timeline small,.evidence-timeline strong,.evidence-timeline p{display:block}
.evidence-timeline small{color:var(--muted);font-size:9px}
.evidence-timeline strong{margin-top:2px;font-size:12px}
.evidence-timeline p{margin:2px 0 0;color:#60687a;font-size:10px}
.evidence-fingerprint{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:16px;padding:14px;border-radius:11px;background:#171a2a;color:#fff}
.evidence-fingerprint span,.evidence-fingerprint strong{display:block}
.evidence-fingerprint span{color:#9d95ff;font-size:9px;font-weight:900;letter-spacing:.08em}
.evidence-fingerprint strong{margin-top:4px;font-family:monospace;font-size:10px;word-break:break-all}
.evidence-fingerprint .mini-btn{border-color:#656b7d;color:#fff}
.evidence-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:17px}
.evidence-actions>div{display:flex;gap:8px;flex-wrap:wrap}
.follow-up-meta{font-weight:800}
.follow-up-meta.overdue{background:#fff0ee!important;color:#a7352d!important}
.follow-up-meta.scheduled{background:#fff4dd!important;color:#78591c!important}

@media(max-width:820px){
  .evidence-summary-grid{grid-template-columns:repeat(2,1fr)}
  .evidence-content-grid{grid-template-columns:repeat(2,1fr)}
  .evidence-follow-up-section{grid-template-columns:1fr 1fr}
  .evidence-actions{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
  .evidence-summary-grid,.evidence-content-grid,.evidence-party-card,.evidence-follow-up-section{grid-template-columns:1fr}
  .evidence-section-head{align-items:flex-start;flex-direction:column}
  .evidence-actions,.evidence-actions>div,.evidence-actions .btn{width:100%}
  .evidence-fingerprint{align-items:flex-start;flex-direction:column}
}


/* v1.7 client decision experience and receipt */
.client-review-steps li{align-items:flex-start}
.client-review-steps li>strong,.client-review-steps li>small{display:block}
.client-review-steps li>small{margin-top:2px;color:var(--muted);font-size:8px;font-weight:500}
.client-review-steps li.complete span{background:#168a5b;color:#fff}
.client-review-steps li.complete strong{color:#168a5b}

.approval-public-summary>div>span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.approval-public-summary>div h2{margin:4px 0}
.client-decision-meaning{display:flex;gap:13px;align-items:flex-start;margin-top:14px;padding:15px;border:1px solid #d9d5ff;border-radius:13px;background:#f7f6ff}
.client-decision-meaning-icon{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;background:var(--primary);color:#fff;font-weight:900}
.client-decision-meaning span,.client-decision-meaning strong,.client-decision-meaning p{display:block}
.client-decision-meaning span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.08em}
.client-decision-meaning strong{margin-top:3px}
.client-decision-meaning p{margin:3px 0 0;color:var(--muted);font-size:11px}
.approval-content-fingerprint{margin:17px 0;padding:14px;border-radius:12px;background:#171a2a;color:#fff}
.approval-content-fingerprint span,.approval-content-fingerprint strong,.approval-content-fingerprint small{display:block}
.approval-content-fingerprint span{color:#9d95ff;font-size:9px;font-weight:900;letter-spacing:.08em}
.approval-content-fingerprint strong{margin-top:5px;font-family:monospace;font-size:10px;word-break:break-all}
.approval-content-fingerprint small{margin-top:8px;color:#c9ccda;font-size:9px}

.client-identity-note{margin-bottom:13px;padding:12px;border-left:3px solid var(--primary);border-radius:0 10px 10px 0;background:#f6f5ff}
.client-identity-note span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.08em}
.client-identity-note p{margin:4px 0 0;color:var(--muted);font-size:10px}
.approval-decision-actions{display:grid!important;grid-template-columns:repeat(3,1fr);gap:9px}
.client-decision-choice{display:flex;gap:10px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left;cursor:pointer}
.client-decision-choice>span{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:10px;font-size:17px;font-weight:900}
.client-decision-choice strong,.client-decision-choice small{display:block}
.client-decision-choice small{margin-top:2px;color:var(--muted);font-size:9px}
.client-decision-choice.approved-action>span{background:#e6f7ef;color:#168a5b}
.client-decision-choice.changes-action>span{background:#fff2d9;color:#8a6019}
.client-decision-choice.rejected-action>span{background:#fff0ee;color:#b33a31}
.client-decision-choice:hover{border-color:var(--primary);transform:translateY(-1px)}

.client-decision-review-backdrop{position:fixed;inset:0;z-index:1250;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.82);backdrop-filter:blur(6px)}
.client-decision-review-modal{width:min(700px,100%);max-height:94vh;overflow:auto;padding:24px;border-radius:19px;background:#fff;box-shadow:0 38px 110px rgba(0,0,0,.4)}
.client-decision-review-modal>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:15px;border-bottom:1px solid var(--line)}
.client-decision-review-modal>header span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.client-decision-review-modal>header h2{margin:4px 0;font-size:28px}
.client-decision-review-modal>header p{margin:0;color:var(--muted)}
.client-modal-close{border:0;background:transparent;color:var(--muted);font-size:28px;cursor:pointer}
.client-decision-review-choice{display:flex;gap:12px;align-items:center;margin:16px 0;padding:15px;border-radius:13px}
.client-decision-review-choice>span{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;font-size:20px;font-weight:900}
.client-decision-review-choice strong,.client-decision-review-choice small{display:block}
.client-decision-review-choice small{margin-top:2px}
.client-decision-review-choice.approved{background:#effbf5;color:#166c4b}
.client-decision-review-choice.approved>span{background:#168a5b;color:#fff}
.client-decision-review-choice.changes{background:#fff9ed;color:#76551c}
.client-decision-review-choice.changes>span{background:#b17a1d;color:#fff}
.client-decision-review-choice.rejected{background:#fff4f3;color:#96372f}
.client-decision-review-choice.rejected>span{background:#b33a31;color:#fff}
.client-decision-review-identity{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.client-decision-review-identity>div{padding:13px;border:1px solid var(--line);border-radius:11px}
.client-decision-review-identity span,.client-decision-review-identity strong,.client-decision-review-identity small{display:block}
.client-decision-review-identity span{color:var(--muted);font-size:9px}
.client-decision-review-identity strong{margin-top:4px}
.client-decision-review-identity small{margin-top:3px;color:var(--muted)}
.client-decision-review-modal blockquote{margin:13px 0;padding:12px;border-left:3px solid var(--primary);border-radius:0 9px 9px 0;background:#f6f5ff}
.client-decision-review-impact{padding:14px;border-radius:11px;background:#f7f8fa}
.client-decision-review-impact>strong{display:block;margin-bottom:9px}
.client-decision-review-impact>div{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}
.client-decision-review-impact span{padding:10px;border-radius:9px;background:#fff}
.client-decision-review-impact small,.client-decision-review-impact b{display:block}
.client-decision-review-impact small{color:var(--muted);font-size:9px}
.client-decision-review-impact b{margin-top:3px}
.client-decision-final-confirm{display:flex!important;gap:9px;align-items:flex-start;margin-top:13px;padding:13px;border-radius:10px;background:#f4f3ff}
.client-decision-final-confirm input{flex:0 0 auto;width:auto;margin-top:3px}
.client-decision-final-confirm span{font-size:11px;line-height:1.5}
.client-decision-review-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:16px}

.approval-existing-decision>span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.08em}
.client-receipt-card{margin-top:17px;border:1px solid #dfe2ea;border-radius:15px;overflow:hidden;background:#fff}
.client-receipt-head{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px;background:#171a2a;color:#fff}
.client-receipt-head span,.client-receipt-head strong{display:block}
.client-receipt-head span{color:#9d95ff;font-size:9px;font-weight:900;letter-spacing:.09em}
.client-receipt-head strong{margin-top:4px;font-size:19px}
.client-receipt-head strong.approved{color:#77d3a8}.client-receipt-head strong.changes{color:#ffd47f}.client-receipt-head strong.rejected{color:#ff9d96}
.client-receipt-id{text-align:right}
.client-receipt-id strong{font-family:monospace;font-size:13px}
.client-receipt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:15px}
.client-receipt-grid article{padding:11px;border:1px solid var(--line);border-radius:10px}
.client-receipt-grid span,.client-receipt-grid strong{display:block}
.client-receipt-grid span{color:var(--muted);font-size:9px}
.client-receipt-grid strong{margin-top:4px;font-size:11px}
.client-receipt-next{margin:0 15px;padding:14px;border-radius:11px;background:#f6f5ff}
.client-receipt-next span,.client-receipt-next strong,.client-receipt-next p{display:block}
.client-receipt-next span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.08em}
.client-receipt-next strong{margin-top:4px}
.client-receipt-next p{margin:4px 0 0;color:var(--muted);font-size:10px}
.client-receipt-fingerprint{margin:12px 15px;padding:13px;border-radius:10px;background:#171a2a;color:#fff}
.client-receipt-fingerprint span,.client-receipt-fingerprint strong{display:block}
.client-receipt-fingerprint span{color:#9d95ff;font-size:9px;font-weight:900}
.client-receipt-fingerprint strong{margin-top:5px;font-family:monospace;font-size:9px;word-break:break-all}
.client-receipt-email-state{margin:0 15px;padding:10px;border-radius:9px;background:#f2f3f7;color:#596177;font-size:10px}
.client-receipt-email-state.sent{background:#effbf5;color:#166c4b}
.client-receipt-email-state.failed{background:#fff4f3;color:#96372f}
.client-receipt-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;padding:15px}

@media(max-width:760px){
  .approval-decision-actions{grid-template-columns:1fr}
  .client-decision-review-identity,.client-decision-review-impact>div{grid-template-columns:1fr}
  .client-receipt-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:520px){
  .client-review-steps li>small{display:none}
  .client-decision-review-actions{flex-direction:column-reverse}
  .client-decision-review-actions .btn{width:100%}
  .client-receipt-head{align-items:flex-start;flex-direction:column}
  .client-receipt-id{text-align:left}
  .client-receipt-grid{grid-template-columns:1fr}
  .client-receipt-actions,.client-receipt-actions .btn{width:100%}
}

/* v1.8 optional account and encrypted sync */
.account-sync-card{border-color:#c9d9f8;background:linear-gradient(135deg,#f2f7ff,#fff)}.account-sync-icon{background:#e8f1ff!important;color:#285ea8!important}.account-sync-status-row{display:flex;gap:7px 13px;flex-wrap:wrap;margin-top:8px}.account-sync-status-row small{padding:5px 8px;border-radius:999px;background:#eaf1fa;color:#49617d;font-size:9px;font-weight:700}
.account-auth-backdrop,.cloud-sync-backdrop{position:fixed;inset:0;z-index:1280;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.82);backdrop-filter:blur(6px)}.account-auth-modal{width:min(560px,100%);padding:25px;border-radius:19px;background:#fff;box-shadow:0 38px 110px rgba(0,0,0,.4)}.account-auth-modal>header,.cloud-sync-modal>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--line)}.account-auth-modal>header span,.cloud-sync-modal>header span{color:#285ea8;font-size:9px;font-weight:900;letter-spacing:.1em}.account-auth-modal>header h2,.cloud-sync-modal>header h2{margin:4px 0;font-size:29px}.account-auth-modal>header p,.cloud-sync-modal>header p{margin:0;color:var(--muted)}.account-auth-step{display:none;margin-top:17px}.account-auth-step.active{display:block}.account-auth-note{margin:13px 0;padding:13px;border-left:3px solid #285ea8;border-radius:0 10px 10px 0;background:#f1f6ff}.account-auth-note p{margin:4px 0 0;color:var(--muted);font-size:10px}.account-code-sent{padding:12px;border-radius:10px;background:#f2f6fc;color:#52637a;font-size:11px}.account-code-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:14px}.account-auth-status{min-height:20px;margin-top:12px;color:#8a6019;font-size:11px;font-weight:700}.account-auth-modal footer{margin-top:13px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted)}
.cloud-sync-modal{width:min(980px,100%);max-height:94vh;overflow:auto;padding:25px;border-radius:20px;background:#fff;box-shadow:0 38px 110px rgba(0,0,0,.42)}.cloud-sync-account-strip{display:grid;grid-template-columns:1fr 1fr .7fr;gap:9px;margin:16px 0}.cloud-sync-account-strip>div{padding:12px;border:1px solid var(--line);border-radius:11px;background:#fafbfc}.cloud-sync-account-strip span,.cloud-sync-account-strip strong{display:block}.cloud-sync-account-strip span{color:var(--muted);font-size:9px}.cloud-sync-comparison{display:grid;grid-template-columns:1fr 40px 1fr;gap:10px}.cloud-sync-comparison article{padding:17px;border:1px solid var(--line);border-radius:13px}.cloud-sync-comparison article>span{color:#285ea8;font-size:9px;font-weight:900}.cloud-sync-comparison strong,.cloud-sync-comparison p,.cloud-sync-comparison small{display:block}.cloud-sync-comparison p{color:var(--muted)}.cloud-sync-comparison small{font-family:monospace;font-size:9px}.cloud-sync-arrow{display:grid;place-items:center;color:#285ea8;font-size:25px}.cloud-passphrase-section{display:grid;grid-template-columns:1fr .8fr .8fr auto;gap:10px;align-items:end;margin-top:15px;padding:16px;border:1px solid #cedcf3;border-radius:13px;background:#f5f9ff}.cloud-passphrase-section>div>span{color:#285ea8;font-size:9px;font-weight:900}.cloud-passphrase-section>div p{margin:3px 0 0;color:var(--muted);font-size:10px}.cloud-sync-analysis{display:flex;gap:13px;margin-top:15px;padding:15px;border-radius:13px}.cloud-sync-analysis-icon{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;font-weight:900}.cloud-sync-analysis.upload{background:#f1f8ff;color:#245f94}.cloud-sync-analysis.restore,.cloud-sync-analysis.current{background:#f3fff8;color:#176b4c}.cloud-sync-analysis.conflict,.cloud-sync-analysis.error{background:#fff5f4;color:#96372f}.cloud-sync-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:14px}.cloud-auto-sync{display:flex!important;gap:10px;margin-top:14px;padding:13px;border-radius:11px;background:#f4f5f8}.cloud-auto-sync input{width:auto}.cloud-auto-sync strong,.cloud-auto-sync small{display:block}.cloud-auto-sync small{color:var(--muted)}.cloud-sync-history{margin-top:13px;padding:13px;border-radius:11px;background:#171a2a;color:#fff}.cloud-sync-history span,.cloud-sync-history strong,.cloud-sync-history small{display:block}.cloud-sync-history span{color:#8eaeff;font-size:9px;font-weight:900}.cloud-sync-history small{color:#c8ccda}.cloud-sync-footer{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.danger-text{color:#a7352d!important}
@media(max-width:900px){.cloud-passphrase-section{grid-template-columns:1fr 1fr}.cloud-passphrase-section>div{grid-column:1/-1}}@media(max-width:720px){.cloud-sync-account-strip,.cloud-sync-comparison,.cloud-passphrase-section{grid-template-columns:1fr}.cloud-sync-arrow{transform:rotate(90deg)}.cloud-sync-actions,.cloud-sync-actions .btn{width:100%}.cloud-sync-footer{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.account-code-actions{flex-direction:column-reverse}.account-code-actions .btn{width:100%}}


/* v1.9 pilot feedback and validation */
.product-feedback-card{border-color:#d9cdf6;background:linear-gradient(135deg,#f8f4ff,#fff)}
.feedback-icon{background:#efe8ff!important;color:#6846b4!important}
.demo-validation-card{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:15px;padding:16px;border:1px solid #d9cdf6;border-radius:13px;background:#faf7ff}
.demo-validation-card>div:first-child>span{color:#6846b4;font-size:9px;font-weight:900;letter-spacing:.09em}.demo-validation-card h3{margin:4px 0}.demo-validation-card p{margin:0;color:var(--muted);font-size:10px}
.demo-rating-buttons,.feedback-rating{display:flex;gap:7px;align-items:stretch}.demo-rating-buttons button,.feedback-rating button{min-width:48px;padding:9px;border:1px solid var(--line);border-radius:10px;background:#fff;color:#4f5568;font-weight:900;cursor:pointer}.demo-rating-buttons small,.feedback-rating small{display:block;margin-top:2px;font-size:7px;font-weight:600;color:var(--muted)}.demo-rating-buttons button:hover,.feedback-rating button:hover,.feedback-rating button.selected{border-color:var(--primary);background:#f4f2ff;color:var(--primary)}
.feedback-backdrop{position:fixed;inset:0;z-index:1320;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.84);backdrop-filter:blur(6px)}
.feedback-modal{width:min(790px,100%);max-height:94vh;overflow:auto;padding:25px;border-radius:20px;background:#fff;box-shadow:0 38px 110px rgba(0,0,0,.42)}
.feedback-modal>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--line)}.feedback-modal>header span{color:#6846b4;font-size:9px;font-weight:900;letter-spacing:.1em}.feedback-modal>header h2{margin:4px 0;font-size:29px}.feedback-modal>header p{margin:0;color:var(--muted)}
.feedback-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px;margin-top:16px}.feedback-rating-fieldset{margin:14px 0;padding:13px;border:1px solid var(--line);border-radius:11px}.feedback-rating-fieldset legend{padding:0 6px;font-size:10px;font-weight:800}.feedback-rating{justify-content:space-between}.feedback-rating button{flex:1}
.feedback-diagnostics-consent{display:flex!important;gap:10px;align-items:flex-start;margin-top:13px;padding:13px;border-radius:11px;background:#f4f5f8}.feedback-diagnostics-consent input{flex:0 0 auto;width:auto;margin-top:3px}.feedback-diagnostics-consent strong,.feedback-diagnostics-consent small{display:block}.feedback-diagnostics-consent small{margin-top:3px;color:var(--muted)}
.feedback-diagnostics-preview{margin-top:10px;padding:10px;border:1px solid var(--line);border-radius:9px}.feedback-diagnostics-preview summary{cursor:pointer;font-size:10px;font-weight:800}.feedback-diagnostics-preview pre{max-height:210px;overflow:auto;margin:9px 0 0;padding:10px;border-radius:8px;background:#171a2a;color:#dfe3f0;font-size:9px;white-space:pre-wrap}
.feedback-form-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:15px}.feedback-status{min-height:20px;margin-top:8px;color:#a7352d;font-size:10px;font-weight:700}.feedback-success{text-align:center;padding:30px 10px 18px}.feedback-success-icon{display:grid;place-items:center;width:54px;height:54px;margin:0 auto 12px;border-radius:16px;background:#168a5b;color:#fff;font-size:25px;font-weight:900}.feedback-success>span{color:#168a5b;font-size:9px;font-weight:900;letter-spacing:.1em}.feedback-success h3{margin:5px 0}.feedback-success p{color:var(--muted)}.feedback-id{display:inline-block;margin:12px 0 16px;padding:12px 18px;border-radius:10px;background:#171a2a;color:#fff}.feedback-id span,.feedback-id strong{display:block}.feedback-id span{color:#9d95ff;font-size:8px;font-weight:900}.feedback-id strong{margin-top:4px;font-family:monospace}.feedback-modal>footer{margin-top:13px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted)}
.pilot-feedback-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.pilot-feedback-layout{display:flex;justify-content:space-between;gap:30px;align-items:center}.pilot-feedback-layout h2{margin:5px 0}.pilot-feedback-layout p{max-width:720px}.pilot-feedback-actions{display:flex;gap:9px;flex:0 0 auto}
.feedback-admin-body{background:#f5f6fa}.feedback-admin-topbar{padding:14px 0;border-bottom:1px solid var(--line);background:#fff}.feedback-admin-topbar .container{display:flex;justify-content:space-between;align-items:center}.feedback-admin-main{padding-top:35px;padding-bottom:55px}.feedback-admin-login{max-width:620px;margin:30px auto;padding:28px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.feedback-admin-login>span,.feedback-admin-heading span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.1em}.feedback-admin-login h1,.feedback-admin-heading h1{margin:5px 0}.feedback-admin-login>div{display:flex;gap:9px;margin-top:16px}.feedback-admin-login input{flex:1}.feedback-admin-login small{display:block;margin-top:10px;color:#a7352d}
.feedback-admin-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.feedback-admin-heading>div:last-child{display:flex;gap:8px;flex-wrap:wrap}.feedback-admin-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:20px 0}.feedback-admin-metrics article{padding:14px;border:1px solid var(--line);border-radius:11px;background:#fff}.feedback-admin-metrics span,.feedback-admin-metrics strong{display:block}.feedback-admin-metrics span{color:var(--muted);font-size:9px}.feedback-admin-metrics strong{margin-top:4px;font-size:22px}
.feedback-admin-filters{display:grid;grid-template-columns:180px 200px minmax(220px,1fr) auto;gap:9px;margin-bottom:13px;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff}.feedback-admin-list{display:grid;gap:11px}.feedback-admin-card{padding:17px;border:1px solid var(--line);border-radius:13px;background:#fff}.feedback-admin-card>header{display:flex;justify-content:space-between;gap:15px}.feedback-admin-card>header span{color:var(--primary);font-size:9px;font-weight:900}.feedback-admin-card h2{margin:3px 0;font-size:16px}.feedback-admin-rating{color:#d59a1d;font-size:17px}.feedback-admin-meta{display:flex;gap:7px;flex-wrap:wrap;margin:9px 0}.feedback-admin-meta span,.feedback-admin-meta a{padding:5px 7px;border-radius:999px;background:#f0f2f7;color:#596177;font-size:9px}.feedback-admin-card>p{white-space:pre-wrap}.feedback-admin-card details pre{padding:10px;border-radius:8px;background:#171a2a;color:#dfe3f0;font-size:9px;white-space:pre-wrap}.feedback-admin-review{display:grid;grid-template-columns:160px minmax(240px,1fr) auto;gap:9px;align-items:end;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.feedback-admin-status{margin-top:12px;color:var(--muted);font-size:10px}
@media(max-width:820px){.demo-validation-card,.pilot-feedback-layout,.feedback-admin-heading{align-items:flex-start;flex-direction:column}.feedback-form-grid{grid-template-columns:1fr}.feedback-admin-metrics{grid-template-columns:repeat(2,1fr)}.feedback-admin-filters,.feedback-admin-review{grid-template-columns:1fr}.pilot-feedback-actions{width:100%;flex-wrap:wrap}.pilot-feedback-actions .btn{flex:1 1 190px}}
@media(max-width:520px){.demo-rating-buttons,.feedback-rating{width:100%;overflow-x:auto}.demo-rating-buttons button,.feedback-rating button{min-width:54px}.feedback-form-actions{flex-direction:column-reverse}.feedback-form-actions .btn{width:100%}.feedback-admin-login>div{flex-direction:column}.feedback-admin-metrics{grid-template-columns:1fr}}


/* v2.0 controlled updates and responsive polish */

/* Request status changes remain local to the select until Save update is pressed. */
.request-status-editor{
  display:grid;
  gap:6px;
  min-width:0;
  padding:7px;
  border:1px solid transparent;
  border-radius:10px;
  transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;
}
.request-status-editor select{
  width:100%;
  min-width:0;
  margin:0;
}
.request-status-editor-footer{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  min-width:0;
}
.request-status-state{
  flex:1 1 auto;
  min-width:0;
  color:var(--muted);
  font-size:9px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.request-status-editor.dirty{
  border-color:#cfc9ff;
  background:#f8f7ff;
  box-shadow:0 0 0 3px rgba(92,76,240,.06);
}
.request-status-editor.dirty .request-status-state{
  color:#5d4fc6;
  font-weight:750;
}
.request-status-save{
  border-color:var(--primary)!important;
  background:var(--primary)!important;
  color:#fff!important;
  white-space:nowrap;
}
.request-status-cancel{
  white-space:nowrap;
}

/* Prevent long unbroken project text from escaping the project header. */
.project-page,
.project-page-header,
.project-page-header>div:first-child,
.project-card header>div,
.ledger-main,
.workflow-health-item>div{
  min-width:0;
}
.project-page-header{
  align-items:flex-start;
}
.project-page-header>div:first-child{
  flex:1 1 620px;
  width:100%;
  max-width:100%;
}
.project-page-header h2,
#projectPageObjective,
.project-card h3,
.ledger-main strong,
.ledger-main span,
.workflow-health-item strong,
.workflow-health-item div span{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
}
#projectPageObjective{
  width:100%;
  white-space:normal;
  line-height:1.55;
}
.project-header-actions{
  flex:0 1 auto;
  max-width:100%;
  align-self:center;
}

/* Compact, non-wrapping project-health badges. */
.project-health{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  flex:0 0 auto;
  min-height:30px;
  max-width:100%;
  padding:7px 11px;
  border:1px solid transparent;
  border-radius:999px;
  white-space:nowrap;
  font-size:11px;
  font-weight:850;
  line-height:1;
}
.project-health::before{
  content:"";
  flex:0 0 7px;
  width:7px;
  height:7px;
  border-radius:50%;
}
.project-health.controlled{
  border-color:#bde1ce;
  background:#effbf5;
  color:#176b4c;
}
.project-health.controlled::before{
  background:#168a5b;
  box-shadow:0 0 0 3px #d9f3e6;
}
.project-health.watch{
  border-color:#ecd18e;
  background:#fff7e4;
  color:#855800;
}
.project-health.watch::before{
  background:#dda100;
  box-shadow:0 0 0 3px #ffedb8;
}
.project-health.risk{
  border-color:#efc4bf;
  background:#fff2f0;
  color:#9a352d;
}
.project-health.risk::before{
  background:#b33a31;
  box-shadow:0 0 0 3px #ffdcd8;
}
.workflow-health-item{
  align-items:center;
}
.workflow-health-item>div{
  flex:1 1 auto;
}
.workflow-health-item .project-health{
  align-self:center;
}

/* Decision rows keep controls contained and become progressively stacked. */
.practical-ledger-row{
  grid-template-columns:minmax(220px,1.15fr) minmax(130px,.52fr) minmax(185px,.62fr) minmax(320px,1.05fr)!important;
}
.project-ledger-actions{
  min-width:0;
}
.attention-row>.request-status-editor{
  min-width:145px;
}

@media(max-width:1100px){
  .practical-ledger-row{
    grid-template-columns:minmax(0,1fr) minmax(180px,.42fr)!important;
  }
  .practical-ledger-row .ledger-impact{
    text-align:right;
  }
  .practical-ledger-row .request-status-editor{
    grid-column:1/2;
  }
  .practical-ledger-row .project-ledger-actions{
    grid-column:2/3;
    justify-content:flex-end;
  }
  .attention-row>.request-status-editor{
    grid-column:2;
  }
}
@media(max-width:760px){
  .project-page-header>div:first-child{
    flex-basis:auto;
  }
  .project-header-actions{
    width:100%;
    align-self:stretch;
  }
  .practical-ledger-row{
    grid-template-columns:1fr!important;
  }
  .practical-ledger-row .ledger-impact,
  .practical-ledger-row .request-status-editor,
  .practical-ledger-row .project-ledger-actions,
  .attention-row>.request-status-editor{
    grid-column:auto;
    text-align:left;
  }
  .practical-ledger-row .project-ledger-actions{
    justify-content:flex-start;
  }
}
@media(max-width:430px){
  .workflow-health-item{
    align-items:flex-start;
    flex-direction:column;
  }
  .workflow-health-item .project-health{
    align-self:flex-start;
  }
  .request-status-editor-footer{
    align-items:stretch;
    flex-wrap:wrap;
  }
  .request-status-state{
    flex-basis:100%;
  }
}


/* v2.1 reliable status editing and feedback validation */

/* Keep status text horizontal and concise inside narrow decision rows. */
.request-status-editor{
  min-width:220px;
}
.request-status-editor-footer{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto auto;
  align-items:center;
  gap:6px;
}
.request-status-state{
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  overflow-wrap:normal!important;
  word-break:normal!important;
  white-space:nowrap;
  line-height:1.25;
}
.request-status-editor.dirty .request-status-state{
  color:#5849c2;
}
.request-status-save,
.request-status-cancel{
  min-width:max-content;
}
.practical-ledger-row{
  grid-template-columns:minmax(220px,1.05fr) minmax(130px,.46fr) minmax(230px,.72fr) minmax(330px,1.05fr)!important;
}

/* Clear required-field language and inline validation in Feedback. */
.feedback-label-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:5px;
}
.feedback-label-row>span{
  min-width:0;
}
.feedback-label-row em,
.feedback-rating-fieldset legend em{
  color:#704fd0;
  font-size:8px;
  font-style:normal;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.feedback-label-row em.optional{
  color:var(--muted);
}
.feedback-rating-fieldset legend{
  display:flex;
  align-items:center;
  gap:8px;
}
.feedback-validation-summary{
  margin-top:16px;
  padding:13px 15px;
  border:1px solid #efb9b4;
  border-radius:11px;
  background:#fff3f2;
  color:#8f3029;
  outline:none;
}
.feedback-validation-summary strong{
  display:block;
}
.feedback-validation-summary ul{
  margin:7px 0 0;
  padding-left:18px;
  font-size:10px;
  line-height:1.6;
}
.feedback-field{
  min-width:0;
}
.feedback-field.invalid select,
.feedback-field.invalid input,
.feedback-field.invalid textarea,
.feedback-rating-fieldset.invalid{
  border-color:#c84940!important;
  box-shadow:0 0 0 3px rgba(200,73,64,.1)!important;
}
.feedback-field-error{
  display:block;
  min-height:15px;
  margin-top:4px;
  color:#a7352d;
  font-size:9px;
  font-weight:750;
  line-height:1.4;
}
.feedback-rating-fieldset .feedback-field-error{
  margin-top:7px;
}
.feedback-status:not(:empty){
  padding:10px 12px;
  border:1px solid #efb9b4;
  border-radius:9px;
  background:#fff3f2;
}
.feedback-modal select[aria-invalid="true"],
.feedback-modal input[aria-invalid="true"],
.feedback-modal textarea[aria-invalid="true"]{
  scroll-margin-top:110px;
}

@media(max-width:1100px){
  .practical-ledger-row{
    grid-template-columns:minmax(0,1fr) minmax(240px,.58fr)!important;
  }
  .practical-ledger-row .request-status-editor{
    grid-column:2;
  }
  .practical-ledger-row .project-ledger-actions{
    grid-column:1/-1;
    justify-content:flex-end;
  }
}
@media(max-width:760px){
  .request-status-editor{
    min-width:0;
    width:100%;
  }
  .practical-ledger-row{
    grid-template-columns:1fr!important;
  }
  .practical-ledger-row .request-status-editor,
  .practical-ledger-row .project-ledger-actions{
    grid-column:auto;
  }
}
@media(max-width:460px){
  .request-status-editor-footer{
    grid-template-columns:1fr 1fr;
  }
  .request-status-state{
    grid-column:1/-1;
  }
  .request-status-save,
  .request-status-cancel{
    width:100%;
  }
}


/* v2.2 request closure and action consistency */
.feedback-success p{max-width:680px;margin-left:auto;margin-right:auto;overflow-wrap:anywhere}
.feedback-success-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(340px,100%);margin:16px auto 0}
.feedback-success-actions .feedback-id,.feedback-success-actions .feedback-done-button{display:flex;align-items:center;justify-content:center;flex-direction:column;width:100%;min-width:0;height:64px;min-height:64px;margin:0;padding:9px 14px;border-radius:11px;box-sizing:border-box}
.feedback-copy-id{border:1px solid #171a2a;background:#171a2a;color:#fff;cursor:pointer}
.feedback-copy-id:hover{border-color:var(--primary);box-shadow:0 0 0 3px rgba(92,76,240,.12)}
.feedback-copy-id:focus-visible{outline:3px solid rgba(92,76,240,.25);outline-offset:2px}
.feedback-success-actions .feedback-done-button{font-size:14px}

.request-closure-control{display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--line);background:#fafbfc}
.request-closure-copy{min-width:0}.request-closure-copy>span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.request-closure-copy h3{margin:4px 0}.request-closure-copy p{margin:0;color:var(--muted)}
.request-closure-control.ready{border-color:#c8d8ef;background:#f5f9ff}
.request-closure-control.closed{border-color:#c9dfd3;background:#f4fff9}
.request-closure-control.closed .request-closure-copy>span,.request-closure-control.closed h3{color:#176b4c}

.request-closure-badge{display:flex;align-items:flex-start;justify-content:center;flex-direction:column;min-width:150px;min-height:66px;padding:10px 13px;border:1px solid #c7ddd2;border-radius:11px;background:#f1fbf6}
.request-closure-badge span,.request-closure-badge strong,.request-closure-badge small{display:block}
.request-closure-badge span{color:#176b4c;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.request-closure-badge strong{margin-top:3px}.request-closure-badge small{margin-top:2px;color:#5f776b}
.closed-request-pill{border-color:#c7ddd2!important;background:#f1fbf6!important;color:#176b4c!important;font-weight:850}
.closed-request-row{border-style:dashed!important;border-color:#cbd8d1!important;background:#fbfdfc!important}
.closed-request-row .ledger-main,.closed-request-row .ledger-impact{opacity:.82}
.ledger-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}

.closed-requests-archive{margin-top:14px;border:1px solid #d6ded9;border-radius:14px;background:#f8fbf9;overflow:hidden}
.closed-requests-archive>summary{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 17px;cursor:pointer;list-style:none}
.closed-requests-archive>summary::-webkit-details-marker{display:none}
.closed-requests-archive>summary>div>span,.closed-requests-archive>summary>div>strong{display:block}
.closed-requests-archive>summary>div>span{color:#176b4c;font-size:9px;font-weight:900;letter-spacing:.09em}
.closed-requests-archive>summary>div>strong{margin-top:3px}
.closed-requests-archive>summary>b{display:grid;place-items:center;min-width:34px;height:30px;padding:0 8px;border-radius:999px;background:#dff3e8;color:#176b4c}
.closed-request-list{display:grid;gap:9px;padding:0 12px 12px;border-top:1px solid #e1e8e4}
.closed-request-list>.ledger-row:first-child{margin-top:12px}

.project-ledger-actions .mini-btn,.ledger-row-actions .mini-btn,.saved-actions .mini-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding-top:7px;padding-bottom:7px;box-sizing:border-box}

@media(max-width:760px){
  .feedback-success-actions{grid-template-columns:1fr;width:min(300px,100%)}
  .request-closure-control{align-items:stretch;flex-direction:column}
  .request-closure-control .btn{width:100%}
  .request-closure-badge{width:100%;min-width:0}
}


/* v2.3 final request record and closure receipt */
.close-done-button{min-width:132px;box-shadow:0 7px 18px rgba(181,44,37,.18)}
.close-done-button:hover{transform:translateY(-1px);box-shadow:0 9px 22px rgba(181,44,37,.24)}
.close-done-action{border-color:#b52c25!important;background:#b52c25!important;color:#fff!important;font-weight:850}
.close-done-action:hover{border-color:#92231e!important;background:#92231e!important;color:#fff!important}
.request-closure-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;flex:0 0 auto}

.final-request-backdrop{position:fixed;inset:0;z-index:1290;display:grid;place-items:center;padding:18px;background:rgba(12,15,28,.84);backdrop-filter:blur(6px)}
.final-request-modal{width:min(960px,100%);max-height:94vh;overflow:auto;padding:25px;border-radius:20px;background:#fff;box-shadow:0 38px 110px rgba(0,0,0,.42)}
.final-request-modal>header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;padding-bottom:16px;border-bottom:1px solid var(--line)}
.final-request-modal>header span{color:#b52c25;font-size:9px;font-weight:900;letter-spacing:.1em}.final-request-modal>header h2{margin:4px 0;font-size:29px}.final-request-modal>header p{margin:0;color:var(--muted)}
.final-request-status-strip{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:15px 0}.final-request-status-strip>span{padding:7px 10px;border-radius:999px;background:var(--surface-2);font-size:9px;font-weight:850}.final-request-outcome.approved{background:#eaf8f1;color:#176b4c}.final-request-outcome.rejected{background:#fff0ee;color:#a7352d}.final-request-outcome.changes{background:#fff5dd;color:#805d18}
.final-request-summary-grid,.final-request-commercial{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.final-request-summary-grid article,.final-request-commercial article{padding:13px;border:1px solid var(--line);border-radius:11px;background:#fff}.final-request-summary-grid span,.final-request-summary-grid strong,.final-request-commercial span,.final-request-commercial strong{display:block}.final-request-summary-grid span,.final-request-commercial span{color:var(--muted);font-size:9px}.final-request-summary-grid strong,.final-request-commercial strong{margin-top:4px;font-size:13px;overflow-wrap:anywhere}.final-request-commercial{margin-top:9px}.final-request-commercial article{background:#fafbfc}
.final-request-content,.final-request-timeline-section{margin-top:15px;padding:17px;border:1px solid var(--line);border-radius:13px;background:#fafbfc}.final-request-section-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.final-request-section-head span{color:#b52c25;font-size:9px;font-weight:900;letter-spacing:.09em}.final-request-section-head strong{font-size:12px}.final-request-content>p{color:#525a6e;white-space:pre-wrap;overflow-wrap:anywhere}.final-request-content blockquote{margin:12px 0 0;padding:12px;border-left:3px solid var(--primary);border-radius:0 9px 9px 0;background:#f4f2ff}
.final-request-timeline{display:grid;margin-top:11px}.final-request-timeline article{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:10px;padding:8px 0}.final-request-timeline article:not(:last-child)::before{content:"";position:absolute;left:7px;top:22px;bottom:-8px;width:2px;background:#dfe2e9}.final-request-timeline-dot{position:relative;z-index:1;width:16px;height:16px;border:4px solid #f4cfcc;border-radius:999px;background:#b52c25}.final-request-timeline small,.final-request-timeline strong,.final-request-timeline p{display:block}.final-request-timeline small{color:var(--muted);font-size:9px}.final-request-timeline strong{margin-top:2px;font-size:12px}.final-request-timeline p{margin:2px 0 0;color:#60687a;font-size:10px}
.final-request-closure-key{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-top:15px;padding:14px;border-radius:11px;background:#171a2a;color:#fff}.final-request-closure-key span,.final-request-closure-key strong{display:block}.final-request-closure-key span{color:#ff9a94;font-size:9px;font-weight:900;letter-spacing:.08em}.final-request-closure-key strong{margin-top:4px;font-family:monospace;font-size:13px}.final-request-closure-key .mini-btn{border-color:#666d80;color:#fff}
.final-request-actions{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:17px}.final-request-actions>div{display:flex;gap:8px;flex-wrap:wrap}

@media(max-width:820px){.final-request-summary-grid,.final-request-commercial{grid-template-columns:repeat(2,1fr)}.final-request-actions{align-items:flex-start;flex-direction:column}.request-closure-actions{width:100%}.request-closure-actions .btn{flex:1 1 180px}}
@media(max-width:520px){.final-request-summary-grid,.final-request-commercial{grid-template-columns:1fr}.final-request-section-head{align-items:flex-start;flex-direction:column}.final-request-actions,.final-request-actions>div,.final-request-actions .btn{width:100%}.final-request-closure-key{align-items:flex-start;flex-direction:column}.request-closure-actions{display:grid;grid-template-columns:1fr}.request-closure-actions .btn{width:100%}}


/* v2.4 Project Activity frame, unified timeline, and handover */

/* Correct the missing inner spacing that placed the title and refresh action on the panel corners. */
.project-activity-panel{
  padding:24px;
  overflow:hidden;
}
.project-activity-head{
  align-items:center;
  min-width:0;
  margin-bottom:18px;
  padding-bottom:18px;
  border-bottom:1px solid var(--line);
}
.project-activity-title{
  min-width:0;
}
.project-activity-title p{
  max-width:700px;
  margin:6px 0 0;
  color:var(--muted);
  font-size:11px;
}
.project-activity-head-actions{
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  gap:10px;
  flex:0 0 auto;
}
.project-activity-filter{
  min-width:170px;
  margin:0;
}
.project-activity-filter>span{
  display:block;
  margin-bottom:5px;
  color:var(--muted);
  font-size:8px;
  font-weight:900;
  letter-spacing:.09em;
}
.project-activity-filter select{
  min-height:40px;
  margin:0;
  padding:9px 34px 9px 11px;
}
.project-activity-refresh{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  min-height:40px;
  margin:0;
  padding:9px 13px;
  border-color:#cfcaf8;
  color:var(--primary);
  white-space:nowrap;
}
.project-activity-refresh>span{
  color:inherit;
  font-size:16px;
  line-height:1;
}
.project-activity-refresh>strong{
  font-size:11px;
}
.project-activity-refresh.loading>span{
  animation:aitaskora-spin .8s linear infinite;
}
@keyframes aitaskora-spin{to{transform:rotate(360deg)}}

.project-activity-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-bottom:14px;
}
.project-activity-summary article{
  min-width:0;
  padding:13px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fafbfc;
}
.project-activity-summary span,
.project-activity-summary strong,
.project-activity-summary small{
  display:block;
}
.project-activity-summary span{
  color:var(--muted);
  font-size:9px;
}
.project-activity-summary strong{
  margin-top:3px;
  font-size:21px;
}
.project-activity-summary small{
  margin-top:2px;
  color:#777f92;
  font-size:9px;
}

.project-approval-card.completion-record{
  border-color:#bfe0cf;
  background:#f3fff8;
}
.project-approval-card.completion-record>div:first-child>span{
  color:#176b4c;
}
.project-approval-card.completion-record small+small{
  margin-top:4px;
}

.project-activity-timeline-section{
  margin-top:16px;
  padding:17px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fafbfc;
}
.project-activity-timeline-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding-bottom:12px;
  border-bottom:1px solid var(--line);
}
.project-activity-timeline-head span{
  color:var(--primary);
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
}
.project-activity-timeline-head h3{
  margin:3px 0 0;
}
.project-activity-timeline-head small{
  padding:6px 9px;
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  white-space:nowrap;
}
.project-activity-timeline{
  display:grid;
  margin-top:8px;
}
.project-activity-event{
  position:relative;
  display:grid;
  grid-template-columns:34px minmax(0,1fr);
  gap:12px;
  padding:11px 0;
}
.project-activity-event:not(:last-child)::before{
  content:"";
  position:absolute;
  left:16px;
  top:43px;
  bottom:-9px;
  width:2px;
  background:#dfe2e9;
}
.project-activity-event-icon{
  position:relative;
  z-index:1;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:5px solid #e5e2ff;
  border-radius:999px;
  background:var(--primary);
  color:#fff;
  font-size:12px;
  font-weight:900;
}
.project-activity-event.requests .project-activity-event-icon{
  border-color:#ffe8b4;
  background:#b97a0c;
}
.project-activity-event.work .project-activity-event-icon{
  border-color:#d8edf9;
  background:#2674a8;
}
.project-activity-event.delivery .project-activity-event-icon{
  border-color:#d8f1e4;
  background:#168a5b;
}
.project-activity-event-body{
  min-width:0;
  padding:3px 0;
}
.project-activity-event-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.project-activity-event-meta span{
  color:var(--primary);
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.project-activity-event.requests .project-activity-event-meta span{color:#8a6019}
.project-activity-event.work .project-activity-event-meta span{color:#245f94}
.project-activity-event.delivery .project-activity-event-meta span{color:#176b4c}
.project-activity-event-meta time{
  color:var(--muted);
  font-size:9px;
}
.project-activity-event-body>strong{
  display:block;
  margin-top:3px;
  overflow-wrap:anywhere;
}
.project-activity-event-body p{
  margin:3px 0 0;
  color:#60687a;
  font-size:10px;
  overflow-wrap:anywhere;
}
.project-activity-event-body>small{
  display:inline-block;
  margin-top:5px;
  padding:4px 7px;
  border-radius:999px;
  background:#fff;
  color:#687087;
  font-size:8px;
}
.project-activity-empty{
  padding:28px 15px;
  text-align:center;
  color:var(--muted);
}
.project-activity-empty strong{
  color:var(--text);
}
.project-activity-empty p{
  margin:5px 0 0;
}

/* Completion handover inputs. */
.completion-handover-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.completion-handover-grid label{
  min-width:0;
}

/* Handover receipt. */
.handover-backdrop{
  position:fixed;
  inset:0;
  z-index:1300;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(12,15,28,.84);
  backdrop-filter:blur(6px);
}
.handover-modal{
  width:min(980px,100%);
  max-height:94vh;
  overflow:auto;
  padding:25px;
  border-radius:20px;
  background:#fff;
  box-shadow:0 38px 110px rgba(0,0,0,.42);
}
.handover-modal>header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding-bottom:16px;
  border-bottom:1px solid var(--line);
}
.handover-modal>header span{
  color:#168a5b;
  font-size:9px;
  font-weight:900;
  letter-spacing:.1em;
}
.handover-modal>header h2{
  margin:4px 0;
  font-size:29px;
}
.handover-modal>header p{
  margin:0;
  color:var(--muted);
}
.handover-status-strip{
  display:flex;
  gap:8px;
  align-items:center;
  flex-wrap:wrap;
  margin:15px 0;
}
.handover-status-strip span{
  padding:7px 10px;
  border-radius:999px;
  background:#effbf5;
  color:#176b4c;
  font-size:9px;
  font-weight:850;
}
.handover-status-strip span:last-child{
  background:#171a2a;
  color:#fff;
  font-family:monospace;
}
.handover-summary-grid,
.handover-commercial-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
}
.handover-commercial-grid{
  margin-top:9px;
}
.handover-summary-grid article,
.handover-commercial-grid article{
  min-width:0;
  padding:13px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fff;
}
.handover-commercial-grid article{
  background:#fafbfc;
}
.handover-summary-grid span,
.handover-summary-grid strong,
.handover-commercial-grid span,
.handover-commercial-grid strong{
  display:block;
}
.handover-summary-grid span,
.handover-commercial-grid span{
  color:var(--muted);
  font-size:9px;
}
.handover-summary-grid strong,
.handover-commercial-grid strong{
  margin-top:4px;
  overflow-wrap:anywhere;
}
.handover-control-section{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
  margin-top:12px;
}
.handover-control-section>div{
  padding:14px;
  border:1px solid #c8e1d3;
  border-radius:11px;
  background:#f3fff8;
}
.handover-control-section span,
.handover-control-section strong{
  display:block;
}
.handover-control-section span{
  color:#176b4c;
  font-size:9px;
  font-weight:900;
  letter-spacing:.08em;
}
.handover-control-section strong{
  margin-top:4px;
}
.handover-note-section,
.handover-timeline-section{
  margin-top:15px;
  padding:17px;
  border:1px solid var(--line);
  border-radius:13px;
  background:#fafbfc;
}
.handover-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.handover-section-head span{
  color:#168a5b;
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
}
.handover-section-head strong{
  font-size:11px;
}
.handover-note-section>p{
  margin:10px 0 0;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
}
.handover-timeline{
  display:grid;
  margin-top:11px;
}
.handover-timeline article{
  position:relative;
  display:grid;
  grid-template-columns:18px minmax(0,1fr);
  gap:10px;
  padding:8px 0;
}
.handover-timeline article:not(:last-child)::before{
  content:"";
  position:absolute;
  left:7px;
  top:22px;
  bottom:-8px;
  width:2px;
  background:#dfe2e9;
}
.handover-timeline-dot{
  position:relative;
  z-index:1;
  width:16px;
  height:16px;
  border:4px solid #d8f1e4;
  border-radius:999px;
  background:#168a5b;
}
.handover-timeline small,
.handover-timeline strong,
.handover-timeline p{
  display:block;
}
.handover-timeline small{
  color:var(--muted);
  font-size:9px;
}
.handover-timeline strong{
  margin-top:2px;
  font-size:12px;
}
.handover-timeline p{
  margin:2px 0 0;
  color:#60687a;
  font-size:10px;
}
.handover-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-top:17px;
}
.handover-actions>div{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

@media(max-width:900px){
  .project-activity-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .project-activity-head-actions{
    width:100%;
    justify-content:flex-start;
  }
  .project-activity-summary,
  .handover-summary-grid,
  .handover-commercial-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .completion-handover-grid,
  .handover-control-section{
    grid-template-columns:1fr;
  }
}
@media(max-width:620px){
  .project-activity-panel{
    padding:17px;
  }
  .project-activity-head-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .project-activity-filter{
    width:100%;
  }
  .project-activity-refresh{
    width:100%;
  }
  .project-activity-summary,
  .handover-summary-grid,
  .handover-commercial-grid{
    grid-template-columns:1fr;
  }
  .project-activity-event-meta{
    align-items:flex-start;
    flex-direction:column;
    gap:2px;
  }
  .project-approval-card{
    align-items:flex-start;
    flex-direction:column;
  }
  .project-approval-card>div:last-child{
    width:100%;
  }
  .project-approval-card>div:last-child .mini-btn,
  .project-approval-card>div:last-child .btn{
    flex:1 1 130px;
  }
  .handover-section-head,
  .handover-actions{
    align-items:flex-start;
    flex-direction:column;
  }
  .handover-actions,
  .handover-actions>div,
  .handover-actions .btn{
    width:100%;
  }
}


/* v2.5 no-popup print frame and Project Document Center */
#aitaskoraPrintFrame{position:fixed!important;right:0!important;bottom:0!important;width:1px!important;height:1px!important;border:0!important;opacity:0!important;pointer-events:none!important}
.project-document-center{padding:24px;overflow:hidden}
.project-document-head{align-items:flex-start;min-width:0;margin-bottom:17px;padding-bottom:17px;border-bottom:1px solid var(--line)}
.project-document-head>div:first-child{min-width:0}
.project-document-head p{max-width:720px;margin:6px 0 0;color:var(--muted);font-size:11px}
.project-document-head-actions{display:flex;gap:9px;align-items:center;flex:0 0 auto}
.project-document-head-actions .btn{min-height:40px;white-space:nowrap}

.document-quality-card{display:grid;grid-template-columns:92px minmax(0,1fr);gap:17px;align-items:center;padding:17px;border:1px solid #e3c3bf;border-radius:14px;background:#fff6f5}
.document-quality-card.watch{border-color:#ead5a2;background:#fffaf0}
.document-quality-card.ready{border-color:#bee0ce;background:#f2fff8}
.document-quality-score{display:grid;place-items:center;width:82px;height:82px;border-radius:21px;background:#b33a31;color:#fff;font-size:25px;font-weight:900}
.document-quality-card.watch .document-quality-score{background:#b17a1d}
.document-quality-card.ready .document-quality-score{background:#168a5b}
.document-quality-copy{min-width:0}
.document-quality-copy>span{color:#a7352d;font-size:9px;font-weight:900;letter-spacing:.09em}
.document-quality-card.watch .document-quality-copy>span{color:#8a6019}
.document-quality-card.ready .document-quality-copy>span{color:#176b4c}
.document-quality-copy h3{margin:4px 0}
.document-quality-copy p{margin:0;color:var(--muted)}
.document-quality-checks{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}
.document-quality-checks span{padding:6px 9px;border:1px solid #e4bcb8;border-radius:999px;background:#fff;color:#96372f;font-size:9px;font-weight:800}
.document-quality-checks span.ready{border-color:#c4dfd1;color:#176b4c}

.document-list-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:18px 0 10px}
.document-list-head span{color:var(--primary);font-size:9px;font-weight:900;letter-spacing:.09em}
.document-list-head h3{margin:3px 0 0}
.document-list-head small{padding:6px 9px;border-radius:999px;background:#f1f2f6;color:var(--muted);white-space:nowrap}

.project-document-list{display:grid;gap:9px}
.project-document-record{display:grid;grid-template-columns:44px minmax(0,1fr) auto minmax(260px,auto);gap:12px;align-items:center;min-width:0;padding:13px;border:1px solid var(--line);border-radius:12px;background:#fff}
.project-document-record.missing-scope,.project-document-record.missing-handover{border-style:dashed;background:#fafbfc}
.project-document-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#f0eeff;color:var(--primary);font-weight:900}
.project-document-record.final-request .project-document-icon{background:#fff0ee;color:#b33a31}
.project-document-record.handover .project-document-icon{background:#effbf5;color:#168a5b}
.project-document-record.project-export .project-document-icon{background:#eef6ff;color:#285ea8}
.project-document-record.missing-scope .project-document-icon,.project-document-record.missing-handover .project-document-icon{background:#f2f3f6;color:#777f92}
.project-document-copy{min-width:0}
.project-document-copy span,.project-document-copy strong,.project-document-copy p{display:block}
.project-document-copy span{color:var(--primary);font-size:8px;font-weight:900;letter-spacing:.09em}
.project-document-copy strong{margin-top:3px;overflow-wrap:anywhere}
.project-document-copy p{margin:3px 0 0;color:var(--muted);font-size:9px;overflow-wrap:anywhere}
.project-document-status{padding:6px 9px;border-radius:999px;background:#fff5e9;color:#8a6019;font-size:9px;font-weight:850;white-space:nowrap}
.project-document-status.ready{background:#effbf5;color:#176b4c}
.project-document-status.missing{background:#f1f2f5;color:#70778a}
.project-document-status.rejected{background:#fff1ef;color:#a7352d}
.project-document-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.project-document-actions .mini-btn{display:inline-flex;align-items:center;justify-content:center;min-height:36px}

@media(max-width:1040px){
  .project-document-record{grid-template-columns:44px minmax(0,1fr) auto}
  .project-document-actions{grid-column:2/-1;justify-content:flex-start}
}
@media(max-width:760px){
  .project-document-center{padding:17px}
  .project-document-head{flex-direction:column}
  .project-document-head-actions{width:100%}
  .project-document-head-actions .btn{flex:1}
  .document-quality-card{grid-template-columns:1fr}
  .document-quality-score{width:100%;height:58px;border-radius:12px}
  .project-document-record{grid-template-columns:42px minmax(0,1fr)}
  .project-document-status{grid-column:2;justify-self:start}
  .project-document-actions{grid-column:1/-1}
}
@media(max-width:520px){
  .project-document-head-actions{flex-direction:column}
  .project-document-head-actions .btn,.project-document-actions,.project-document-actions .mini-btn{width:100%}
}


/* v2.6 Project Control Center and smart closure gate */
.project-control-center{
  margin-top:14px;
  padding:20px;
  border:1px solid #ddd9ff;
  border-radius:15px;
  background:linear-gradient(135deg,#f9f8ff,#fff);
  box-shadow:0 14px 34px rgba(32,34,54,.06);
}
.project-control-center.attention{
  border-color:#e7c6a2;
  background:linear-gradient(135deg,#fff9ef,#fff);
}
.project-control-center.closure{
  border-color:#f0c5c0;
  background:linear-gradient(135deg,#fff6f4,#fff);
}
.project-control-center.waiting{
  border-color:#c8d9ee;
  background:linear-gradient(135deg,#f4f9ff,#fff);
}
.project-control-center.clear{
  border-color:#c2dfd0;
  background:linear-gradient(135deg,#f3fff8,#fff);
}
.project-control-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  padding-bottom:16px;
  border-bottom:1px solid rgba(107,103,170,.18);
}
.project-control-head>div:first-child{
  min-width:0;
}
.project-control-head span{
  color:var(--primary);
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
}
.project-control-head h2{
  margin:4px 0;
}
.project-control-head p{
  max-width:720px;
  margin:0;
  color:var(--muted);
}
.project-control-head-actions{
  display:flex;
  gap:8px;
  flex:0 0 auto;
}
.project-control-head-actions .btn{
  min-height:40px;
  white-space:nowrap;
}

.project-control-summary{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:9px;
  margin-top:14px;
}
.project-control-summary article{
  min-width:0;
  padding:12px 13px;
  border:1px solid rgba(107,103,170,.16);
  border-radius:11px;
  background:rgba(255,255,255,.78);
}
.project-control-summary span,
.project-control-summary strong,
.project-control-summary small{
  display:block;
}
.project-control-summary span{
  color:var(--muted);
  font-size:9px;
}
.project-control-summary strong{
  margin-top:3px;
  font-size:22px;
}
.project-control-summary small{
  margin-top:2px;
  color:#747c8e;
  font-size:8px;
}

.project-control-queue-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-top:18px;
  padding-bottom:9px;
}
.project-control-queue-head span{
  color:var(--primary);
  font-size:9px;
  font-weight:900;
  letter-spacing:.09em;
}
.project-control-queue-head h3{
  margin:3px 0 0;
}
.project-control-queue-head small{
  padding:6px 9px;
  border-radius:999px;
  background:#fff;
  color:var(--muted);
  white-space:nowrap;
}
.project-control-queue{
  display:grid;
  gap:8px;
}
.project-control-item{
  display:grid;
  grid-template-columns:42px minmax(0,1fr) minmax(210px,auto);
  gap:12px;
  align-items:center;
  min-width:0;
  padding:12px;
  border:1px solid #e2e4eb;
  border-left-width:4px;
  border-radius:11px;
  background:#fff;
}
.project-control-item.urgent{
  border-left-color:#b33a31;
}
.project-control-item.risk{
  border-left-color:#9f2934;
  background:#fff8f8;
}
.project-control-item.attention{
  border-left-color:#c8891e;
}
.project-control-item.closure{
  border-left-color:#d24a40;
  background:#fff9f8;
}
.project-control-item.waiting{
  border-left-color:#3976b8;
  background:#f8fbff;
}
.project-control-item.ready{
  border-left-color:#168a5b;
  background:#f7fff9;
}
.project-control-item-icon{
  display:grid;
  place-items:center;
  width:40px;
  height:40px;
  border-radius:11px;
  background:#f1efff;
  color:var(--primary);
  font-size:16px;
  font-weight:900;
}
.project-control-item.urgent .project-control-item-icon,
.project-control-item.risk .project-control-item-icon,
.project-control-item.closure .project-control-item-icon{
  background:#fff0ee;
  color:#a7352d;
}
.project-control-item.attention .project-control-item-icon{
  background:#fff4da;
  color:#8a6019;
}
.project-control-item.waiting .project-control-item-icon{
  background:#eaf3ff;
  color:#285ea8;
}
.project-control-item.ready .project-control-item-icon{
  background:#e9f8f0;
  color:#176b4c;
}
.project-control-item-copy{
  min-width:0;
}
.project-control-item-label{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}
.project-control-item-label span{
  color:var(--primary);
  font-size:8px;
  font-weight:900;
  letter-spacing:.08em;
}
.project-control-item-label b{
  padding:4px 7px;
  border-radius:999px;
  background:#f0f1f5;
  color:#666f82;
  font-size:8px;
}
.project-control-item-copy>strong{
  display:block;
  margin-top:3px;
  overflow-wrap:anywhere;
}
.project-control-item-copy>p{
  margin:3px 0 0;
  color:#60687a;
  font-size:10px;
  overflow-wrap:anywhere;
}
.project-control-item-copy>small{
  display:block;
  margin-top:4px;
  color:#7a8294;
  font-size:8px;
  overflow-wrap:anywhere;
}
.project-control-item-actions{
  display:flex;
  justify-content:flex-end;
  gap:7px;
  flex-wrap:wrap;
}
.project-control-item-actions .btn{
  min-height:38px;
  padding:8px 11px;
  font-size:10px;
}
.project-control-item.closure .project-control-primary{
  border-color:#b33a31;
  background:#b33a31;
  color:#fff;
}
.project-control-empty{
  padding:24px 15px;
  text-align:center;
}
.project-control-empty>div{
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  margin:0 auto 9px;
  border-radius:15px;
  background:#e7f7ef;
  color:#168a5b;
  font-size:22px;
  font-weight:900;
}
.project-control-empty strong{
  display:block;
}
.project-control-empty p{
  max-width:600px;
  margin:5px auto 0;
  color:var(--muted);
}

.completion-summary{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
}

@media(max-width:1050px){
  .project-control-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .project-control-item{
    grid-template-columns:42px minmax(0,1fr);
  }
  .project-control-item-actions{
    grid-column:2;
    justify-content:flex-start;
  }
  .completion-summary{
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
  }
}
@media(max-width:720px){
  .project-control-head{
    flex-direction:column;
  }
  .project-control-head-actions{
    width:100%;
  }
  .project-control-head-actions .btn{
    flex:1;
  }
  .project-control-summary{
    grid-template-columns:1fr 1fr;
  }
  .project-control-item{
    grid-template-columns:38px minmax(0,1fr);
  }
  .project-control-item-icon{
    width:36px;
    height:36px;
  }
  .project-control-item-actions{
    grid-column:1/-1;
  }
  .completion-summary{
    grid-template-columns:1fr 1fr!important;
  }
}
@media(max-width:480px){
  .project-control-center{
    padding:15px;
  }
  .project-control-head-actions,
  .project-control-item-actions{
    flex-direction:column;
  }
  .project-control-head-actions .btn,
  .project-control-item-actions .btn{
    width:100%;
  }
  .project-control-summary{
    grid-template-columns:1fr;
  }
  .completion-summary{
    grid-template-columns:1fr!important;
  }
}


/* v2.7 final interaction stabilization */
button:disabled,
.btn:disabled,
.mini-btn:disabled{
  opacity:.46!important;
  cursor:not-allowed!important;
  transform:none!important;
  box-shadow:none!important;
  filter:grayscale(.15);
}
button:not(:disabled),
.btn:not(:disabled),
.mini-btn:not(:disabled){
  cursor:pointer;
}
.btn-secondary:not(:disabled){
  border-color:#bcc4d3;
  background:#fff;
  color:#1f2433;
  box-shadow:0 2px 7px rgba(29,35,56,.07);
}
.btn-secondary:not(:disabled):hover{
  border-color:#8d98ad;
  background:#f8f9fc;
  color:#111625;
  box-shadow:0 5px 14px rgba(29,35,56,.11);
}
.project-card footer .btn:not(:disabled),
.workflow-action-item .btn:not(:disabled){
  min-height:48px;
  font-weight:900;
}
.project-card footer .btn-secondary:not(:disabled),
.workflow-action-item .btn-secondary:not(:disabled){
  background:#fff;
}
.project-card .project-health.controlled{
  white-space:nowrap;
}
.project-open-documents{
  border-color:#5b4cf0;
  background:#5b4cf0;
  color:#fff;
}
[aria-busy="true"]{
  cursor:progress!important;
}


/* v2.7.1 completed-project card hotfix */
.project-card footer .btn{
  position:relative;
  z-index:1;
  pointer-events:auto;
  touch-action:manipulation;
}
.project-card footer .btn:active{
  transform:translateY(1px);
}
