:root{
  --lime:#B8F23A;
  --lime-2:#95E52F;
  --green:#53D76A;
  --green-2:#2CCF83;
  --teal:#19BFA4;
  --teal-2:#15AFA5;
  --orange:#FF9B52;
  --orange-soft:#FFF2E8;
  --red:#E85656;
  --red-soft:#FFF0F0;
  --amber:#F4A62A;
  --amber-soft:#FFF6E3;
  --ink:#21312D;
  --ink-2:#344942;
  --muted:#74847E;
  --line:#E5ECE8;
  --line-strong:#D7E3DD;
  --bg:#F8FBF9;
  --surface:#FFFFFF;
  --soft:#F3F8F5;
  --green-soft:#F0FCE8;
  --teal-soft:#EAFBF7;
  --blue:#29BFAE;
  --blue-soft:#EAFBF7;
  --navy:#24423A;
  --navy2:#2D5147;
  --grey:#88958F;
  --grey-soft:#F0F4F2;
  --shadow:0 12px 34px rgba(42,84,67,.075);
  --shadow-lg:0 24px 70px rgba(39,86,65,.11);
  --radius:20px;
}
*{box-sizing:border-box}
html{background:var(--bg)}
body{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;margin:0;background:
  radial-gradient(circle at 87% 7%,rgba(184,242,58,.10),transparent 22rem),
  radial-gradient(circle at 65% 30%,rgba(25,191,164,.045),transparent 28rem),
  var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased}
