@font-face{font-family:InterLocal;src:local("Inter");font-display:swap}@font-face{font-family:PoppinsLocal;src:local("Poppins");font-display:swap}:root{--purple:#7B61FF;--purple-dark:#6547F2;--purple-soft:#F3F0FF;--navy:#0F172A;--navy2:#111D3C;--gray:#E2E8F0;--light:#F8FAFC;--muted:#64748B;--text:#17203A;--green:#18A66A;--green-soft:#EAF8F1;--red:#E84C5B;--red-soft:#FFF0F2;--orange:#F59E0B;--blue:#2877E9;--white:#fff;--radius:16px;--shadow:0 8px 24px rgba(15,23,42,.06)}*{box-sizing:border-box}html,body{margin:0;background:#F6F8FC;color:var(--text);font-family:InterLocal,Inter,Arial,sans-serif}h1,h2,h3,.brand{font-family:PoppinsLocal,Inter,Arial,sans-serif}.app-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#0D1734 0%,#09122B 100%);padding:28px 16px 18px;color:white;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.brand{font-weight:700;font-size:26px;letter-spacing:-1.2px;padding:0 8px 28px}.brand-project{color:#fff}.brand-ai{color:var(--purple);margin-left:2px}.brand-large{font-size:34px;padding:0}.brand-large .brand-project{color:var(--navy)}.nav-list{display:flex;flex-direction:column;gap:6px;flex:1}.nav-item{color:#D8DEEF;text-decoration:none;padding:11px 12px;border-radius:10px;display:flex;gap:12px;align-items:center;font-size:14px;transition:.15s}.nav-item:hover,.nav-item.is-active{background:linear-gradient(90deg,#6C4CE8,#7149E8);color:white}.nav-icon{width:22px;text-align:center;font-size:18px}.nav-separator{height:1px;background:rgba(255,255,255,.12);margin:10px 6px}.sidebar-user{border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:10px;display:flex;align-items:center;gap:10px}.avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--purple),#5B35DE);color:#fff;font-weight:700;font-size:13px}.user-copy{min-width:0;flex:1}.user-copy strong,.user-copy span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-copy strong{font-size:13px}.user-copy span{font-size:11px;color:#BCC5DE;margin-top:3px}.logout{border:0;background:transparent;color:#DCE3F6;cursor:pointer}.main{min-width:0;padding:0 28px 18px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:24px 0 18px;gap:24px}.topbar h1{font-size:23px;line-height:1.2;margin:0 0 4px;letter-spacing:-.5px}.topbar p{margin:0;color:var(--muted);font-size:13px}.top-actions{display:flex;align-items:center;gap:10px}.search{height:42px;border:1px solid var(--gray);background:white;border-radius:11px;padding:0 14px;display:flex;align-items:center;gap:9px;width:370px}.search input{border:0;outline:0;width:100%;font:inherit;font-size:12px}.lang,.icon-button{height:42px;min-width:44px;border:1px solid var(--gray);border-radius:11px;background:white;text-decoration:none;color:var(--text);display:grid;place-items:center;font-size:12px}.avatar-top{width:42px;height:42px}.dashboard-grid.metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.metric-card{background:white;border:1px solid #E7EBF2;border-radius:14px;padding:18px;box-shadow:var(--shadow);display:flex;gap:12px;align-items:center;min-height:104px}.metric-card span{font-size:11px;color:#4F5D73;display:block;margin-bottom:4px}.metric-card strong{font-size:25px}.metric-icon{width:46px;height:46px;border-radius:13px;display:grid;place-items:center;flex:0 0 auto;background:var(--purple-soft);color:var(--purple)}.metric-icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.metric-icon-purple{background:#F1EDFF;color:#7357F5}.metric-icon-blue{background:#ECF4FF;color:#2877E9}.metric-icon-orange{background:#FFF5E8;color:#E58B0B}.metric-icon-green{background:#EAF8F1;color:#14945E}.metric-copy{min-width:0}.metric-copy span{white-space:normal}.dashboard-main{display:grid;grid-template-columns:minmax(0,2.15fr) minmax(280px,.85fr);gap:14px;margin-top:14px}.dashboard-bottom{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:14px}.panel{background:white;border:1px solid #E7EBF2;border-radius:14px;box-shadow:var(--shadow);padding:16px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.panel-head h2{font-size:15px;margin:0}.panel-head a{font-size:11px;color:var(--purple-dark);text-decoration:none;font-weight:600}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{text-transform:uppercase;font-size:9px;letter-spacing:.04em;text-align:left;color:#718096;padding:9px 8px;border-bottom:1px solid #EDF0F5}td{padding:12px 8px;border-bottom:1px solid #EDF0F5;vertical-align:middle}tbody tr:last-child td{border-bottom:0}.status{display:inline-flex;padding:5px 8px;border-radius:6px;background:#EEF2F7;color:#475569;text-transform:capitalize}.status-ready_for_submission,.status-approved,.status-completed{background:var(--green-soft);color:#08754B}.status-in_review{background:#FFF4E5;color:#B56B00}.status-active,.status-implementation{background:#EDF4FF;color:#1766C8}.quick-stat{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid #EDF0F5;font-size:12px}.quick-stat strong{font-size:20px}.danger-text{color:var(--red)}.verification-box{margin-top:15px;background:linear-gradient(135deg,#F3F0FF,#FAF9FF);border-radius:12px;padding:15px;font-size:12px}.verification-box p{color:#56627A;line-height:1.55}.system-online{color:var(--green);font-size:11px}.feed{list-style:none;margin:0;padding:0}.feed li{display:grid;grid-template-columns:24px 1fr auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #EDF0F5}.feed li:last-child{border:0}.feed-icon{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--green-soft);color:var(--green)}.feed-dot{width:7px;height:7px;border-radius:50%;background:var(--purple);margin-left:7px}.feed strong,.feed small{display:block}.feed strong{font-size:11px}.feed small{font-size:9px;color:#76839A;margin-top:3px}.feed time{font-size:9px;color:#94A3B8}.empty,.empty-block{color:#94A3B8;text-align:center;padding:28px 10px;font-size:11px}.module-hero{display:flex;justify-content:space-between;align-items:flex-start;background:linear-gradient(135deg,#fff,#F7F4FF);border:1px solid #E7E3FF;border-radius:16px;padding:28px;margin-top:4px}.module-hero h2{margin:3px 0 8px;font-size:27px}.module-hero p{max-width:760px;margin:0;color:#607086;line-height:1.6}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--purple-dark);font-size:10px;font-weight:700}.module-badge{background:var(--purple-soft);color:var(--purple-dark);padding:8px 10px;border-radius:999px;font-size:11px;font-weight:700}.module-panel{margin-top:14px}.module-panel h3{margin-top:0}.module-panel p{color:#607086;line-height:1.65}.footer{display:flex;justify-content:space-between;color:#7B879A;font-size:9px;padding:18px 2px 0}.auth-page{background:radial-gradient(circle at 75% 20%,#EEE9FF 0,#F8FAFC 38%,#F8FAFC 100%)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:24px}.auth-card{width:min(430px,100%);background:white;border:1px solid #E5EAF2;border-radius:22px;padding:36px;box-shadow:0 20px 60px rgba(15,23,42,.12)}.auth-copy{color:#64748B;margin:3px 0 28px}.auth-form{display:grid;gap:16px}.auth-form label{display:grid;gap:7px;font-size:12px;font-weight:600}.auth-form input{height:45px;border:1px solid #DCE2EB;border-radius:10px;padding:0 13px;font:inherit}.btn{height:46px;border:0;border-radius:10px;font:inherit;font-weight:700;cursor:pointer}.btn-primary{background:linear-gradient(90deg,var(--purple),var(--purple-dark));color:#fff}.alert{padding:11px 12px;border-radius:9px;margin-bottom:16px;font-size:12px}.alert-danger{background:var(--red-soft);color:#B42332}.auth-foot{text-align:center;color:#94A3B8;font-size:10px;margin-top:20px}@media(max-width:1200px){.dashboard-grid.metrics{grid-template-columns:repeat(3,1fr)}.dashboard-main{grid-template-columns:1fr}.dashboard-bottom{grid-template-columns:1fr 1fr}.search{width:260px}}@media(max-width:850px){.app-shell{grid-template-columns:78px 1fr}.sidebar{padding:20px 10px}.brand{font-size:0;padding:0 0 18px;text-align:center}.brand-ai{font-size:20px}.nav-item{justify-content:center}.nav-item span:last-child,.user-copy,.logout{display:none}.sidebar-user{justify-content:center;border:0;padding:6px}.main{padding:0 14px}.topbar{align-items:flex-start}.search{display:none}.dashboard-grid.metrics{grid-template-columns:1fr 1fr}.dashboard-bottom{grid-template-columns:1fr}}@media(max-width:560px){.dashboard-grid.metrics{grid-template-columns:1fr}.topbar h1{font-size:18px}.topbar p{font-size:11px}.main{padding:0 9px}.panel{padding:12px}.footer{display:none}}


/* P004 — authentication/setup visual baseline */
.auth-page{
    min-height:100vh;
    background:
        radial-gradient(circle at 82% 12%,rgba(123,97,255,.16) 0,rgba(123,97,255,0) 32%),
        radial-gradient(circle at 10% 88%,rgba(40,119,233,.06) 0,rgba(40,119,233,0) 30%),
        #f7f9fd;
}
.auth-shell{min-height:100vh;display:grid;place-items:center;padding:36px 22px}
.auth-card{
    position:relative;
    width:min(500px,100%);
    overflow:hidden;
    background:rgba(255,255,255,.97);
    border:1px solid rgba(226,232,240,.95);
    border-radius:24px;
    padding:38px 40px 32px;
    box-shadow:0 28px 70px rgba(15,23,42,.11),0 3px 10px rgba(15,23,42,.04);
}
.auth-card:before{
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:4px;
    background:linear-gradient(90deg,#7B61FF 0%,#8D68FF 48%,#6547F2 100%);
}
.setup-card{width:min(590px,100%)}
.login-card{width:min(455px,100%)}
.auth-header{margin-bottom:27px}
.auth-brand-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:24px}
.brand-large{font-size:32px;line-height:1;padding:0;letter-spacing:-1.55px}
.brand-large .brand-project{color:var(--navy)}
.brand-large .brand-ai{color:var(--purple);margin-left:2px;font-weight:700}
.auth-badge{
    display:inline-flex;align-items:center;
    height:28px;padding:0 10px;
    border:1px solid #e8e2ff;
    border-radius:999px;
    background:var(--purple-soft);
    color:#6547F2;
    font-size:9px;font-weight:800;letter-spacing:.11em;
}
.auth-header h1{margin:0 0 8px;font-size:24px;line-height:1.25;letter-spacing:-.65px;color:var(--navy)}
.auth-copy{margin:0;color:#64748b;font-size:13px;line-height:1.65;max-width:510px}
.auth-form{display:grid;gap:18px}
.form-section{display:grid;gap:12px;padding-top:2px}
.form-section+.form-section{padding-top:17px;border-top:1px solid #edf1f6}
.form-section-label{
    color:#7b879b;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin-bottom:-1px
}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.auth-form label{display:grid;gap:7px;color:#1e293b;font-size:11px;font-weight:700}
.auth-form label>span{padding-left:1px}
.auth-form input{
    width:100%;height:47px;
    border:1px solid #d9e0ea;
    border-radius:11px;
    padding:0 14px;
    background:#fff;
    color:#111827;
    outline:none;
    font:500 13px/1 InterLocal,Inter,Arial,sans-serif;
    transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.auth-form input::placeholder{color:#a2adbd;font-weight:400}
.auth-form input:hover{border-color:#c7d0dd}
.auth-form input:focus{
    border-color:var(--purple);
    box-shadow:0 0 0 4px rgba(123,97,255,.11);
    background:#fff;
}
.auth-form input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fff inset;-webkit-text-fill-color:#111827}
.btn{height:50px;border:0;border-radius:11px;font:700 13px/1 InterLocal,Inter,Arial,sans-serif;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,filter .14s ease}
.btn-primary{
    display:flex;align-items:center;justify-content:center;gap:12px;
    margin-top:2px;
    color:#fff;
    background:linear-gradient(100deg,#8062ff 0%,#6d49ee 100%);
    box-shadow:0 10px 24px rgba(101,71,242,.22);
}
.btn-primary:hover{filter:brightness(1.035);box-shadow:0 13px 28px rgba(101,71,242,.28);transform:translateY(-1px)}
.btn-primary:active{transform:translateY(0);box-shadow:0 7px 16px rgba(101,71,242,.2)}
.btn-arrow{font-size:17px;line-height:1;transition:transform .14s ease}.btn-primary:hover .btn-arrow{transform:translateX(2px)}
.alert{padding:12px 14px;border-radius:11px;margin:0 0 18px;font-size:12px;line-height:1.5;border:1px solid transparent}
.alert-danger{background:#fff3f4;border-color:#ffdadd;color:#a92d3c}
.setup-note{font-size:12px;color:#64748b;margin:10px 0 0}
.auth-foot{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:22px;color:#94a3b8;font-size:9.5px;line-height:1.4}
.auth-foot-centered span{color:#c3cada;margin:0 2px}
.status-dot{width:6px;height:6px;border-radius:50%;background:#23b26d;box-shadow:0 0 0 3px rgba(35,178,109,.10)}
@media(max-width:640px){
    .auth-shell{padding:20px 14px;align-items:start}
    .auth-card{margin-top:16px;border-radius:20px;padding:30px 22px 25px}
    .setup-card,.login-card{width:100%}
    .form-grid{grid-template-columns:1fr}
    .auth-brand-row{align-items:flex-start;margin-bottom:21px}
    .brand-large{font-size:28px}
    .auth-header h1{font-size:21px}
    .auth-copy{font-size:12px}
}

/* P005 — project / partner / consortium workspace + dashboard polish */
.topbar h1{font-size:25px}.topbar p{font-size:13.5px}.metric-card{min-height:112px;padding:20px}.metric-card span{font-size:12px}.metric-card strong{font-size:29px}.panel-head h2{font-size:16px}.panel-head a{font-size:12px}table{font-size:12px}th{font-size:9.5px}td{padding:13px 9px}.feed strong{font-size:12px}.feed small{font-size:10px}.empty,.empty-block{font-size:12px}
.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin:5px 0 16px}.page-head h2{font-size:28px;line-height:1.2;margin:5px 0 7px;letter-spacing:-.7px}.page-head p{margin:0;color:#64748b;font-size:13px;line-height:1.6;max-width:850px}.page-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.title-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.back-link{display:inline-block;color:var(--purple-dark);text-decoration:none;font-weight:700;font-size:11px;margin-bottom:5px}.app-alert{margin:0 0 14px}.alert-success{background:#ecfbf4;border-color:#c9f0dd;color:#08754B}
.btn-inline{width:auto;min-width:0;padding:0 17px;text-decoration:none}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;background:white;color:var(--text);border:1px solid #dce3ed}.btn-danger{display:inline-flex;align-items:center;justify-content:center;background:#fff1f2;color:#b42332;border:1px solid #ffd7dc}.btn-secondary:hover{border-color:#c4cedb;background:#fbfcfe}.btn-danger:hover{background:#ffe9ec}.link-button{border:0;background:transparent;color:var(--purple-dark);font:700 11px/1 InterLocal,Inter,Arial,sans-serif;cursor:pointer;padding:0}
.project-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.mini-stat{background:white;border:1px solid #E7EBF2;border-radius:14px;padding:17px 18px;box-shadow:var(--shadow)}.mini-stat span{display:block;color:#64748b;font-size:11px;margin-bottom:5px}.mini-stat strong{font-size:26px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:15px}.filter-tabs{display:flex;gap:7px;flex-wrap:wrap}.chip{height:31px;padding:0 11px;border-radius:8px;display:inline-flex;align-items:center;text-decoration:none;background:#f2f4f8;color:#556176;font-size:11px;font-weight:700}.chip.active{background:var(--purple);color:#fff}.inline-search{height:37px;border:1px solid #dde4ed;border-radius:10px;background:#fff;display:flex;align-items:center;min-width:260px}.inline-search input{border:0;outline:0;background:transparent;height:100%;width:100%;padding:0 12px;font:500 11px InterLocal,Inter,Arial,sans-serif}.inline-search button{height:100%;width:38px;border:0;background:transparent;cursor:pointer;color:#66758b}
.data-table td{height:56px}.entity-link{color:var(--text);text-decoration:none}.entity-link:hover strong{color:var(--purple-dark)}.entity-link small,.cell-sub{display:block;color:#8591a5;font-size:10px;margin-top:4px}.count-pill{display:inline-grid;place-items:center;min-width:28px;height:25px;padding:0 8px;border-radius:999px;background:var(--purple-soft);color:var(--purple-dark);font-weight:800}.row-actions{text-align:right}.row-actions a{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;color:#59677f;text-decoration:none;font-size:20px}.row-actions a:hover{background:var(--purple-soft);color:var(--purple-dark)}
.record-form{max-width:980px;padding:23px}.record-form .form-section{padding:0 0 19px}.record-form .form-section+.form-section{padding-top:19px}.record-form label{display:grid;gap:7px;color:#1e293b;font-size:11px;font-weight:700}.record-form input,.record-form select,.record-form textarea,.add-partner-form input,.add-partner-form select,.member-card input,.member-card select{width:100%;border:1px solid #d9e0ea;border-radius:10px;background:#fff;color:#111827;outline:none;font:500 12px InterLocal,Inter,Arial,sans-serif;transition:.15s}.record-form input,.record-form select,.add-partner-form input,.add-partner-form select,.member-card input,.member-card select{height:43px;padding:0 12px}.record-form textarea{padding:11px 12px;resize:vertical;line-height:1.55}.record-form input:focus,.record-form select:focus,.record-form textarea:focus,.add-partner-form input:focus,.add-partner-form select:focus,.member-card input:focus,.member-card select:focus{border-color:var(--purple);box-shadow:0 0 0 4px rgba(123,97,255,.10)}.record-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.span-2{grid-column:span 2}.form-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:2px}.danger-zone{max-width:980px;margin-top:14px;border:1px solid #ffd8de;background:#fffafb;border-radius:14px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#7a3c47;font-size:11px}
.detail-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:14px}.detail-list{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.detail-list>div{padding:13px 0;border-bottom:1px solid #edf0f5}.detail-list dt{font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#7b879a;margin-bottom:5px}.detail-list dd{margin:0;font-size:13px;font-weight:650}.compliance{display:inline-flex;padding:5px 8px;border-radius:7px;background:#f1f3f6;color:#556176;font-size:10px}.compliance-verified{background:var(--green-soft);color:#08754B}.compliance-needs_revalidation,.compliance-manual_check_required{background:#fff4e5;color:#a86600}.partner-mini-list{list-style:none;margin:0;padding:0}.partner-mini-list li{display:flex;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f5}.partner-mini-list li:last-child{border:0}.partner-mini-list div{min-width:0}.partner-mini-list strong,.partner-mini-list small{display:block}.partner-mini-list strong{font-size:12px}.partner-mini-list small{font-size:10px;color:#7b879a;margin-top:3px}
.country-badge{display:inline-grid;place-items:center;height:27px;min-width:34px;padding:0 7px;border-radius:8px;background:#eef2ff;color:#4c46c9;font-size:10px;font-weight:800}.country-badge.large{height:38px;min-width:43px;font-size:11px}.rating{color:#7B61FF;letter-spacing:1px;white-space:nowrap}
.consortium-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:14px}.consortium-projects{padding:11px}.consortium-project{display:flex;justify-content:space-between;align-items:center;gap:9px;text-decoration:none;color:var(--text);padding:11px;border-radius:10px;margin-bottom:4px}.consortium-project:hover,.consortium-project.active{background:var(--purple-soft)}.consortium-project strong,.consortium-project small{display:block}.consortium-project strong{font-size:11px}.consortium-project small{font-size:9px;color:#7d899d;margin-top:3px}.consortium-project>span{min-width:28px;height:25px;border-radius:999px;background:#fff;display:grid;place-items:center;font-size:10px;font-weight:800;color:var(--purple-dark)}.consortium-content{min-width:0}.add-partner-form{display:none;grid-template-columns:1.2fr 1fr 1fr .8fr auto;gap:9px;align-items:end;background:#faf9ff;border:1px solid #ebe6ff;border-radius:12px;padding:12px;margin-bottom:14px}.add-partner-form.is-open{display:grid}.add-partner-form label,.member-card label{display:grid;gap:5px;font-size:9px;font-weight:700;color:#59677f}.member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.member-card{border:1px solid #e7ebf2;border-radius:13px;padding:13px;background:#fff}.member-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:12px}.member-head strong,.member-head small{display:block}.member-head strong{font-size:12px}.member-head small{font-size:9px;color:#8490a4;margin-top:3px}.member-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.member-form-grid label:first-child{grid-column:span 2}.member-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid #edf0f5}.member-actions form{margin:0}.member-readonly{display:flex;gap:8px;flex-wrap:wrap;color:#69768b;font-size:10px}.empty-state{text-align:center;padding:38px 18px}.empty-state-icon{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:var(--purple-soft);color:var(--purple);font-size:26px;margin:0 auto 12px}.empty-state h3{margin:0 0 6px}.empty-state p{color:#728096;margin:0 auto 17px;max-width:450px;font-size:12px;line-height:1.6}
@media(max-width:1100px){.project-stats{grid-template-columns:1fr 1fr}.detail-grid{grid-template-columns:1fr}.consortium-layout{grid-template-columns:1fr}.consortium-projects{display:flex;overflow:auto;gap:5px}.consortium-project{min-width:220px}.add-partner-form{grid-template-columns:1fr 1fr}.member-grid{grid-template-columns:1fr}}
@media(max-width:700px){.page-head{align-items:flex-start;flex-direction:column}.toolbar{align-items:stretch;flex-direction:column}.inline-search{min-width:0;width:100%}.record-form .form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.detail-list{grid-template-columns:1fr}.project-stats{grid-template-columns:1fr 1fr}.danger-zone{align-items:flex-start;flex-direction:column}.add-partner-form,.member-form-grid{grid-template-columns:1fr}.member-form-grid label:first-child{grid-column:auto}}
.member-remove-form{display:flex;justify-content:flex-end;margin-top:-18px;padding-right:1px}

/* P006 — premium record form/layout system */
.page-head,
.record-form,
.danger-zone{
    width:min(1180px,100%);
}
.page-head{
    margin:2px 0 18px;
    align-items:flex-start;
}
.page-head h2{
    margin:4px 0 6px;
    font-size:27px;
    line-height:1.18;
    letter-spacing:-.65px;
}
.page-head p{
    max-width:760px;
    font-size:12.5px;
    line-height:1.55;
}
.back-link{
    margin-bottom:7px;
    font-size:10.5px;
}
.record-form{
    max-width:none;
    padding:0;
    overflow:hidden;
    border-radius:16px;
    box-shadow:0 10px 30px rgba(15,23,42,.055);
}
.record-form .form-section{
    gap:14px;
    padding:23px 26px 25px;
}
.record-form .form-section + .form-section{
    padding-top:23px;
    border-top:1px solid #edf1f6;
}
.record-form .form-section-label{
    margin:0 0 1px;
    color:#758198;
    font-size:9.5px;
    letter-spacing:.14em;
}
.record-form .form-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    column-gap:18px;
    row-gap:15px;
}
.record-form label{
    gap:7px;
    font-size:11.5px;
    line-height:1.25;
}
.record-form label>span{
    padding-left:1px;
}
.record-form input,
.record-form select,
.record-form textarea{
    border-color:#d9e1eb;
    border-radius:10px;
    font-size:12.5px;
    background:#fff;
}
.record-form input,
.record-form select{
    height:44px;
    padding:0 13px;
}
.record-form textarea{
    min-height:96px;
    padding:12px 13px;
}
.record-form input:hover,
.record-form select:hover,
.record-form textarea:hover{
    border-color:#c7d1de;
}
.record-form input:focus,
.record-form select:focus,
.record-form textarea:focus{
    border-color:var(--purple);
    box-shadow:0 0 0 3px rgba(123,97,255,.10);
}
.form-actions{
    justify-content:flex-end;
    gap:9px;
    padding:17px 26px 19px;
    margin:0;
    border-top:1px solid #edf1f6;
    background:#fbfcff;
}
.record-form .btn{
    height:43px;
    border-radius:10px;
    font-size:12px;
}
.record-form .btn-primary{
    margin-top:0;
    padding:0 18px;
    box-shadow:0 7px 17px rgba(101,71,242,.18);
}
.record-form .btn-secondary{
    padding:0 16px;
}
.danger-zone{
    max-width:none;
    margin-top:12px;
}
@media (min-width:1500px){
    .page-head,
    .record-form,
    .danger-zone{width:min(1220px,100%)}
}
@media (max-width:900px){
    .record-form .form-section{padding:20px 20px 22px}
    .form-actions{padding:15px 20px 17px}
}
@media (max-width:700px){
    .record-form .form-grid{grid-template-columns:1fr;gap:13px}
    .record-form .form-section{padding:18px 16px 20px}
    .form-actions{padding:14px 16px 16px;flex-direction:column-reverse;align-items:stretch}
    .record-form .btn{width:100%}
}

/* P007 — global UI consistency: typography, buttons, hierarchy, spacing */
:root{
    --ui-text-xs:11px;
    --ui-text-sm:12px;
    --ui-text-md:13.5px;
    --ui-text-base:14px;
    --ui-border:#dce3ed;
    --ui-border-hover:#c9d2df;
    --ui-surface-soft:#fbfcff;
}
body{font-size:var(--ui-text-base);line-height:1.5}

/* Content rhythm */
.page-head,
.record-form,
.danger-zone{width:min(1040px,100%)}
.page-head{margin:4px 0 20px}
.page-head h2{font-size:29px;line-height:1.17;margin:5px 0 7px;letter-spacing:-.72px}
.page-head p{font-size:14px;line-height:1.58;color:#64748b;max-width:790px}
.back-link{font-size:12px;line-height:1.3;margin-bottom:7px;display:inline-flex;align-items:center;gap:5px}
.eyebrow{font-size:10.5px;letter-spacing:.14em}

/* Global button system — links and buttons must look identical */
.btn,
a.btn,
button.btn{
    min-height:42px;
    height:42px;
    padding:0 16px;
    border-radius:10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    border:1px solid transparent;
    text-decoration:none !important;
    white-space:nowrap;
    font:700 13px/1 InterLocal,Inter,Arial,sans-serif;
    letter-spacing:-.05px;
    cursor:pointer;
    transition:background .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease;
}
.btn-primary,
a.btn-primary,
button.btn-primary{
    color:#fff;
    background:linear-gradient(100deg,#8062ff 0%,#6d49ee 100%);
    border-color:#6d49ee;
    box-shadow:0 8px 18px rgba(101,71,242,.18);
    margin-top:0;
}
.btn-primary:hover{filter:none;background:linear-gradient(100deg,#7455f8 0%,#623ee9 100%);box-shadow:0 10px 22px rgba(101,71,242,.23);transform:translateY(-1px)}
.btn-secondary,
a.btn-secondary,
button.btn-secondary{
    color:#334155;
    background:#fff;
    border-color:var(--ui-border);
    box-shadow:0 1px 2px rgba(15,23,42,.025);
}
.btn-secondary:hover{background:#f8fafc;border-color:var(--ui-border-hover);color:#17203a}
.btn-danger,
a.btn-danger,
button.btn-danger{
    color:#b42332;
    background:#fff5f6;
    border-color:#ffd6dc;
}
.btn-danger:hover{background:#ffebee;border-color:#ffc4cc}
.btn-inline{width:auto;min-width:0}

/* Small text actions should still feel like controls, not raw browser links */
.link-button{
    min-height:34px;
    padding:0 11px;
    border:1px solid #e2e7ef;
    border-radius:8px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    color:#5b43db;
    text-decoration:none;
    font:700 12px/1 InterLocal,Inter,Arial,sans-serif;
    cursor:pointer;
    transition:.14s ease;
}
.link-button:hover{background:var(--purple-soft);border-color:#d9d0ff;color:#5638dc}
.link-button.danger-text{color:#b42332;border-color:#ffdadd;background:#fffafa}
.link-button.danger-text:hover{background:#fff0f2;border-color:#ffcbd2}

/* Form system */
.record-form{border:1px solid #e6eaf0;border-radius:16px;overflow:hidden;background:#fff}
.record-form .form-section{padding:24px 28px 26px;gap:16px}
.record-form .form-section + .form-section{padding-top:24px;border-top:1px solid #edf1f6}
.record-form .form-section-label{
    display:flex;
    align-items:center;
    gap:12px;
    color:#526078;
    font-size:10.5px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
    margin:0;
}
.record-form .form-section-label::after{content:"";height:1px;background:#edf1f6;flex:1}
.record-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:17px}
.record-form label{gap:7px;color:#273248;font-size:12.5px;line-height:1.3;font-weight:700}
.record-form label>span{padding-left:1px}
.record-form input,
.record-form select,
.record-form textarea{
    color:#17203a;
    border-color:#d8e0ea;
    border-radius:10px;
    background:#fff;
    font:500 13.5px/1.35 InterLocal,Inter,Arial,sans-serif;
}
.record-form input,
.record-form select{height:45px;padding:0 13px}
.record-form textarea{min-height:100px;padding:12px 13px;line-height:1.55}
.record-form input::placeholder,
.record-form textarea::placeholder{color:#9aa6b7;font-weight:400}
.form-actions{padding:18px 28px 20px;margin:0;background:var(--ui-surface-soft);border-top:1px solid #edf1f6;display:flex;justify-content:flex-end;align-items:center;gap:10px}
.record-form .btn{height:42px;min-height:42px;font-size:13px}

/* Alerts, helper and destructive areas */
.alert{font-size:13px;line-height:1.5;padding:12px 14px;border-radius:10px}
.danger-zone{font-size:12.5px;line-height:1.5;padding:15px 17px;margin-top:14px}
.danger-zone>span{max-width:760px}

/* Panels / tables / compact workspace typography */
.panel-head h2{font-size:16.5px;line-height:1.3}
.panel-head a{font-size:12px}
.panel-head small{display:block;margin-top:4px;color:#7b879a;font-size:11.5px;line-height:1.4}
.toolbar{font-size:12.5px}
.toolbar>div:not(.filter-tabs){color:#64748b}
.toolbar>div:not(.filter-tabs)>strong{color:#17203a;font-size:15px;margin-right:4px}
.chip{height:33px;padding:0 12px;font-size:12px;border-radius:9px}
.inline-search{height:39px}
.inline-search input{font-size:12.5px}
.data-table,table{font-size:12.5px}
th{font-size:10px;letter-spacing:.055em;padding:10px 9px}
td{padding:13px 9px}
.entity-link small,.cell-sub{font-size:11px;line-height:1.4;margin-top:3px}
.status,.compliance{font-size:11px;line-height:1.2;padding:5px 8px}
.count-pill{font-size:11px}
.row-actions a{font-size:21px}

/* Detail / partner / consortium consistency */
.detail-list dt{font-size:10.5px}
.detail-list dd{font-size:14px}
.partner-mini-list strong{font-size:13px}
.partner-mini-list small{font-size:11px}
.consortium-project strong{font-size:12.5px}
.consortium-project small{font-size:10.5px}
.add-partner-form label,.member-card label{font-size:11.5px;gap:6px}
.member-head strong{font-size:13px}
.member-head small{font-size:11px}
.member-readonly{font-size:11.5px}
.member-actions{gap:8px}
.member-remove-form{margin-top:-35px}
.empty,.empty-block{font-size:12.5px;line-height:1.55}
.empty-state p{font-size:13px}

/* Dashboard readability without inflating the layout */
.metric-card span{font-size:12px}
.quick-stat{font-size:12.5px}
.feed strong{font-size:12.5px}
.feed small{font-size:10.5px}
.verification-box{font-size:12.5px}
.footer{font-size:10px}

@media(max-width:900px){
    .record-form .form-section{padding:21px 20px 23px}
    .form-actions{padding:16px 20px 18px}
}
@media(max-width:700px){
    .page-head h2{font-size:25px}
    .page-head p{font-size:13px}
    .record-form .form-grid{grid-template-columns:1fr;gap:14px}
    .record-form .form-section{padding:19px 16px 21px}
    .form-actions{padding:15px 16px 17px;flex-direction:column-reverse;align-items:stretch}
    .record-form .btn,.form-actions .btn{width:100%}
    .member-remove-form{margin-top:8px;padding-right:0}
}

/* P009 — Evidence Vault + Human Review & Approval */
.document-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}
.document-search{display:flex;gap:7px;min-width:430px}
.document-search select{height:39px;min-width:165px;border:1px solid #dfe5ee;border-radius:9px;background:#fff;padding:0 10px;color:#334155;font:500 12px/1 InterLocal,Inter,Arial,sans-serif}
.field-help{display:block;margin-top:1px;color:#7d899b;font-size:11px;font-weight:500;line-height:1.45}
.upload-field input[type=file]{height:auto;min-height:48px;padding:10px 12px;border:1px dashed #cfd8e5;background:#fbfcff}
.doc-status,.version-decision{display:inline-flex;align-items:center;width:max-content;padding:5px 8px;border-radius:7px;font-size:11px;font-weight:750;line-height:1.15}
.doc-status-draft{background:#f1f5f9;color:#475569}.doc-status-ready_for_review{background:#f3f0ff;color:#6040d9}.doc-status-changes_requested{background:#fff5e9;color:#b45f08}.doc-status-approved{background:#eaf8ef;color:#187a43}.doc-status-superseded,.doc-status-archived{background:#f1f3f6;color:#667085}
.approval-banner{width:min(1040px,100%);display:flex;align-items:center;padding:14px 17px;margin:-4px 0 14px;border:1px solid;border-radius:12px}.approval-banner div{display:flex;flex-direction:column;gap:3px}.approval-banner strong{font-size:13px}.approval-banner span{font-size:11.5px}.approval-banner-approved{background:#edfbf2;border-color:#c9efd8;color:#17663a}.approval-banner-warning{background:#fff8eb;border-color:#fee2ae;color:#8a4d08}
.document-detail-grid{width:min(1040px,100%);grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr)}
.workflow-panel{padding-bottom:18px}.workflow-panel>form,.workflow-wait,.workflow-approved{padding:6px 2px 2px}.workflow-copy,.workflow-wait p,.workflow-approved p{margin:0 0 13px;color:#64748b;font-size:12.5px;line-height:1.55}.workflow-wait strong,.workflow-approved strong{display:block;margin-bottom:5px;font-size:13px}
.review-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:17px;padding-top:16px;border-top:1px solid #edf1f6}.review-actions form{padding:13px;border:1px solid #e5e9f0;border-radius:11px;background:#fbfcff}.review-actions label{display:flex;flex-direction:column;gap:6px;color:#334155;font-size:11.5px;font-weight:700}.review-actions textarea{width:100%;min-height:72px;padding:10px 11px;margin-bottom:9px;border:1px solid #d8e0ea;border-radius:9px;resize:vertical;font:500 12.5px/1.45 InterLocal,Inter,Arial,sans-serif}.review-actions textarea:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 3px rgba(123,97,255,.10)}
.version-upload-panel,.versions-panel{width:min(1040px,100%);margin-top:14px}.inline-upload{display:flex;align-items:center;gap:10px;padding-top:5px}.inline-upload input[type=file]{flex:1;min-width:0;padding:9px 11px;border:1px dashed #d4dce7;border-radius:9px;background:#fbfcff;color:#475569;font-size:11.5px}
.version-list{display:flex;flex-direction:column}.version-row{display:grid;grid-template-columns:52px 1fr auto;gap:13px;align-items:start;padding:14px 0;border-top:1px solid #edf1f6}.version-row:first-child{border-top:0}.version-row.current{margin:0 -10px;padding:14px 10px;border-radius:10px;background:#faf9ff}.version-number{display:flex;align-items:center;justify-content:center;height:32px;border-radius:8px;background:#f0edff;color:#6546df;font-size:11.5px;font-weight:800}.version-main{display:flex;flex-direction:column;gap:4px}.version-main>strong{font-size:12.5px}.version-main>small{color:#7c8798;font-size:10.8px}.version-note{margin:2px 0 0;color:#475569;font-size:11.5px;line-height:1.5}.decision-approved{background:#eaf8ef;color:#187a43}.decision-changes_requested{background:#fff3e2;color:#a95208}.decision-revalidation_required{background:#fff0f0;color:#b42332}.decision-superseded{background:#f1f3f6;color:#667085}
.approval-queue-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.approval-list{display:flex;flex-direction:column}.approval-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-top:1px solid #edf1f6;color:inherit;text-decoration:none}.approval-item:first-child{border-top:0}.approval-item:hover strong{color:#6244db}.approval-item>div{display:flex;flex-direction:column;gap:3px;min-width:0}.approval-item strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.approval-item small{color:#7c8798;font-size:10.8px}.approval-item>span:not(.version-decision){color:#7c8798;font-size:10.5px;white-space:nowrap}
@media(max-width:1050px){.document-stats{grid-template-columns:1fr 1fr}.approval-queue-grid,.document-detail-grid{grid-template-columns:1fr}.document-search{min-width:0}.review-actions{grid-template-columns:1fr}}
@media(max-width:700px){.document-stats{grid-template-columns:1fr 1fr}.document-search{width:100%;flex-direction:column}.document-search select{width:100%}.inline-upload{align-items:stretch;flex-direction:column}.version-row{grid-template-columns:44px 1fr}.version-row>.link-button{grid-column:1/-1;width:100%}.approval-item{align-items:flex-start;flex-direction:column}}

/* P010 — approval visibility + document UX clarity */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.btn-sm{height:34px;min-height:34px;padding:0 13px;border-radius:9px;font-size:11.5px;font-weight:750;white-space:nowrap}

.approval-dashboard-alert{display:flex;align-items:center;gap:14px;margin:0 0 14px;padding:14px 16px;background:linear-gradient(100deg,#fff8ea 0%,#fffdf8 100%);border:1px solid #f6d99b;border-radius:14px;box-shadow:0 7px 20px rgba(126,86,0,.05)}
.approval-dashboard-alert-icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:11px;background:#fff0cc;color:#cb7600}
.approval-dashboard-alert-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.approval-dashboard-alert-copy{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}
.approval-dashboard-alert-copy strong{font-size:13.5px;color:#6f4300}
.approval-dashboard-alert-copy span{font-size:11.8px;color:#80633a;line-height:1.45}
.quick-stat-link{color:inherit;text-decoration:none;margin:0 -7px;padding-left:7px;padding-right:7px;border-radius:8px}
.quick-stat-link:hover{background:#faf9ff}
.quick-stat-link.has-attention strong{color:#c66d00}

.dashboard-approval-queue{margin-top:14px}
.dashboard-approval-queue .panel-head{align-items:flex-start}
.dashboard-approval-queue .panel-head small{display:block;margin-top:4px;color:#7b8798;font-size:10.8px;font-weight:500}
.dashboard-approval-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.dashboard-approval-item{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 13px;border:1px solid #e8e5f8;border-radius:11px;background:#fcfbff;text-decoration:none;color:inherit}
.dashboard-approval-item:hover{border-color:#d8cffd;background:#faf8ff}
.dashboard-approval-item>div{min-width:0}
.dashboard-approval-item strong,.dashboard-approval-item small{display:block}
.dashboard-approval-item strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.dashboard-approval-item small{margin-top:3px;color:#7d8799;font-size:10.5px}

.document-stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;margin-bottom:14px}
.document-stats .mini-stat{min-height:92px;padding:16px 17px;display:flex;flex-direction:column;justify-content:center}
.document-stats .mini-stat span{font-size:11.5px;margin-bottom:6px}
.document-stats .mini-stat strong{font-size:25px}
.documents-toolbar{align-items:center;gap:14px}
.document-search{display:flex;align-items:center;gap:8px;min-width:0;margin-left:auto}
.search-control{position:relative;display:flex;align-items:center;height:42px;background:#fff;border:1px solid #dbe2ec;border-radius:10px;transition:border-color .15s ease,box-shadow .15s ease}
.search-control:focus-within{border-color:var(--purple);box-shadow:0 0 0 3px rgba(123,97,255,.10)}
.search-select-control{min-width:190px}
.search-select-control select{width:100%;height:100%;border:0!important;outline:0;background:transparent;padding:0 34px 0 12px;color:#334155;font:600 12px/1 InterLocal,Inter,Arial,sans-serif;cursor:pointer}
.search-input-control{min-width:260px}
.search-input-control .search-icon{display:grid;place-items:center;width:34px;flex:0 0 34px;color:#7b8798;font-size:15px}
.search-input-control input{width:100%;height:100%;border:0;outline:0;background:transparent;padding:0 12px 0 0;color:#334155;font:500 12px/1 InterLocal,Inter,Arial,sans-serif}
.search-button{height:42px;min-height:42px;padding:0 16px}
.documents-table .row-actions{width:92px;text-align:right}
.documents-table .row-actions .btn{display:inline-flex;width:auto}
.document-title-link strong{font-size:12.7px}
.document-row:hover td{background:#fcfbff}

.review-actions{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;margin-top:18px;padding-top:17px}
.review-actions form{padding:15px!important;border-radius:12px!important;background:#fbfcff}
.review-actions label{gap:8px!important;font-size:12px!important}
.review-actions .review-textarea{width:100%;min-height:150px!important;padding:12px 13px!important;margin-bottom:11px!important;border:1px solid #d5dde8!important;border-radius:10px!important;background:#fff;resize:vertical;font:500 13px/1.55 InterLocal,Inter,Arial,sans-serif!important;color:#273449}
.review-actions .review-textarea:focus{outline:none;border-color:var(--purple)!important;box-shadow:0 0 0 3px rgba(123,97,255,.10)}
.review-actions .btn{min-width:170px}

@media(max-width:1150px){.dashboard-approval-list{grid-template-columns:1fr}.documents-toolbar{align-items:stretch;flex-direction:column}.document-search{width:100%;margin-left:0}.search-select-control{min-width:180px}.search-input-control{flex:1;min-width:180px}}
@media(max-width:700px){.approval-dashboard-alert{align-items:flex-start;flex-wrap:wrap}.approval-dashboard-alert .btn{width:100%}.document-stats{grid-template-columns:1fr 1fr!important}.document-search{flex-direction:column;align-items:stretch}.search-control,.search-select-control,.search-input-control,.search-button{width:100%;min-width:0}.dashboard-approval-item{grid-template-columns:1fr auto}.dashboard-approval-item .btn{grid-column:1/-1;width:100%}}

/* P011 — document detail workspace width + approval composition */
.approval-banner,
.document-detail-grid,
.version-upload-panel,
.versions-panel{
    width:100%;
    max-width:1420px;
}

.document-detail-grid{
    grid-template-columns:minmax(360px,.78fr) minmax(600px,1.22fr);
    gap:18px;
    align-items:stretch;
}

.document-detail-grid>.panel{
    min-height:100%;
}

.document-detail-grid .workflow-panel{
    padding:20px 22px 22px;
}

.document-detail-grid .workflow-panel .panel-head{
    margin-bottom:2px;
}

.workflow-wait,
.workflow-approved,
.workflow-panel>form{
    padding:8px 0 4px;
}

.workflow-copy,
.workflow-wait p,
.workflow-approved p{
    max-width:760px;
    font-size:13px;
    line-height:1.6;
}

.review-actions{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:14px!important;
    margin-top:20px!important;
    padding-top:18px!important;
}

.review-actions form{
    display:flex;
    flex-direction:column;
    min-width:0;
    padding:17px!important;
}

.review-actions label{
    flex:1;
    font-size:12.5px!important;
}

.review-actions .review-textarea{
    min-height:190px!important;
    font-size:13.5px!important;
    line-height:1.6!important;
}

.review-actions .btn{
    align-self:flex-start;
    min-width:190px;
    margin-top:1px;
}

.version-upload-panel,
.versions-panel{
    margin-top:18px;
}

@media(max-width:1280px){
    .document-detail-grid{
        grid-template-columns:minmax(330px,.9fr) minmax(500px,1.1fr);
    }
    .review-actions{
        grid-template-columns:1fr!important;
    }
}

@media(max-width:980px){
    .document-detail-grid{
        grid-template-columns:1fr;
    }
    .review-actions{
        grid-template-columns:1fr!important;
    }
}

/* P012 — approval queue clarity + explicit actions */
.approval-queue-panel .approval-section-head{
  margin-bottom:0;
  padding-bottom:14px;
  border-bottom:1px solid #e8edf4;
}
.approval-queue-panel .approval-list{
  padding-top:6px;
}
.approval-queue-panel .approval-item{
  min-height:68px;
  margin:6px 0 0;
  padding:12px 12px;
  border:1px solid transparent;
  border-radius:11px;
  background:#fff;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease,transform .15s ease;
}
.approval-queue-panel .approval-item:first-child{
  border-top:1px solid transparent;
}
.approval-queue-panel .approval-item-actionable:hover{
  border-color:#ddd5ff;
  background:#fbfaff;
  box-shadow:0 5px 16px rgba(76,53,160,.07);
  transform:translateY(-1px);
}
.approval-item-copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.approval-item-copy strong{
  font-size:13px;
  color:#17203a;
}
.approval-item-copy small{
  color:#748096;
  font-size:11px;
  line-height:1.4;
}
.approval-item-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex:0 0 auto;
}
.approval-item-actions time{
  color:#8994a7;
  font-size:10.5px;
  white-space:nowrap;
}
.approval-open-button{
  min-width:86px;
  height:34px;
  padding:0 13px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:1px solid #d9dfe9;
  background:#fff;
  color:#303b52;
  border-radius:9px;
  font-size:11.5px;
  font-weight:700;
  line-height:1;
  box-shadow:0 1px 2px rgba(15,23,42,.02);
}
.approval-item-actionable:hover .approval-open-button{
  border-color:#cfc4ff;
  background:#f5f2ff;
  color:#6041db;
}
@media(max-width:700px){
  .approval-queue-panel .approval-item{
    align-items:stretch;
  }
  .approval-item-actions{
    width:100%;
    justify-content:space-between;
  }
  .approval-open-button{
    min-width:96px;
  }
}

/* P013 — actionable dashboard attention queue */
.metric-card-link{position:relative;color:inherit;text-decoration:none;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}
.metric-card-link:hover{transform:translateY(-1px);border-color:#d9d2fb;box-shadow:0 11px 28px rgba(79,61,171,.09)}
.metric-card-chevron{margin-left:auto!important;margin-bottom:0!important;color:#a79dbf!important;font-size:22px!important;line-height:1!important;opacity:.7}
.metric-card-link:hover .metric-card-chevron{color:var(--purple)!important;opacity:1}
.btn-warning{background:#fff3db;color:#9b5d00;border:1px solid #f1cf8b}
.btn-warning:hover{background:#ffeac0;border-color:#e7ba60}
.attention-dashboard-alert-changes{background:linear-gradient(100deg,#fff2ed 0%,#fffaf8 100%);border-color:#f2c0ad}
.attention-dashboard-alert-changes .approval-dashboard-alert-icon{background:#ffe3d8;color:#cf5d35}
.attention-dashboard-alert-changes .approval-dashboard-alert-copy strong{color:#853e28}
.attention-dashboard-alert-changes .approval-dashboard-alert-copy span{color:#845c50}
.quick-stat-link.has-danger-attention strong{color:#e04b57}
.dashboard-attention-queue{margin-top:14px;scroll-margin-top:18px;border-color:#f1d7cf}
.dashboard-action-head{align-items:flex-start}
.dashboard-action-head small{display:block;margin-top:5px;color:#7b8798;font-size:10.8px;font-weight:500}
.action-eyebrow{display:block;margin-bottom:4px;color:#cf5d35;font-size:9.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.dashboard-attention-list{display:grid;gap:10px}
.dashboard-attention-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:15px 16px;border:1px solid #f0d8d0;border-radius:12px;background:linear-gradient(100deg,#fffaf8,#fff)}
.dashboard-attention-main{min-width:0}
.dashboard-attention-title{display:flex;align-items:flex-start;gap:10px}
.dashboard-attention-title strong,.dashboard-attention-title small{display:block}
.dashboard-attention-title strong{font-size:13px}
.dashboard-attention-title small{margin-top:3px;color:#7b8798;font-size:10.5px}
.attention-dot{width:9px;height:9px;margin-top:5px;border-radius:50%;background:#e86943;box-shadow:0 0 0 4px #ffede7;flex:0 0 auto}
.dashboard-attention-reason{margin:11px 0 0 19px;padding:10px 12px;border-left:3px solid #efb09b;background:#fff5f1;border-radius:0 8px 8px 0}
.dashboard-attention-reason span{display:block;margin-bottom:4px;color:#a34d32;font-size:9.5px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.dashboard-attention-reason p{margin:0;color:#5d4b45;font-size:11.5px;line-height:1.5}
.dashboard-attention-meta{display:flex;gap:12px;flex-wrap:wrap;margin:8px 0 0 19px;color:#8b7a75;font-size:10px}
.dashboard-attention-item>.btn{min-width:132px}
#quick-overview{scroll-margin-top:18px}
#approval-queue{scroll-margin-top:18px}
@media(max-width:760px){.dashboard-attention-item{grid-template-columns:1fr}.dashboard-attention-item>.btn{width:100%}.metric-card-chevron{display:none}}

/* P014 — immutable human-decision history / full document timeline */
.document-history-timeline{position:relative;margin:2px 0 22px;padding:4px 0 2px 4px}
.document-history-timeline:before{content:"";position:absolute;left:15px;top:14px;bottom:14px;width:2px;background:#e5e7eb}
.history-event{position:relative;display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;padding:8px 0}
.history-marker{position:relative;z-index:1;width:14px;height:14px;margin:6px 0 0 5px;border-radius:50%;background:#fff;border:3px solid #94a3b8;box-shadow:0 0 0 4px #fff}
.history-event-review .history-marker{border-color:#7b61ff}.history-event-changes .history-marker{border-color:#f59e0b}.history-event-approved .history-marker{border-color:#16a34a}.history-event-version .history-marker{border-color:#3b82f6}.history-event-created .history-marker{border-color:#64748b}
.history-event-body{border:1px solid #e5e7eb;border-radius:12px;padding:12px 14px;background:#fff}
.history-event-approved .history-event-body{background:#f3fbf6;border-color:#ccebd7}.history-event-changes .history-event-body{background:#fffaf0;border-color:#f8dfaa}.history-event-review .history-event-body{background:#f8f6ff;border-color:#e5ddff}
.history-event-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.history-event-head strong{font-size:14px;color:#0f172a}.history-event-head span{font-size:12px;color:#64748b;white-space:nowrap}
.history-event-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:4px;color:#64748b;font-size:12px}.history-event-meta span+span:before{content:"·";margin-right:10px}
.history-event-note{margin-top:9px;padding:9px 11px;border-radius:9px;background:rgba(255,255,255,.78);color:#334155;font-size:13px;line-height:1.55;white-space:normal}
.version-history-divider{display:flex;align-items:center;gap:12px;margin:6px 0 14px;color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}.version-history-divider:before,.version-history-divider:after{content:"";height:1px;background:#e5e7eb;flex:1}
@media(max-width:720px){.history-event-head{align-items:flex-start;flex-direction:column;gap:3px}.history-event-head span{white-space:normal}}

/* P015 — Application Workspace + versioned Template Library */
.alert-info{background:#f5f4ff;border-color:#e5e1ff;color:#5148a8}.alert-warning{background:#fff8e8;border-color:#ffe3a6;color:#8a5a00}
.application-stats{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:14px}.applications-toolbar{gap:16px}.application-table td{vertical-align:middle}.app-status,.template-status,.answer-status{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:999px;font-size:10.5px;font-weight:800;white-space:nowrap;background:#f1f3f6;color:#5a6679}.app-status-ready_for_review,.app-status-in_review{background:#fff4dd;color:#9b6500}.app-status-changes_requested{background:#fff0f1;color:#ba3141}.app-status-approved,.app-status-submitted,.template-status-active,.answer-status-ready{background:#e9f8f0;color:#08754b}.app-status-in_progress,.answer-status-draft{background:#f2efff;color:#5c46c8}.template-status-archived{background:#eef1f5;color:#69768b}.answer-status-needs_info{background:#fff4dd;color:#9b6500}.answer-status-empty{background:#f3f4f6;color:#8591a5}.progress-cell{display:flex;align-items:center;gap:9px;min-width:120px}.progress-cell strong{font-size:11px;min-width:32px}.progress-track{display:block;height:7px;flex:1;border-radius:999px;background:#edf0f5;overflow:hidden}.progress-track i,.application-progress-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--purple),#9f8cff)}.readiness{display:inline-flex;gap:6px;align-items:center;font-size:10.5px;font-weight:750}.readiness.ready{color:#08754b}.readiness.not-ready{color:#7b879a}
.application-summary-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:14px;margin-bottom:14px}.application-progress-panel,.readiness-panel{min-height:150px}.application-progress-value{font-size:24px;color:var(--purple-dark)}.application-progress-bar{height:10px;border-radius:999px;background:#edf0f5;overflow:hidden;margin:18px 0 13px}.application-summary-meta{display:flex;gap:16px;flex-wrap:wrap;color:#6f7c91;font-size:11px}.readiness-big{font-size:18px;font-weight:800;margin:8px 0 12px}.readiness-big.ready{color:#08754b}.readiness-big.not-ready{color:#7b879a}.blocker-list{display:grid;gap:7px}.blocker-list span{display:flex;align-items:flex-start;gap:7px;font-size:11px;color:#7c5a16}.blocker-list span:before{content:'•';color:#e4a11b;font-weight:900}
.application-workspace{display:grid;grid-template-columns:250px minmax(0,1fr);gap:14px;align-items:start}.application-section-nav{position:sticky;top:18px;padding:12px}.application-section-nav .panel-head{padding:5px 6px 10px}.application-section-nav>a{display:grid;grid-template-columns:28px minmax(0,1fr);column-gap:9px;row-gap:2px;padding:10px 8px;border-radius:10px;color:var(--text);text-decoration:none}.application-section-nav>a:hover{background:var(--purple-soft)}.application-section-nav>a>span{grid-row:span 2;width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#f0edff;color:var(--purple-dark);font-size:10px;font-weight:850}.application-section-nav strong{font-size:11px;line-height:1.3}.application-section-nav small{color:#8a96a8;font-size:9.5px}.application-sections{display:grid;gap:14px}.application-section{padding:0;overflow:hidden}.application-section>header{padding:20px 22px 17px;border-bottom:1px solid #edf1f6}.application-section>header h3{margin:3px 0 5px;font-size:19px}.application-section>header p{margin:0;color:#66758b;font-size:11.5px;line-height:1.55}.application-question-list{display:grid}.application-question{padding:20px 22px;border-bottom:1px solid #edf1f6;scroll-margin-top:18px}.application-question:last-child{border-bottom:0}.application-question.is-over-limit{background:#fffafa}.question-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:14px}.question-kicker{display:flex;align-items:center;gap:7px;margin-bottom:7px}.question-kicker span{font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#768399}.question-kicker .required{color:#6045d5}.question-kicker .optional{color:#8793a5}.question-head h4{font-size:13.5px;line-height:1.5;margin:0;max-width:900px}.question-head p{margin:7px 0 0;color:#6e7b8f;font-size:11px;line-height:1.55}.question-form{display:grid;gap:12px}.question-form>label{display:grid;gap:7px;font-size:11px;font-weight:750}.question-form textarea,.question-form input,.question-form select,.submitted-form input,.compact-form input,.compact-form select,.compact-form textarea{width:100%;border:1px solid #d9e1eb;border-radius:10px;background:#fff;color:#111827;outline:none;font:500 12.5px InterLocal,Inter,Arial,sans-serif}.question-form textarea,.compact-form textarea{padding:12px 13px;line-height:1.6;resize:vertical}.question-form input,.question-form select,.submitted-form input,.compact-form input,.compact-form select{height:43px;padding:0 12px}.question-form textarea:focus,.question-form input:focus,.question-form select:focus,.submitted-form input:focus,.compact-form input:focus,.compact-form select:focus,.compact-form textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px rgba(123,97,255,.10)}.character-counter{text-align:right;color:#8591a5;font-size:10px;font-weight:600}.character-counter.over{color:#c33645}.question-form-footer{display:grid;grid-template-columns:minmax(160px,220px) minmax(180px,260px) auto;gap:10px;align-items:end}.question-form-footer label{display:grid;gap:6px;font-size:10px;font-weight:750}.question-form-footer .btn{height:43px}.readonly-answer{padding:14px 15px;border-radius:10px;background:#fafbfc;border:1px solid #edf0f5;font-size:12px;line-height:1.7;white-space:normal}.assignment-note{margin-top:8px;color:#7c899d;font-size:10px}
.application-review-gate{margin-top:14px;padding:20px 22px;display:flex;justify-content:space-between;align-items:center;gap:28px}.application-review-gate h2{font-size:18px;margin:3px 0 5px}.application-review-gate p{margin:0 0 6px;color:#66758b;font-size:11.5px;max-width:780px}.application-review-gate small{color:#8a96a8;font-size:9.5px}.review-gate-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap;min-width:300px}.review-state{display:inline-flex;align-items:center;min-height:34px;padding:0 11px;border-radius:9px;font-size:11px;font-weight:800}.review-state.warning{background:#fff4dd;color:#986100}.review-state.success{background:#e9f8f0;color:#08754b}.review-state.neutral{background:#f2f4f7;color:#69768b}.submitted-form{display:flex;gap:8px;align-items:center}.submitted-form input{min-width:230px}
.template-builder-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:14px;margin-bottom:14px}.template-add-card{padding:17px}.compact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-form label{display:grid;gap:6px;font-size:10.5px;font-weight:750}.compact-form .span-full{grid-column:1/-1}.compact-form .btn{justify-self:start}.checkbox-label{display:flex!important;flex-direction:row;align-items:center;gap:8px!important}.checkbox-label input{width:16px!important;height:16px!important}.template-sections{display:grid;gap:14px}.template-section-card{padding:0;overflow:hidden}.template-section-card>header{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:18px 20px;border-bottom:1px solid #edf1f6}.template-section-card>header>div{display:grid;grid-template-columns:auto 1fr;column-gap:10px;align-items:center}.template-section-card h3{margin:0;font-size:16px}.template-section-card p{grid-column:2;margin:5px 0 0;color:#6c798d;font-size:11px}.section-number{width:28px;height:28px;border-radius:8px;background:var(--purple-soft);color:var(--purple-dark);display:grid;place-items:center;font-weight:850;font-size:10px}.template-question-list{display:grid}.template-question{padding:14px 18px;border-bottom:1px solid #edf1f6}.template-question:last-child{border-bottom:0}.template-question-summary{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:flex-start}.question-code{display:grid;place-items:center;min-height:28px;border-radius:8px;background:#f3f4f7;color:#647185;font-size:9px;font-weight:800}.template-question-summary strong{display:block;font-size:12px;line-height:1.45}.template-question-summary small{display:block;margin-top:4px;color:#8490a2;font-size:9.5px}.template-question details{margin-top:10px}.template-question summary{cursor:pointer;color:var(--purple-dark);font-size:10px;font-weight:800}.question-edit-form{margin-top:10px;padding:12px;border-radius:11px;background:#fafbfe;border:1px solid #e9edf3}.question-edit-actions{grid-column:1/-1;display:flex;align-items:center;gap:8px}.question-edit-actions form{margin:0}.template-table td{vertical-align:middle}
@media(max-width:1200px){.application-summary-grid{grid-template-columns:1fr}.application-workspace{grid-template-columns:1fr}.application-section-nav{position:static;display:flex;gap:6px;overflow:auto}.application-section-nav .panel-head{display:none}.application-section-nav>a{min-width:200px}.template-builder-grid{grid-template-columns:1fr}}
@media(max-width:850px){.application-stats{grid-template-columns:1fr 1fr}.question-form-footer{grid-template-columns:1fr}.application-review-gate{align-items:flex-start;flex-direction:column}.review-gate-actions{justify-content:flex-start;min-width:0;width:100%}.submitted-form{width:100%;flex-direction:column;align-items:stretch}.submitted-form input{min-width:0}.compact-form{grid-template-columns:1fr}.compact-form .span-full{grid-column:auto}}
@media(max-width:600px){.application-stats{grid-template-columns:1fr}.application-question,.application-section>header{padding-left:15px;padding-right:15px}.question-head{flex-direction:column;gap:8px}}


/* P016 — LOCKED UI CONTRACT
   This block is the final authority for shared typography, controls and table actions.
   New modules must use these tokens/components instead of one-off font/button rules. */
:root{
  --pf-font-heading:PoppinsLocal,Inter,Arial,sans-serif;
  --pf-font-ui:InterLocal,Inter,Arial,sans-serif;

  --pf-type-page:29px;
  --pf-type-section:16px;
  --pf-type-subsection:14px;
  --pf-type-body:13px;
  --pf-type-label:12px;
  --pf-type-meta:11px;
  --pf-type-table:12px;
  --pf-type-table-head:10px;

  --pf-control-h:42px;
  --pf-control-h-sm:36px;
  --pf-control-radius:10px;
  --pf-control-radius-sm:9px;
  --pf-control-font:13px;
  --pf-control-font-sm:12px;
}

/* Typography contract */
.page-head h2{font-family:var(--pf-font-heading);font-size:var(--pf-type-page);font-weight:650;line-height:1.18}
.panel-head h2,.panel-head h3{font-family:var(--pf-font-heading);font-size:var(--pf-type-section);font-weight:650;line-height:1.3}
.panel h3,.form-section-title,.application-section>header h3{font-family:var(--pf-font-heading);font-weight:650}
body,.panel,.record-form,.compact-form,.question-form{font-family:var(--pf-font-ui)}
label,.field-label,.compact-form label,.question-form>label{font-size:var(--pf-type-label);line-height:1.35}
.field-help,.cell-sub,.entity-link small,.assignment-note{font-size:var(--pf-type-meta);line-height:1.45}
.data-table,table{font-size:var(--pf-type-table)}
.data-table th,table th{font-size:var(--pf-type-table-head);line-height:1.3}

/* One button family. Normal actions = 42px, dense table/list actions = 36px. */
.btn,a.btn,button.btn{
  height:var(--pf-control-h);
  min-height:var(--pf-control-h);
  padding:0 16px;
  border-radius:var(--pf-control-radius);
  font-family:var(--pf-font-ui);
  font-size:var(--pf-control-font);
  font-weight:700;
  line-height:1;
}
.btn-sm,a.btn-sm,button.btn-sm{
  height:var(--pf-control-h-sm);
  min-height:var(--pf-control-h-sm);
  padding:0 13px;
  border-radius:var(--pf-control-radius-sm);
  font-size:var(--pf-control-font-sm);
  font-weight:700;
  line-height:1;
}

/* Historical row-action rules used to turn links into 30px icon boxes and could
   accidentally make text buttons huge. Text actions now always obey btn sizing. */
.row-actions a.btn,.row-actions button.btn,
.documents-table .row-actions a.btn,.documents-table .row-actions button.btn,
.template-table .row-actions a.btn,.application-table .row-actions a.btn{
  display:inline-flex;
  width:auto;
  min-width:0;
  height:var(--pf-control-h-sm);
  min-height:var(--pf-control-h-sm);
  padding:0 13px;
  border-radius:var(--pf-control-radius-sm);
  font-size:var(--pf-control-font-sm);
  font-weight:700;
  line-height:1;
  text-align:center;
}
.row-actions{white-space:nowrap}

/* Shared form controls */
.record-form input,.record-form select,.compact-form input,.compact-form select,
.question-form input,.question-form select,.submitted-form input,
.search-control,.document-search select{
  min-height:var(--pf-control-h);
  font-family:var(--pf-font-ui);
  font-size:var(--pf-type-body);
}
.record-form textarea,.compact-form textarea,.question-form textarea,.review-actions textarea{
  font-family:var(--pf-font-ui);
  font-size:var(--pf-type-body);
  line-height:1.55;
}

@media(max-width:560px){
  :root{--pf-type-page:25px}
}


/* P017 — template builder UX: ordering is automatic, creation forms stay compact. */
.section-create-form{
  grid-template-columns:1fr;
  gap:14px;
}
.section-create-form .span-full{
  grid-column:1;
}
.section-create-form textarea{
  min-height:92px;
}
.template-form-actions{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding-top:2px;
}
.template-add-card .panel-head{
  margin-bottom:12px;
}


/* P018 — Template Library lifecycle clarity: active vs archived + safe deletion. */
.template-library-toolbar{
  margin-bottom:14px;
  padding-bottom:12px;
  border-bottom:1px solid #edf1f6;
}
.template-library-toolbar .filter-tabs{align-items:center}
.template-library-toolbar .chip{gap:7px}
.template-library-toolbar .chip strong{
  min-width:19px;
  height:19px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.07);
  font-size:10px;
  font-weight:800;
}
.template-library-toolbar .chip.active strong{background:rgba(255,255,255,.2)}
.template-filter-note{color:#7b8798;font-size:var(--pf-type-meta);line-height:1.45}
.template-table tr.template-row-archived td{
  background:#f8fafc;
  color:#7b8493;
  border-bottom-color:#e9edf2;
}
.template-table tr.template-row-archived td:first-child{box-shadow:inset 3px 0 0 #cbd5e1}
.template-table tr.template-row-archived .entity-link strong{color:#667085}
.template-table tr.template-row-archived .entity-link small,
.template-table tr.template-row-archived .cell-sub{color:#98a1af}
.template-table tr.template-row-archived .count-pill{background:#eef1f4;color:#778293}
.template-table tr.template-row-archived:hover td{background:#f5f7fa}
.template-archived-banner{display:flex;flex-direction:column;gap:4px}
.template-archived-banner strong{font-size:var(--pf-type-body)}
.template-archived-banner span{font-size:var(--pf-type-meta);line-height:1.5}
.template-management-zone{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:14px;
  padding:16px 18px;
  border:1px solid #e4e8ef;
  border-radius:14px;
  background:#fff;
  box-shadow:var(--shadow);
}
.template-management-copy{display:grid;gap:4px;min-width:0}
.template-management-copy strong{font-family:var(--pf-font-heading);font-size:var(--pf-type-subsection);font-weight:650;color:#17203a}
.template-management-copy span{font-size:var(--pf-type-meta);line-height:1.5;color:#748096}
.template-management-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex:0 0 auto}
.template-management-actions form,.page-actions form{margin:0}
@media(max-width:760px){
  .template-library-toolbar,.template-management-zone{align-items:stretch;flex-direction:column}
  .template-management-actions{justify-content:flex-start;flex-wrap:wrap}
  .template-management-actions .btn{width:100%}
}

/* P019 — Project Memory + Evidence Grounding */
.memory-page-head{margin-bottom:14px}
.memory-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:14px}
.memory-stat{min-height:112px;padding:17px 18px;display:flex;flex-direction:column;justify-content:center;gap:5px}
.memory-stat span{font-size:var(--pf-type-meta);color:#66758b}
.memory-stat strong{font-family:var(--pf-font-heading);font-size:28px;line-height:1;color:#17203a}
.memory-stat small{font-size:10.5px;line-height:1.45;color:#8490a2}
.memory-stat-trusted{border-color:#ccebdc;background:linear-gradient(135deg,#fff 0%,#f5fcf8 100%)}
.memory-stat-trusted strong{color:#08754b}
.memory-stat-danger{border-color:#f0c2c2;background:#fff9f9}.memory-stat-danger strong{color:#c43f3f}
.grounding-policy-banner{display:flex;align-items:flex-start;gap:13px;margin-bottom:14px;padding:16px 18px;border-color:#ddd5ff;background:#faf9ff}
.grounding-policy-icon{width:32px;height:32px;display:grid;place-items:center;flex:0 0 auto;border-radius:9px;background:#ece8ff;color:#6847ef;font-size:15px;font-weight:900}
.grounding-policy-banner strong{display:block;font-family:var(--pf-font-heading);font-size:14px;color:#262e44;margin-bottom:3px}
.grounding-policy-banner p{margin:0;max-width:1050px;color:#68758a;font-size:var(--pf-type-meta);line-height:1.55}
.memory-conflict-panel{margin-bottom:14px;padding:0;overflow:hidden;border-color:#f3cc9c}
.memory-conflict-panel .panel-head{padding:17px 18px 14px;border-bottom:1px solid #f4e5d1}.memory-conflict-panel .panel-head p{margin:4px 0 0;color:#7a6b59;font-size:var(--pf-type-meta)}
.count-pill-danger{background:#fff0dd!important;color:#9c5d00!important}
.memory-conflict-list{display:grid;gap:0}.memory-conflict-card{padding:16px 18px;border-bottom:1px solid #f1e8dd}.memory-conflict-card:last-child{border-bottom:0}
.memory-conflict-values{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:10px;align-items:stretch}
.memory-conflict-values label{display:flex;gap:10px;align-items:flex-start;padding:12px;border:1px solid #e4e8ef;border-radius:11px;background:#fff;cursor:pointer}
.memory-conflict-values label:has(input:checked){border-color:#aa97ff;background:#faf8ff;box-shadow:0 0 0 2px rgba(123,97,255,.08)}
.memory-conflict-values input[type=radio]{width:16px;height:16px;margin-top:2px;accent-color:var(--purple);flex:0 0 auto}
.memory-conflict-values label span{min-width:0}.memory-conflict-values strong{display:block;font-size:var(--pf-type-label);margin-bottom:5px}.memory-conflict-values em{display:block;font-style:normal;font-size:var(--pf-type-body);line-height:1.5;color:#4e5a70}
.memory-conflict-vs{display:grid;place-items:center;color:#d78629;font-size:20px;font-weight:800}
.memory-conflict-actions{display:flex;align-items:center;justify-content:flex-end;gap:9px;margin-top:11px}.memory-conflict-actions input{min-height:var(--pf-control-h);flex:1;max-width:520px;border:1px solid #dce2ea;border-radius:var(--pf-control-radius);padding:0 12px;font-size:var(--pf-type-body)}
.memory-create-card{margin-bottom:14px;padding:17px 18px}.memory-create-card .panel-head{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid #edf1f6}.memory-create-card .panel-head p{margin:4px 0 0;color:#748096;font-size:var(--pf-type-meta)}
.memory-create-form{display:grid;grid-template-columns:minmax(180px,.42fr) minmax(0,1.58fr);gap:13px 14px}.memory-create-form>label,.memory-source-grid label,.memory-add-source label{display:grid;gap:6px;font-size:var(--pf-type-label);font-weight:700}.memory-create-form input,.memory-create-form select,.memory-source-grid input,.memory-source-grid select,.memory-add-source input,.memory-add-source select{min-height:var(--pf-control-h);border:1px solid #dce2ea;border-radius:var(--pf-control-radius);padding:0 12px;background:#fff;font:inherit;font-size:var(--pf-type-body)}
.memory-create-form textarea,.memory-source-grid textarea,.memory-add-source textarea{border:1px solid #dce2ea;border-radius:var(--pf-control-radius);padding:10px 12px;resize:vertical;font:inherit;font-size:var(--pf-type-body);line-height:1.55}
.memory-create-form input:focus,.memory-create-form select:focus,.memory-create-form textarea:focus,.memory-source-grid input:focus,.memory-source-grid select:focus,.memory-source-grid textarea:focus,.memory-add-source input:focus,.memory-add-source select:focus,.memory-add-source textarea:focus{outline:none;border-color:#8c72ff;box-shadow:0 0 0 3px rgba(123,97,255,.10)}
.memory-label-field{grid-column:2}.memory-value-field{grid-column:1/-1}.memory-value-field textarea{min-height:108px}
.memory-source-box{grid-column:1/-1;border:1px solid #e5e9f0;border-radius:12px;background:#fafbfe;padding:14px}.memory-source-box-head{display:flex;align-items:baseline;gap:9px;margin-bottom:11px}.memory-source-box-head strong{font-size:var(--pf-type-label)}.memory-source-box-head span{font-size:var(--pf-type-meta);color:#7c8798}
.memory-source-grid{display:grid;grid-template-columns:minmax(260px,1.3fr) minmax(180px,.7fr);gap:11px}.memory-source-grid .span-full{grid-column:1/-1}.memory-create-actions{grid-column:1/-1;display:flex;justify-content:flex-end;padding-top:2px}
.memory-list-panel{padding:0;overflow:hidden}.memory-list-head{padding:17px 18px 13px;border-bottom:1px solid #edf1f6}.memory-list-head p{margin:4px 0 0;color:#748096;font-size:var(--pf-type-meta)}
.memory-filter-bar{display:grid;grid-template-columns:190px 210px minmax(220px,1fr) auto auto;gap:8px;padding:12px 18px;border-bottom:1px solid #edf1f6;background:#fbfcfe}.memory-filter-bar select,.memory-filter-bar input{height:var(--pf-control-h);border:1px solid #dce2ea;border-radius:var(--pf-control-radius);background:#fff;padding:0 11px;font-size:var(--pf-type-body)}
.memory-fact-list{display:grid}.memory-fact-card{padding:17px 18px;border-bottom:1px solid #edf1f6;background:#fff}.memory-fact-card:last-child{border-bottom:0}.memory-fact-card.memory-fact-obsolete{background:#fafbfc;color:#7a8596}.memory-fact-card.memory-fact-conflict{background:#fffaf5;box-shadow:inset 3px 0 0 #e7a44f}.memory-fact-card.memory-fact-unverified{box-shadow:inset 3px 0 0 #b7c0ce}.memory-fact-card.memory-fact-user_confirmed{box-shadow:inset 3px 0 0 #8a72ff}.memory-fact-card.memory-fact-verified{box-shadow:inset 3px 0 0 #32a36e}
.memory-fact-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:11px}.memory-fact-heading{min-width:0}.memory-category{display:block;margin-bottom:4px;color:#7b61ff;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.memory-fact-heading h3{margin:0;font-family:var(--pf-font-heading);font-size:var(--pf-type-section);font-weight:650;color:#17203a}.memory-fact-obsolete .memory-fact-heading h3{color:#697487}
.memory-status{display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.memory-status-unverified{background:#f0f2f5;color:#697487}.memory-status-user_confirmed{background:#f0ecff;color:#6745e8}.memory-status-verified{background:#e9f8f0;color:#08754b}.memory-status-conflict{background:#fff0dd;color:#9b5d00}.memory-status-obsolete{background:#eef1f4;color:#7b8493}
.memory-fact-value{font-size:var(--pf-type-body);line-height:1.62;color:#344057;max-width:1200px}.memory-fact-meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:11px;color:#8390a2;font-size:10.5px}.memory-source-list{margin-top:13px;padding-top:12px;border-top:1px solid #edf1f6}.memory-source-list>strong{display:block;font-size:var(--pf-type-label);margin-bottom:7px}.memory-source-row{display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:12px;align-items:start;padding:8px 0}.memory-source-row>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.memory-source-row a{color:#5f42dd;font-size:11.5px;font-weight:700}.memory-source-row small{color:#8792a4;font-size:10.5px}.memory-source-row blockquote{margin:0;padding:8px 10px;border-left:2px solid #d8d0ff;background:#faf9ff;border-radius:0 8px 8px 0;font-size:11px;line-height:1.5;color:#5d687c}.source-kind{display:inline-flex;min-height:23px;align-items:center;padding:0 7px;border-radius:7px;background:#f0f2f5;color:#687386;font-size:9px;font-weight:800}.source-kind-primary{background:#eee9ff;color:#6041db}.source-kind-contradicting{background:#fff0dd;color:#9b5d00}
.memory-verification-note{display:flex;gap:8px;align-items:baseline;margin-top:10px;padding:9px 10px;border-radius:9px;background:#f8fafc}.memory-verification-note strong{font-size:10.5px}.memory-verification-note span{font-size:11px;color:#66758b}
.memory-fact-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px;padding-top:12px;border-top:1px solid #edf1f6}.memory-fact-actions form{margin:0}.memory-add-source{position:relative}.memory-add-source>summary{height:var(--pf-control-h-sm);display:inline-flex;align-items:center;padding:0 13px;border:1px solid #d9dfe9;border-radius:var(--pf-control-radius-sm);background:#fff;color:#303b52;font-size:var(--pf-control-font-sm);font-weight:700;cursor:pointer;list-style:none}.memory-add-source>summary::-webkit-details-marker{display:none}.memory-add-source[open]>summary{border-color:#cfc4ff;background:#f8f6ff;color:#6041db}.memory-add-source form{position:relative;width:min(700px,calc(100vw - 80px));display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:9px;padding:12px;border:1px solid #e1e5ec;border-radius:12px;background:#fafbfe;box-shadow:0 10px 28px rgba(24,31,49,.08)}.memory-add-source form .span-full{grid-column:1/-1}.memory-add-source form button{justify-self:start}
.memory-empty{padding:38px 20px}.memory-empty p{margin:5px auto 0;max-width:680px;text-align:center;color:#7b8798;font-size:var(--pf-type-meta);line-height:1.5}
.project-memory-summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;margin-top:14px;padding:17px 18px}.project-memory-summary h2{margin:3px 0 4px;font-family:var(--pf-font-heading);font-size:var(--pf-type-section)}.project-memory-summary p{margin:0;max-width:760px;color:#748096;font-size:var(--pf-type-meta);line-height:1.5}.project-memory-summary-stats{display:flex;align-items:stretch;gap:8px}.project-memory-summary-stats span{min-width:92px;display:flex;flex-direction:column;justify-content:center;padding:9px 11px;border-radius:10px;background:#f7f8fb;color:#748096;font-size:9.5px}.project-memory-summary-stats strong{font-size:19px;color:#17203a;line-height:1;margin-bottom:4px}.project-memory-summary-stats .is-danger{background:#fff4e8;color:#9b5d00}.project-memory-summary-stats .is-danger strong{color:#c27716}
@media(max-width:1150px){.memory-stat-grid{grid-template-columns:1fr 1fr}.memory-filter-bar{grid-template-columns:1fr 1fr}.memory-filter-bar input{grid-column:1/-1}.memory-filter-bar .btn{width:100%}.project-memory-summary{grid-template-columns:1fr}.project-memory-summary-stats{justify-content:flex-start}}
@media(max-width:760px){.memory-stat-grid{grid-template-columns:1fr}.memory-create-form,.memory-source-grid{grid-template-columns:1fr}.memory-label-field,.memory-value-field,.memory-source-grid .span-full{grid-column:1}.memory-create-actions{justify-content:stretch}.memory-create-actions .btn{width:100%}.memory-filter-bar{grid-template-columns:1fr}.memory-filter-bar input{grid-column:1}.memory-conflict-values{grid-template-columns:1fr}.memory-conflict-vs{height:18px}.memory-conflict-actions{align-items:stretch;flex-direction:column}.memory-conflict-actions input{max-width:none}.memory-conflict-actions .btn{width:100%}.memory-source-row{grid-template-columns:1fr}.memory-add-source form{grid-template-columns:1fr;width:min(560px,calc(100vw - 54px))}.memory-add-source form .span-full{grid-column:1}.project-memory-summary-stats{flex-wrap:wrap}.project-memory-summary-stats span{flex:1 1 90px}}


/* P020 — AI Document Ingestion + Evidence Intake */
.document-ai-intake-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:center;margin:14px 0;padding:17px 18px}
.document-ai-intake-card h2{margin:3px 0 4px;font-family:var(--pf-font-heading);font-size:var(--pf-type-section);font-weight:650}.document-ai-intake-card p{margin:0;max-width:840px;color:#748096;font-size:var(--pf-type-meta);line-height:1.5}.document-ai-intake-card.has-pending{border-color:#ead8b9;box-shadow:inset 3px 0 0 #e8a244,var(--shadow)}
.document-ai-intake-state{display:grid;justify-items:end;gap:4px;min-width:130px}.document-ai-intake-state strong{font-size:var(--pf-type-label);color:#17203a}.document-ai-intake-state small{font-size:var(--pf-type-meta);color:#7b8798}
.ai-intake-head{align-items:flex-end}.ai-run-status{display:inline-flex;align-items:center;min-height:27px;padding:0 9px;border-radius:999px;font-size:10px;font-weight:800;white-space:nowrap}.ai-run-status-running{background:#fff4e8;color:#9b5d00}.ai-run-status-completed{background:#e9f8f0;color:#08754b}.ai-run-status-failed{background:#fff0f2;color:#b42332}
.ai-grounding-banner{display:flex;align-items:flex-start;gap:12px;margin:0 0 14px;padding:14px 16px;border:1px solid #dfd8ff;border-radius:13px;background:linear-gradient(135deg,#f7f4ff,#fcfbff)}.ai-grounding-icon{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:#ede8ff;color:#6343dd;font-size:12px;font-weight:850;letter-spacing:.02em;flex:0 0 auto}.ai-grounding-banner strong{display:block;margin:1px 0 4px;font-family:var(--pf-font-heading);font-size:var(--pf-type-subsection);font-weight:650}.ai-grounding-banner p{margin:0;color:#68758a;font-size:var(--pf-type-meta);line-height:1.5}
.ai-intake-top-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:14px;margin-bottom:14px}.ai-intake-document-card,.ai-intake-action-card{padding:17px 18px}.ai-intake-document-card .panel-head,.ai-intake-action-card .panel-head{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #edf1f6}.ai-intake-document-card .panel-head p,.ai-intake-action-card .panel-head p{margin:4px 0 0;color:#748096;font-size:var(--pf-type-meta)}
.ai-provider-state{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #e5e9f0;border-radius:11px;background:#fafbfe;margin-bottom:12px}.ai-provider-state>span{width:9px;height:9px;border-radius:50%;background:#9ca7b7}.ai-provider-state.is-ready>span{background:#20a06a}.ai-provider-state.is-off>span{background:#d79034}.ai-provider-state strong,.ai-provider-state small{display:block}.ai-provider-state strong{font-size:var(--pf-type-label)}.ai-provider-state small{margin-top:2px;color:#7a8799;font-size:var(--pf-type-meta)}
.ai-config-help{padding:11px 12px;border-radius:11px;background:#fff8ed;border:1px solid #f1dfc1}.ai-config-help p{margin:0 0 8px;color:#755d3c;font-size:var(--pf-type-meta);line-height:1.45}.ai-config-help code{display:block;overflow:auto;padding:8px 9px;border-radius:8px;background:#fff;color:#435066;font-size:10px;white-space:nowrap}.inline-warning{padding:11px 12px;border:1px solid #f0d9b8;border-radius:10px;background:#fff7eb;color:#8b5f20;font-size:var(--pf-type-meta);line-height:1.5}.ai-provider-disclosure{margin:10px 0 0;color:#8591a2;font-size:10.5px;line-height:1.45}
.ai-run-summary{margin-bottom:14px;padding:17px 18px}.ai-run-summary .panel-head{padding-bottom:12px;margin-bottom:12px;border-bottom:1px solid #edf1f6}.ai-run-summary .panel-head p{margin:4px 0 0;color:#7b8798;font-size:var(--pf-type-meta)}.ai-run-token-meta{display:flex;gap:6px}.ai-run-token-meta span{padding:5px 7px;border-radius:7px;background:#f4f6f9;color:#768397;font-size:9.5px;font-weight:700}.ai-analysis-summary{margin:0;color:#445167;font-size:var(--pf-type-body);line-height:1.62}.ai-analysis-warnings{margin-top:12px;padding:11px 13px;border:1px solid #f0dcc0;border-radius:10px;background:#fff9f0}.ai-analysis-warnings strong{font-size:var(--pf-type-label);color:#8e5c1d}.ai-analysis-warnings ul{margin:7px 0 0 18px;padding:0;color:#786142;font-size:var(--pf-type-meta);line-height:1.5}
.ai-intake-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}.ai-intake-stats>div{padding:10px 11px;border-radius:10px;background:#f7f8fb}.ai-intake-stats span,.ai-intake-stats strong{display:block}.ai-intake-stats span{color:#748096;font-size:10px}.ai-intake-stats strong{margin-top:4px;font-size:19px;color:#17203a}.ai-intake-stats .is-warning{background:#fff6e9}.ai-intake-stats .is-warning strong{color:#b46d0d}.ai-intake-stats .is-success{background:#edf9f3}.ai-intake-stats .is-success strong{color:#14885a}
.ai-candidate-panel{padding:0;overflow:hidden;margin-bottom:14px}.ai-candidate-panel-head{padding:17px 18px 13px;margin:0;border-bottom:1px solid #edf1f6}.ai-candidate-panel-head p{margin:4px 0 0;color:#748096;font-size:var(--pf-type-meta)}.count-pill-warning{background:#fff0dd;color:#9b5d00}.ai-candidate-list{display:grid}.ai-candidate-card{position:relative;padding:17px 18px;border-bottom:1px solid #edf1f6;background:#fff}.ai-candidate-card:last-child{border-bottom:0}.ai-candidate-card.comparison-potential_conflict{box-shadow:inset 3px 0 0 #e7a44f;background:#fffdf9}.ai-candidate-card.comparison-duplicate{box-shadow:inset 3px 0 0 #9c8df3}.ai-candidate-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}.ai-candidate-card h3{margin:0;font-family:var(--pf-font-heading);font-size:var(--pf-type-section);font-weight:650}.ai-candidate-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ai-confidence,.comparison-badge{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;font-size:9.5px;font-weight:800}.ai-confidence{background:#f1f3f6;color:#687487}.comparison-badge-new{background:#edf9f3;color:#147a53}.comparison-badge-duplicate{background:#f1edff;color:#6546df}.comparison-badge-potential_conflict{background:#fff0dd;color:#9b5d00}
.ai-candidate-compare-warning,.ai-candidate-duplicate{display:flex;gap:8px;align-items:baseline;margin:0 0 12px;padding:9px 10px;border-radius:9px;font-size:var(--pf-type-meta)}.ai-candidate-compare-warning{background:#fff5e8;color:#805b28}.ai-candidate-duplicate{background:#f7f4ff;color:#5e4f88}.ai-candidate-compare-warning strong,.ai-candidate-duplicate strong{font-size:10.5px;white-space:nowrap}
.ai-candidate-review-form{display:block}.ai-candidate-fields{display:grid;grid-template-columns:minmax(180px,.36fr) minmax(180px,.36fr) minmax(0,1.28fr);gap:11px}.ai-candidate-fields label{display:grid;gap:6px;font-size:var(--pf-type-label);font-weight:700}.ai-candidate-fields .span-full{grid-column:1/-1}.ai-candidate-fields input,.ai-candidate-fields select{height:var(--pf-control-h);border:1px solid #dce2ea;border-radius:var(--pf-control-radius);padding:0 12px;background:#fff;font-size:var(--pf-type-body)}.ai-candidate-fields textarea{min-height:86px;border:1px solid #dce2ea;border-radius:var(--pf-control-radius);padding:10px 12px;resize:vertical;font:inherit;font-size:var(--pf-type-body);line-height:1.55}.ai-candidate-fields input:focus,.ai-candidate-fields select:focus,.ai-candidate-fields textarea:focus{outline:none;border-color:#8c72ff;box-shadow:0 0 0 3px rgba(123,97,255,.10)}.ai-rationale{display:flex;gap:8px;align-items:baseline;margin-top:10px;padding:9px 10px;border-radius:9px;background:#f8fafc}.ai-rationale strong{font-size:10.5px;white-space:nowrap}.ai-rationale span{font-size:var(--pf-type-meta);color:#66758b;line-height:1.45}.ai-candidate-actions{display:flex;justify-content:flex-end;margin-top:12px}.ai-candidate-reject{position:absolute;right:170px;bottom:17px;margin:0}
.ai-candidate-empty{padding:36px 20px}.ai-candidate-empty h3{margin:0;font-size:var(--pf-type-subsection)}.ai-candidate-empty p{margin:5px 0 0;color:#7b8798;font-size:var(--pf-type-meta)}
.ai-reviewed-panel{padding:0;margin-bottom:14px;overflow:hidden}.ai-reviewed-panel>details>summary{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;cursor:pointer;list-style:none;font-family:var(--pf-font-heading);font-size:var(--pf-type-subsection);font-weight:650}.ai-reviewed-panel>details>summary::-webkit-details-marker{display:none}.ai-reviewed-panel>details>summary strong{display:grid;place-items:center;min-width:28px;height:25px;padding:0 8px;border-radius:999px;background:#f0f2f5;color:#667386;font-size:10px}.ai-reviewed-list{border-top:1px solid #edf1f6}.ai-reviewed-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:12px 18px;border-bottom:1px solid #edf1f6}.ai-reviewed-row:last-child{border-bottom:0}.ai-reviewed-row>div:first-child strong,.ai-reviewed-row>div:first-child small{display:block}.ai-reviewed-row>div:first-child strong{font-size:var(--pf-type-label)}.ai-reviewed-row>div:first-child small{margin-top:3px;color:#778497;font-size:var(--pf-type-meta)}.ai-reviewed-row>div:last-child{display:flex;align-items:center;gap:8px}.ai-reviewed-row>div:last-child small{color:#8692a3;font-size:10px}.review-status{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;font-size:9.5px;font-weight:800}.review-status-accepted{background:#e9f8f0;color:#08754b}.review-status-rejected{background:#f0f2f5;color:#6d7787}
.ai-run-history{padding:0;overflow:hidden}.ai-run-history .panel-head{padding:17px 18px 13px;margin:0;border-bottom:1px solid #edf1f6}.ai-run-history .panel-head p{margin:4px 0 0;color:#748096;font-size:var(--pf-type-meta)}.ai-run-history-list{display:grid}.ai-run-history-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 18px;border-bottom:1px solid #edf1f6;color:#17203a;text-decoration:none}.ai-run-history-row:last-child{border-bottom:0}.ai-run-history-row:hover,.ai-run-history-row.is-current{background:#faf9ff}.ai-run-history-row strong,.ai-run-history-row small{display:block}.ai-run-history-row strong{font-size:var(--pf-type-label)}.ai-run-history-row small{margin-top:3px;color:#7c8899;font-size:var(--pf-type-meta)}
@media(max-width:1200px){.document-ai-intake-card{grid-template-columns:1fr auto}.document-ai-intake-state{justify-items:start}.document-ai-intake-card>.btn{grid-column:2;grid-row:1/3}.ai-intake-top-grid{grid-template-columns:1fr}.ai-candidate-fields{grid-template-columns:1fr 1fr}.ai-candidate-fields .span-full{grid-column:1/-1}}
@media(max-width:760px){.document-ai-intake-card{grid-template-columns:1fr}.document-ai-intake-state{justify-items:start}.document-ai-intake-card>.btn{grid-column:1;grid-row:auto;width:100%}.ai-intake-stats{grid-template-columns:1fr 1fr}.ai-candidate-card>header{flex-direction:column}.ai-candidate-badges{justify-content:flex-start}.ai-candidate-fields{grid-template-columns:1fr}.ai-candidate-fields .span-full{grid-column:1}.ai-candidate-actions{justify-content:stretch;padding-top:44px}.ai-candidate-actions .btn{width:100%}.ai-candidate-reject{left:18px;right:18px;bottom:63px}.ai-candidate-reject .btn{width:100%}.ai-reviewed-row{grid-template-columns:1fr}.ai-reviewed-row>div:last-child{align-items:flex-start;flex-wrap:wrap}}


/* P022 — portal-managed AI settings */
.ai-settings-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.55fr);gap:14px;align-items:start}.ai-settings-form-card,.ai-settings-side-card{padding:18px}.ai-settings-form-card .panel-head,.ai-settings-side-card .panel-head,.ai-center-grid .panel-head{padding-bottom:13px;margin-bottom:15px;border-bottom:1px solid #edf1f6}.ai-settings-status{display:inline-flex;align-items:center;min-height:27px;padding:0 10px;border-radius:999px;font-size:10px;font-weight:800}.ai-settings-status.is-on{background:#e9f8f0;color:#08754b}.ai-settings-status.is-off{background:#f1f3f6;color:#667386}.ai-settings-form{gap:16px}.toggle-row{display:flex!important;align-items:center;justify-content:space-between;gap:20px;padding:13px 14px;border:1px solid #e1e6ed;border-radius:12px;background:#fbfcfe;cursor:pointer}.toggle-row span strong,.toggle-row span small{display:block}.toggle-row span strong{font-size:var(--pf-type-label)}.toggle-row span small{margin-top:3px;color:#748096;font-size:var(--pf-type-meta);font-weight:500}.toggle-row input{position:absolute;opacity:0;pointer-events:none}.toggle-row i{position:relative;width:44px;height:24px;border-radius:999px;background:#cbd3df;transition:.18s ease;flex:0 0 auto}.toggle-row i:after{content:"";position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.18);transition:.18s ease}.toggle-row input:checked+i{background:var(--purple)}.toggle-row input:checked+i:after{transform:translateX(20px)}.api-key-block{display:grid;gap:8px;padding:14px;border:1px solid #e1e6ed;border-radius:12px;background:#fff}.api-key-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.api-key-head label{display:block;font-size:var(--pf-type-label);font-weight:700}.api-key-head small{display:block;margin-top:3px;color:#748096;font-size:var(--pf-type-meta);font-weight:500;line-height:1.45}.secret-state{display:inline-flex;min-height:25px;align-items:center;padding:0 8px;border-radius:999px;font-size:9.5px;font-weight:800;white-space:nowrap}.secret-state.is-set{background:#e9f8f0;color:#08754b}.secret-state.is-empty{background:#fff3df;color:#9a6200}.checkbox-line{display:flex!important;align-items:center;gap:7px;color:#7c4b4b;font-size:var(--pf-type-meta)!important;font-weight:650!important}.checkbox-line input{width:15px;height:15px}.advanced-settings{border:1px solid #e1e6ed;border-radius:12px;background:#fbfcfe;overflow:hidden}.advanced-settings>summary{padding:13px 14px;cursor:pointer;font-size:var(--pf-type-label);font-weight:750;color:#344055}.advanced-settings-body{padding:14px;border-top:1px solid #e8ecf2;background:#fff}.form-help{margin:9px 0 0;color:#7b8798;font-size:var(--pf-type-meta);line-height:1.45}.settings-facts{display:grid}.settings-facts>div{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:11px 0;border-bottom:1px solid #edf1f6}.settings-facts>div:last-child{border-bottom:0}.settings-facts span{color:#748096;font-size:var(--pf-type-meta)}.settings-facts strong{font-size:var(--pf-type-label);text-align:right}.ai-test-form{display:grid;gap:7px;margin-top:16px;padding-top:16px;border-top:1px solid #edf1f6}.ai-test-form small{color:#7b8798;font-size:10px;line-height:1.4}.ai-test-form .btn:disabled{opacity:.5;cursor:not-allowed}.ai-center-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:14px}.ai-center-status,.ai-center-capabilities{padding:18px}.capability-list{display:grid;gap:9px}.capability-row{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start;padding:12px;border:1px solid #e6eaf0;border-radius:11px;background:#fbfcfe}.capability-row>span{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#f0f2f5;color:#7a8798;font-weight:850}.capability-row.is-ready>span{background:#e9f8f0;color:#08754b}.capability-row strong,.capability-row small{display:block}.capability-row strong{font-size:var(--pf-type-label)}.capability-row small{margin-top:3px;color:#748096;font-size:var(--pf-type-meta);line-height:1.45}.ai-config-help .btn{margin-top:2px}
@media(max-width:980px){.ai-settings-grid,.ai-center-grid{grid-template-columns:1fr}}@media(max-width:700px){.api-key-head{flex-direction:column}.toggle-row{align-items:flex-start}.form-grid.two{grid-template-columns:1fr}}

/* P023 — AI Settings UI polish (locked to ProjectFlow UI contract) */
.page-head > div > .back-link,
.page-head > div > .eyebrow{
    display:block;
}
.page-head > div > .eyebrow{
    margin-top:9px;
}

.ai-settings-grid{
    width:100%;
    max-width:1360px;
    grid-template-columns:minmax(0,1fr) 380px;
    gap:18px;
}
.ai-settings-form-card,
.ai-settings-side-card{
    padding:20px;
    border-radius:16px;
}
.ai-settings-form-card .panel-head,
.ai-settings-side-card .panel-head{
    align-items:flex-start;
    gap:16px;
    padding-bottom:16px;
    margin-bottom:16px;
}
.ai-settings-form-card .panel-head h2,
.ai-settings-side-card .panel-head h2{
    font-size:16px;
    line-height:1.3;
}
.ai-settings-form-card .panel-head p,
.ai-settings-side-card .panel-head p{
    margin:6px 0 0;
    color:#66748a;
    font-size:12px;
    line-height:1.55;
}

.ai-settings-form{
    display:grid;
    gap:16px;
}
.ai-settings-form .form-grid.two{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.ai-settings-form .form-grid.two > label,
.ai-settings-form .advanced-settings label{
    display:grid;
    gap:7px;
    color:#273248;
    font-size:12px;
    line-height:1.3;
    font-weight:700;
}
.ai-settings-form input[type="text"],
.ai-settings-form input[type="password"],
.ai-settings-form input[type="number"],
.ai-settings-form input:not([type]),
.ai-settings-form select{
    width:100%;
    min-width:0;
    height:42px;
    padding:0 12px;
    border:1px solid var(--ui-border,#dce3ed);
    border-radius:10px;
    outline:0;
    background:#fff;
    color:#17203a;
    font:500 13px/1 InterLocal,Inter,Arial,sans-serif;
    transition:border-color .14s ease,box-shadow .14s ease,background .14s ease;
}
.ai-settings-form select:disabled{
    opacity:1;
    color:#5b6678;
    background:#f7f9fc;
    cursor:not-allowed;
}
.ai-settings-form input:hover,
.ai-settings-form select:hover{
    border-color:var(--ui-border-hover,#c9d2df);
}
.ai-settings-form input:focus,
.ai-settings-form select:focus{
    border-color:var(--purple);
    box-shadow:0 0 0 3px rgba(123,97,255,.10);
}

.toggle-row{
    min-height:62px;
    padding:13px 15px;
}
.toggle-row > span{
    min-width:0;
    padding-right:12px;
}
.toggle-row span strong{
    color:#202b40;
    font-size:12px;
}
.toggle-row span small{
    font-size:11px;
    line-height:1.45;
}
.toggle-row i{
    width:46px;
    height:26px;
}
.toggle-row i:after{
    width:20px;
    height:20px;
}
.toggle-row input:checked+i:after{
    transform:translateX(20px);
}

.api-key-block{
    gap:10px;
    padding:15px;
    background:#fbfcff;
}
.api-key-head{
    align-items:center;
}
.api-key-head > div{
    min-width:0;
}
.api-key-head label{
    color:#202b40;
    font-size:12px;
}
.api-key-head small{
    max-width:650px;
    font-size:11px;
}
.api-key-block > input[type="password"]{
    background:#fff;
}
.secret-state{
    min-height:27px;
    padding:0 10px;
    font-size:10px;
}

.advanced-settings > summary{
    min-height:42px;
    display:flex;
    align-items:center;
    padding:0 14px;
    list-style:none;
}
.advanced-settings > summary::-webkit-details-marker{display:none}
.advanced-settings > summary::before{
    content:"›";
    display:inline-block;
    margin-right:8px;
    color:#68758a;
    font-size:17px;
    transform:rotate(0deg);
    transition:transform .15s ease;
}
.advanced-settings[open] > summary::before{
    transform:rotate(90deg);
}
.advanced-settings-body{
    padding:16px;
}

.ai-settings-form .form-actions{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    gap:10px;
    margin:2px -20px -20px;
    padding:16px 20px 18px;
    border-top:1px solid #edf1f6;
    background:#fbfcff;
}
.ai-settings-form .form-actions .btn{
    min-width:108px;
}

.ai-settings-side-card{
    position:sticky;
    top:18px;
}
.settings-facts > div{
    min-height:46px;
    align-items:center;
}
.settings-facts span{
    font-size:11px;
}
.settings-facts strong{
    color:#202b40;
    font-size:12px;
    line-height:1.35;
}
.ai-test-form{
    gap:9px;
}
.ai-test-form .btn{
    width:100%;
}
.ai-test-form small{
    font-size:10.5px;
    line-height:1.45;
}

@media(max-width:1100px){
    .ai-settings-grid{grid-template-columns:1fr}
    .ai-settings-side-card{position:static}
}
@media(max-width:700px){
    .ai-settings-form .form-grid.two{grid-template-columns:1fr}
    .api-key-head{align-items:flex-start}
    .ai-settings-form .form-actions{
        flex-direction:column-reverse;
        align-items:stretch;
    }
    .ai-settings-form .form-actions .btn{width:100%}
}

/* P024 — Reports Engine + Planned vs Realized / Project Health */
.report-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 14px}.report-kpi{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:70px;padding:14px 15px;border:1px solid #e2e7ef;border-radius:14px;background:#fff;color:#536078;text-decoration:none;box-shadow:0 7px 20px rgba(31,42,68,.035);transition:.14s ease}.report-kpi:hover,.report-kpi.is-active{border-color:#cfc4ff;background:#faf9ff;transform:translateY(-1px)}.report-kpi span{font-size:11px;font-weight:650}.report-kpi strong{font-family:var(--pf-font-heading);font-size:22px;color:#111a31}.report-kpi.is-active strong{color:var(--purple)}
.report-list-panel{padding:0;overflow:hidden}.report-toolbar{display:flex;justify-content:flex-end;gap:8px;padding:14px;border-bottom:1px solid #edf1f6}.report-toolbar select,.report-toolbar input{height:38px;border:1px solid #dce3ed;border-radius:9px;background:#fff;padding:0 11px;font:500 12px/1 InterLocal,Inter,Arial,sans-serif}.report-toolbar select{min-width:190px}.report-toolbar input{min-width:250px}.mini-progress{width:90px;height:5px;border-radius:999px;background:#edf0f5;overflow:hidden;margin-bottom:4px}.mini-progress span{display:block;height:100%;background:var(--purple);border-radius:inherit}
.project-context-actions{display:flex;gap:8px;justify-content:flex-end;margin:-4px 0 14px}
.report-head{margin-bottom:12px}.report-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px}.report-summary-card{padding:16px}.report-summary-card>span{display:block;color:#738095;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.report-summary-card>strong{display:block;margin-top:7px;font-family:var(--pf-font-heading);font-size:24px;line-height:1.2;color:#17203a}.report-summary-card>small{display:block;margin-top:7px;color:#778497;font-size:10.5px;line-height:1.45}.report-progress{height:7px;margin-top:10px;border-radius:999px;background:#edf0f5;overflow:hidden}.report-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7554f6,#9a7aff)}.report-blocker-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.report-blocker-list span{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;background:#fff4e5;color:#965d08;font-size:9.5px;font-weight:750}.report-blocker-list span.ok{background:#eaf8f0;color:#0b7950}.text-success{color:#0d8458!important}.text-warning{color:#a76508!important}
.report-local-nav{position:sticky;top:0;z-index:4;display:flex;gap:5px;margin:0 0 14px;padding:7px;border:1px solid #e2e7ef;border-radius:12px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px)}.report-local-nav a{min-height:34px;display:flex;align-items:center;padding:0 12px;border-radius:8px;color:#536078;text-decoration:none;font-size:11px;font-weight:700}.report-local-nav a:hover{background:#f2eeff;color:#6846e7}
.report-section-block{scroll-margin-top:65px;margin-bottom:18px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 10px}.section-heading h2{margin:3px 0 0;font-family:var(--pf-font-heading);font-size:18px}.section-heading p{margin:5px 0 0;color:#6f7c91;font-size:11.5px;line-height:1.5}.health-legend{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:#778497;font-size:10px}.health-dot{display:inline-block;width:9px;height:9px;border-radius:50%;flex:0 0 auto}.health-dot.green{background:#22a06b}.health-dot.yellow{background:#e59a25}.health-dot.red{background:#df5361}
.report-question-section{padding:0;overflow:hidden;margin-bottom:10px}.report-question-section>header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding:15px 17px;border-bottom:1px solid #edf1f6;background:#fbfcff}.report-question-section>header h3{margin:0;font-family:var(--pf-font-heading);font-size:15px}.report-question-section>header p{margin:4px 0 0;color:#758197;font-size:10.5px}.report-question-card{position:relative;padding:16px 17px;border-bottom:1px solid #edf1f6}.report-question-card:last-child{border-bottom:0}.report-question-card.health-green{box-shadow:inset 3px 0 0 #36ad79}.report-question-card.health-yellow{box-shadow:inset 3px 0 0 #e5a13c;background:#fffdfa}.report-question-card.health-red{box-shadow:inset 3px 0 0 #df6570;background:#fffafb}.report-question-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:start}.report-question-title strong,.report-question-title small{display:block}.report-question-title strong{font-size:12.5px;line-height:1.45}.report-question-title small{margin-top:4px;color:#778497;font-size:10px}.question-health-label{align-self:start;display:inline-flex;min-height:25px;align-items:center;padding:0 8px;border-radius:999px;background:#f1f3f6;color:#617087;font-size:9.5px;font-weight:800}.health-green .question-health-label{background:#eaf8f0;color:#0d7950}.health-yellow .question-health-label{background:#fff1dc;color:#95600b}.health-red .question-health-label{background:#ffebed;color:#aa3946}.question-help{margin:10px 0 0;padding:8px 10px;border-radius:8px;background:#f7f9fc;color:#68768c;font-size:10.5px;line-height:1.5}.report-answer-form{margin-top:11px}.report-answer-form textarea{width:100%;min-height:125px;padding:11px 12px;border:1px solid #dce3ed;border-radius:10px;background:#fff;resize:vertical;font:500 12.5px/1.55 InterLocal,Inter,Arial,sans-serif;color:#17203a}.report-answer-form textarea:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 3px rgba(123,97,255,.1)}.report-answer-form textarea:disabled{background:#f8fafc;color:#445067}.answer-meta{display:flex;align-items:center;justify-content:flex-end;gap:7px;margin-top:8px}.answer-meta select{height:34px;min-width:150px;padding:0 9px;border:1px solid #dce3ed;border-radius:8px;background:#fff;font-size:10.5px}.char-count{margin-right:auto;color:#7a8798;font-size:10px}.char-count.over{color:#c54150;font-weight:800}
.report-evidence-box{margin-top:11px;padding:10px;border:1px solid #e7ebf1;border-radius:10px;background:#fbfcfe}.report-evidence-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.report-evidence-head strong{font-size:10.5px}.report-evidence-head strong span{display:inline-grid;place-items:center;min-width:21px;height:20px;padding:0 5px;border-radius:999px;background:#ede9ff;color:#6547dd}.report-evidence-head small{font-size:9.5px}.evidence-row{display:flex;align-items:center;gap:8px;margin-top:7px;padding-top:7px;border-top:1px solid #edf1f6}.evidence-row>a{font-size:10.5px;font-weight:700;text-decoration:none;color:#5f43d8}.evidence-row>span{color:#778497;font-size:10px}.evidence-row form{margin-left:auto}.evidence-add-form{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(180px,1fr) auto;gap:7px;margin-top:8px;padding-top:8px;border-top:1px solid #edf1f6}.evidence-add-form select,.evidence-add-form input{height:34px;border:1px solid #dce3ed;border-radius:8px;padding:0 9px;background:#fff;font-size:10.5px}.icon-action{display:grid;place-items:center;width:25px;height:25px;border:0;border-radius:7px;background:#eef1f5;color:#5b6778;cursor:pointer}.icon-action.danger:hover{background:#ffebed;color:#b33b49}
.report-indicator-table{padding:0;overflow:visible}.indicator-status,.objective-status{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;font-size:9.5px;font-weight:800}.indicator-not_started,.indicator-tracked{background:#f1f3f6;color:#687487}.indicator-below_plan{background:#fff1dc;color:#95600b}.indicator-achieved{background:#eaf8f0;color:#0d7950}.indicator-exceeded{background:#e9f7ff;color:#19739b}.evidence-subrow td{padding-top:0!important;border-top:0!important}.report-evidence-inline{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:6px 0 10px}.report-evidence-inline>span{display:inline-flex;align-items:center;gap:4px;padding:5px 6px;border-radius:7px;background:#f6f7fa}.report-evidence-inline a{color:#5f43d8;text-decoration:none;font-size:9.5px;font-weight:700}.inline-evidence-form{display:inline-flex;gap:5px}.inline-evidence-form select{height:30px;min-width:160px;border:1px solid #dce3ed;border-radius:7px;background:#fff;padding:0 7px;font-size:9.5px}.row-edit{position:relative}.row-edit>summary{cursor:pointer;list-style:none;color:#6446dd;font-size:10px;font-weight:700}.row-edit>summary::-webkit-details-marker{display:none}.floating-edit-card{position:absolute;right:0;top:24px;z-index:9;width:420px;padding:12px;border:1px solid #dedfeb;border-radius:12px;background:#fff;box-shadow:0 16px 40px rgba(28,39,66,.15)}.floating-edit-card .compact-form{display:grid;grid-template-columns:1fr 1fr;gap:7px}.floating-edit-card input,.floating-edit-card textarea{width:100%;border:1px solid #dce3ed;border-radius:8px;padding:8px;font-size:10.5px}.floating-edit-card textarea{grid-column:1/-1}.report-add-card{margin-top:10px;padding:15px}.report-add-card h3{margin:0 0 10px;font-family:var(--pf-font-heading);font-size:14px}.report-inline-grid{display:grid;grid-template-columns:1.4fr .7fr .55fr .65fr .65fr 1.2fr auto;gap:7px;align-items:center}.report-inline-grid input{height:38px;border:1px solid #dce3ed;border-radius:8px;padding:0 9px;font-size:10.5px}
.report-objective-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.objective-card{padding:15px}.objective-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.objective-head>div{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.objective-head strong{font-size:12.5px}.objective-head b{font-family:var(--pf-font-heading);font-size:20px;color:#5e43d6}.objective-not_started{background:#f1f3f6;color:#687487}.objective-in_progress{background:#f0edff;color:#6548d9}.objective-on_track,.objective-completed{background:#eaf8f0;color:#0d7950}.objective-at_risk{background:#fff0e1;color:#a06108}.objective-copy{display:grid;grid-template-columns:85px 1fr;gap:6px 9px;margin-top:12px}.objective-copy span{color:#788498;font-size:9.5px;font-weight:800;text-transform:uppercase}.objective-copy p{margin:0;color:#39465b;font-size:10.5px;line-height:1.45}.objective-evidence{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin:11px 0}.objective-evidence strong{font-size:10px}.objective-evidence a{padding:4px 6px;border-radius:6px;background:#f4f1ff;color:#6044d7;text-decoration:none;font-size:9.5px}.objective-card details>summary{list-style:none;width:max-content}.objective-card details>summary::-webkit-details-marker{display:none}.objective-edit-form{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.objective-edit-form input,.objective-edit-form select,.objective-edit-form textarea{border:1px solid #dce3ed;border-radius:8px;padding:8px;font-size:10.5px}.objective-edit-form textarea{grid-column:1/-1}.objective-add-evidence{margin-top:8px}.objective-create-form .btn{margin-top:10px}
.report-review-gate{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px;margin-top:16px}.report-review-gate h2{margin:3px 0 0;font-family:var(--pf-font-heading);font-size:17px}.report-review-gate p{margin:5px 0 0;color:#6f7c91;font-size:11px;line-height:1.5}.inline-warning{margin-top:8px;padding:7px 9px;border-radius:8px;background:#fff1dc;color:#8f5c0a;font-size:10px}.report-review-gate .review-gate-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.report-review-gate .submitted-form{display:flex;gap:6px}.report-review-gate .submitted-form input{height:38px;border:1px solid #dce3ed;border-radius:8px;padding:0 9px;font-size:10.5px}
@media(max-width:1200px){.report-kpis{grid-template-columns:repeat(3,1fr)}.report-inline-grid{grid-template-columns:repeat(3,1fr)}.report-inline-grid .btn{grid-column:1/-1}.report-objective-grid{grid-template-columns:1fr}.report-summary-grid{grid-template-columns:1fr 1fr}.report-summary-card:last-child{grid-column:1/-1}}
@media(max-width:800px){.report-kpis{grid-template-columns:1fr 1fr}.report-toolbar{flex-direction:column}.report-toolbar select,.report-toolbar input{width:100%;min-width:0}.report-summary-grid{grid-template-columns:1fr}.report-summary-card:last-child{grid-column:auto}.report-local-nav{overflow:auto}.section-heading{align-items:flex-start;flex-direction:column}.report-question-title{grid-template-columns:auto 1fr}.question-health-label{grid-column:2}.answer-meta{align-items:stretch;flex-direction:column}.char-count{margin-right:0}.answer-meta select,.answer-meta .btn{width:100%}.evidence-add-form{grid-template-columns:1fr}.report-inline-grid{grid-template-columns:1fr}.floating-edit-card{position:fixed;left:12px;right:12px;top:15vh;width:auto}.report-review-gate{grid-template-columns:1fr}.report-review-gate .review-gate-actions{justify-content:flex-start}.report-review-gate .submitted-form{width:100%;flex-direction:column}.report-review-gate .submitted-form input,.report-review-gate .submitted-form .btn{width:100%}.project-context-actions{justify-content:flex-start}}

/* P025 — LOCKED SIDEBAR HEIGHT / OVERFLOW CONTRACT
   Sidebar always fills the viewport. Navigation owns vertical overflow;
   account block stays inside the dark rail and never spills onto page content. */
.sidebar{
  height:100vh;
  min-height:100vh;
  height:100dvh;
  min-height:100dvh;
  overflow:hidden;
}
.nav-list{
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.22) transparent;
  padding-right:4px;
  margin-right:-4px;
}
.nav-list::-webkit-scrollbar{width:5px}
.nav-list::-webkit-scrollbar-track{background:transparent}
.nav-list::-webkit-scrollbar-thumb{background:rgba(255,255,255,.20);border-radius:999px}
.nav-list::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.32)}
.sidebar-user{
  flex:0 0 auto;
  margin-top:10px;
  position:relative;
  z-index:2;
  background:rgba(9,18,43,.92);
}
@media(max-width:850px){
  .sidebar{height:100vh;min-height:100vh;height:100dvh;min-height:100dvh;overflow:hidden}
  .nav-list{min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:2px;margin-right:-2px}
  .sidebar-user{margin-top:8px}
}

/* P026 — Programme Intelligence / verified official-source workflow */
.programme-page-head{align-items:flex-end}.programme-tabs{display:flex;gap:5px;margin:0 0 14px;padding:6px;border:1px solid #e2e7ef;border-radius:12px;background:#fff;overflow:auto}.programme-tabs a{display:flex;align-items:center;justify-content:center;min-height:36px;padding:0 13px;border-radius:8px;color:#59667b;text-decoration:none;font-size:11px;font-weight:750;white-space:nowrap}.programme-tabs a:hover{background:#f6f4ff;color:#6848df}.programme-tabs a.is-active{background:#ede8ff;color:#6444dc}
.programme-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.programme-kpis article{min-height:83px;padding:15px 16px;border:1px solid #e2e7ef;border-radius:14px;background:#fff;box-shadow:0 7px 22px rgba(31,42,68,.035)}.programme-kpis span{display:block;color:#667489;font-size:10.5px;font-weight:650}.programme-kpis strong{display:block;margin-top:7px;font-family:var(--pf-font-heading);font-size:24px;color:#17203a}.programme-kpis article.has-warning{border-color:#f0d6aa;background:#fffdfa}.programme-kpis article.has-warning strong{color:#a66b10}.programme-kpis article.has-danger{border-color:#f3c7cc;background:#fffafb}.programme-kpis article.has-danger strong{color:#bd3d4c}
.programme-action-panel{margin-bottom:14px;border-color:#f0d6aa}.programme-project-list{display:flex;flex-direction:column}.programme-project-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:12px 14px;border-top:1px solid #edf1f6;color:inherit;text-decoration:none}.programme-project-row:first-child{border-top:0}.programme-project-row:hover{background:#fbfaff}.programme-project-row strong{display:block;font-size:12px}.programme-project-row small{display:block;margin-top:3px;color:#7a8799;font-size:10px}.programme-impact-count{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;background:#fff1dc;color:#98610a;font-size:9.5px;font-weight:800}
.programme-columns{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.75fr);gap:12px}.programme-updates-panel,.programme-source-panel{padding:0;overflow:hidden}.programme-updates-panel>.panel-head,.programme-source-panel>.panel-head{padding:15px 16px;border-bottom:1px solid #edf1f6}.programme-update-list{display:flex;flex-direction:column}.programme-update-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 16px;border-bottom:1px solid #edf1f6;color:inherit;text-decoration:none}.programme-update-row:last-child{border-bottom:0}.programme-update-row:hover{background:#faf9ff}.programme-update-row.is-unread{background:#fcfbff}.programme-update-row.is-unread strong{color:#4f37c7}.programme-row-title{display:flex;gap:7px;align-items:center}.programme-update-row strong{font-size:11.5px}.programme-update-row small{display:block;margin-top:3px;color:#7a8798;font-size:9.5px}.programme-severity{width:8px;height:8px;border-radius:50%;background:#92a0b3}.programme-severity.severity-important{background:#e9a12e}.programme-severity.severity-critical{background:#d94a5a}.programme-new-badge{display:inline-flex;min-height:18px;align-items:center;padding:0 5px;border-radius:999px;background:#ede8ff;color:#6747dc;font-size:8px;font-weight:850;letter-spacing:.04em}.programme-verification{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:0 8px;border-radius:999px;background:#f0f2f5;color:#637086;font-size:9px;font-weight:800;white-space:nowrap}.verification-needs_review{background:#fff1dc;color:#97610c}.verification-official_confirmed{background:#eaf8f0;color:#0d7950}.verification-obsolete{background:#eff1f4;color:#758094}
.programme-source-mini>div{display:grid;grid-template-columns:10px minmax(0,1fr) auto;gap:9px;align-items:center;padding:11px 15px;border-bottom:1px solid #edf1f6}.programme-source-mini>div:last-child{border-bottom:0}.programme-source-mini strong{display:block;font-size:10.5px}.programme-source-mini small{display:block;margin-top:2px;color:#7c8899;font-size:9px}.programme-source-mini>div>span:last-child{font-size:9px;color:#68758a}.source-state{width:8px;height:8px;border-radius:50%;background:#aeb8c7}.source-state.is-ok{background:#27a56f}.source-state.is-error{background:#d64a58}.source-state.is-idle{background:#aeb8c7}
.programme-source-workspace{display:grid;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);gap:12px}.source-create-card,.source-list-card{padding:0;overflow:hidden}.source-create-card>.panel-head,.source-list-card>.panel-head{padding:15px 16px;border-bottom:1px solid #edf1f6}.programme-source-form{display:flex;flex-direction:column;gap:11px;padding:16px}.programme-source-form.compact{padding:13px 0 0;border-top:1px solid #edf1f6}.programme-source-form label>span{display:block;margin-bottom:5px;color:#27334a;font-size:10px;font-weight:750}.programme-source-form input,.programme-source-form select{width:100%;height:40px;border:1px solid #dce3ed;border-radius:9px;background:#fff;padding:0 10px;font:500 11.5px/1 InterLocal,Inter,Arial,sans-serif;color:#1c2740}.programme-source-form input:focus,.programme-source-form select:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 3px rgba(123,97,255,.09)}.check-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.check-row label{display:flex;align-items:center;gap:7px;font-size:10.5px;color:#465368}.check-row input{width:15px;height:15px}.source-safety-note,.source-global-note{padding:9px 10px;border-radius:9px;background:#f6f7fa;color:#66758b;font-size:9.5px;line-height:1.5}.source-admin-list{display:flex;flex-direction:column}.source-admin-row{border-bottom:1px solid #edf1f6}.source-admin-row:last-child{border-bottom:0}.source-admin-row>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 15px;cursor:pointer}.source-admin-row>summary::-webkit-details-marker{display:none}.source-admin-row>summary:hover{background:#fafbfe}.source-summary-main{display:flex;align-items:center;gap:9px;min-width:0}.source-summary-main strong{display:block;font-size:11px}.source-summary-main small{display:block;margin-top:3px;color:#798697;font-size:9.5px}.source-summary-meta{display:flex;align-items:center;gap:10px;color:#748196;font-size:9px;white-space:nowrap}.source-admin-body{padding:0 15px 14px;background:#fbfcfe}.source-admin-actions{display:flex;gap:7px;padding:10px 0}.inline-warning.danger{background:#ffebed;color:#a83845}
.programme-update-catalog{padding:0;overflow:hidden}.programme-filterbar{display:grid;grid-template-columns:170px 150px 190px minmax(180px,1fr) auto;gap:7px;padding:12px 14px;border-bottom:1px solid #edf1f6}.programme-filterbar select,.programme-filterbar input{height:36px;border:1px solid #dce3ed;border-radius:8px;background:#fff;padding:0 9px;font-size:10.5px}.programme-update-table-head,.programme-update-table-row{display:grid;grid-template-columns:minmax(280px,1.5fr) minmax(130px,.7fr) 95px 125px 90px 80px;gap:10px;align-items:center}.programme-update-table-head{padding:9px 14px;background:#fbfcfe;border-bottom:1px solid #edf1f6;color:#748196;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.programme-update-table-row{padding:11px 14px;border-bottom:1px solid #edf1f6;color:inherit;text-decoration:none}.programme-update-table-row:last-child{border-bottom:0}.programme-update-table-row:hover{background:#faf9ff}.programme-update-table-row.is-unread{box-shadow:inset 3px 0 0 #7a5af5;background:#fdfcff}.programme-update-table-row strong{display:block;font-size:11px}.programme-update-table-row small{display:block;margin-top:3px;color:#7d8999;font-size:9px}.programme-update-table-row>span,.programme-update-table-row>time{font-size:9.5px}.severity-pill{display:inline-flex;width:max-content;align-items:center;min-height:24px;padding:0 7px;border-radius:999px;background:#eff2f5;color:#68758a;font-size:9px!important;font-weight:800}.severity-pill.severity-important{background:#fff1dc;color:#98610a}.severity-pill.severity-critical{background:#ffebed;color:#aa3846}
.programme-update-form-card{max-width:1040px}.programme-update-form-card textarea{min-height:92px;resize:vertical}.revalidation-check{display:flex!important;align-items:flex-start;gap:10px;margin-top:5px;padding:11px;border:1px solid #eadfff;border-radius:10px;background:#fbf9ff}.revalidation-check input{width:16px!important;height:16px!important;margin-top:2px}.revalidation-check span{margin:0!important}.revalidation-check strong,.revalidation-check small{display:block}.revalidation-check strong{font-size:10.5px}.revalidation-check small{margin-top:3px;color:#6f7d92;font-size:9.5px;line-height:1.45}
.programme-update-detail-head{align-items:flex-end}.programme-title-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.programme-detail-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:12px;margin-bottom:12px}.programme-update-content,.programme-review-card{padding:16px}.programme-update-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-bottom:14px;border-bottom:1px solid #edf1f6}.programme-update-meta span{display:block;color:#7b8798;font-size:8.5px;font-weight:800;text-transform:uppercase}.programme-update-meta strong{display:block;margin-top:4px;font-size:10.5px}.programme-update-content section{padding-top:15px}.programme-update-content section h3{margin:0 0 7px;font-family:var(--pf-font-heading);font-size:14px}.programme-update-content section p,.programme-rich-copy{margin:0;color:#3f4c61;font-size:11.5px;line-height:1.65}.official-source-box{margin-top:16px;padding:11px 12px;border:1px solid #dcd4ff;border-radius:10px;background:#faf9ff}.official-source-box span,.official-source-box small{display:block}.official-source-box span{color:#7257d8;font-size:8.5px;font-weight:850;text-transform:uppercase}.official-source-box a{display:block;margin:5px 0;color:#5e43d1;font-size:10.5px;font-weight:750;word-break:break-all}.official-source-box small{color:#717f92;font-size:9px;line-height:1.45}.programme-review-card>.panel-head{padding:0 0 12px;border-bottom:1px solid #edf1f6}.programme-status-card{margin-top:12px;padding:11px;border-radius:10px}.programme-status-card strong,.programme-status-card small{display:block}.programme-status-card strong{font-size:11px}.programme-status-card small{margin-top:4px;font-size:9px;opacity:.8}.revalidation-flag{margin-top:10px;padding:11px;border-radius:10px;background:#fff1dc;color:#86560a}.revalidation-flag strong,.revalidation-flag span{display:block}.revalidation-flag strong{font-size:10.5px}.revalidation-flag span{margin-top:3px;font-size:9px;line-height:1.45}.programme-review-actions{display:flex;flex-direction:column;gap:7px;margin-top:12px}.programme-review-actions .btn{width:100%}.severity-text.severity-critical{color:#b83e4b}.severity-text.severity-important{color:#9a650f}
.programme-impacts{padding:0;overflow:hidden}.programme-impacts>.panel-head{padding:15px 16px;border-bottom:1px solid #edf1f6}.programme-impact-list{display:flex;flex-direction:column}.programme-impact-row{display:grid;grid-template-columns:minmax(180px,.8fr) 120px minmax(300px,1.2fr);gap:12px;align-items:center;padding:12px 15px;border-bottom:1px solid #edf1f6}.programme-impact-row:last-child{border-bottom:0}.impact-project strong{display:block;font-size:11px}.impact-project small{display:block;margin-top:3px;color:#7b8798;font-size:9.5px}.impact-status{display:inline-flex;width:max-content;min-height:24px;align-items:center;padding:0 7px;border-radius:999px;background:#fff1dc;color:#93600c;font-size:9px;font-weight:800}.status-revalidated .impact-status{background:#eaf8f0;color:#0c7850}.status-not_applicable .impact-status{background:#eff2f5;color:#66748a}.impact-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}.impact-actions form{display:flex;gap:5px}.impact-actions input{min-width:0;flex:1;height:34px;border:1px solid #dce3ed;border-radius:8px;padding:0 8px;font-size:9.5px}.impact-decision{color:#566378;font-size:9.5px}.impact-decision small{display:block;margin-top:3px;color:#8490a0}
.programme-call-panel{padding:0;overflow:hidden}.programme-call-note{padding:10px 13px;border-bottom:1px solid #edf1f6;background:#faf9ff;color:#685b8c;font-size:9.5px;line-height:1.45}.table-subline{display:block;margin-top:3px;color:#7b8798;font-size:9px}.attention-dashboard-alert-programme{border-color:#efd7ad;background:#fffaf1}.programme-dashboard-queue{border-color:#efd7ad}
@media(max-width:1150px){.programme-columns{grid-template-columns:1fr}.programme-source-workspace{grid-template-columns:1fr}.programme-update-meta{grid-template-columns:1fr 1fr}.programme-filterbar{grid-template-columns:1fr 1fr}.programme-filterbar input{grid-column:1/-1}.programme-filterbar .btn{grid-column:1/-1}.programme-update-table-head{display:none}.programme-update-table-row{grid-template-columns:minmax(0,1fr) auto auto}.programme-update-table-row>span:nth-of-type(1){display:none}.programme-update-table-row>time{display:none}.programme-detail-grid{grid-template-columns:1fr}.programme-impact-row{grid-template-columns:1fr 120px}.impact-actions,.impact-decision{grid-column:1/-1}}
@media(max-width:760px){.programme-kpis{grid-template-columns:1fr 1fr}.programme-project-row{grid-template-columns:1fr auto}.programme-project-row .btn{grid-column:1/-1;width:100%}.source-admin-row>summary{align-items:flex-start;flex-direction:column}.source-summary-meta{white-space:normal;flex-wrap:wrap}.programme-filterbar{grid-template-columns:1fr}.programme-filterbar input,.programme-filterbar .btn{grid-column:auto}.programme-update-table-row{grid-template-columns:1fr}.programme-update-table-row>.programme-verification,.programme-update-table-row>.severity-pill{justify-self:start}.programme-update-meta{grid-template-columns:1fr}.programme-impact-row{grid-template-columns:1fr}.impact-status{justify-self:start}.impact-actions{grid-template-columns:1fr}.impact-actions form{flex-direction:column}.programme-kpis article{min-height:72px}.programme-tabs a{min-width:max-content}}
.attention-dashboard-alert-programme-review{border-color:#efd7ad;background:#fffaf1}

/* ========================================================================== */
/* P027 PROGRAMME SOURCES UX POLISH                                           */
/* ========================================================================== */
.programme-sources-head{margin-bottom:10px}.programme-sources-head.page-head{align-items:flex-start}.programme-tabs-toolbar{display:flex;align-items:center;gap:10px;margin-bottom:12px}.programme-tabs-toolbar .programme-tabs{flex:1;margin:0}.programme-tabs-toolbar>form{flex:0 0 auto}.programme-check-all-btn{white-space:nowrap}
.programme-source-flash{display:flex;align-items:center;gap:9px;margin:0 0 12px;padding:10px 12px;border:1px solid #cfe9db;border-radius:10px;background:#f2fbf6;color:#176443;font-size:11px;font-weight:650;line-height:1.4}.programme-source-flash.error{border-color:#f2cfd4;background:#fff5f6;color:#9c3441}.programme-flash-icon{display:grid;place-items:center;width:21px;height:21px;flex:0 0 21px;border-radius:50%;background:#dff5e9;color:#168258;font-size:11px;font-weight:900}.programme-source-flash.error .programme-flash-icon{background:#ffe3e7;color:#b13c4b}
.programme-source-workspace{grid-template-columns:minmax(330px,.68fr) minmax(0,1.32fr);align-items:start}.source-list-card{min-height:0}.source-admin-list{gap:8px;padding:12px;background:#fbfcfe}.source-admin-card{position:relative;border:1px solid #e3e8f0;border-radius:11px;background:#fff;overflow:hidden;box-shadow:0 1px 2px rgba(20,32,54,.02)}.source-card-top{display:grid;grid-template-columns:minmax(230px,1fr) minmax(185px,.6fr) auto;gap:14px;align-items:center;padding:13px 14px}.source-admin-card:hover{border-color:#d9dff0;box-shadow:0 4px 14px rgba(20,32,54,.045)}.source-title-wrap{min-width:0}.source-summary-main strong{font-size:11.5px;line-height:1.35}.source-summary-main small{font-size:9.5px}.source-state{width:9px;height:9px;flex:0 0 9px;box-shadow:0 0 0 4px rgba(174,184,199,.12)}.source-state.is-ok{box-shadow:0 0 0 4px rgba(39,165,111,.11)}.source-state.is-error{box-shadow:0 0 0 4px rgba(214,74,88,.11)}
.source-card-status{display:flex;align-items:center;justify-content:flex-end;gap:12px;min-width:0}.source-monitor-pill{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;background:#f0f2f5;color:#68758a;font-size:8.8px;font-weight:800;white-space:nowrap}.source-monitor-pill.is-on{background:#eaf8f0;color:#13734f}.source-last-check{min-width:118px}.source-last-check>span{display:block;color:#8a95a5;font-size:8px;font-weight:800;text-transform:uppercase;letter-spacing:.035em}.source-last-check strong{display:inline-block;margin-top:3px;font-size:9.5px;color:#2f3b51}.source-last-check em{display:inline-block;margin-left:5px;font-style:normal;font-size:8.8px;font-weight:800}.source-last-check em.is-ok{color:#15845a}.source-last-check em.is-error{color:#bb3d4c}.source-last-check em.is-idle{color:#7d8999}
.source-card-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.source-card-actions form{margin:0}.source-card-actions .btn,.source-details-toggle-label{min-width:72px;justify-content:center;cursor:pointer}.source-details-toggle-input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.source-details-toggle-input:not(:checked)~.source-admin-body{display:none}.source-details-toggle-input:checked~.source-card-top .source-details-toggle-label{border-color:#d8ccff;background:#f4f0ff;color:#6848df}.source-admin-body{padding:13px 14px 15px;border-top:1px solid #e7ebf2;background:#fbfcfe}.source-detail-meta{display:flex;align-items:flex-start;gap:24px;margin-bottom:10px;padding:9px 10px;border:1px solid #edf0f5;border-radius:9px;background:#fff}.source-detail-meta>div{min-width:0}.source-detail-meta span{display:block;color:#8792a2;font-size:8px;font-weight:800;text-transform:uppercase}.source-detail-meta a,.source-detail-meta strong{display:block;margin-top:3px;color:#39465a;font-size:9.5px;font-weight:650}.source-detail-meta a{max-width:620px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#6345d7;text-decoration:none}.source-detail-meta a:hover{text-decoration:underline}.source-edit-actions{display:flex;justify-content:flex-end}.programme-source-form.compact{padding-top:12px}.source-global-note{margin-top:2px}
.programme-source-checks{gap:10px 18px}.programme-source-checks label{gap:8px!important;cursor:pointer;user-select:none}.programme-source-checks label>span{display:inline!important;margin:0!important;font-size:10.5px!important;font-weight:600!important;color:#465368!important}.programme-source-checks input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:17px!important;height:17px!important;flex:0 0 17px;margin:0;border:1.5px solid #c9d2df!important;border-radius:5px!important;background:#fff!important;padding:0!important;display:grid;place-content:center;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s}.programme-source-checks input[type="checkbox"]::before{content:"";width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0);transform-origin:center;transition:transform .12s}.programme-source-checks input[type="checkbox"]:checked{border-color:var(--purple)!important;background:var(--purple)!important}.programme-source-checks input[type="checkbox"]:checked::before{transform:rotate(-45deg) scale(1)}.programme-source-checks input[type="checkbox"]:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(123,97,255,.14)}
@media(max-width:1280px){.source-card-top{grid-template-columns:minmax(220px,1fr) auto}.source-card-status{justify-content:flex-start}.source-card-actions{grid-column:1/-1;justify-content:flex-start;padding-left:18px}}
@media(max-width:900px){.programme-tabs-toolbar{align-items:stretch;flex-direction:column}.programme-tabs-toolbar>form,.programme-tabs-toolbar .programme-check-all-btn{width:100%}.source-card-top{grid-template-columns:1fr}.source-card-status,.source-card-actions{justify-content:flex-start;padding-left:0}.source-detail-meta{flex-direction:column;gap:10px}.source-detail-meta a{white-space:normal;word-break:break-all}}

/* P028 — Notification Center */
.notification-top-button{position:relative}.notification-top-button.has-unread{border-color:#d9d0ff;background:#fbfaff}.notification-bell{font-size:18px;line-height:1}.notification-top-badge{position:absolute;right:-6px;top:-6px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#e84c5b;color:#fff;border:2px solid #f6f8fc;display:grid;place-items:center;font-size:9px;font-weight:800;line-height:1}
.nav-item{position:relative}.nav-count-badge{margin-left:auto;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:#fff;color:#6547f2;display:grid;place-items:center;font-size:9px;font-weight:800}.nav-item.is-active .nav-count-badge{background:rgba(255,255,255,.96)}
.btn-compact{height:36px!important;min-height:36px;padding:0 12px!important;border-radius:9px!important;font-size:12px!important;white-space:nowrap}.btn-ghost{height:42px;border:1px solid transparent;background:transparent;color:#5e6a80}.btn-ghost:hover{background:#f2f4f8;color:#17203a}
.notification-page-head{width:100%;display:flex;justify-content:space-between;gap:18px}.notification-page-head>form{margin-top:5px}.notification-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.notification-stat{min-height:92px;padding:16px 18px;background:#fff;border:1px solid #e5eaf2;border-radius:14px;box-shadow:var(--shadow);text-decoration:none;color:var(--text);display:flex;flex-direction:column;justify-content:center;transition:.16s}.notification-stat:hover,.notification-stat.is-active{transform:translateY(-1px);border-color:#d8cffd;box-shadow:0 12px 28px rgba(15,23,42,.08)}.notification-stat span{font-size:11px;color:#66758b;margin-bottom:7px}.notification-stat strong{font-size:26px;line-height:1;font-family:PoppinsLocal,Inter,Arial,sans-serif}
.notification-center-card{padding:0;overflow:hidden}.notification-toolbar{padding:14px 16px;border-bottom:1px solid #edf1f6;display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fbfcff}.notification-filters{display:flex;align-items:center;gap:8px}.notification-filters select{height:37px;border:1px solid #dde4ed;border-radius:10px;background:#fff;padding:0 31px 0 11px;color:#344155;font:600 11px InterLocal,Inter,Arial,sans-serif;outline:none}.notification-filters select:focus,.notification-filters .inline-search:focus-within{border-color:var(--purple);box-shadow:0 0 0 3px rgba(123,97,255,.08)}.notification-filters .inline-search{min-width:245px;margin:0}
.notification-list{display:grid}.notification-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:13px;padding:17px 17px 17px 13px;border-bottom:1px solid #edf1f6;background:#fff;transition:.15s}.notification-row:last-child{border-bottom:0}.notification-row.status-unread{background:linear-gradient(90deg,#fcfbff 0,#fff 34%)}.notification-row.status-resolved{opacity:.66;background:#fbfcfe}.notification-signal{display:flex;justify-content:center;padding-top:7px}.notification-signal span{width:7px;height:7px;border-radius:50%;background:#a6b0bf}.notification-row.status-unread .notification-signal span{background:var(--purple)}.notification-row.severity-warning.status-unread .notification-signal span{background:#f59e0b}.notification-row.severity-critical.status-unread .notification-signal span{background:#e84c5b}.notification-copy{min-width:0}.notification-row-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.notification-row-top time{font-size:9.5px;color:#8d98aa;white-space:nowrap;padding-top:3px}.notification-badges{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.notification-type-badge,.notification-severity-badge,.notification-due{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:7px;font-size:9.5px;font-weight:750}.notification-type-badge{background:#f2efff;color:#6547f2}.notification-severity-badge{background:#eef2f7;color:#586579}.notification-severity-badge.severity-warning{background:#fff4e5;color:#a86600}.notification-severity-badge.severity-critical{background:#fff0f2;color:#c63243}.notification-due{background:#f4f6f9;color:#66758b}.notification-due.overdue{background:#fff0f2;color:#c63243}.notification-copy h3{margin:9px 0 5px;font-size:13px;line-height:1.35}.notification-row.status-unread .notification-copy h3{font-weight:800}.notification-copy p{margin:0;color:#5f6e84;font-size:11.5px;line-height:1.55;max-width:900px}.notification-meta{display:flex;gap:15px;flex-wrap:wrap;margin-top:9px;color:#8390a4;font-size:9.5px}.notification-meta strong{color:#566176;font-weight:700}.notification-actions{display:flex;align-items:center;gap:7px;align-self:center}.notification-actions form{margin:0}.notification-empty{padding:56px 18px}
@media(max-width:1180px){.notification-toolbar{align-items:stretch;flex-direction:column}.notification-filters{flex-wrap:wrap}.notification-filters .inline-search{flex:1;min-width:220px}.notification-row{grid-template-columns:12px minmax(0,1fr)}.notification-actions{grid-column:2;justify-content:flex-start;padding-top:3px}}
@media(max-width:760px){.notification-stats{grid-template-columns:1fr 1fr}.notification-page-head{align-items:flex-start;flex-direction:column}.notification-filters{display:grid;grid-template-columns:1fr 1fr}.notification-filters .inline-search{grid-column:1/-1;width:100%}.notification-row-top{flex-direction:column}.notification-actions{flex-wrap:wrap}}
@media(max-width:520px){.notification-stats{grid-template-columns:1fr}.notification-filters{grid-template-columns:1fr}.notification-filters .inline-search{grid-column:auto}.notification-actions .btn{width:100%}.notification-actions form{flex:1 1 100%}}

/* P029 — Core Users, Access & Superadmin */
.settings-page-head{margin-bottom:16px}.settings-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.settings-hub-card{min-height:160px;padding:18px;border:1px solid #e3e8f0;border-radius:15px;background:#fff;box-shadow:var(--shadow);display:grid;grid-template-columns:44px minmax(0,1fr);grid-template-rows:1fr auto;gap:12px 14px;text-decoration:none;color:var(--text);transition:.16s}.settings-hub-card[href]:hover{transform:translateY(-1px);border-color:#d7ceff;box-shadow:0 14px 32px rgba(17,24,39,.08)}.settings-hub-card.is-muted{background:#fbfcfe}.settings-hub-icon{width:44px;height:44px;border-radius:12px;background:#f1edff;color:var(--purple);display:grid;place-items:center;font-size:19px;font-weight:800}.settings-hub-copy h3{margin:1px 0 6px;font:600 16px/1.25 PoppinsLocal,Inter,Arial,sans-serif}.settings-hub-copy p{margin:0;color:#66758a;font-size:11.5px;line-height:1.55}.settings-hub-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.settings-hub-meta span{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:7px;background:#f3f5f8;color:#647187;font-size:9.5px;font-weight:700}.settings-hub-action{grid-column:2;color:#6647ef;font-size:11px;font-weight:750}.users-page-head,.user-detail-head{align-items:flex-end}.user-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 14px}.user-kpi{min-height:82px;padding:15px 17px;border:1px solid #e3e8f0;border-radius:13px;background:#fff;box-shadow:0 7px 20px rgba(31,42,68,.035);display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:var(--text)}.user-kpi span{color:#68768b;font-size:11px;font-weight:650}.user-kpi strong{font:600 24px/1 PoppinsLocal,Inter,Arial,sans-serif}.user-kpi[href]:hover,.user-kpi.is-active{border-color:#d4c9ff;background:#fbfaff}.users-list-card{padding:0;overflow:hidden}.users-toolbar{display:flex;justify-content:flex-end;gap:8px;padding:14px;border-bottom:1px solid #edf1f6;background:#fbfcff}.users-toolbar select{height:36px;border:1px solid #dce3ed;border-radius:9px;background:#fff;padding:0 30px 0 10px;font:600 11px InterLocal,Inter,Arial,sans-serif}.users-toolbar .inline-search{min-width:260px}.users-table .user-cell{display:flex;align-items:center;gap:10px}.users-table .user-cell>div{display:grid;gap:2px}.users-table .user-cell strong{font-size:12px}.users-table .user-cell small{color:#8290a3;font-size:10px}.avatar-sm{width:31px;height:31px;min-width:31px;font-size:9px}.role-badge{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:999px;background:#f1f3f6;color:#59667a;font-size:9.5px;font-weight:800;white-space:nowrap}.role-badge.role-superadmin{background:#eee9ff;color:#5f3ee5}.role-badge.role-admin{background:#edf3ff;color:#315faa}.role-badge.role-project_manager{background:#eaf7f1;color:#15724e}.role-badge.role-partner_external{background:#fff3df;color:#9a6200}.status-green{background:#e9f8f0!important;color:#08754b!important}.status-neutral{background:#f1f3f6!important;color:#667386!important}.is-muted-row{opacity:.62;background:#fafbfc}.access-link-alert{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);align-items:center;gap:18px;margin:0 0 14px;padding:14px 16px;border:1px solid #d9cffd;border-radius:13px;background:#faf8ff}.access-link-alert.warning{border-color:#efd9ad;background:#fffaf0}.access-link-alert strong{font-size:12px}.access-link-alert p{margin:4px 0 0;color:#68758a;font-size:10.5px;line-height:1.45}.copy-link-row{display:flex;align-items:center;gap:8px}.copy-link-row input{min-width:0;flex:1;height:36px;border:1px solid #dde3eb;border-radius:9px;background:#fff;padding:0 10px;color:#4c596d;font-size:10.5px}.pending-invites-card{margin-top:14px;padding:0;overflow:hidden}.pending-invites-card .section-head{padding:16px 17px;border-bottom:1px solid #edf1f6}.pending-invite-list{display:grid}.pending-invite-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 17px;border-bottom:1px solid #edf1f6}.pending-invite-row:last-child{border-bottom:0}.pending-invite-row>div:first-child{display:grid;gap:3px}.pending-invite-row strong{font-size:12px}.pending-invite-row span{color:#7b8799;font-size:10px}.pending-invite-meta{display:flex;align-items:center;gap:10px}.pending-invite-meta form{margin:0}.access-invite-form{max-width:920px}.access-invite-form .form-section-label{margin-top:3px}.project-access-invite{display:grid;gap:8px}.form-help-callout{margin:0;padding:10px 11px;border-radius:9px;background:#f6f7fa;color:#6b778b;font-size:10.5px;line-height:1.5}.title-with-status{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.title-with-status h2{margin:0}.user-detail-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:14px;align-items:start}.user-account-card,.user-security-card,.project-access-card{padding:17px}.user-account-card .section-head,.project-access-card .section-head{padding-bottom:13px;margin-bottom:14px;border-bottom:1px solid #edf1f6}.user-security-card h3{margin:0 0 13px;font:600 16px/1.25 PoppinsLocal,Inter,Arial,sans-serif}.user-security-facts{display:grid}.user-security-facts>div{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #edf1f6}.user-security-facts span{color:#7a8799;font-size:10px}.user-security-facts strong{font-size:11px;text-align:right}.user-security-actions{display:grid;gap:8px;margin-top:15px}.user-security-actions form{margin:0}.user-security-actions .btn{width:100%}.project-access-card{margin-top:14px}.project-access-add{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,.45fr) auto;gap:8px;margin-bottom:12px}.project-access-add select{height:36px;border:1px solid #dce3ed;border-radius:9px;background:#fff;padding:0 30px 0 10px;font:600 11px InterLocal,Inter,Arial,sans-serif}.project-access-list{display:grid;border:1px solid #e8ecf2;border-radius:11px;overflow:hidden}.project-access-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 14px;border-bottom:1px solid #edf1f6;background:#fff}.project-access-row:last-child{border-bottom:0}.project-access-row.is-muted{opacity:.55;background:#fafbfc}.project-access-row>div:first-child{display:grid;gap:3px}.project-access-row>div:last-child{display:flex;align-items:center;gap:8px}.project-access-row strong{font-size:11.5px}.project-access-row span{color:#7b8799;font-size:9.5px}.project-access-row form{margin:0}.invite-auth-card{max-width:520px}.invite-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 15px}.invite-summary>div{padding:10px;border:1px solid #e6eaf0;border-radius:9px;background:#fbfcfe}.invite-summary span,.invite-summary strong{display:block}.invite-summary span{color:#7c899c;font-size:9px;text-transform:uppercase;font-weight:750}.invite-summary strong{margin-top:4px;font-size:11px}.restricted-dashboard-card{max-width:760px}.empty-state.compact{padding:20px 12px}.settings-hub-card .status-badge{align-self:end;justify-self:start}
@media(max-width:1100px){.settings-hub-grid{grid-template-columns:1fr 1fr}.user-detail-grid{grid-template-columns:1fr}.user-kpis{grid-template-columns:1fr 1fr}.access-link-alert{grid-template-columns:1fr}.project-access-add{grid-template-columns:1fr 1fr}.project-access-add .btn{grid-column:1/-1}}
@media(max-width:720px){.settings-hub-grid,.user-kpis{grid-template-columns:1fr}.users-toolbar{flex-direction:column}.users-toolbar .inline-search{width:100%;min-width:0}.pending-invite-row,.project-access-row{align-items:flex-start;flex-direction:column}.pending-invite-meta{width:100%;justify-content:space-between}.copy-link-row{flex-direction:column;align-items:stretch}.project-access-add{grid-template-columns:1fr}.project-access-add .btn{grid-column:auto}.invite-summary{grid-template-columns:1fr}}

/* P030 — Users & Access UI polish
   Visual-only refinement. No RBAC, data or workflow changes. */
.users-page-head{
  align-items:center;
  margin-bottom:18px;
  padding-bottom:2px;
}
.users-page-head>div{max-width:860px}
.users-page-head .btn-primary{
  min-width:156px;
  justify-content:center;
  box-shadow:0 9px 22px rgba(101,71,242,.18);
}

.user-kpis{
  gap:10px;
  margin-bottom:12px;
}
.user-kpi{
  min-height:72px;
  padding:12px 15px;
  border-radius:12px;
  box-shadow:none;
  position:relative;
  overflow:hidden;
  transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease;
}
.user-kpi span{
  font-size:10.5px;
  font-weight:700;
  letter-spacing:.01em;
}
.user-kpi strong{
  font-size:22px;
  font-weight:650;
}
.user-kpi[href]:hover{
  transform:translateY(-1px);
  border-color:#d8cffb;
  background:#fcfbff;
}
.user-kpi[href].is-active{
  border-color:#cabdff;
  background:linear-gradient(135deg,#fbfaff 0%,#f7f4ff 100%);
  box-shadow:0 8px 20px rgba(101,71,242,.07);
}
.user-kpi[href].is-active:before{
  content:'';
  position:absolute;
  left:0;
  top:12px;
  bottom:12px;
  width:3px;
  border-radius:0 4px 4px 0;
  background:var(--purple);
}

.users-list-card{
  border:1px solid #e3e8f0;
  border-radius:14px;
  box-shadow:0 8px 24px rgba(15,23,42,.045);
  background:#fff;
}
.users-toolbar{
  display:grid;
  grid-template-columns:minmax(130px,150px) minmax(160px,190px) minmax(260px,1fr) auto;
  align-items:center;
  justify-content:stretch;
  gap:9px;
  padding:12px 14px;
  background:#fbfcfe;
  border-bottom:1px solid #e9edf3;
}
.users-toolbar select{
  width:100%;
  height:42px;
  min-height:42px;
  border:1px solid #dbe2eb;
  border-radius:10px;
  padding:0 32px 0 11px;
  color:#344155;
  background:#fff;
  font:600 12px var(--pf-font-ui);
  outline:none;
}
.users-toolbar .inline-search{
  min-width:0;
  width:100%;
  height:42px;
  border-radius:10px;
  background:#fff;
}
.users-toolbar .inline-search input{
  font-size:12px;
  padding:0 12px;
}
.users-toolbar select:focus,
.users-toolbar .inline-search:focus-within{
  border-color:var(--purple);
  box-shadow:0 0 0 3px rgba(123,97,255,.08);
}
.users-toolbar>.btn{
  min-width:82px;
  height:42px;
  min-height:42px;
}

.users-table thead th{
  padding:11px 14px;
  background:#fff;
  color:#748197;
  border-bottom:1px solid #e8edf3;
}
.users-table tbody td{
  padding:14px;
  height:auto;
  min-height:62px;
}
.users-table tbody tr{
  transition:background .14s ease;
}
.users-table tbody tr:not(.is-muted-row):hover{
  background:#fbfaff;
}
.users-table .user-cell{
  gap:11px;
}
.users-table .user-cell strong{
  font-size:12.5px;
  font-weight:750;
  color:#1d2940;
}
.users-table .user-cell small{
  margin-top:1px;
  color:#8793a5;
  font-size:10px;
}
.users-table .avatar-sm{
  width:32px;
  height:32px;
  min-width:32px;
  font-size:9px;
  box-shadow:0 0 0 3px #f3f0ff;
}
.users-table .role-badge,
.users-table .status-badge{
  min-height:26px;
  padding:0 9px;
  font-size:9.5px;
}
.users-table .actions-col{
  width:96px;
  text-align:right;
  white-space:nowrap;
}
.users-table .actions-col .btn{
  min-width:72px;
  justify-content:center;
}
.users-table .is-muted-row{
  opacity:.68;
  background:#fafbfc;
}

.pending-invites-card{
  margin-top:12px;
  border:1px solid #e3e8f0;
  border-radius:14px;
  box-shadow:0 8px 24px rgba(15,23,42,.035);
  background:#fff;
}
.pending-invites-card .section-head{
  padding:15px 17px 13px;
  background:#fff;
  border-bottom:1px solid #edf1f6;
}
.pending-invites-card .section-head h3{
  margin:0 0 4px;
  font-size:15px;
}
.pending-invites-card .section-head p{
  margin:0;
  max-width:760px;
  color:#7b8799;
  font-size:10.5px;
  line-height:1.5;
}
.pending-invite-list>.empty-state.compact{
  min-height:110px;
  margin:12px 16px 16px;
  padding:22px 18px;
  border:1px dashed #dfe5ed;
  border-radius:11px;
  background:#fbfcfe;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#7b8799;
}
.pending-invite-list>.empty-state.compact span{
  font-size:11.5px;
  font-weight:650;
}
.pending-invite-row{
  min-height:62px;
  padding:13px 17px;
}
.pending-invite-row:hover{background:#fbfaff}

@media(max-width:1180px){
  .users-toolbar{
    grid-template-columns:1fr 1fr minmax(240px,1.4fr) auto;
  }
}
@media(max-width:900px){
  .users-page-head{align-items:flex-start}
  .users-toolbar{
    grid-template-columns:1fr 1fr;
  }
  .users-toolbar .inline-search{grid-column:1/-1}
  .users-toolbar>.btn{justify-self:start}
}
@media(max-width:720px){
  .users-page-head .btn-primary{width:100%}
  .users-toolbar{
    display:grid;
    grid-template-columns:1fr;
  }
  .users-toolbar .inline-search{grid-column:auto}
  .users-toolbar>.btn{width:100%}
  .user-kpi{min-height:66px}
}

/* ================================================================
   P031 — Consortium External Workspace
   ================================================================ */
.workspace-page-head{margin-bottom:18px}
.workspace-shell{display:grid;grid-template-columns:minmax(230px,280px) minmax(0,1fr);gap:18px;align-items:start}
.workspace-project-list{position:sticky;top:18px;padding:0;overflow:hidden}
.workspace-project-list .panel-head{padding:18px 18px 14px;border-bottom:1px solid var(--border,#e5e9f2)}
.workspace-project-list .panel-head>div{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}
.workspace-project-list .panel-head h3{margin:0;font-size:15px}
.workspace-project-list .panel-head small{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#f3efff;color:#6d3ff0;font-weight:700}
.workspace-project-nav{display:flex;flex-direction:column;padding:8px}
.workspace-project-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid transparent;border-radius:12px;text-decoration:none;color:inherit;transition:.16s ease}
.workspace-project-link:hover{background:#f8f7fc;border-color:#ece8fb}
.workspace-project-link.active{background:#f4f0ff;border-color:#dfd5ff}
.workspace-project-link.is-disabled{opacity:.68}
.workspace-project-link>div:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.workspace-project-link strong{font-size:12.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.workspace-project-link span{font-size:10.5px;color:var(--muted,#71809b)}
.workspace-project-counts{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.workspace-project-counts>span,.workspace-project-counts>b{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;border-radius:9px;background:#f3efff;color:#6d3ff0;font-size:11px;font-weight:800}
.workspace-project-counts>b{background:#fff4df;color:#9a5c00}
.workspace-content{display:flex;flex-direction:column;gap:16px;min-width:0}
.workspace-project-head{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:20px 22px}
.workspace-project-head h2{margin:3px 0 2px;font-size:24px}
.workspace-project-head p{margin:0;color:var(--muted,#71809b);font-size:12px}
.workspace-partner-identity{min-width:220px;padding:13px 15px;border:1px solid #e7e2f7;background:#faf8ff;border-radius:12px;display:flex;flex-direction:column;gap:3px}
.workspace-partner-identity span,.workspace-partner-identity small{font-size:10.5px;color:var(--muted,#71809b)}
.workspace-partner-identity strong{font-size:13px}
.workspace-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.workspace-kpis article{min-height:82px;padding:15px 17px;display:flex;flex-direction:column;justify-content:center;gap:5px}
.workspace-kpis span{font-size:10.5px;color:var(--muted,#71809b);font-weight:600}
.workspace-kpis strong{font-size:22px;line-height:1.1}
.workspace-kpis .workspace-date-value{font-size:17px}
.workspace-section{padding:20px 22px}
.workspace-section .section-head{margin-bottom:16px}
.workspace-section .section-head h3{margin:3px 0 3px;font-size:16px}
.workspace-section .section-head p{margin:0;font-size:11.5px;color:var(--muted,#71809b)}
.workspace-task-list{display:flex;flex-direction:column;gap:13px}
.workspace-task-card{border:1px solid #e3e8f0;border-radius:14px;background:#fff;overflow:hidden;box-shadow:0 7px 22px rgba(19,31,58,.035)}
.workspace-task-card.task-needs_info{border-color:#f3d9a5}
.workspace-task-card.task-ready{border-color:#ccebd9}
.workspace-task-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:15px 17px;border-bottom:1px solid #edf0f5;background:#fbfcfe}
.workspace-task-card>header>div{display:flex;flex-direction:column;gap:3px;min-width:0}
.workspace-task-card>header strong{font-size:12.5px}
.workspace-task-card>header small{font-size:10.5px;color:var(--muted,#71809b)}
.task-type{display:inline-flex;align-self:flex-start;padding:3px 7px;border-radius:999px;font-size:9.5px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;background:#f1edff;color:#7043ed}
.task-type.report{background:#eef7ff;color:#326eb5}
.task-status{display:inline-flex;align-items:center;padding:5px 8px;border-radius:999px;background:#f1f3f7;color:#55647e;font-size:10px;font-weight:700;white-space:nowrap}
.task-needs_info .task-status{background:#fff3dc;color:#935d0b}
.task-ready .task-status{background:#eaf8ef;color:#277749}
.workspace-question{padding:16px 17px 4px}
.workspace-question b{display:block;font-size:12.5px;line-height:1.5}
.workspace-question p{margin:7px 0 0;font-size:11.5px;line-height:1.55;color:var(--muted,#71809b)}
.workspace-answer-form{padding:12px 17px 17px}
.workspace-answer-form textarea{width:100%;min-height:150px;resize:vertical;line-height:1.55;font-size:13px}
.workspace-answer-actions{display:grid;grid-template-columns:minmax(0,1fr) 170px auto;gap:10px;align-items:center;margin-top:10px}
.workspace-answer-actions select{height:36px;font-size:11.5px}
.workspace-answer-meta{display:flex;flex-wrap:wrap;gap:7px}
.workspace-answer-meta span{display:inline-flex;padding:4px 7px;border-radius:7px;background:#f5f7fa;color:#66748b;font-size:10px;font-weight:600}
.workspace-clean-state{padding:18px;border:1px dashed #dfe5ee;border-radius:12px;background:#fbfcfd;display:flex;flex-direction:column;gap:4px;text-align:left}
.workspace-clean-state strong{font-size:12px}
.workspace-clean-state span{font-size:11px;color:var(--muted,#71809b)}
.workspace-upload{margin-bottom:14px;border:1px solid #e6eaf1;border-radius:12px;background:#fbfcfe;padding:10px}
.workspace-upload>summary{display:inline-flex;list-style:none;cursor:pointer}
.workspace-upload>summary::-webkit-details-marker{display:none}
.workspace-upload[open]>summary{margin-bottom:12px}
.workspace-upload form{padding:12px 4px 3px;border-top:1px solid #e8ebf1}
.workspace-document-list{display:flex;flex-direction:column}
.workspace-document-list article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid #edf0f5}
.workspace-document-list article:first-child{border-top:0}
.workspace-document-list article>div:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}
.workspace-document-list strong{font-size:12px}
.workspace-document-list span{font-size:10.5px;color:var(--muted,#71809b)}
.workspace-document-list article>div:last-child{display:flex;gap:7px;flex:0 0 auto}
.workspace-member-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.workspace-member{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 13px;border:1px solid #e6eaf1;border-radius:12px;background:#fff}
.workspace-member.is-current{border-color:#d9ceff;background:#faf8ff}
.workspace-member>div{display:flex;flex-direction:column;gap:2px;min-width:0}
.workspace-member strong{font-size:11.5px}
.workspace-member small{font-size:10px;color:var(--muted,#71809b)}
.workspace-member b{font-size:9.5px;color:#7043ed}
.workspace-member>.status{font-size:9.5px}
.workspace-setup-warning{display:flex;gap:15px;align-items:flex-start;padding:20px 22px;border-color:#efd8a4;background:#fffaf1}
.workspace-lock-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:#fff0cf;color:#935d0b;font-weight:800}
.workspace-setup-warning h3{margin:0 0 5px;font-size:15px}
.workspace-setup-warning p{margin:0 0 5px;font-size:12px;color:#536177}
.workspace-setup-warning small{color:#78859a}
.workspace-empty{padding:28px}

/* P031 partner selectors in user administration */
.external-partner-field[hidden]{display:none!important}
.project-access-add-external{display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(150px,.8fr) minmax(190px,1.05fr) auto;gap:9px;align-items:center}
.project-access-invite .form-grid.two{grid-template-columns:repeat(3,minmax(0,1fr))}

@media (max-width:1180px){
  .workspace-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .workspace-member-grid{grid-template-columns:1fr}
  .project-access-add-external{grid-template-columns:1fr 1fr}
}
@media (max-width:920px){
  .workspace-shell{grid-template-columns:1fr}
  .workspace-project-list{position:static}
  .workspace-project-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .workspace-project-head{flex-direction:column}
  .workspace-partner-identity{min-width:0;width:100%}
  .project-access-invite .form-grid.two{grid-template-columns:1fr}
}
@media (max-width:700px){
  .workspace-project-nav{grid-template-columns:1fr}
  .workspace-kpis{grid-template-columns:1fr 1fr}
  .workspace-answer-actions{grid-template-columns:1fr}
  .workspace-document-list article{align-items:flex-start;flex-direction:column}
  .workspace-member{grid-template-columns:auto minmax(0,1fr)}
  .workspace-member>.status{grid-column:2}
  .project-access-add-external{grid-template-columns:1fr}
}

/* P032 — Final document export */
.export-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:10px;flex-wrap:wrap}.export-buttons{display:flex;gap:8px}.export-state{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#fff4e5;color:#9b5a05;font-size:11px;font-weight:700;border:1px solid #f3d7a7}.export-state.is-final{background:#eaf8f0;color:#16794c;border-color:#ccebd8}.export-actions .btn{white-space:nowrap}@media(max-width:900px){.export-actions{align-items:flex-start;justify-content:flex-start}.export-actions .export-state{order:3;width:max-content}.application-head,.report-head{align-items:flex-start}}

/* ==========================================================
   P033 — Global search, language menu & settings polish
   ========================================================== */
.topbar{overflow:visible}
.topbar .top-actions{overflow:visible}
.global-search-top{margin:0}
.global-search-top input{background:transparent}
.notification-top-button{position:relative!important;overflow:visible!important}
.notification-top-button .notification-top-badge{position:absolute!important;right:-6px!important;top:-6px!important;z-index:4}
.lang-menu{position:relative;display:block}
.lang-menu>summary{list-style:none;cursor:pointer;user-select:none}
.lang-menu>summary::-webkit-details-marker{display:none}
.lang-menu-popover{position:absolute;right:0;top:48px;z-index:30;min-width:92px;padding:6px;border:1px solid #e2e7ef;border-radius:11px;background:#fff;box-shadow:0 14px 34px rgba(15,23,42,.14)}
.lang-menu-popover a{display:flex;align-items:center;justify-content:center;height:34px;border-radius:8px;color:var(--text);text-decoration:none;font-size:11px;font-weight:700}
.lang-menu-popover a:hover,.lang-menu-popover a.is-active{background:#f2efff;color:var(--purple-dark)}
.search-page-head{margin-bottom:14px}
.global-search-page{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;margin-bottom:14px;border:1px solid #dfe5ee;border-radius:14px;background:#fff;box-shadow:var(--shadow)}
.global-search-page .search-glyph{color:#64748b;font-size:17px}
.global-search-page input{height:42px;border:0;outline:0;background:transparent;font:500 13px/1.2 InterLocal,Inter,Arial,sans-serif;color:var(--text)}
.search-summary{margin:4px 2px 12px;color:#6b778c;font-size:11px;font-weight:650}
.search-groups{display:grid;gap:12px}
.search-group-card{padding:0;overflow:hidden}
.search-group-card .section-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #edf1f5;margin:0}
.search-group-card .section-head h3{margin:0;font:600 15px/1.25 PoppinsLocal,Inter,Arial,sans-serif}
.search-group-card .section-head p{margin:3px 0 0;color:#8793a5;font-size:9.5px}
.search-result-list{display:grid}
.search-result-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;min-height:62px;padding:11px 16px;border-bottom:1px solid #edf1f5;color:var(--text);text-decoration:none;transition:.14s}
.search-result-row:last-child{border-bottom:0}
.search-result-row:hover{background:#fbfaff}
.search-result-main{display:grid;gap:4px;min-width:0}
.search-result-main strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-result-main span{color:#7c899c;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-result-open{color:#6948ef;font-size:10px;font-weight:750;white-space:nowrap}
.search-empty{padding:44px 16px;border:1px dashed #dfe4ec;border-radius:14px;background:#fff}
.search-empty strong{display:block;font:600 16px/1.25 PoppinsLocal,Inter,Arial,sans-serif;color:var(--text)}
.search-empty p{margin:6px 0 0;color:#8290a3;font-size:11px}
.organization-settings-form{max-width:1060px;padding:20px}
.organization-settings-form .form-section-label{margin:4px 0 12px}
.organization-settings-form .form-section-label:not(:first-child){margin-top:22px;padding-top:18px;border-top:1px solid #edf1f5}
.organization-settings-form .form-actions{margin-top:22px;padding-top:16px;border-top:1px solid #edf1f5;display:flex;justify-content:flex-end;gap:8px}
.settings-hub-grid{align-items:stretch}
.settings-hub-card{position:relative;overflow:hidden}
.settings-hub-card::after{content:"";position:absolute;inset:auto -30px -40px auto;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(123,97,255,.055),transparent 70%);pointer-events:none}
.alert-info{background:#eef5ff;color:#2d5d9f;border:1px solid #d8e7fb}
@media(max-width:800px){.global-search-page{grid-template-columns:auto 1fr}.global-search-page .btn{grid-column:1/-1;width:100%}.search-result-row{grid-template-columns:minmax(0,1fr) auto}.search-result-row .status-badge{display:none}.global-search-top{width:min(260px,42vw)}.search{width:auto}.lang-menu-popover{right:-4px}}

/* ==========================================================
   P034 — Database / migration health guard
   ========================================================== */
.settings-hub-card.has-warning{border-color:#efd7a4;background:linear-gradient(180deg,#fffdf8,#fff)}
.settings-hub-card.has-warning .settings-hub-icon{background:#fff3da;color:#9a650a}
.schema-health-banner{display:flex;align-items:flex-start;gap:10px;margin-bottom:14px;padding:13px 15px;border-radius:12px}
.schema-health-banner strong{font-size:12px;white-space:nowrap}.schema-health-banner span{font-size:11px;line-height:1.5}
.schema-health-card{padding:0;overflow:hidden}.schema-health-card .section-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 17px;border-bottom:1px solid #edf1f5;margin:0}.schema-health-card .section-head h3{margin:0 0 3px;font-size:15px}.schema-health-card .section-head p{margin:0;color:#7c899b;font-size:10.5px}
.schema-health-list{display:grid}.schema-health-row{display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:14px 17px;border-bottom:1px solid #edf1f5}.schema-health-row:last-child{border-bottom:0}.schema-health-row.is-missing{background:#fffdf8}
.schema-health-status-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:#eaf8f0;color:#168153;font-size:14px;font-weight:800}.schema-health-row.is-missing .schema-health-status-icon{background:#fff1d8;color:#9a650a}
.schema-health-main{min-width:0}.schema-health-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.schema-health-title strong{font-size:12px}.schema-health-title span{font-size:9.5px;color:#8793a5}.schema-health-main p{margin:4px 0 0;color:#69778b;font-size:10.5px}
.schema-health-missing{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.schema-health-missing code{display:inline-flex;padding:5px 7px;border-radius:7px;background:#f5f6f9;color:#58657a;font:600 9.5px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace;border:1px solid #e7eaf0}
.schema-health-instructions{margin-top:12px;padding:17px}.schema-health-instructions h3{margin:0 0 6px;font-size:14px}.schema-health-instructions p{margin:0 0 10px;font-size:11px;color:#69778b}.schema-health-instructions>code{display:inline-flex;padding:8px 10px;border-radius:8px;background:#f4f1ff;color:#6542dc;font:700 10.5px/1.2 ui-monospace,SFMono-Regular,Consolas,monospace}.schema-health-instructions .muted{margin-top:10px;color:#8793a5}
.schema-required-card{display:grid;grid-template-columns:46px minmax(0,1fr);gap:16px;max-width:980px;padding:22px}.schema-required-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:13px;background:#fff0d6;color:#9a650a;font-size:20px;font-weight:800}.schema-required-copy h3{margin:0 0 7px;font-size:17px}.schema-required-copy p{margin:7px 0;color:#627087;font-size:11.5px;line-height:1.55}.schema-required-copy p code{padding:3px 6px;border-radius:6px;background:#f4f1ff;color:#6542dc;font-weight:700}.schema-required-copy .row-actions{margin-top:14px}
@media(max-width:720px){.schema-health-title{align-items:flex-start;flex-direction:column;gap:3px}.schema-health-banner{flex-direction:column}.schema-required-card{grid-template-columns:1fr}.schema-health-card .section-head{align-items:flex-start;flex-direction:column}}

/* ==========================================================
   P036 — Grounded AI Application + Report Copilot
   ========================================================== */
.ai-copilot-box{margin:12px 0 4px;border:1px solid #e0dcff;border-radius:13px;background:linear-gradient(180deg,#fff 0%,#fcfbff 100%);box-shadow:0 7px 22px rgba(70,50,135,.055);overflow:hidden}
.ai-copilot-box>summary{display:grid;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:52px;padding:9px 12px;cursor:pointer;list-style:none;user-select:none}
.ai-copilot-box>summary::-webkit-details-marker{display:none}
.ai-copilot-box>summary:hover{background:#fbfaff}
.ai-copilot-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:#f2efff;color:#6f4bf0;font-size:14px;font-weight:800}
.ai-copilot-box>summary>span:nth-child(2){display:grid;gap:2px;min-width:0}
.ai-copilot-box>summary strong{font-size:11.5px;color:var(--text)}
.ai-copilot-box>summary small{font-size:9.5px;color:#7c899c;line-height:1.35}
.copilot-status{display:inline-flex;align-items:center;justify-content:center;min-height:25px;padding:0 9px;border-radius:999px;background:#f2efff;color:#6547e8;font-size:9px;font-weight:750;white-space:nowrap;border:1px solid #e6dfff}
.copilot-status-draft{background:#f2efff;color:#6547e8;border-color:#e6dfff}
.copilot-status-needs_info{background:#fff5df;color:#94610b;border-color:#f3deb4}
.copilot-status-accepted{background:#eaf8f0;color:#187b4e;border-color:#cdebd9}
.copilot-status-rejected,.copilot-status-superseded{background:#f4f5f7;color:#69778b;border-color:#e5e8ed}
.ai-copilot-body{padding:12px;border-top:1px solid #ece9ff;background:#fff}
.copilot-policy{display:flex;align-items:flex-start;gap:9px;margin-bottom:11px;padding:9px 10px;border-radius:10px;background:#f8f6ff;border:1px solid #ebe6ff}
.copilot-policy strong{flex:0 0 auto;font-size:9.5px;color:#6848e5}
.copilot-policy span{font-size:9.5px;color:#68758a;line-height:1.45}
.copilot-result{display:grid;gap:11px}
.copilot-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.copilot-result-head .eyebrow{display:block;margin-bottom:2px;font-size:8.5px;letter-spacing:.09em;text-transform:uppercase;color:#8b78dd;font-weight:800}
.copilot-result-head h5{margin:0;font:600 13px/1.25 PoppinsLocal,Inter,Arial,sans-serif;color:var(--text)}
.copilot-confidence{display:flex;align-items:baseline;gap:5px;padding:5px 8px;border:1px solid #ece8f8;border-radius:8px;background:#fcfbff;white-space:nowrap}
.copilot-confidence span{font-size:8.5px;color:#8490a2}
.copilot-confidence strong{font-size:11px;color:#5f42d7}
.copilot-draft{padding:12px;border:1px solid #dfe4ec;border-radius:11px;background:#fff}
.copilot-draft>span{display:block;margin-bottom:7px;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.045em;color:#718096}
.copilot-draft>div{font-size:11.5px;line-height:1.62;color:#263247;white-space:normal}
.copilot-draft>small{display:block;margin-top:8px;padding-top:7px;border-top:1px solid #eef1f5;color:#7f8b9e;font-size:9px;text-align:right}
.copilot-grounding-summary{padding:10px 11px;border-left:3px solid #8870f6;background:#faf9ff;border-radius:0 9px 9px 0}
.copilot-grounding-summary strong{display:block;margin-bottom:4px;font-size:9.5px;color:#6246da}
.copilot-grounding-summary p{margin:0;font-size:10.5px;line-height:1.5;color:#5f6d82}
.copilot-callout{padding:10px 12px;border-radius:10px;border:1px solid #e8ebf0;background:#fafbfc}
.copilot-callout strong{display:block;margin-bottom:5px;font-size:10px}
.copilot-callout ol,.copilot-callout ul{margin:0;padding-left:18px}
.copilot-callout li{margin:3px 0;font-size:10.5px;line-height:1.45;color:#536177}
.copilot-callout.needs-info{background:#fff9ed;border-color:#f1deb9}.copilot-callout.needs-info strong{color:#93610c}
.copilot-callout.warning{background:#fff7f4;border-color:#f0d7cf}.copilot-callout.warning strong{color:#a34e34}
.copilot-sources{border:1px solid #e7eaf0;border-radius:11px;overflow:hidden;background:#fff}
.copilot-subhead{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-bottom:1px solid #edf0f4;background:#fbfcfe}
.copilot-subhead strong{font-size:10px;color:#263247}.copilot-subhead span{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#f2efff;color:#6547e8;font-size:9px;font-weight:800}
.copilot-sources>.muted-copy{margin:0;padding:13px 11px;color:#8793a5;font-size:10px}
.copilot-source-list{display:grid}
.copilot-source-list article{padding:10px 11px;border-bottom:1px solid #edf0f4}.copilot-source-list article:last-child{border-bottom:0}
.copilot-source-list article>div:first-child{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.copilot-source-list code{padding:3px 5px;border-radius:5px;background:#f4f1ff;color:#6542dc;font:700 8.5px/1.1 ui-monospace,SFMono-Regular,Consolas,monospace}
.copilot-source-list article strong{font-size:10.5px;color:#2d3748}
.source-trust{display:inline-flex;align-items:center;min-height:19px;padding:0 6px;border-radius:999px;background:#edf8f2;color:#2f7c58;font-size:8px;font-weight:750;text-transform:uppercase;letter-spacing:.03em}
.copilot-source-list article p{margin:7px 0 0;font-size:9.8px;line-height:1.48;color:#667389}
.copilot-source-list article>a{display:inline-flex;margin-top:7px;color:#6547e8;font-size:9px;font-weight:700;text-decoration:none}.copilot-source-list article>a:hover{text-decoration:underline}
.copilot-document-sources{display:grid;gap:3px;margin-top:6px;padding-top:6px;border-top:1px dashed #e8ebf0}
.copilot-document-sources small{font-size:8.8px;color:#7a879a}
.copilot-run-meta{display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;padding-top:2px;color:#8994a5;font-size:8.7px}
.copilot-decision-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:2px}
.copilot-decision-row form{margin:0}.copilot-reject-form{display:flex;align-items:center;gap:7px;flex:1 1 280px;max-width:480px}
.copilot-reject-form input{height:34px;min-width:160px;flex:1;border:1px solid #dfe4ec;border-radius:8px;padding:0 9px;background:#fff;font-size:10px;color:var(--text);outline:0}.copilot-reject-form input:focus{border-color:#9d89f9;box-shadow:0 0 0 3px rgba(123,97,255,.10)}
.copilot-human-note{display:block;margin-top:-3px;color:#7b8799;font-size:9px;line-height:1.45}
.copilot-generate-form{display:grid;gap:9px;margin-top:1px;padding-top:11px;border-top:1px solid #edf0f4}
.copilot-generate-form label{display:grid;gap:5px}.copilot-generate-form label>span{font-size:10px;font-weight:700;color:#344157}.copilot-generate-form textarea{width:100%;min-height:72px;resize:vertical;border:1px solid #dfe4ec;border-radius:9px;padding:9px 10px;background:#fff;font:500 10.5px/1.45 InterLocal,Inter,Arial,sans-serif;color:var(--text);outline:0}.copilot-generate-form textarea:focus{border-color:#9d89f9;box-shadow:0 0 0 3px rgba(123,97,255,.10)}.copilot-generate-form label>small{font-size:8.8px;color:#8490a2;line-height:1.4}
.copilot-generate-actions{display:flex;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.ai-copilot-box .inline-warning{margin:0}
@media(max-width:760px){.ai-copilot-box>summary{grid-template-columns:30px minmax(0,1fr)}.ai-copilot-box>summary>.copilot-status{grid-column:2;justify-self:start}.copilot-result-head{align-items:flex-start;flex-direction:column}.copilot-decision-row{align-items:stretch;flex-direction:column}.copilot-reject-form{max-width:none;flex-basis:auto}.copilot-generate-actions{justify-content:stretch}.copilot-generate-actions .btn{flex:1}.copilot-policy{flex-direction:column;gap:4px}}

/* ==========================================================
   P037 — AI Project Intake + Evaluation Learning + Quality Gates
   ========================================================== */
.intake-page-head .eyebrow,.lessons-panel .eyebrow,.evaluation-ai-card .eyebrow,.evaluation-confirm-card .eyebrow,.quality-gates-panel .eyebrow{color:#6848e5}
.intake-start-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,.65fr);gap:16px;align-items:start}.intake-start-card{position:relative;padding:22px}.intake-step-badge{position:absolute;right:20px;top:18px;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:11px;background:#f2efff;color:#6747e8;font:800 13px/1 PoppinsLocal,Inter,sans-serif}.intake-start-card>div:nth-child(2) h3{margin:0 0 5px;font-size:17px}.intake-start-card>div:nth-child(2) p{margin:0 0 18px;color:#6f7c90;font-size:11px;line-height:1.5}.intake-start-form{display:grid;gap:15px}.intake-start-form>label,.intake-review-form>label{display:grid;gap:6px}.intake-start-form label>span,.intake-review-form label>span{font-size:10.5px;font-weight:750;color:#334055}.intake-start-form textarea,.intake-review-form textarea,.intake-review-form input{width:100%;border:1px solid #dde2ea;border-radius:10px;background:#fff;padding:10px 11px;color:var(--text);font:500 11px/1.5 InterLocal,Inter,Arial,sans-serif;outline:0}.intake-start-form textarea:focus,.intake-review-form textarea:focus,.intake-review-form input:focus{border-color:#9884f4;box-shadow:0 0 0 3px rgba(123,97,255,.10)}.intake-start-form label>small{font-size:9px;color:#8490a2}.intake-options{margin-top:2px}.intake-start-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:4px}.intake-start-actions span{max-width:520px;color:#7d899a;font-size:9.5px;line-height:1.45}.intake-how-card{padding:20px}.intake-how-card>ol{display:grid;gap:14px;margin:15px 0 0;padding:0;list-style:none;counter-reset:intake-step}.intake-how-card li{position:relative;padding-left:34px;counter-increment:intake-step}.intake-how-card li:before{content:counter(intake-step);position:absolute;left:0;top:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;background:#f3f0ff;color:#6848e5;font-size:9px;font-weight:800}.intake-how-card li strong{display:block;font-size:10.5px}.intake-how-card li span{display:block;margin-top:3px;color:#718096;font-size:9.5px;line-height:1.45}.intake-recent{margin-top:16px}.intake-recent-list{display:grid}.intake-recent-list>a{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 14px;border-top:1px solid #edf0f4;text-decoration:none}.intake-recent-list>a:first-child{border-top:0}.intake-recent-list>a:hover{background:#fbfcfe}.intake-recent-list strong{display:block;color:#263247;font-size:10.5px}.intake-recent-list small{display:block;margin-top:3px;color:#8490a2;font-size:9px}.intake-status{display:inline-flex;align-items:center;min-height:25px;padding:0 8px;border-radius:999px;font-size:8.7px;font-weight:800;white-space:nowrap}.intake-status-active{background:#fff5df;color:#95620b}.intake-status-ready_for_review{background:#f2efff;color:#6547e8}.intake-status-converted{background:#eaf8f0;color:#19794d}.intake-status-archived{background:#f2f4f7;color:#728095}
.intake-workspace{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:16px;align-items:start}.intake-conversation{overflow:hidden}.intake-messages{display:grid;gap:0}.intake-message{display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;padding:14px;border-top:1px solid #edf0f4}.intake-message:first-child{border-top:0}.intake-message.is-ai{background:#fcfbff}.intake-message-avatar{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:10px;background:#f1f3f7;color:#59677b;font-size:9px;font-weight:850}.intake-message.is-ai .intake-message-avatar{background:#f0ecff;color:#6544e5}.intake-message strong{font-size:9.5px}.intake-message p{margin:5px 0;color:#354256;font-size:10.5px;line-height:1.58}.intake-message small{color:#939dab;font-size:8.4px}.intake-reply-form{display:grid;gap:9px;padding:12px 14px 14px;border-top:1px solid #e9edf3;background:#fbfcfe}.intake-reply-form textarea{width:100%;min-height:82px;resize:vertical;border:1px solid #dce2ea;border-radius:10px;padding:9px 10px;font:500 10.5px/1.45 InterLocal,Inter,Arial,sans-serif;outline:0}.intake-reply-form textarea:focus{border-color:#9884f4;box-shadow:0 0 0 3px rgba(123,97,255,.10)}.intake-reply-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:8px}.intake-reply-options select{min-width:0;height:34px;border:1px solid #dfe4eb;border-radius:8px;background:#fff;padding:0 8px;font-size:9.5px}.intake-side{display:grid;gap:12px}.intake-brief,.intake-missing,.intake-observations{padding:16px}.intake-brief-text{font-size:10.5px;line-height:1.6;color:#3d495d;white-space:normal}.intake-missing ul{margin:10px 0 0;padding-left:18px}.intake-missing li{margin:5px 0;color:#6f5619;font-size:10px;line-height:1.45}.intake-observation{margin-top:9px;padding:10px;border-radius:9px;border:1px solid #e7eaf0;background:#fafbfc}.intake-observation strong{display:block;font-size:8.5px;text-transform:uppercase;letter-spacing:.04em}.intake-observation p{margin:5px 0;font-size:9.8px;line-height:1.48;color:#58667b}.intake-observation code{font-size:8px;color:#7053dc}.intake-observation.observation-official_rule{background:#f8f6ff;border-color:#e5defd}.intake-observation.observation-official_rule strong{color:#6748dd}.intake-observation.observation-lesson_learned{background:#f5faf8;border-color:#d8ebe2}.intake-observation.observation-lesson_learned strong{color:#2c7a57}.intake-observation.observation-project_gap{background:#fff9ed;border-color:#f0dfba}.intake-observation.observation-project_gap strong{color:#93610c}.intake-review{margin-top:16px;padding:18px}.intake-review-form{display:grid;gap:14px}.intake-facts-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;padding-top:4px}.intake-facts-head h3{margin:0;font-size:14px}.intake-facts-head p{margin:3px 0 0;color:#718096;font-size:9.5px}.intake-facts-head>span{display:flex;align-items:center;justify-content:center;min-width:28px;height:28px;border-radius:9px;background:#f2efff;color:#6748e5;font-weight:800;font-size:10px}.intake-fact-list{display:grid;gap:10px}.intake-fact-list>article{padding:12px;border:1px solid #e3e7ed;border-radius:11px;background:#fcfdff}.intake-fact-check{display:flex!important;align-items:center;gap:7px;margin-bottom:10px}.intake-fact-check input{width:15px;height:15px}.intake-fact-check span{font-size:9px!important;color:#5c47c7!important}.intake-fact-list>article>small{display:block;margin-top:7px;color:#8b96a7;font-size:8.6px}.intake-convert-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:4px}.intake-convert-actions span{max-width:620px;color:#748095;font-size:9px;line-height:1.45}
.evaluation-outcome,.evaluation-status,.lesson-status{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;font-size:8.5px;font-weight:800}.outcome-approved{background:#eaf8f0;color:#19794d}.outcome-rejected{background:#fff0ed;color:#a44935}.outcome-other{background:#f1f3f6;color:#6f7b8d}.evaluation-status-draft{background:#fff5df;color:#95620b}.evaluation-status-confirmed{background:#eaf8f0;color:#19794d}.evaluation-status-archived{background:#f1f3f6;color:#6f7b8d}.evaluation-form{padding:18px}.evaluation-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.evaluation-form-grid>section{min-width:0}.evaluation-text-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.evaluation-text-grid label{display:grid;gap:6px}.evaluation-text-grid label>span,.evaluation-form label>span{font-size:10px;font-weight:700;color:#344157}.evaluation-text-grid textarea{width:100%;border:1px solid #dfe4ec;border-radius:9px;padding:9px 10px;resize:vertical;font:500 10.5px/1.48 InterLocal,Inter,Arial,sans-serif;color:var(--text);outline:0}.criterion-score-editor{margin-top:12px;border:1px solid #e4e8ee;border-radius:10px;overflow:hidden}.criterion-score-head{padding:9px 10px;background:#fafbfc;border-bottom:1px solid #e9edf2}.criterion-score-head strong{display:block;font-size:9.5px}.criterion-score-head small{font-size:8.6px;color:#8792a4}.criterion-score-row{display:grid;grid-template-columns:1.2fr 80px 80px 1.5fr;gap:6px;padding:7px 8px;border-top:1px solid #edf0f4}.criterion-score-row:first-of-type{border-top:0}.criterion-score-row input{min-width:0;height:32px;border:1px solid #dfe4ec;border-radius:7px;padding:0 7px;font-size:9px}.evaluation-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.evaluation-ai-card,.evaluation-confirm-card{padding:17px}.evaluation-ai-card h2,.evaluation-confirm-card h2{margin:4px 0 5px;font-size:14px}.evaluation-ai-card p,.evaluation-confirm-card p{margin:0 0 12px;color:#6f7c90;font-size:9.8px;line-height:1.5}.evaluation-ai-card small{display:block;margin-bottom:10px;color:#8793a5;font-size:8.8px}.evaluation-score-hero{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #e8ecf1}.evaluation-score-hero>div{padding:15px}.evaluation-score-hero>div+div{border-left:1px solid #e8ecf1}.evaluation-score-hero span{display:block;color:#8793a5;font-size:8.5px;text-transform:uppercase}.evaluation-score-hero strong{display:block;margin-top:4px;font-size:16px}.evaluation-read-grid{display:grid;grid-template-columns:1fr 1fr}.evaluation-read-grid article{padding:15px;border-top:1px solid #edf0f4}.evaluation-read-grid article:nth-child(even){border-left:1px solid #edf0f4}.evaluation-read-grid h3{margin:0 0 6px;font-size:10.5px}.evaluation-read-grid p{margin:0;color:#5c697e;font-size:10px;line-height:1.55}.lessons-panel{margin-top:14px;padding:17px}.lesson-truth-note{display:flex;align-items:flex-start;gap:12px;margin:10px 0 14px;padding:10px 11px;border-radius:10px;background:#f8f6ff;border:1px solid #e7e1ff}.lesson-truth-note strong{flex:0 0 auto;color:#6748df;font-size:9px}.lesson-truth-note span{color:#667389;font-size:9px;line-height:1.45}.lesson-list{display:grid;gap:9px}.lesson-card{padding:12px;border:1px solid #e3e7ed;border-radius:10px;background:#fff}.lesson-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.lesson-card-head>div>span{font-size:8.3px;color:#8793a5;text-transform:uppercase}.lesson-card h3{margin:3px 0 0;font-size:11px}.lesson-card>p{margin:8px 0 0;color:#536177;font-size:10px;line-height:1.5}.lesson-card>small{display:block;margin-top:7px;color:#7e899b;font-size:8.7px}.lesson-status-proposed{background:#fff5df;color:#95620b}.lesson-status-confirmed{background:#eaf8f0;color:#19794d}.lesson-actions{display:flex;gap:6px;margin-top:9px}.lesson-actions form{margin:0}.lesson-add-form{margin-top:14px;padding-top:14px;border-top:1px solid #e8ecf1}.criteria-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:16px;align-items:start}.criteria-policy{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:13px 15px;background:#f8f6ff;border-color:#e5dfff}.criteria-policy strong{font-size:10px;color:#6546dd}.criteria-policy p{margin:4px 0 0;color:#68758a;font-size:9.3px}.criteria-policy>span{white-space:nowrap;font-size:8.4px;font-weight:800;color:#2c7a57;background:#eaf8f0;border-radius:999px;padding:6px 8px}.criteria-list-panel,.criteria-create{padding:16px}.criteria-filter{display:grid;grid-template-columns:1fr 1fr auto;gap:7px;margin:9px 0 13px}.criteria-filter select{height:34px;border:1px solid #dfe4ec;border-radius:8px;padding:0 8px;background:#fff;font-size:9.3px}.criteria-list{display:grid;gap:9px}.criterion-card{padding:12px;border:1px solid #e3e7ed;border-radius:10px;background:#fff}.criterion-card.is-obsolete{opacity:.62;background:#f8f9fb}.criterion-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.criterion-card code{font-size:8px;color:#6a4be0;background:#f3f0ff;border-radius:5px;padding:3px 5px}.criterion-card h3{margin:5px 0 2px;font-size:11px}.criterion-card small{color:#8490a2;font-size:8.5px}.criterion-card>p{margin:9px 0;color:#536177;font-size:9.7px;line-height:1.5}.criterion-score-max{display:inline-flex;padding:5px 7px;border-radius:8px;background:#edf8f2;color:#2f7c58;font-size:8.6px;font-weight:800}.criterion-card footer{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-top:8px;border-top:1px solid #edf0f4}.criterion-card footer>div{display:flex;gap:9px;flex:1;flex-wrap:wrap}.criterion-card footer a{font-size:8.5px;color:#6448dd;text-decoration:none}.criterion-card footer span{font-size:8.2px;color:#8793a5}.criteria-create form{display:grid;gap:9px;margin-top:13px}.criteria-create label{display:grid;gap:5px}.criteria-create label>span{font-size:9.5px;font-weight:700;color:#344157}.criteria-create input,.criteria-create select,.criteria-create textarea{width:100%;border:1px solid #dfe4ec;border-radius:8px;background:#fff;padding:8px 9px;font-size:9.7px;color:var(--text);outline:0}.criteria-create select,.criteria-create input{height:34px;padding-top:0;padding-bottom:0}.criteria-create textarea{resize:vertical}.criteria-confirm-note{color:#7d899a;font-size:8.6px;line-height:1.45}
.quality-gates-panel{margin:14px 0;padding:17px}.quality-gates-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.quality-gates-head h2{margin:3px 0 4px;font-size:15px}.quality-gates-head p{margin:0;max-width:720px;color:#69778c;font-size:10px;line-height:1.48}.quality-run-actions{display:flex;align-items:center;gap:8px}.quality-run-actions form{margin:0}.quality-score{display:grid;justify-items:end;min-width:85px}.quality-score span{font-size:8px;color:#8793a5}.quality-score strong{font-size:18px;line-height:1.1}.quality-score-ready strong{color:#1d7b50}.quality-score-needs_work strong{color:#94610b}.quality-score-blocked strong{color:#ad4d38}.quality-truth-note{display:flex;gap:10px;margin:12px 0;padding:9px 10px;border:1px solid #e6e1fb;border-radius:9px;background:#f9f7ff}.quality-truth-note strong{font-size:8.8px;color:#6748df;white-space:nowrap}.quality-truth-note span{font-size:8.8px;color:#68758a;line-height:1.42}.quality-empty{display:grid;gap:3px;padding:14px;border:1px dashed #dce2ea;border-radius:10px;text-align:center}.quality-empty strong{font-size:10px}.quality-empty span{font-size:9px;color:#8490a2}.quality-outdated{margin:10px 0}.quality-verdict-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin:10px 0 12px}.quality-verdict{display:inline-flex;min-height:27px;align-items:center;padding:0 9px;border-radius:999px;font-size:8.7px;font-weight:800}.verdict-ready{background:#eaf8f0;color:#19794d}.verdict-needs_work{background:#fff5df;color:#95620b}.verdict-blocked{background:#fff0ed;color:#a44935}.quality-verdict-row p{margin:0;font-size:9.8px;color:#536177;line-height:1.45}.quality-verdict-row small{color:#8793a5;font-size:8.2px}.quality-gate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.quality-gate{padding:11px;border:1px solid #e4e8ee;border-radius:10px;background:#fff}.quality-gate.gate-pass{border-left:3px solid #62b689}.quality-gate.gate-warn{border-left:3px solid #d7aa45}.quality-gate.gate-block{border-left:3px solid #cc7662}.quality-gate-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.quality-gate-top>div span{display:block;font-size:9.7px;font-weight:750}.quality-gate-top>div strong{display:block;margin-top:2px;font-size:14px}.quality-gate-top>i{font-style:normal;font-size:8px;font-weight:800;padding:4px 6px;border-radius:6px;background:#f3f5f7;color:#6d7889}.quality-gate>p{margin:7px 0;color:#536177;font-size:9.4px;line-height:1.46}.quality-gate>ul{margin:7px 0 0;padding-left:17px}.quality-gate>ul li{margin:3px 0;color:#657287;font-size:9px;line-height:1.4}.quality-missing{display:grid;gap:4px;margin-top:8px;padding:8px;border-radius:8px;background:#fff9ed}.quality-missing strong{font-size:8.2px;color:#94610b}.quality-missing span{font-size:8.7px;color:#705c2b}.quality-refs{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.quality-refs code{padding:3px 5px;border-radius:5px;background:#f4f1ff;color:#6542dc;font-size:7.6px}.quality-criteria{margin-top:14px;padding-top:12px;border-top:1px solid #e8ecf1}.quality-criteria h3{margin:0;font-size:11px}.quality-criterion-list{display:grid;gap:7px}.quality-criterion-list article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:9px 10px;border:1px solid #e6e9ee;border-radius:9px}.quality-criterion-list article>div{display:flex;align-items:center;gap:7px}.quality-criterion-list strong{font-size:9.7px}.quality-criterion-list code{font-size:7.7px;color:#6849df}.quality-criterion-list article>span{font-size:9px;font-weight:800;color:#3b4759}.quality-criterion-list p{grid-column:1/-1;margin:0;color:#667389;font-size:8.9px;line-height:1.42}
@media(max-width:980px){.intake-start-grid,.intake-workspace,.criteria-layout{grid-template-columns:1fr}.evaluation-form-grid,.evaluation-actions-grid{grid-template-columns:1fr}.quality-gate-grid{grid-template-columns:1fr}.quality-verdict-row{grid-template-columns:1fr}.quality-verdict-row small{justify-self:start}}
@media(max-width:720px){.intake-reply-options,.criteria-filter{grid-template-columns:1fr}.intake-start-actions,.intake-convert-actions,.quality-gates-head,.criteria-policy{align-items:flex-start;flex-direction:column}.evaluation-text-grid,.evaluation-read-grid{grid-template-columns:1fr}.evaluation-read-grid article:nth-child(even){border-left:0}.criterion-score-row{grid-template-columns:1fr 1fr}.criterion-score-row input:first-child,.criterion-score-row input:last-child{grid-column:1/-1}.quality-run-actions{width:100%;justify-content:space-between}.quality-truth-note,.lesson-truth-note{flex-direction:column}}

/* P038 — AI Usage & Cost Control */
.ai-usage-month{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.ai-usage-month label{display:grid;gap:6px;font-size:12px;color:var(--muted)}.ai-usage-month input{min-width:160px}.ai-usage-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.ai-usage-metric-card{background:#fff;border:1px solid #E7EBF2;border-radius:18px;padding:18px;display:grid;gap:7px;min-width:0;box-shadow:var(--shadow)}.ai-usage-metric-card>span{font-size:12px;color:var(--muted);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.ai-usage-metric-card>strong{font-size:24px;line-height:1.1;color:var(--text)}.ai-usage-metric-card>small{color:var(--muted);line-height:1.45}.ai-usage-metric-card.is-warning{border-color:#e7c879;background:#fffaf0}.ai-usage-metric-card.is-danger{border-color:#efaaaa;background:#fff5f5}.ai-budget-progress{margin-bottom:18px}.ai-budget-state{font-size:12px;font-weight:800;padding:6px 10px;border-radius:999px;background:#edf9f2;color:#22784b}.ai-budget-state.is-warning{background:#fff3d6;color:#8a5a00}.ai-budget-state.is-blocked{background:#ffe6e6;color:#a72a2a}.ai-budget-bar{height:10px;background:#edf1f7;border-radius:999px;overflow:hidden;margin-top:8px}.ai-budget-bar i{display:block;height:100%;background:linear-gradient(90deg,#6957e8,#8e7cf5);border-radius:inherit}.ai-budget-labels{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted);margin-top:6px}.ai-usage-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-bottom:18px}.ai-usage-table td small,.ai-usage-recent td small{display:block;color:var(--muted);margin-top:3px}.ai-usage-table td,.ai-usage-table th,.ai-usage-recent td,.ai-usage-recent th{vertical-align:top}.ai-cost-controls{margin:18px 0}.ai-hard-stop{height:100%;align-self:stretch}.ai-cost-note{margin-top:14px;display:flex;gap:10px;align-items:flex-start;flex-wrap:wrap}.ai-cost-note span{flex:1;min-width:240px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1100px){.ai-usage-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-usage-layout{grid-template-columns:1fr}.form-grid.three{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.ai-usage-summary-grid{grid-template-columns:1fr}.form-grid.three{grid-template-columns:1fr}.ai-usage-month{width:100%}.ai-usage-month label,.ai-usage-month input{width:100%}.ai-usage-recent{min-width:980px}}

/* ==========================================================
   P038R1 — AI Cost Control form polish
   Keeps P038 cost-control logic unchanged; presentation only.
   ========================================================== */
.ai-cost-controls .form-stack{
    display:grid;
    gap:0;
}
.ai-cost-controls .form-grid.three{
    display:grid;
    grid-template-columns:minmax(240px,1fr) minmax(210px,.72fr) minmax(300px,1fr);
    gap:16px;
    align-items:stretch;
    padding:2px 0 16px;
}
.ai-cost-controls .form-grid.three > label:not(.toggle-row){
    display:flex;
    flex-direction:column;
    gap:8px;
    min-width:0;
    padding:14px 15px;
    border:1px solid #e1e6ed;
    border-radius:12px;
    background:#fbfcfe;
    color:#273248;
    font-size:12px;
    line-height:1.35;
    font-weight:750;
}
.ai-cost-controls .form-grid.three > label:not(.toggle-row) input[type="number"]{
    width:100%;
    min-width:0;
    height:42px;
    padding:0 12px;
    border:1px solid #dce3ed;
    border-radius:10px;
    outline:0;
    background:#fff;
    color:#17203a;
    font:600 12px/1 InterLocal,Inter,Arial,sans-serif;
    transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.ai-cost-controls .form-grid.three > label:not(.toggle-row) input[type="number"]::placeholder{
    color:#98a3b4;
    font-weight:500;
}
.ai-cost-controls .form-grid.three > label:not(.toggle-row) input[type="number"]:hover{
    border-color:#cbd4e0;
}
.ai-cost-controls .form-grid.three > label:not(.toggle-row) input[type="number"]:focus{
    border-color:var(--purple);
    box-shadow:0 0 0 4px rgba(123,97,255,.10);
}
.ai-cost-controls .form-grid.three > label:not(.toggle-row) > small{
    display:block;
    margin-top:auto;
    color:#748096;
    font-size:10.5px;
    line-height:1.45;
    font-weight:500;
}
.ai-cost-controls .ai-hard-stop{
    min-height:108px;
    height:auto;
    align-self:stretch;
    padding:14px 15px;
    border-color:#e1e6ed;
    background:#fbfcfe;
}
.ai-cost-controls .ai-hard-stop > span{
    min-width:0;
    padding-right:8px;
}
.ai-cost-controls .ai-hard-stop span strong{
    color:#273248;
    font-size:12px;
    line-height:1.35;
}
.ai-cost-controls .ai-hard-stop span small{
    margin-top:6px;
    color:#748096;
    font-size:10.5px;
    line-height:1.45;
}
.ai-cost-controls .ai-hard-stop i{
    width:46px;
    height:26px;
}
.ai-cost-controls .ai-hard-stop i:after{
    width:20px;
    height:20px;
}
.ai-cost-controls .ai-hard-stop input:checked+i:after{
    transform:translateX(20px);
}
.ai-cost-controls .form-actions{
    margin:0;
    padding:15px 0 0;
    border-top:1px solid #edf1f6;
    background:transparent;
}
.ai-cost-controls .form-actions .btn{
    min-width:136px;
}
.ai-cost-controls .ai-cost-note{
    margin:16px 0 0;
    padding:11px 13px;
    border-radius:10px;
    gap:8px 12px;
    line-height:1.5;
}
.ai-cost-controls .ai-cost-note strong{
    white-space:nowrap;
}

@media(max-width:1100px){
    .ai-cost-controls .form-grid.three{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
    .ai-cost-controls .ai-hard-stop{
        grid-column:1/-1;
        min-height:82px;
    }
}
@media(max-width:700px){
    .ai-cost-controls .form-grid.three{
        grid-template-columns:1fr;
        gap:12px;
    }
    .ai-cost-controls .ai-hard-stop{
        grid-column:auto;
        min-height:0;
    }
    .ai-cost-controls .form-actions{
        padding-top:14px;
    }
    .ai-cost-controls .form-actions .btn{
        width:100%;
    }
    .ai-cost-controls .ai-cost-note{
        display:grid;
    }
    .ai-cost-controls .ai-cost-note span{
        min-width:0;
    }
}

/* P039 — pre-beta hardening health */
.prebeta-health-card{margin-top:12px}
.schema-health-row.is-info{background:#f8f7ff}
.schema-health-row.is-info .schema-health-status-icon{background:#eeeaff;color:#6542dc}

/* ==========================================================
   P040 — Helpdesk / onboarding
   ========================================================== */
.help-top-button{font:800 13px/1 InterLocal,Inter,Arial,sans-serif;color:#526077;text-decoration:none}
.help-page-head{margin-bottom:14px}
.help-lifecycle{padding:20px;margin-bottom:14px;overflow:hidden}
.help-lifecycle-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:18px}.help-lifecycle-head h3{margin:3px 0 5px;font:600 16px/1.25 PoppinsLocal,Inter,Arial,sans-serif}.help-lifecycle-head p{margin:0;max-width:820px;color:#6f7c90;font-size:11px;line-height:1.55}.help-lifecycle-rule{display:inline-flex;align-items:center;max-width:310px;padding:9px 11px;border:1px solid #e3defe;border-radius:10px;background:#f8f6ff;color:#6542dc;font-size:10.5px;font-weight:750;line-height:1.4}
.help-lifecycle-flow{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr) 28px minmax(0,1fr);align-items:stretch;gap:7px}.help-stage{position:relative;min-width:0;padding:14px 14px 13px;border:1px solid #e4e8ee;border-radius:12px;background:#fbfcfe}.help-stage>span{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;margin-bottom:9px;border-radius:8px;background:#f0edff;color:#6542dc;font-size:9px;font-weight:850}.help-stage strong{display:block;color:#1f2a3d;font:600 13px/1.25 PoppinsLocal,Inter,Arial,sans-serif}.help-stage p{margin:6px 0 0;color:#6f7c90;font-size:10.2px;line-height:1.5}.help-stage-arrow{display:flex;align-items:center;justify-content:center;font-style:normal;color:#a4adba;font-size:17px}
.help-truth-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:14px}.help-truth-card{display:flex;align-items:flex-start;gap:12px;padding:16px}.help-truth-card.is-primary{border-color:#ded8ff;background:linear-gradient(180deg,#fbfaff,#fff)}.help-truth-no{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:9px;background:#f1f3f7;color:#596579;font-size:10px;font-weight:850}.help-truth-card.is-primary .help-truth-no{background:#eeeaff;color:#6542dc}.help-truth-card strong{font-size:11.5px}.help-truth-card p{margin:5px 0 0;color:#6f7c90;font-size:10px;line-height:1.5}
.help-context-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin-bottom:14px;padding:15px 17px;border-color:#ddd8fb;background:linear-gradient(90deg,#faf9ff,#fff)}.help-context-mark{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:#eeeaff;color:#6542dc;font-size:15px;font-weight:850}.help-context-card h3{margin:3px 0 3px;font-size:13px}.help-context-card p{margin:0;color:#6f7c90;font-size:10.5px;line-height:1.45}
.help-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.help-quick-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:14px 15px;color:inherit;text-decoration:none;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.help-quick-card:hover{border-color:#d7d0ff;transform:translateY(-1px);box-shadow:0 9px 24px rgba(50,56,77,.07)}.help-quick-card>span{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border-radius:8px;background:#f0edff;color:#6542dc;font-size:8.5px;font-weight:850}.help-quick-card strong{display:block;font-size:11px}.help-quick-card p{margin:4px 0 0;color:#788598;font-size:9.6px;line-height:1.4}.help-quick-card>b{color:#8e82d9;font-size:14px}
.help-library{padding:0;overflow:hidden;margin-bottom:14px}.help-library-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;padding:18px 18px 15px;border-bottom:1px solid #edf1f5}.help-library-head h3{margin:3px 0 4px;font:600 16px/1.25 PoppinsLocal,Inter,Arial,sans-serif}.help-library-head p{margin:0;color:#7a8799;font-size:11.5px;line-height:1.45}.help-search{display:grid;grid-template-columns:minmax(320px,430px) auto auto;gap:10px;align-items:center;justify-content:end}.help-search input{min-width:0;height:42px;padding:0 14px;font-size:13px;line-height:1.2}.help-search .btn{height:42px;padding:0 16px;font-size:12px;white-space:nowrap}.help-topic-list{display:grid}.help-topic{border-bottom:1px solid #edf1f5}.help-topic:last-child{border-bottom:0}.help-topic>summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;padding:16px 17px;cursor:pointer;list-style:none;transition:background .15s ease}.help-topic>summary::-webkit-details-marker{display:none}.help-topic>summary:hover{background:#fbfcfe}.help-topic[open]>summary{background:#faf9ff}.help-topic-no{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;background:#f1f3f7;color:#667287;font-size:9.5px;font-weight:850}.help-topic[open] .help-topic-no{background:#eeeaff;color:#6542dc}.help-topic>summary strong{display:block;font-size:13px;line-height:1.35}.help-topic>summary p{margin:5px 0 0;color:#788598;font-size:11px;line-height:1.5}.help-topic>summary>i{font-style:normal;color:#929cad;font-size:12px;transition:transform .15s ease}.help-topic[open]>summary>i{transform:rotate(180deg)}.help-topic-body{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.75fr);gap:18px;padding:4px 17px 18px 61px;background:#faf9ff}.help-topic-body h4{margin:10px 0 8px;font-size:10.8px;text-transform:uppercase;letter-spacing:.045em;color:#4a5669}.help-topic-body ol{margin:0;padding-left:19px}.help-topic-body li{margin:7px 0;color:#4f5c70;font-size:11.2px;line-height:1.58}.help-topic-body aside{align-self:start;margin-top:8px;padding:12px 13px;border:1px solid #e3defe;border-radius:10px;background:#fff}.help-topic-body aside strong{font-size:9.8px;color:#6542dc;text-transform:uppercase;letter-spacing:.04em}.help-topic-body aside p{margin:5px 0 0;color:#586578;font-size:10.6px;line-height:1.55}.help-topic-actions{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}.help-empty{margin:18px}
.help-bottom-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:14px}.help-glossary,.help-boundaries{padding:17px}.help-glossary .panel-head,.help-boundaries .panel-head{margin-bottom:11px}.help-glossary h3,.help-boundaries h3{margin:3px 0 0;font-size:14px}.help-glossary dl{display:grid;margin:0}.help-glossary dl>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:12px;padding:9px 0;border-top:1px solid #edf1f5}.help-glossary dl>div:first-child{border-top:0}.help-glossary dt{font-size:11px;font-weight:800;color:#334055}.help-glossary dd{margin:0;color:#6f7c90;font-size:10.8px;line-height:1.5}.help-boundaries ul{margin:0;padding-left:18px}.help-boundaries li{margin:8px 0;color:#596679;font-size:10.9px;line-height:1.55}.help-partner-intro{display:flex;align-items:flex-start;gap:14px;padding:18px;margin-bottom:14px}.help-partner-symbol{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:#eeeaff;color:#6542dc;font-weight:850}.help-partner-intro strong{font-size:13px}.help-partner-intro p{margin:5px 0 10px;max-width:760px;color:#6f7c90;font-size:11px;line-height:1.6}
@media(max-width:1120px){.help-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.help-bottom-grid{grid-template-columns:1fr}.help-lifecycle-flow{grid-template-columns:1fr}.help-stage-arrow{height:16px;transform:rotate(90deg)}.help-truth-grid{grid-template-columns:1fr}.help-library-head{align-items:flex-start;flex-direction:column}.help-search{width:100%;grid-template-columns:minmax(0,1fr) auto auto;justify-content:stretch}}
@media(max-width:760px){.help-lifecycle-head{flex-direction:column}.help-lifecycle-rule{max-width:none}.help-quick-grid{grid-template-columns:1fr}.help-context-card{grid-template-columns:auto minmax(0,1fr)}.help-context-card .btn{grid-column:1/-1;width:100%}.help-search{grid-template-columns:1fr 1fr;gap:8px}.help-search input{grid-column:1/-1}.help-search .btn{width:100%}.help-topic-body{grid-template-columns:1fr;padding-left:17px}.help-glossary dl>div{grid-template-columns:1fr;gap:4px}.help-topic-actions .btn{flex:1 1 180px}}

/* ==========================================================
   P041 — V1 Lifecycle & Scope Closure
   ========================================================== */
.implementation-head{margin-bottom:14px}.implementation-head .page-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.implementation-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.implementation-kpis>.panel{display:grid;gap:4px;padding:15px 16px}.implementation-kpis span{color:#758297;font-size:10px;font-weight:700}.implementation-kpis strong{font:600 20px/1.2 PoppinsLocal,Inter,Arial,sans-serif;color:#1d293d}.implementation-kpis small{color:#8894a6;font-size:9.8px}.implementation-kpis .is-danger{color:#b24a42}
.implementation-section{margin-bottom:14px;padding:17px}.implementation-section>.section-head,.activity-ai-panel>.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 14px}.implementation-section>.section-head h3,.activity-ai-panel>.section-head h3{margin:3px 0 4px;font:600 15px/1.25 PoppinsLocal,Inter,Arial,sans-serif}.implementation-section>.section-head p,.activity-ai-panel>.section-head p{margin:0;max-width:800px;color:#758297;font-size:10.8px;line-height:1.5}
.inline-create{position:relative}.inline-create>summary,.row-details>summary{list-style:none;cursor:pointer}.inline-create>summary::-webkit-details-marker,.row-details>summary::-webkit-details-marker{display:none}.inline-create-popover{position:absolute;right:0;top:calc(100% + 7px);z-index:20;width:min(880px,calc(100vw - 300px));max-height:72vh;overflow:auto;padding:15px;border:1px solid #dfe4ec;border-radius:12px;background:#fff;box-shadow:0 18px 48px rgba(26,35,56,.14)}
.implementation-form{display:grid;gap:13px}.implementation-form .form-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.implementation-form textarea{min-height:72px}.partner-multiselect{display:grid;gap:7px}.partner-multiselect>span{font-size:10px;font-weight:750;color:#3d4b60}.partner-multiselect>div{display:flex;flex-wrap:wrap;gap:6px 12px;padding:10px;border:1px solid #e2e6ed;border-radius:9px;background:#fafbfc}.partner-multiselect>div label{display:flex;align-items:center;gap:5px;font-size:10px;color:#586578}
.activity-list{display:grid;gap:10px}.activity-card{padding:14px 15px;border:1px solid #e3e7ed;border-left:3px solid #cdd4df;border-radius:11px;background:#fff}.activity-card.status-realized{border-left-color:#37a16d}.activity-card.status-in_progress{border-left-color:#7a63ec}.activity-card.status-cancelled{border-left-color:#b6beca}.activity-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.activity-card>header h4{margin:4px 0 2px;font-size:13px}.activity-card>header p{margin:0;color:#7a8799;font-size:9.8px}.activity-status{display:inline-flex;padding:4px 7px;border-radius:999px;background:#f3f4f7;color:#667287;font-size:8.5px;font-weight:800;text-transform:uppercase}.status-realized .activity-status{background:#e9f7ef;color:#24774f}.status-in_progress .activity-status{background:#f0edff;color:#6542dc}.activity-dates{display:grid;justify-items:end;gap:2px;white-space:nowrap}.activity-dates strong{font-size:10.5px}.activity-dates span{font-size:9px;color:#8b96a6}
.activity-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}.activity-meta-grid>div{display:grid;gap:3px;padding:8px 9px;border-radius:8px;background:#f8f9fb}.activity-meta-grid span{font-size:8.5px;text-transform:uppercase;color:#8591a3}.activity-meta-grid strong{font-size:11.5px}.planned-realized-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:11px}.planned-realized-grid>div{padding:10px 11px;border:1px solid #e7eaf0;border-radius:9px;background:#fbfcfd}.planned-realized-grid span{display:block;margin-bottom:5px;font-size:8px;font-weight:850;letter-spacing:.06em;color:#6f4ee6}.planned-realized-grid p,.activity-deviation p,.activity-detail-grid p{margin:0;color:#556278;font-size:10.4px;line-height:1.5}.activity-deviation{margin-top:9px;padding:9px 11px;border-radius:9px;background:#fff8eb;border:1px solid #f0dfbc}.activity-deviation strong{display:block;margin-bottom:4px;font-size:9px;color:#8e610e}.activity-partners{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:9px}.activity-partners>span{font-size:9px;color:#7e899a}.activity-partners b{padding:4px 7px;border-radius:999px;background:#f1f3f6;color:#566278;font-size:8.8px}.activity-details,.activity-edit,.activity-export{margin-top:9px;border-top:1px solid #edf0f4;padding-top:8px}.activity-details>summary,.activity-edit>summary,.activity-export>summary{cursor:pointer;color:#6246dc;font-size:9.5px;font-weight:750;list-style:none}.activity-details>summary::-webkit-details-marker,.activity-edit>summary::-webkit-details-marker,.activity-export>summary::-webkit-details-marker{display:none}.activity-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:9px}.activity-detail-grid>div{padding:9px;border-radius:8px;background:#fafbfc}.activity-detail-grid strong{display:block;margin-bottom:4px;font-size:9px;color:#354257}.activity-export-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:9px 0}.activity-export-grid>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 9px;border:1px solid #e6e9ee;border-radius:8px;background:#fbfcfe}.activity-export-grid strong{font-size:9.5px;color:#435067}.activity-export-grid span{display:flex;gap:5px}.danger-inline{margin-top:9px}
.activity-ai-panel{margin-bottom:14px;padding:17px;border-color:#ded8ff;background:linear-gradient(180deg,#fcfbff,#fff)}.activity-ai-note-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.activity-ai-note-form label{display:grid;gap:6px}.activity-ai-note-form label>span{font-size:10px;font-weight:750}.activity-ai-note-form textarea{min-height:76px}.activity-ai-note-form .form-actions{margin:0;padding:0;border:0}.activity-ai-review{margin-top:14px;padding-top:14px;border-top:1px solid #e9e5ff}.callout.callout-info{display:grid;gap:3px;margin-bottom:11px;padding:9px 11px;border:1px solid #ddd7ff;border-radius:9px;background:#f8f6ff}.callout.callout-info strong{font-size:10px;color:#5d42cf}.callout.callout-info span{font-size:9.6px;color:#68758a}
.budget-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:12px}.budget-summary-grid>div{display:grid;gap:4px;padding:10px 11px;border:1px solid #e6e9ef;border-radius:9px;background:#fafbfc}.budget-summary-grid span{font-size:8.8px;text-transform:uppercase;color:#808c9e}.budget-summary-grid strong{font-size:12px}.budget-table .cell-sub{display:block;margin-top:3px;color:#8792a3;font-size:8.8px}.row-details{position:relative}.row-details>summary{display:flex;align-items:center;justify-content:center;width:29px;height:29px;border:1px solid #dfe4eb;border-radius:8px;background:#fff;color:#647085}.row-popover{position:absolute;right:0;top:34px;z-index:25;width:520px;max-width:calc(100vw - 310px);padding:13px;border:1px solid #dfe4eb;border-radius:11px;background:#fff;box-shadow:0 16px 42px rgba(30,39,60,.14)}.compact-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.compact-form .span-full{grid-column:1/-1}
.task-list{display:grid;gap:7px}.task-row{display:grid;grid-template-columns:4px minmax(0,1fr) auto auto;align-items:center;gap:11px;padding:10px 11px;border:1px solid #e5e8ee;border-radius:9px;background:#fff}.task-row.is-overdue{border-color:#efd4cf;background:#fffafa}.task-priority{width:4px;height:34px;border-radius:999px;background:#c6ccd5}.priority-high{background:#e8a33b}.priority-critical{background:#d55c52}.priority-low{background:#7bb69a}.task-main{min-width:0}.task-main>div{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.task-main strong{font-size:10.8px}.task-main p{margin:3px 0;color:#667389;font-size:9.6px}.task-main small{color:#8a95a5;font-size:8.7px}.task-type{padding:3px 5px;border-radius:5px;background:#f2f0ff;color:#6547e2;font-size:8px;font-weight:750}.task-due{display:grid;justify-items:end;gap:4px;white-space:nowrap}.task-due strong{font-size:9px}.task-status{display:inline-flex;padding:3px 6px;border-radius:999px;background:#f1f3f6;color:#687489;font-size:8px}.task-status.status-done{background:#e9f7ef;color:#24774f}.linked-evidence-list{display:grid;gap:6px}.linked-evidence-list a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 10px;border:1px solid #e7eaf0;border-radius:8px;color:inherit;text-decoration:none}.linked-evidence-list strong{font-size:10px}.linked-evidence-list span{font-size:9px;color:#7f8b9d}
.live-compliance-panel{margin:14px 0;padding:16px}.live-compliance-panel>.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:11px}.live-compliance-panel h3{margin:3px 0 4px;font-size:14px}.live-compliance-panel p{margin:0;color:#748196;font-size:10.5px;line-height:1.5}.compliance-verdict{display:inline-flex;align-items:center;min-height:28px;padding:0 9px;border-radius:999px;font-size:8.5px;font-weight:850}.verdict-pass{background:#eaf8f0;color:#18794e}.verdict-warning{background:#fff4dd;color:#91600c}.verdict-blocked{background:#fff0ed;color:#a7483e}.compliance-check-list{display:grid;gap:6px}.compliance-check{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;border:1px solid #e6e9ef;border-radius:8px}.compliance-check-icon{display:flex;align-items:center;justify-content:center;width:27px;height:27px;border-radius:8px;background:#f3f4f7;color:#657187;font-size:11px}.compliance-check.is-pass .compliance-check-icon{background:#eaf8f0;color:#18794e}.compliance-check.is-fail .compliance-check-icon{background:#fff0ed;color:#a7483e}.compliance-check.is-warn .compliance-check-icon{background:#fff5e1;color:#96630d}.compliance-check strong{display:block;font-size:10px}.compliance-check p{margin:3px 0 0;font-size:9.5px}.compliance-footnote{display:block;margin-top:10px;color:#8490a2;font-size:9px;line-height:1.45}
.portal-copy-head{margin-bottom:14px}.portal-copy-meta{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:12px;padding:12px 14px}.portal-copy-meta strong{font-size:11px}.portal-copy-meta span{color:#7b8799;font-size:9.5px}.portal-copy-sections{display:grid;gap:10px}.portal-copy-section{padding:15px}.portal-copy-section h3{margin:0 0 10px;font-size:13px}.portal-copy-item{padding:11px 0;border-top:1px solid #edf0f4}.portal-copy-item:first-of-type{border-top:0}.portal-copy-question{font-size:10px;font-weight:750;color:#39465a}.portal-copy-answer{margin-top:6px;padding:10px;border-radius:8px;background:#fafbfc;color:#3f4d62;font-size:10.8px;line-height:1.55;white-space:pre-wrap}.portal-copy-actions{display:flex;justify-content:flex-end;margin-top:6px}
.project-search-ai{margin:12px 0 14px;padding:15px;border-color:#ded8ff;background:linear-gradient(180deg,#fcfbff,#fff)}.project-search-ai-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.project-search-ai-head h3{margin:3px 0 4px;font-size:14px}.project-search-ai-head p{margin:0;color:#748196;font-size:10.5px;line-height:1.5}.project-search-ai-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin-top:11px}.project-search-ai-form input{height:39px}.compact-alert{margin:10px 0 0}.project-search-answer{display:grid;gap:11px;margin-top:12px;padding-top:12px;border-top:1px solid #e8e4ff}.project-search-answer>div>p{margin:6px 0 0;color:#39475c;font-size:11px;line-height:1.62}.project-search-answer aside{padding:9px 11px;border-radius:8px;background:#fff8eb;border:1px solid #f0dfbc}.project-search-answer aside strong{font-size:9.5px}.project-search-answer aside ul{margin:5px 0 0;padding-left:18px}.project-search-answer aside li{font-size:9.5px;line-height:1.45}.project-search-sources{display:grid;gap:6px}.project-search-sources>strong{font-size:9.5px;text-transform:uppercase;letter-spacing:.04em;color:#667287}.project-search-sources>span{font-size:9.5px;color:#7e899b}.project-search-sources article{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;padding:8px 9px;border:1px solid #e6e9ef;border-radius:8px;background:#fff}.project-search-sources code{align-self:start;padding:3px 5px;border-radius:5px;background:#f0edff;color:#6448dc;font-size:8px;font-weight:750}.project-search-sources article>div>strong{font-size:9.8px}.project-search-sources article>div>span{display:inline-flex;margin-left:7px;color:#7a8799;font-size:8px}.project-search-sources article p{margin:4px 0 0;color:#657287;font-size:9px;line-height:1.45}
@media(max-width:1180px){.implementation-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.implementation-form .form-grid.five{grid-template-columns:repeat(3,minmax(0,1fr))}.activity-meta-grid,.budget-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.inline-create-popover{width:min(760px,calc(100vw - 80px))}.row-popover{max-width:calc(100vw - 80px)}}
@media(max-width:760px){.implementation-kpis{grid-template-columns:1fr 1fr}.implementation-head .page-actions{width:100%}.implementation-head .page-actions .btn{flex:1 1 140px}.implementation-form .form-grid.five,.activity-detail-grid,.activity-export-grid,.planned-realized-grid,.budget-summary-grid{grid-template-columns:1fr}.activity-card>header{flex-direction:column}.activity-dates{justify-items:start}.activity-meta-grid{grid-template-columns:1fr 1fr}.activity-ai-note-form,.project-search-ai-form{grid-template-columns:1fr}.task-row{grid-template-columns:4px minmax(0,1fr);align-items:start}.task-due,.task-row>.row-details{grid-column:2}.task-due{justify-items:start}.inline-create-popover{position:fixed;left:12px;right:12px;top:72px;width:auto;max-height:calc(100vh - 92px)}.row-popover{position:fixed;left:12px;right:12px;top:72px;width:auto;max-width:none;max-height:calc(100vh - 92px);overflow:auto}.compact-form{grid-template-columns:1fr}.project-search-ai-head,.live-compliance-panel>.section-head{flex-direction:column}.compliance-check{grid-template-columns:28px minmax(0,1fr)}.compliance-check>.status-badge{grid-column:2}.portal-copy-meta{align-items:flex-start;flex-direction:column}}

/* P041 — Final pre-submission audit */
.final-audit-card{margin:14px 0;padding:18px}.final-audit-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.final-audit-head h2{margin:3px 0 5px;font:600 16px/1.3 PoppinsLocal,Inter,Arial,sans-serif}.final-audit-head p{margin:0;max-width:840px;color:#6f7c90;font-size:11.2px;line-height:1.55}.final-audit-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}.final-audit-verdict{display:inline-flex;align-items:center;min-height:32px;padding:0 10px;border-radius:9px;font-size:9.5px;font-weight:850;letter-spacing:.035em}.final-audit-verdict.is-pass{background:#eaf8f1;color:#257153}.final-audit-verdict.is-warning{background:#fff7e6;color:#9a6812}.final-audit-verdict.is-blocked{background:#fff0f0;color:#a94141}.final-audit-verdict.is-empty{background:#f1f3f7;color:#68758a}.final-audit-empty{margin-top:14px;padding:12px 13px;border:1px dashed #dfe4eb;border-radius:10px;color:#6f7c90;font-size:11px;line-height:1.5}.final-audit-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.final-audit-check{padding:12px 13px;border:1px solid #e4e8ee;border-radius:10px;background:#fff}.final-audit-check>span{display:block;color:#69758a;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.final-audit-check>strong{display:block;margin-top:5px;font-size:11px}.final-audit-check>p{margin:5px 0 0;color:#5d697c;font-size:10.6px;line-height:1.5}.final-audit-check.is-pass{border-color:#d8eee3;background:#fbfefc}.final-audit-check.is-warn{border-color:#f0e4c9;background:#fffdf8}.final-audit-check.is-block{border-color:#f1d7d7;background:#fffafa}.final-audit-ai{margin-top:12px;padding:13px 14px;border:1px solid #e3defe;border-radius:11px;background:#faf9ff}.final-audit-ai>div{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.final-audit-ai strong{font-size:11.5px}.final-audit-ai small{color:#747f91;font-size:9.8px}.final-audit-ai ul{display:grid;gap:7px;margin:10px 0 0;padding:0;list-style:none}.final-audit-ai li{display:grid;grid-template-columns:130px minmax(0,1fr);gap:8px;padding-top:7px;border-top:1px solid #e9e5fb;color:#566276;font-size:10.6px;line-height:1.5}.final-audit-ai li>span{color:#6542dc;font-size:9px;font-weight:800;text-transform:uppercase}.final-audit-ai li>small{grid-column:2;color:#929bad;font-size:9px}.final-audit-meta{margin-top:9px;color:#8994a5;font-size:9.6px}@media(max-width:1100px){.final-audit-checks{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.final-audit-head{flex-direction:column}.final-audit-actions{width:100%;justify-content:flex-start}.final-audit-checks{grid-template-columns:1fr}.final-audit-ai li{grid-template-columns:1fr}.final-audit-ai li>small{grid-column:1}.final-audit-actions form,.final-audit-actions .btn{width:100%}}

/* P041 — evidence tagging + answer version history */
.evidence-tags-panel{margin-top:14px}.evidence-tag-list{display:grid;border-top:1px solid #edf1f5}.evidence-tag-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid #edf1f5}.evidence-tag-main{min-width:0}.evidence-tag-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.evidence-tag-title strong{font-size:12.5px;color:#29364a}.evidence-tag-main p{margin:5px 0 4px;color:#596679;font-size:11px;line-height:1.5}.evidence-tag-main small{color:#8490a2;font-size:10px}.evidence-tag-actions{display:flex;gap:6px;flex:0 0 auto}.evidence-tag-actions form{margin:0}.evidence-tag-add{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(260px,1.4fr) auto;gap:10px;align-items:end;padding-top:14px}.evidence-tag-add label{display:grid;gap:6px}.evidence-tag-add label>span{font-size:10.5px;font-weight:750;color:#4d5a6e}.evidence-tag-add input{height:38px}.answer-version-history{margin-top:9px;border:1px solid #e6e9ef;border-radius:10px;background:#fbfcfe}.answer-version-history>summary{padding:9px 11px;cursor:pointer;font-size:10.5px;font-weight:800;color:#536076;list-style:none}.answer-version-history>summary::-webkit-details-marker{display:none}.answer-version-list{display:grid;border-top:1px solid #e6e9ef}.answer-version-list>article{padding:10px 11px;border-bottom:1px solid #edf1f5}.answer-version-list>article:last-child{border-bottom:0}.answer-version-list>article header{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;margin-bottom:5px}.answer-version-list>article header strong{font-size:10.5px;color:#354257}.answer-version-list>article header span,.answer-version-list>article header time{font-size:9.5px;color:#8792a3}.answer-version-list>article p{margin:0;white-space:pre-wrap;color:#536076;font-size:10.5px;line-height:1.5}
@media(max-width:820px){.evidence-tag-row{flex-direction:column}.evidence-tag-add{grid-template-columns:1fr}.evidence-tag-add .btn{width:100%}}

/* P041R1 — Programme Update form UI polish */
.programme-update-form-card{
    width:min(1120px,100%);
    max-width:1120px;
    padding:0;
    overflow:hidden;
}
.programme-update-form-card>form{
    display:grid;
}
.programme-update-form-card .form-section{
    display:grid;
    gap:15px;
    padding:20px 22px 22px;
}
.programme-update-form-card .form-section+.form-section{
    padding-top:20px;
    border-top:1px solid #edf1f6;
}
.programme-update-form-card .form-section-title{
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 0 1px;
    color:#1e2a3e;
    font-size:13px;
    font-weight:700;
}
.programme-update-form-card .form-section-title::after{
    content:"";
    height:1px;
    flex:1;
    background:#edf1f6;
}
.programme-update-form-card .form-grid.two{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 18px;
}
.programme-update-form-card label:not(.revalidation-check){
    display:grid;
    gap:7px;
    min-width:0;
    color:#27334a;
}
.programme-update-form-card label:not(.revalidation-check)>span{
    display:block;
    font-size:11px;
    line-height:1.35;
    font-weight:700;
}
.programme-update-form-card input:not([type="checkbox"]),
.programme-update-form-card select,
.programme-update-form-card textarea{
    width:100%;
    min-width:0;
    border:1px solid #d9e1eb;
    border-radius:10px;
    background:#fff;
    color:#17203a;
    outline:none;
    font:500 12px/1.45 InterLocal,Inter,Arial,sans-serif;
    transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.programme-update-form-card input:not([type="checkbox"]),
.programme-update-form-card select{
    height:42px;
    padding:0 12px;
}
.programme-update-form-card textarea{
    min-height:104px;
    padding:11px 12px;
    resize:vertical;
    line-height:1.55;
}
.programme-update-form-card textarea[name="change_details"]{
    min-height:150px;
}
.programme-update-form-card input:not([type="checkbox"]):hover,
.programme-update-form-card select:hover,
.programme-update-form-card textarea:hover{
    border-color:#cbd5e2;
}
.programme-update-form-card input:not([type="checkbox"]):focus,
.programme-update-form-card select:focus,
.programme-update-form-card textarea:focus{
    border-color:var(--purple);
    box-shadow:0 0 0 3px rgba(123,97,255,.10);
}
.programme-update-form-card .revalidation-check{
    margin:1px 0 0;
    padding:12px 13px;
}
.programme-update-form-card .revalidation-check strong{
    font-size:11px;
}
.programme-update-form-card .revalidation-check small{
    margin-top:4px;
    font-size:10px;
    line-height:1.45;
}
.programme-update-form-card .form-actions{
    display:flex;
    justify-content:flex-end;
    gap:10px;
    padding:16px 22px 18px;
    border-top:1px solid #edf1f6;
    background:#fbfcfe;
}
.programme-update-form-card .form-actions .btn{
    height:42px;
    padding:0 17px;
}

@media(max-width:760px){
    .programme-update-form-card .form-section{
        padding:17px 15px 18px;
    }
    .programme-update-form-card .form-grid.two{
        grid-template-columns:1fr;
        gap:13px;
    }
    .programme-update-form-card .form-actions{
        padding:14px 15px 16px;
    }
    .programme-update-form-card .form-actions .btn{
        flex:1 1 0;
    }
}

/* P041R2 — generic standard-form polish for template/create admin forms */
.standard-form{
  max-width:none;
  padding:24px 28px 26px;
}
.standard-form .form-section{
  display:grid;
  gap:16px;
  padding:0 0 24px;
}
.standard-form .form-section + .form-section{
  padding-top:24px;
  border-top:1px solid #edf1f6;
}
.standard-form .form-section-title{
  display:flex;
  align-items:center;
  gap:12px;
  margin:0;
  font-size:13px;
  font-weight:700;
  color:#243044;
}
.standard-form .form-section-title::after{
  content:"";
  flex:1;
  height:1px;
  background:#edf1f6;
}
.standard-form .form-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:18px;
  row-gap:17px;
}
.standard-form .form-grid > label{
  display:grid;
  gap:7px;
  align-content:start;
  min-width:0;
  color:#1e293b;
  font-size:11px;
  font-weight:700;
}
.standard-form .form-grid > label > span{
  display:block;
  color:#334155;
  font-size:11px;
  font-weight:700;
  line-height:1.4;
}
.standard-form .form-grid > label > small,
.standard-form .form-help{
  margin:0;
  color:#7b8798;
  font-size:10px;
  line-height:1.5;
}
.standard-form input,
.standard-form select,
.standard-form textarea{
  width:100%;
  min-width:0;
  border:1px solid #d9e0ea;
  border-radius:10px;
  background:#fff;
  color:#111827;
  outline:none;
  font:500 12px InterLocal,Inter,Arial,sans-serif;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.standard-form input,
.standard-form select{
  height:43px;
  padding:0 12px;
}
.standard-form textarea{
  min-height:84px;
  padding:11px 12px;
  resize:vertical;
  line-height:1.55;
}
.standard-form input[type="date"],
.standard-form input[type="datetime-local"],
.standard-form input[type="number"],
.standard-form input[type="url"]{
  appearance:none;
}
.standard-form input:focus,
.standard-form select:focus,
.standard-form textarea:focus{
  border-color:var(--purple);
  box-shadow:0 0 0 4px rgba(123,97,255,.10);
}
.standard-form .span-full,
.standard-form .span-2{
  grid-column:1 / -1;
}
.standard-form .form-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding-top:4px;
  margin-top:4px;
  border-top:1px solid #edf1f6;
}
.standard-form .checkbox-line,
.standard-form .toggle-row{
  margin-top:2px;
}
@media(max-width:900px){
  .standard-form{
    padding:21px 20px 23px;
  }
  .standard-form .form-grid{
    grid-template-columns:1fr;
    gap:14px;
  }
  .standard-form .span-full,
  .standard-form .span-2{
    grid-column:auto;
  }
}
@media(max-width:700px){
  .standard-form{
    padding:19px 16px 21px;
  }
  .standard-form .form-section{
    padding-bottom:20px;
  }
  .standard-form .form-section + .form-section{
    padding-top:20px;
  }
  .standard-form .form-actions{
    flex-wrap:wrap;
  }
  .standard-form .form-actions .btn{
    flex:1 1 180px;
  }
}

/* P041R3 — organization settings form UI polish */
.organization-settings-form{
  max-width:none;
  padding:24px 28px 26px;
}
.organization-settings-form .form-section-label{
  display:flex;
  align-items:center;
  gap:12px;
  margin:2px 0 14px;
  font-size:12px;
  font-weight:800;
  color:#6b7280;
  text-transform:uppercase;
  letter-spacing:.12em;
}
.organization-settings-form .form-section-label::after{
  content:"";
  flex:1;
  height:1px;
  background:#edf1f5;
}
.organization-settings-form .form-section-label:not(:first-child){
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid #edf1f5;
}
.organization-settings-form .form-grid.two{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:22px;
  row-gap:16px;
}
.organization-settings-form .form-grid.two > label{
  display:grid;
  gap:7px;
  align-content:start;
  min-width:0;
  color:#1f2937;
  font-size:11px;
  font-weight:700;
}
.organization-settings-form .form-grid.two > label > small{
  margin:0;
  color:#7b8798;
  font-size:10px;
  font-weight:500;
  line-height:1.5;
}
.organization-settings-form .form-grid.two > label input,
.organization-settings-form .form-grid.two > label select,
.organization-settings-form .form-grid.two > label textarea{
  width:100%;
  min-width:0;
  border:1px solid #d9e0ea;
  border-radius:10px;
  background:#fff;
  color:#111827;
  outline:none;
  font:500 12px InterLocal,Inter,Arial,sans-serif;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.organization-settings-form .form-grid.two > label input,
.organization-settings-form .form-grid.two > label select{
  height:43px;
  padding:0 12px;
}
.organization-settings-form .form-grid.two > label textarea{
  min-height:92px;
  padding:11px 12px;
  resize:vertical;
  line-height:1.55;
}
.organization-settings-form .form-grid.two > label input:focus,
.organization-settings-form .form-grid.two > label select:focus,
.organization-settings-form .form-grid.two > label textarea:focus{
  border-color:var(--purple);
  box-shadow:0 0 0 4px rgba(123,97,255,.10);
}
.organization-settings-form .span-2{
  grid-column:1 / -1;
}
.organization-settings-form .switch-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:13px 14px;
  border:1px solid #e1e6ed;
  border-radius:12px;
  background:#fbfcfe;
}
.organization-settings-form .switch-card span{
  display:block;
  min-width:0;
}
.organization-settings-form .switch-card strong,
.organization-settings-form .switch-card small{
  display:block;
}
.organization-settings-form .switch-card strong{
  font-size:11px;
  color:#334155;
}
.organization-settings-form .switch-card small{
  margin-top:3px;
  color:#748096;
  font-size:10px;
  line-height:1.45;
  font-weight:500;
}
.organization-settings-form .switch-card input[type="checkbox"]{
  width:18px;
  height:18px;
  accent-color:var(--purple);
  flex:0 0 auto;
}
.organization-settings-form .form-actions{
  margin-top:24px;
  padding-top:16px;
  border-top:1px solid #edf1f5;
  display:flex;
  justify-content:flex-end;
  gap:10px;
}
.standard-texts-panel{
  margin-top:16px;
}
.standard-texts-panel .compact-form.standard-text-form label{
  display:grid;
  gap:7px;
  font-size:11px;
  font-weight:700;
  color:#1f2937;
}
.standard-texts-panel .compact-form.standard-text-form input,
.standard-texts-panel .compact-form.standard-text-form select,
.standard-texts-panel .compact-form.standard-text-form textarea{
  width:100%;
  border:1px solid #d9e0ea;
  border-radius:10px;
  background:#fff;
  color:#111827;
  outline:none;
  font:500 12px InterLocal,Inter,Arial,sans-serif;
}
.standard-texts-panel .compact-form.standard-text-form input,
.standard-texts-panel .compact-form.standard-text-form select{
  height:41px;
  padding:0 12px;
}
.standard-texts-panel .compact-form.standard-text-form textarea{
  min-height:140px;
  padding:11px 12px;
  line-height:1.55;
  resize:vertical;
}
.standard-texts-panel .compact-form.standard-text-form input:focus,
.standard-texts-panel .compact-form.standard-text-form select:focus,
.standard-texts-panel .compact-form.standard-text-form textarea:focus{
  border-color:var(--purple);
  box-shadow:0 0 0 4px rgba(123,97,255,.10);
}
@media(max-width:980px){
  .organization-settings-form{
    padding:21px 20px 23px;
  }
  .organization-settings-form .form-grid.two{
    grid-template-columns:1fr;
    gap:14px;
  }
  .organization-settings-form .span-2{
    grid-column:auto;
  }
}
@media(max-width:700px){
  .organization-settings-form{
    padding:19px 16px 21px;
  }
  .organization-settings-form .form-section-label:not(:first-child){
    margin-top:20px;
    padding-top:18px;
  }
  .organization-settings-form .form-actions{
    flex-wrap:wrap;
  }
  .organization-settings-form .form-actions .btn{
    flex:1 1 180px;
  }
  .organization-settings-form .switch-card{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* P041R4 — Pre-RC closure: UAT, immutable submission, amendments */
.uat-badge{display:inline-flex;align-items:center;min-height:25px;padding:0 9px;border-radius:999px;background:#fff1d6;color:#8b5b00;border:1px solid #f2d9a5;font-size:9px;font-weight:850;letter-spacing:.06em;white-space:nowrap}
.uat-project-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:14px;padding:14px 16px;border-color:#efd7a4;background:linear-gradient(90deg,#fffaf0,#fff)}.uat-project-banner strong{display:block;font-size:12px}.uat-project-banner p{margin:4px 0 0;color:#6f7c90;font-size:10.5px;line-height:1.5}.uat-switch{display:flex!important;align-items:center;justify-content:space-between;gap:18px;padding:12px 13px;border:1px solid #efd7a4;border-radius:11px;background:#fffaf0}.uat-switch>span strong,.uat-switch>span small{display:block}.uat-switch>span strong{font-size:11px;color:#76500a}.uat-switch>span small{margin-top:3px;color:#846d43;font-size:9.8px;font-weight:500;line-height:1.45}.uat-switch input[type=checkbox]{width:18px!important;height:18px!important;accent-color:var(--purple);flex:0 0 auto}.uat-banner{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #efd7a4;border-radius:10px;background:#fffaf0}.uat-banner strong{font-size:9.5px;color:#8b5b00}.uat-banner span{font-size:10px;color:#6f6045}.uat-purge-zone{border-color:#efb9b9;background:#fff8f8}.uat-purge-zone>div strong,.uat-purge-zone>div span{display:block}.uat-purge-zone>div span{margin-top:4px;max-width:760px;font-size:10.5px;line-height:1.5}.uat-purge-zone form{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap}.uat-purge-zone label{display:grid;gap:5px;min-width:280px}.uat-purge-zone input{height:38px}
.submission-record-panel{margin:14px 0;padding:16px;border-color:#d9eade;background:linear-gradient(180deg,#fbfefc,#fff)}.submission-record-panel .panel-head{align-items:flex-start}.submission-record-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}.submission-record-grid>div{padding:10px 11px;border:1px solid #e5ebe7;border-radius:9px;background:#fff}.submission-record-grid span{display:block;color:#7a8798;font-size:9px;font-weight:750;text-transform:uppercase;letter-spacing:.04em}.submission-record-grid strong,.submission-record-grid code{display:block;margin-top:4px;color:#334155;font-size:10.5px}.submission-record-grid code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.submission-record-grid .span-full{grid-column:1/-1}
.amendment-create{margin-bottom:14px;padding:14px}.amendment-create>summary{list-style:none}.amendment-create>summary::-webkit-details-marker{display:none}.amendment-create[open]>summary{margin-bottom:14px}.amendment-form{padding:16px 0 0;border-top:1px solid #edf1f5}.amendment-list-panel{padding:17px}.amendment-list{display:grid;gap:10px;margin-top:12px}.amendment-card{padding:14px;border:1px solid #e3e7ed;border-radius:11px;background:#fff}.amendment-card.is-approved{border-color:#d7e9df;background:#fbfefc}.amendment-card.is-archived{opacity:.72;background:#fafbfc}.amendment-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.amendment-card h3{margin:3px 0 0;font-size:12.5px}.amendment-card>p{margin:10px 0;color:#4f5d71;font-size:10.8px;line-height:1.58}.amendment-reason{display:grid;gap:4px;padding:9px 10px;border-radius:8px;background:#f8f9fb}.amendment-reason strong{font-size:9.5px;color:#657287}.amendment-reason span{font-size:10.2px;color:#536076;line-height:1.5}.amendment-card footer{display:flex;flex-wrap:wrap;gap:6px 12px;margin-top:10px;padding-top:9px;border-top:1px solid #edf1f5;color:#7b8798;font-size:9.4px}.amendment-card footer a{color:#6542dc;text-decoration:none}.amendment-card .row-actions{margin-top:10px}.ai-usage-by-user{margin-bottom:18px}
@media(max-width:760px){.uat-project-banner{align-items:flex-start;flex-direction:column}.uat-switch{align-items:flex-start;flex-direction:column}.uat-purge-zone form{width:100%}.uat-purge-zone label{min-width:0;width:100%}.submission-record-grid{grid-template-columns:1fr}.submission-record-grid .span-full{grid-column:auto}.amendment-card>header{flex-direction:column}}

/* P041R4 — isolated UAT AI cost audit */
.uat-ai-usage-note{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:14px 16px;border-color:#efd7a4;background:linear-gradient(90deg,#fffaf0,#fff)}
.uat-ai-usage-note>div:first-child{min-width:0}.uat-ai-usage-note>div:first-child strong{display:block;margin-top:7px;font-size:12px}.uat-ai-usage-note>div:first-child p{margin:4px 0 0;max-width:760px;color:#6f7c90;font-size:10px;line-height:1.5}
.uat-ai-usage-metrics{display:flex;align-items:center;gap:8px;flex:0 0 auto}.uat-ai-usage-metrics>span{min-width:92px;padding:9px 10px;border:1px solid #eadfbf;border-radius:9px;background:#fff}.uat-ai-usage-metrics small,.uat-ai-usage-metrics strong{display:block}.uat-ai-usage-metrics small{color:#8a7650;font-size:8.5px;font-weight:750;text-transform:uppercase}.uat-ai-usage-metrics strong{margin-top:3px;color:#57472c;font-size:11px}
@media(max-width:760px){.uat-ai-usage-note{align-items:flex-start;flex-direction:column}.uat-ai-usage-metrics{width:100%;flex-wrap:wrap}.uat-ai-usage-metrics>span{flex:1 1 110px}}


/* P042 — Users invite form RC polish */
.access-invite-form{
  max-width:none;
  padding:24px 28px 26px;
}
.access-invite-form .form-section-label{
  display:flex;align-items:center;gap:12px;margin:2px 0 14px;color:#243044;font-size:12px;font-weight:800;
}
.access-invite-form .form-section-label:not(:first-child){
  margin-top:24px;padding-top:22px;border-top:1px solid #edf1f6;
}
.access-invite-form > .form-grid.two{
  grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 18px;margin-bottom:17px;
}
.access-invite-form label{
  display:grid;gap:7px;align-content:start;min-width:0;color:#1e293b;font-size:11px;font-weight:700;
}
.access-invite-form label>span{
  display:block;color:#334155;font-size:11px;font-weight:700;line-height:1.4;
}
.access-invite-form label>small{
  margin:0;color:#7b8798;font-size:10px;font-weight:500;line-height:1.5;
}
.access-invite-form input,.access-invite-form select{
  width:100%;min-width:0;border:1px solid #d9e0ea;border-radius:10px;background:#fff;color:#111827;outline:none;font:500 12px InterLocal,Inter,Arial,sans-serif;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.access-invite-form input,.access-invite-form select{
  height:43px;padding:0 12px;
}
.access-invite-form input:hover,.access-invite-form select:hover{
  border-color:#cbd4e0;
}
.access-invite-form input:focus,.access-invite-form select:focus{
  border-color:var(--purple);box-shadow:0 0 0 4px rgba(123,97,255,.10);
}
.access-invite-form .project-access-invite{
  margin-top:17px;padding:17px;border:1px solid #e6eaf0;border-radius:12px;background:#fbfcfe;
}
.access-invite-form .project-access-invite .form-grid.two{
  grid-template-columns:repeat(3,minmax(0,1fr));gap:17px 18px;
}
.access-invite-form .form-help-callout{
  margin:14px 0 0;padding:10px 12px;border:1px solid #e5defe;border-radius:9px;background:#faf8ff;color:#675d7d;font-size:10px;line-height:1.5;
}
.access-invite-form .external-partner-field{
  min-width:0;
}
.access-invite-form .form-actions{
  display:flex;justify-content:flex-end;gap:10px;margin-top:22px;padding-top:18px;border-top:1px solid #edf1f6;
}
.access-invite-form .form-actions .btn{
  height:42px;padding:0 17px;
}
@media(max-width:760px){
  .access-invite-form > .form-grid.two,.access-invite-form .project-access-invite .form-grid.two{
    grid-template-columns:1fr;gap:14px;
  }
  .access-invite-form .form-actions{
    flex-wrap:wrap;
  }
}


/* P042R1 — AI Usage production polish */
.ai-usage-page-head{align-items:flex-end}
.ai-usage-month{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap;padding:8px;border:1px solid #e5e9f1;border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(30,38,62,.05)}
.ai-usage-month label{display:grid;gap:5px;min-width:190px;font-size:10px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.ai-usage-month select{width:100%;height:38px;padding:0 36px 0 12px;border:1px solid #dce2ec;border-radius:10px;background:#f9fbfd;color:var(--text);font:inherit;font-size:12px;font-weight:650;outline:none}
.ai-usage-month select:hover{border-color:#cdd5e2;background:#fff}
.ai-usage-month select:focus{border-color:#7657ee;box-shadow:0 0 0 3px rgba(118,87,238,.11);background:#fff}
.ai-usage-month .btn{height:38px;min-width:86px}
.ai-usage-empty-overview{display:flex;align-items:center;gap:14px;margin-bottom:18px;padding:18px 20px;border-style:dashed;background:linear-gradient(135deg,#fbfbff,#f7f9fc)}
.ai-usage-empty-icon{display:grid;place-items:center;width:38px;height:38px;flex:0 0 38px;border-radius:12px;background:#f0ecff;color:#6f4fe8;font-size:18px;font-weight:800}
.ai-usage-empty-overview h3{margin:0 0 4px;font-size:13px}
.ai-usage-empty-overview p{margin:0;max-width:900px;color:var(--muted);font-size:10.5px;line-height:1.55}
.ai-usage-summary-grid{margin-top:2px}
.ai-cost-controls{margin-top:18px}
@media(max-width:760px){.ai-usage-page-head{align-items:stretch}.ai-usage-month{width:100%}.ai-usage-month label{min-width:0;flex:1 1 180px}.ai-usage-month .btn{flex:0 0 auto}.ai-usage-empty-overview{align-items:flex-start}}