a{color:inherit}
.app-shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}
.sidebar{background:rgba(255,255,255,.96);border-right:1px solid var(--line);color:var(--ink);padding:22px 15px;position:sticky;top:0;height:100vh;overflow:auto;box-shadow:10px 0 35px rgba(53,92,77,.025);z-index:20}
.brand{display:flex;align-items:center;gap:12px;margin-bottom:30px;padding:2px 8px 14px;border-bottom:1px solid #EDF2EF}
.brand-mark{width:46px;height:46px;border-radius:15px;background:#fff;display:grid;place-items:center;box-shadow:0 8px 25px rgba(97,196,81,.16);overflow:hidden;flex:0 0 auto}
.brand-mark img{width:100%;height:100%;object-fit:cover}
.brand strong{font-size:19px;letter-spacing:-.03em;color:#263832}.brand small{display:block;color:#91A09A;font-size:10.5px;margin-top:2px;line-height:1.25;max-width:160px}
.nav-section{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#A1ADA8;margin:22px 10px 8px;font-weight:800}
.nav-link{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:13px;text-decoration:none;color:#63756E;font-weight:690;font-size:14px;margin:3px 0;transition:.16s ease;position:relative}
.nav-link:hover{background:#F3FAF1;color:#315545;transform:translateX(1px)}
.nav-link.active{background:linear-gradient(100deg,#F1FCDD 0%,#EDFBF5 100%);color:#2D6A4F;box-shadow:inset 0 0 0 1px rgba(142,218,71,.20)}
.nav-link.active:before{content:"";width:4px;height:22px;border-radius:999px;background:linear-gradient(180deg,var(--lime),var(--green-2));position:absolute;left:2px}
.nav-link svg{width:18px;height:18px;fill:currentColor;opacity:.95}
.main{min-width:0}
.topbar{height:70px;background:rgba(255,255,255,.82);backdrop-filter:blur(16px);border-bottom:1px solid rgba(229,236,232,.88);display:flex;align-items:center;justify-content:flex-end;padding:0 28px;position:sticky;top:0;z-index:10}
.top-actions{display:flex;gap:9px;align-items:center}.lang-switch{display:flex;background:#F4F8F6;padding:3px;border-radius:11px}.lang-switch a{display:inline-flex;padding:6px 9px;border-radius:8px;text-decoration:none;font-weight:800;font-size:11px;color:#71827B}.lang-switch a:hover{background:#fff;color:#3D6656;box-shadow:0 2px 8px rgba(51,92,76,.07)}
.role-chip{background:linear-gradient(110deg,#F1FCDD,#EAFBF7);color:#3B735C;padding:7px 10px;border-radius:999px;font-size:10.5px;font-weight:850;letter-spacing:.045em;border:1px solid #DFF0D5}
.container{max-width:1360px;margin:0 auto;padding:30px}
.card{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 8px 30px rgba(38,77,61,.05);padding:21px;margin:14px 0}
.hero-card{background:linear-gradient(135deg,#FFFFFF 0%,#FBFFF7 44%,#F2FDE7 100%);border:1px solid #E0EFD8;position:relative;overflow:hidden}
.hero-card:after{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-70px;top:-90px;background:radial-gradient(circle,rgba(184,242,58,.25),rgba(184,242,58,0));pointer-events:none}
.grid{display:grid;gap:14px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.kpi{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;position:relative;overflow:hidden;box-shadow:0 6px 24px rgba(48,91,72,.035)}
.kpi:before{content:"";position:absolute;left:0;top:0;width:5px;height:100%;background:linear-gradient(180deg,var(--lime),var(--green))}.kpi:nth-child(4n+2):before{background:linear-gradient(180deg,var(--teal),#65E4CC)}.kpi:nth-child(4n+3):before{background:linear-gradient(180deg,var(--orange),#FFD166)}.kpi:nth-child(4n):before{background:linear-gradient(180deg,#9BE15D,#34D399)}
.kpi:after{content:"";position:absolute;width:75px;height:75px;border-radius:50%;right:-28px;top:-29px;background:rgba(184,242,58,.10)}.kpi:nth-child(4n+2):after{background:rgba(25,191,164,.08)}.kpi:nth-child(4n+3):after{background:rgba(255,155,82,.08)}
.kpi strong{font-size:30px;display:block;margin-top:5px;color:#29473B;letter-spacing:-.04em}.kpi span{color:var(--muted);font-size:12.5px;font-weight:650}
.manage-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.manage-card{display:block;border:1px solid var(--line);border-radius:18px;padding:18px;text-decoration:none;color:inherit;background:#fff;transition:.18s ease;position:relative;overflow:hidden}.manage-card:hover{transform:translateY(-3px);border-color:#D2E9C7;box-shadow:var(--shadow)}
.manage-icon{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,#F1FCDD,#EAFBF7);color:#39A968;display:grid;place-items:center;margin-bottom:12px}.manage-card:nth-child(4n+2) .manage-icon{background:#EAFBF7;color:#18AA96}.manage-card:nth-child(4n+3) .manage-icon{background:var(--orange-soft);color:#E9873D}.manage-card:nth-child(4n) .manage-icon{background:#F4FADD;color:#78AF28}.manage-icon svg{width:21px;height:21px;fill:currentColor}
.btn,.icon-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:12px;cursor:pointer;text-decoration:none;font-weight:780;transition:.15s ease;font-family:inherit}.btn{padding:10px 15px;background:#31564A;color:#fff;box-shadow:0 6px 14px rgba(42,88,70,.10)}.btn:hover{transform:translateY(-1px);filter:none;box-shadow:0 9px 18px rgba(42,88,70,.14)}.btn.secondary{background:#F1F5F3;color:#42594F;box-shadow:none}.btn.save,.btn.primary{background:linear-gradient(115deg,#A9EB37 0%,#52D56B 55%,#26C98A 100%);color:#173D2F;box-shadow:0 8px 20px rgba(85,199,95,.20)}.btn.success{background:linear-gradient(115deg,#51D76B,#20C68E);color:#173D2F}.btn.warning{background:var(--orange);color:#54311A}.btn.danger{background:var(--red)}.btn.archive{background:var(--grey)}
.icon-btn{width:39px;height:39px;padding:0;background:#F0F5F2;color:var(--ink);font-size:17px}.icon-btn.view{background:#EAFBF7;color:#168D80}.icon-btn.archive{background:#F1F4F2;color:#64736D}.icon-btn.delete{background:var(--red-soft);color:#C83D3D}.icon-btn.add{background:linear-gradient(135deg,var(--lime),var(--green));color:#264632;font-size:22px}.icon-btn.edit{background:var(--orange-soft);color:#CC7837}
.toolbar,.page-head{display:flex;justify-content:space-between;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:18px}.toolbar-actions{display:flex;gap:8px;align-items:center}.page-title{margin:0;font-size:30px;letter-spacing:-.035em;color:#263A33}.page-kicker{font-size:11px;color:#3FAE72;font-weight:850;text-transform:uppercase;letter-spacing:.105em;margin-bottom:3px}.muted{color:var(--muted);font-size:13px}.pill{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border-radius:999px;font-size:10.5px;border:1px solid var(--line);font-weight:850}.pill.archived,.pill.draft,.pill.normal{background:#F1F4F2;color:#607069}.pill.published,.pill.complete,.pill.answered{background:#EFFCE7;color:#3C8A45;border-color:#D5F0CA}.pill.locked,.pill.recommended,.pill.in_progress{background:var(--orange-soft);color:#B9682C;border-color:#F5D8C1}.pill.required,.pill.unanswered{background:var(--red-soft);color:#BE4141;border-color:#F3CECE}.pill.blue{background:#EAFBF7;color:#198C80;border-color:#CDEFE7}.status-dot{width:9px;height:9px;border-radius:50%;display:inline-block;background:#A5B0AB}.status-dot.green{background:var(--green)}.status-dot.red{background:var(--red)}.status-dot.orange{background:var(--orange)}.status-dot.grey{background:#A0ACA6}
.alert{padding:13px 15px;border:1px solid #F2D4BE;background:#FFF6EF;color:#8C552E;border-radius:14px;margin:10px 0}
input,select,textarea{width:100%;padding:12px 13px;border-radius:12px;border:1px solid #CFDDD6;background:#fff;font:inherit;color:var(--ink);transition:.15s ease}input:hover,select:hover,textarea:hover{border-color:#B9CDC3}input:focus,select:focus,textarea:focus{outline:4px solid rgba(97,220,103,.11);border-color:#77D986;box-shadow:0 0 0 1px rgba(69,191,96,.05)}input[readonly],textarea[readonly],select:disabled{background:#F7F9F8;color:#53645C}textarea{min-height:110px;line-height:1.5;resize:vertical}label{font-weight:760;font-size:13px;display:block;margin-bottom:6px;color:#3B5148}.field{margin-bottom:14px}
.table-tools{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.table-tools input{max-width:460px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:17px;background:#fff}table.manage-table{width:100%;border-collapse:collapse;background:#fff}table.manage-table th,table.manage-table td{padding:13px 12px;border-top:1px solid #EDF1EF;vertical-align:middle;text-align:left}table.manage-table th{border-top:0;background:#F8FAF9;white-space:nowrap;cursor:pointer;user-select:none;font-size:11px;color:#687A72;text-transform:uppercase;letter-spacing:.055em}table.manage-table tbody tr:hover{background:#FBFDFB}table.manage-table th[data-sort]:after{content:' ↕';color:#A8B4AF;font-size:10px}.actions{display:flex;gap:6px;white-space:nowrap}.detail-value{padding:11px 12px;border:1px solid var(--line);border-radius:11px;background:#F8FAF9;min-height:42px;white-space:pre-wrap}.choice-list{display:grid;gap:8px}.choice-item{display:grid;grid-template-columns:auto 130px 1fr;gap:10px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:#fff}.choice-item input[type=checkbox]{width:auto}
.report-list{display:grid;gap:12px}.report-row{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(130px,.7fr) minmax(110px,.5fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:17px;padding:16px;text-decoration:none;background:#fff;transition:.17s ease}.report-row:hover{border-color:#CEE7C3;box-shadow:0 10px 26px rgba(46,91,70,.055);transform:translateY(-2px)}.chapter-list{display:grid;gap:10px}.chapter-row{display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:14px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:15px 17px;text-decoration:none;background:#fff;transition:.15s ease}.chapter-code{font-weight:850;color:#3D705A}.chapter-row:hover{border-color:#CDE6C2;background:#FCFFFA}.question-list{display:grid;gap:8px}.question-row{display:grid;grid-template-columns:120px minmax(0,1fr) auto auto;gap:12px;align-items:center;border:1px solid var(--line);border-radius:15px;padding:13px 15px;text-decoration:none;background:#fff;transition:.15s ease}.question-row:hover{border-color:#CEE7C3;background:#FCFFFB}.q-text{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.question-card{max-width:980px;margin:22px auto;background:#fff;border:1px solid #DDE9E2;border-radius:26px;box-shadow:var(--shadow-lg);padding:30px;position:relative;overflow:hidden}.question-card:before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:linear-gradient(90deg,var(--lime),var(--green),var(--teal))}.question-card h2{font-size:25px;line-height:1.37;margin:9px 0 19px;letter-spacing:-.018em}.question-code{color:#34A76C;font-weight:880;letter-spacing:.045em}.question-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:22px}.question-nav .right{justify-self:end}.progress-track{height:9px;border-radius:999px;background:#EBF1ED;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(90deg,var(--lime),var(--green),var(--teal));border-radius:999px}.tabs{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 18px;padding:4px;background:#F2F6F4;border-radius:14px;width:max-content;max-width:100%}.tab{padding:8px 12px;border-radius:10px;background:transparent;text-decoration:none;font-weight:750;font-size:13px;color:#64766E}.tab:hover{background:#fff}.tab.active{background:#fff;color:#327354;box-shadow:0 4px 13px rgba(46,90,70,.07)}.metric-line{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:7px}.empty{padding:30px;text-align:center;color:var(--muted)}
/* Veridia login */
.login-shell{max-width:1050px;margin:4vh auto;display:grid;grid-template-columns:1.05fr .95fr;background:#fff;border:1px solid var(--line);border-radius:30px;overflow:hidden;box-shadow:var(--shadow-lg);min-height:610px}.login-brand-panel{position:relative;padding:54px;background:linear-gradient(145deg,#FBFFF8 0%,#F2FDE6 52%,#E9FBF5 100%);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.login-brand-panel:before,.login-brand-panel:after{content:"";position:absolute;border-radius:50%;filter:blur(1px)}.login-brand-panel:before{width:310px;height:310px;right:-100px;top:-80px;background:radial-gradient(circle,rgba(184,242,58,.38),rgba(184,242,58,0) 70%)}.login-brand-panel:after{width:260px;height:260px;left:-110px;bottom:-110px;background:radial-gradient(circle,rgba(25,191,164,.22),rgba(25,191,164,0) 70%)}.login-logo{width:104px;height:104px;border-radius:28px;box-shadow:0 20px 45px rgba(72,177,80,.17);position:relative;z-index:1}.login-brand-name{font-size:48px;line-height:1;letter-spacing:-.055em;margin:26px 0 10px;color:#263D34;position:relative;z-index:1}.login-tagline{font-size:17px;color:#688078;max-width:390px;line-height:1.5;position:relative;z-index:1}.login-dots{display:flex;gap:8px;position:relative;z-index:1}.login-dots i{display:block;width:34px;height:8px;border-radius:999px;background:var(--lime)}.login-dots i:nth-child(2){background:var(--green)}.login-dots i:nth-child(3){background:var(--teal)}.login-dots i:nth-child(4){background:var(--orange)}.login-form-panel{padding:58px 54px;display:flex;align-items:center}.login-form-wrap{width:100%;max-width:390px;margin:auto}.login-form-wrap h1{font-size:30px;letter-spacing:-.035em;margin:0 0 8px}.login-form-wrap .lead{color:var(--muted);margin-bottom:28px}.login-form-wrap .btn{width:100%;padding:13px 16px;margin-top:4px}
@media(max-width:980px){.app-shell{grid-template-columns:88px 1fr}.brand-copy,.nav-link span,.nav-section{display:none}.brand{justify-content:center;padding-left:0;padding-right:0}.sidebar{padding:18px 10px}.nav-link{justify-content:center}.nav-link.active:before{left:3px}.manage-grid,.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}.login-shell{grid-template-columns:1fr;max-width:650px}.login-brand-panel{min-height:290px;padding:38px}.login-form-panel{padding:40px}.login-logo{width:82px;height:82px}.login-brand-name{font-size:40px}}
@media(max-width:700px){.app-shell{display:block}.sidebar{position:static;height:auto;display:flex;gap:8px;overflow:auto;padding:10px;background:#fff}.brand{margin:0 8px 0 0;border:0;padding:0}.brand-mark{width:42px;height:42px}.brand-copy,.nav-section{display:none}.nav-link{min-width:44px}.nav-link.active:before{display:none}.topbar{height:58px;padding:0 14px}.container{padding:18px 12px}.grid-2,.grid-3,.grid-4,.manage-grid{grid-template-columns:1fr}.report-row{grid-template-columns:1fr}.chapter-row{grid-template-columns:92px 1fr}.chapter-row>:last-child{grid-column:1/-1}.question-row{grid-template-columns:86px minmax(0,1fr) auto}.question-row>:last-child{grid-column:3}.question-nav{grid-template-columns:1fr 1fr}.question-nav .center{grid-column:1/-1;grid-row:1;text-align:center}.question-nav .right{justify-self:end}.login-shell{margin:0;border-radius:22px;min-height:0}.login-brand-panel{padding:28px;min-height:240px}.login-form-panel{padding:30px 24px}.login-brand-name{font-size:34px}.login-tagline{font-size:15px}.login-logo{width:68px;height:68px;border-radius:20px}}


/* V21.3 — role separation & delegated-company workspace */
.section-title{display:flex;align-items:center;gap:12px;margin:30px 0 14px}.section-title h2{margin:1px 0 0;font-size:22px}.section-title .page-kicker{margin:0}.section-dot{width:12px;height:12px;border-radius:50%;background:linear-gradient(135deg,var(--lime,#b8f23a),var(--teal,#19bfa4));box-shadow:0 0 0 6px rgba(184,242,58,.12)}.section-title.management .section-dot{background:linear-gradient(135deg,#19bfa4,#58d9c7)}
.kpi small{display:block;margin-top:8px;color:var(--muted);font-size:12px;line-height:1.35}.kpi.accent-lime{background:linear-gradient(150deg,#fff 38%,rgba(210,255,112,.22))}.kpi.accent-teal{background:linear-gradient(150deg,#fff 38%,rgba(77,224,192,.14))}.kpi.accent-orange{background:linear-gradient(150deg,#fff 38%,rgba(255,179,108,.15))}
.feature-callout{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:18px;background:linear-gradient(135deg,rgba(202,255,83,.13),rgba(62,219,187,.09));border:1px solid rgba(83,215,106,.18)}.feature-callout p{margin:5px 0 0;color:var(--muted);line-height:1.5}.feature-icon{width:40px;height:40px;min-width:40px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#caff53,#4bdc83);font-weight:900;color:#18342b;box-shadow:0 8px 22px rgba(83,215,106,.18)}
.advisor-company-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.company-card{display:block;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:22px;padding:18px;background:linear-gradient(160deg,#fff,#fbfffb);transition:.2s ease;box-shadow:0 8px 30px rgba(31,69,55,.04)}.company-card:hover{transform:translateY(-2px);border-color:rgba(83,215,106,.45);box-shadow:0 14px 34px rgba(31,69,55,.09)}.company-card-head{display:flex;align-items:center;gap:12px}.company-card-head img{width:64px;height:44px;object-fit:contain}.company-card-head b{display:block;font-size:16px}.company-card-head span{display:block;color:var(--muted);font-size:12px;margin-top:3px}.company-avatar{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:linear-gradient(135deg,#d5ff74,#4cdca1);font-weight:900;color:#234137}.company-metrics{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.company-metrics>div{padding:11px 12px;border-radius:14px;background:var(--surface-soft,#f7fbf8)}.company-metrics strong{display:block;font-size:21px}.company-metrics span{font-size:11px;color:var(--muted)}.company-card-link{font-weight:800;color:#188d70;font-size:13px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.detail-grid>div{padding:12px;border-radius:14px;background:var(--surface-soft,#f7fbf8)}.detail-grid span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.04em}.detail-grid b{display:block;margin-top:5px;overflow-wrap:anywhere}
.alert.success{background:rgba(83,215,106,.12);border-color:rgba(83,215,106,.3);color:#1c684b}
@media(max-width:1000px){.advisor-company-grid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.advisor-company-grid,.detail-grid{grid-template-columns:1fr}.section-title{margin-top:22px}}

/* V21.3.1 — login layout hotfix */
.app-shell.is-guest{grid-template-columns:1fr;min-height:100vh}
.guest-main{width:100%;min-width:0}
.guest-topbar{height:64px;padding:0 clamp(18px,4vw,56px);background:rgba(255,255,255,.88)}
.guest-page .container{max-width:none;padding:clamp(20px,3vw,42px)}
.guest-page .login-shell{width:min(1180px,100%);max-width:1180px;margin:clamp(12px,2vh,28px) auto 36px;grid-template-columns:minmax(0,1.08fr) minmax(420px,.92fr);min-height:640px}
.guest-page .login-brand-panel{padding:clamp(42px,5vw,68px)}
.guest-page .login-form-panel{padding:clamp(42px,5vw,68px);background:#fff}
.guest-page .login-form-wrap{max-width:430px}
.guest-page .login-form-wrap form{width:100%}
.guest-page .login-form-wrap input,.guest-page .login-form-wrap select{min-height:48px}
.guest-page .login-form-wrap .btn{min-height:48px}
@media(max-width:900px){
  .guest-page .login-shell{grid-template-columns:1fr;max-width:680px;min-height:0}
  .guest-page .login-brand-panel{min-height:300px}
  .guest-page .login-form-panel{padding:38px}
}
@media(max-width:560px){
  .guest-topbar{height:58px;padding:0 14px}
  .guest-page .container{padding:14px}
  .guest-page .login-shell{margin:8px auto 20px;border-radius:22px}
  .guest-page .login-brand-panel{padding:26px;min-height:235px}
  .guest-page .login-form-panel{padding:28px 22px 30px}
  .guest-page .login-form-wrap{max-width:none}
}

/* V21.4 — answer workspace, materiality and evidence */
.question-workspace{max-width:1180px;margin-inline:auto}.answer-field{margin:22px 0}.answer-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.answer-label-row label{margin:0;font-weight:800}.wide-answer{width:100%!important;max-width:none!important;box-sizing:border-box}.answer-field textarea.wide-answer{min-height:124px;resize:vertical}.answer-field textarea.materiality-explanation{min-height:150px}.field-help,.materiality-help{padding:9px 12px;margin:7px 0 10px;border-radius:12px;background:#f0fff4;color:#48665b;font-size:.9rem;line-height:1.4}.field-meta{margin-top:6px}.materiality-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0}.materiality-panel{border:1px solid #dcebe3;border-radius:22px;padding:20px;background:linear-gradient(145deg,#fbfffc,#f4fff7);box-shadow:0 10px 28px rgba(28,94,65,.07)}.materiality-title{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2eee7;padding-bottom:12px;margin-bottom:14px}.materiality-title>div{display:flex;align-items:center;gap:9px}.materiality-title h3{margin:0}.materiality-dot{width:11px;height:11px;border-radius:50%;background:linear-gradient(135deg,#d7ff22,#18c797);box-shadow:0 0 0 4px #eaffdf}.score-range{font-weight:800;color:#55a72a;background:#efffdc;border-radius:999px;padding:5px 10px}.materiality-score{margin-top:18px}.score-control{display:flex;align-items:center;gap:10px}.score-control .number-answer{width:110px;font-size:1.15rem;font-weight:800}.evidence-zone{margin-top:12px;padding:12px 14px;border:1px dashed #c9ded2;border-radius:14px;background:#fcfffd}.evidence-head{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.attachment-list{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.attachment-chip{display:inline-flex;align-items:center;gap:8px;padding:7px 9px;border-radius:10px;background:#fff;border:1px solid #dbe8e1}.attachment-chip a{font-weight:700;color:#176d56;text-decoration:none}.attachment-chip span{font-size:.78rem;color:#74877e}.attachment-delete{border:0;background:#fff0ef;color:#b54135;border-radius:50%;width:24px;height:24px;cursor:pointer;font-size:18px;line-height:20px}.upload-box{display:inline-flex!important;width:auto!important;align-items:center;gap:8px;color:#177b5d;font-weight:800;cursor:pointer;margin:8px 0 0!important}.upload-box input{max-width:320px;font-weight:500}.question-help{box-shadow:none;background:#f7fffa;margin:12px 0}.question-help summary{cursor:pointer;font-weight:800}.subquestion-card{box-shadow:none;background:#fbfefc;margin-top:18px}@media(max-width:850px){.materiality-grid{grid-template-columns:1fr}.evidence-head{align-items:flex-start;flex-direction:column}.upload-box{display:block!important}.upload-box input{display:block;margin-top:7px;max-width:100%}}

/* V21.5 — audit workflow refinements */
.materiality-guidance{padding:12px 14px;margin:-2px 0 16px;border-radius:14px;background:linear-gradient(135deg,#f4ffe9,#eefcf8);border:1px solid #dcefd5;color:#3f5f53;line-height:1.45}.materiality-guidance b{display:block;color:#2f6c52;margin-bottom:4px}.materiality-evidence{margin-top:18px;background:#fbfffc}.finding-card{padding:14px 15px;border:1px solid #e1ebe5;border-radius:16px;background:#fff;margin:12px 0;box-shadow:0 6px 20px rgba(31,69,55,.035)}.finding-card .muted{margin-top:5px}.audit-finding-create{border-color:#f0d6bc;background:linear-gradient(145deg,#fff,#fffaf4)}.chapter-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 12px;margin-top:12px}.chapter-check{font-weight:600;font-size:12px;padding:8px 10px;border-radius:10px;background:#f7faf8;border:1px solid #e6ece8}.chapter-check input{width:auto;margin-right:6px}.timeline{margin-top:10px;border-left:2px solid #dfeae4;padding-left:14px}.timeline-item{padding:8px 0;font-size:12px;color:#51655d}.timeline-item b{color:#2e5b49}.pill.correction_submitted{background:#eafbf7;color:#198c80;border-color:#cdefe7}@media(max-width:760px){.chapter-check-grid{grid-template-columns:1fr}}
.notification-link{position:relative;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:12px;background:#f4f8f6;text-decoration:none}.notification-link span{position:absolute;right:-4px;top:-5px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--orange);color:#fff;font-size:10px;font-weight:900;display:grid;place-items:center}.notification-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 12px;border-bottom:1px solid var(--line)}.notification-row:last-child{border-bottom:0}.notification-row.unread{background:#f5fff0;border-radius:12px}.notification-row form{display:inline-block;margin-left:6px}
/* V21.6 multilingual UI selector */
.lang-switch select{width:auto;min-width:72px;border:0;background:transparent;padding:6px 28px 6px 9px;border-radius:8px;font-size:11px;font-weight:800;color:#587066;cursor:pointer;outline:none;box-shadow:none}
.lang-switch select:hover,.lang-switch select:focus{background:#fff;color:#2f6b51;box-shadow:0 2px 8px rgba(51,92,76,.07)}

/* V21.7 — publication documents, detailed login brand and flag selectors */
.login-detailed-brand{position:relative;z-index:1;width:100%;max-width:600px;overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 20px 58px rgba(52,104,80,.09);border:1px solid rgba(215,227,221,.75)}
.login-detailed-brand img{width:100%;height:auto;display:block}
.lang-switch select{min-width:132px;font-size:12px}.report-language-cell{font-size:22px;text-align:center;min-width:42px}.report-language-hint{margin-top:7px;color:var(--muted);font-size:11px}.report-row{grid-template-columns:minmax(260px,1.5fr) 54px minmax(180px,.8fr) minmax(120px,.45fr) 24px}
@media(max-width:900px){.login-detailed-brand{max-width:500px}.report-row{grid-template-columns:1fr 48px}.report-row>:nth-child(3),.report-row>:nth-child(4),.report-row>:nth-child(5){grid-column:1/-1}}
@media(max-width:560px){.login-detailed-brand{max-width:100%}.lang-switch select{min-width:105px;max-width:135px}}


/* V21.7.1 — login logo correction, custom language menus and inline report flags */
.login-detailed-brand{max-width:430px;border-radius:0;background:transparent;box-shadow:none;border:0;display:flex;align-items:center;justify-content:flex-start}
.login-detailed-brand img{width:min(100%,360px);height:auto;display:block;filter:drop-shadow(0 18px 34px rgba(52,104,80,.16))}
.custom-select{position:relative;width:100%}
.custom-select.compact{width:auto;min-width:150px}
.custom-select-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border-radius:12px;border:1px solid #CFDDD6;background:#fff;font:inherit;color:var(--ink);cursor:pointer;transition:.15s ease;box-shadow:none}
.custom-select.compact .custom-select-trigger{width:auto;min-width:132px;padding:8px 12px;border:0;background:transparent;border-radius:8px;font-size:12px;font-weight:800;color:#587066}
.custom-select-trigger:hover,.custom-select.open .custom-select-trigger{border-color:#B9CDC3;box-shadow:0 8px 20px rgba(39,86,65,.08)}
.custom-select.compact .custom-select-trigger:hover,.custom-select.compact.open .custom-select-trigger{background:#fff;color:#2f6b51;box-shadow:0 2px 8px rgba(51,92,76,.07)}
.custom-select-current{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;font-weight:700}
.custom-select.compact .custom-select-current{font-size:12px;font-weight:800}
.custom-select-caret{color:#7e9089;font-size:11px;flex:0 0 auto}
.custom-select-menu{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:60;padding:8px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 42px rgba(39,86,65,.14);display:none;max-height:320px;overflow:auto}
.custom-select.compact .custom-select-menu{right:auto;min-width:220px}
.custom-select.open .custom-select-menu{display:block}
.custom-select-option{display:flex;width:100%;align-items:center;gap:10px;padding:10px 12px;border:0;background:transparent;border-radius:10px;font:inherit;font-size:14px;color:#30473f;cursor:pointer;text-align:left}
.custom-select-option:hover,.custom-select-option.active{background:linear-gradient(100deg,#F1FCDD 0%,#EDFBF5 100%);color:#2D6A4F}
.inline-flag{display:inline-flex;align-items:center;justify-content:center;margin-left:8px;font-size:.92em;vertical-align:middle}
.report-row{grid-template-columns:minmax(320px,1.6fr) minmax(180px,.8fr) minmax(120px,.45fr) 24px}
@media(max-width:900px){.report-row{grid-template-columns:1fr}.report-row>:nth-child(2),.report-row>:nth-child(3),.report-row>:nth-child(4){grid-column:1/-1}}
@media(max-width:560px){.custom-select.compact{min-width:auto}.custom-select.compact .custom-select-trigger{min-width:118px;padding:8px 10px}.custom-select.compact .custom-select-menu{min-width:200px}.login-detailed-brand img{width:min(100%,310px)}}


/* V21.7.2 — report listing language column and improved login hero */
.login-detailed-brand{max-width:520px}
.login-detailed-brand img{width:min(100%,460px);image-rendering:auto}
.report-language-cell{display:flex;align-items:center;justify-content:center;font-size:22px;min-width:48px}
.report-row{grid-template-columns:minmax(260px,1.5fr) 54px minmax(180px,.8fr) minmax(120px,.45fr) 24px}
@media(max-width:900px){.report-row{grid-template-columns:1fr 48px}.report-row>:nth-child(3),.report-row>:nth-child(4),.report-row>:nth-child(5){grid-column:1/-1}}
@media(max-width:560px){.login-detailed-brand img{width:min(100%,360px)}}

/* V21.7.3 — company responsibility overview */
.company-responsibility-grid{align-items:stretch;margin-top:14px}
.responsibility-card{margin-top:0;height:100%}
.responsibility-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.responsibility-head h2{margin:0;font-size:21px;color:#263a33}
.responsibility-item{padding:15px 0;border-top:1px solid var(--line)}
.responsibility-item:first-of-type{border-top:0}
.responsibility-main{display:flex;align-items:center;gap:12px}
.responsibility-main b{font-size:15px}
.responsibility-logo{width:52px;height:52px;border-radius:13px;object-fit:contain;background:#fff;border:1px solid var(--line);padding:5px}
.responsibility-avatar{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-weight:900;background:linear-gradient(135deg,#eafbf7,#dff8cf);color:#2d6a4f;border:1px solid #dcece4}
.responsibility-avatar.advisor{background:linear-gradient(135deg,#eef6ff,#e9fbf7);color:#247f72}
.responsibility-meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.responsibility-meta.single{grid-template-columns:1fr}
.responsibility-meta>div{padding:10px 12px;border-radius:12px;background:#f7faf8;border:1px solid #edf2ef}
.responsibility-meta span{display:block;font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:800;margin-bottom:4px}
.responsibility-meta b{display:block;font-size:12.5px;overflow-wrap:anywhere}
.responsibility-meta small{display:block;color:var(--muted);margin-top:3px}
@media(max-width:800px){.company-responsibility-grid{grid-template-columns:1fr}.responsibility-meta{grid-template-columns:1fr}}
