:root {
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: #152033;
  background: #f5f7fb;
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  --navy: #0b1220;
  --navy-2: #111a2d;
  --text: #152033;
  --muted: #68758a;
  --line: #e4e9f1;
  --panel: #ffffff;
  --blue: #315efb;
  --blue-2: #2349d8;
  --cyan: #00b8d9;
  --green: #12845f;
  --green-bg: #e9f7f1;
  --amber: #a9690f;
  --amber-bg: #fff6e7;
  --red: #b93a43;
  --red-bg: #fff0f1;
  --radius: 18px;
  --shadow: 0 18px 40px rgba(17, 31, 58, .08);
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; min-height: 100vh; background: #f5f7fb; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
a { color: inherit; text-decoration: none; }
strong { font-weight: 680; }

.loading-wrap { min-height: 100vh; display: grid; place-items: center; gap: 12px; color: var(--muted); align-content: center; }
.spinner { width: 28px; height: 28px; border: 3px solid #dce4f2; border-top-color: var(--blue); border-radius: 999px; animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 258px minmax(0,1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; background: var(--navy); color: #d7deeb; padding: 22px 17px; display: flex; flex-direction: column; border-right: 1px solid rgba(255,255,255,.06); }
.brand { display: flex; align-items: center; gap: 10px; }
.brand-mark { width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; color: white; background: linear-gradient(145deg, var(--blue), #6a43ff); box-shadow: 0 8px 24px rgba(49,94,251,.28); }
.brand > div:last-child { display: flex; flex-direction: column; }
.brand strong { font-size: 18px; color: white; letter-spacing: -.02em; }
.brand span { font-size: 10px; color: #8f9ab0; margin-top: 1px; }
.org-switcher { margin: 24px 0 16px; display: grid; grid-template-columns: 18px minmax(0,1fr) 14px; gap: 8px; align-items: center; border: 1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.04); border-radius: 12px; padding: 9px 10px; }
.org-switcher select { min-width: 0; border: 0; outline: 0; color: white; background: transparent; appearance: none; font-size: 13px; font-weight: 620; }
.org-switcher option { color: #111; }
.side-nav { display: grid; gap: 5px; }
.side-nav a { padding: 10px 11px; display: flex; gap: 10px; align-items: center; border-radius: 10px; color: #9ea9bb; font-size: 14px; transition: .18s ease; }
.side-nav a:hover { background: rgba(255,255,255,.06); color: white; }
.side-nav a.active { color: white; background: linear-gradient(90deg, rgba(49,94,251,.28), rgba(49,94,251,.08)); box-shadow: inset 2px 0 var(--blue); }
.sidebar-card { margin-top: auto; padding: 14px; border: 1px solid rgba(255,255,255,.08); border-radius: 14px; background: rgba(255,255,255,.035); display: grid; gap: 6px; }
.sidebar-card svg { color: #7a97ff; }
.sidebar-card strong { color: #fff; font-size: 13px; }
.sidebar-card span { color: #8491a7; font-size: 11px; line-height: 1.45; }
.sidebar-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; border-top: 1px solid rgba(255,255,255,.07); padding-top: 14px; margin-top: 14px; }
.user-mini { min-width: 0; display: flex; gap: 9px; align-items: center; }
.avatar { width: 32px; height: 32px; border-radius: 10px; background: #23304b; color: #bcd0ff; display: grid; place-items: center; font-size: 12px; font-weight: 700; }
.user-mini > div:last-child { display: flex; flex-direction: column; min-width: 0; }
.user-mini strong { color: #fff; font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 130px; }
.user-mini span { color: #78869e; font-size: 10px; }
.main-area { min-width: 0; }
.page { padding: 36px clamp(22px, 4vw, 54px) 70px; max-width: 1550px; margin: 0 auto; }
.page-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; margin-bottom: 28px; }
.page-head h1 { margin: 4px 0 6px; font-size: clamp(28px, 3vw, 38px); letter-spacing: -.045em; line-height: 1.05; color: #101b2d; }
.page-head p, .panel p { margin: 0; color: var(--muted); font-size: 14px; }
.eyebrow { display: flex; align-items: center; gap: 6px; color: var(--blue); font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.head-actions { display: flex; gap: 9px; flex-wrap: wrap; justify-content: flex-end; }

.button { border: 1px solid transparent; border-radius: 10px; min-height: 38px; padding: 8px 13px; display: inline-flex; align-items: center; justify-content: center; gap: 7px; font-size: 13px; font-weight: 680; transition: .18s ease; }
.button.primary { color: white; background: var(--blue); box-shadow: 0 6px 16px rgba(49,94,251,.22); }
.button.primary:hover { background: var(--blue-2); transform: translateY(-1px); }
.button.secondary { background: white; color: #25334a; border-color: #dce3ee; }
.button.secondary:hover { border-color: #c5d0e0; background: #fbfcff; }
.button.ghost { color: #536078; background: transparent; border-color: transparent; }
.button.ghost:hover { background: #f2f5f9; }
.button.danger { color: var(--red); }
.button.full { width: 100%; }
.button:disabled { opacity: .52; cursor: not-allowed; transform: none !important; }
.icon-button { width: 34px; height: 34px; display: grid; place-items: center; border: 0; border-radius: 9px; color: #728097; background: transparent; }
.icon-button:hover { color: #1c2a40; background: #eef2f7; }
.icon-button.danger-icon { color: #b4232f; }
.icon-button.danger-icon:hover { color: #941b25; background: #fff0f1; }
.icon-button.danger-icon:disabled { opacity: .45; cursor: wait; }
.sidebar .icon-button:hover { color: white; background: rgba(255,255,255,.07); }

.stats-grid { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 14px; margin-bottom: 18px; }
.stat-card { min-height: 122px; background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); padding: 18px; display: flex; gap: 14px; box-shadow: 0 6px 22px rgba(17,31,58,.035); }
.stat-icon { width: 38px; height: 38px; border-radius: 11px; display: grid; place-items: center; background: #eef3ff; color: var(--blue); flex: 0 0 auto; }
.stat-label { color: #758196; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; }
.stat-value { margin-top: 4px; color: #111c2e; font-size: 28px; font-weight: 760; letter-spacing: -.04em; }
.stat-hint { margin-top: 4px; color: #8490a3; font-size: 11px; }
.dashboard-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 18px; }
.panel { background: var(--panel); border: 1px solid var(--line); border-radius: var(--radius); padding: 21px; box-shadow: 0 6px 22px rgba(17,31,58,.035); }
.panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.panel h2 { margin: 0 0 5px; font-size: 16px; letter-spacing: -.02em; }
.score-pill { border-radius: 999px; padding: 7px 10px; font-size: 12px; font-weight: 800; }
.score-pill.good { color: var(--green); background: var(--green-bg); }.score-pill.warn { color: var(--amber); background: var(--amber-bg); }.score-pill.bad { color: var(--red); background: var(--red-bg); }
.progress { margin: 22px 0; height: 9px; background: #edf1f6; border-radius: 999px; overflow: hidden; }
.progress span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, var(--blue), var(--cyan)); }
.readiness-list { display: grid; gap: 11px; }
.readiness-list > div { display: flex; gap: 9px; align-items: center; color: #546176; font-size: 13px; }
.readiness-list svg { color: var(--green); }.readiness-list .warning-row svg { color: var(--amber); }
.activity-list { margin-top: 12px; display: grid; }
.activity-list > div { display: flex; gap: 11px; padding: 10px 0; border-bottom: 1px solid #eef1f5; }
.activity-list > div:last-child { border-bottom: 0; }
.activity-dot { width: 8px; height: 8px; border-radius: 99px; background: var(--blue); margin-top: 5px; box-shadow: 0 0 0 4px #edf2ff; }
.activity-list > div > div:last-child { display: flex; flex-direction: column; }
.activity-list strong { font-size: 13px; }.activity-list span { font-size: 11px; color: #8a96a7; margin-top: 2px; }

.toolbar { display: flex; justify-content: space-between; align-items: center; gap: 16px; margin-bottom: 16px; }
.search { width: min(430px, 100%); display: flex; align-items: center; gap: 8px; border: 1px solid #dce3ed; background: white; border-radius: 11px; padding: 0 11px; }
.search svg { color: #8a96a8; }.search input { width: 100%; min-height: 40px; border: 0; outline: 0; background: transparent; color: var(--text); }
.toolbar-stats { display: flex; gap: 14px; color: #718096; font-size: 12px; }.toolbar-stats span { display: flex; align-items: center; gap: 5px; }
.table-card { overflow: auto; background: white; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: 0 6px 22px rgba(17,31,58,.035); }
table { width: 100%; border-collapse: collapse; min-width: 760px; }
th { text-align: left; color: #7d899b; background: #fafbfd; font-size: 10px; text-transform: uppercase; letter-spacing: .08em; font-weight: 800; padding: 12px 15px; border-bottom: 1px solid var(--line); }
td { padding: 13px 15px; border-bottom: 1px solid #edf1f5; font-size: 13px; color: #445167; }
tbody tr:last-child td { border-bottom: 0; }
.file-cell { display: flex; gap: 10px; align-items: center; min-width: 230px; }.file-cell > div:last-child { display: flex; flex-direction: column; }.file-cell strong { color: #1a2638; }.file-cell span { color: #8a95a7; font-size: 11px; margin-top: 2px; }
.file-icon { width: 34px; height: 34px; border-radius: 9px; display: grid; place-items: center; background: #eff4ff; color: var(--blue); flex: 0 0 auto; }.file-icon.large { width: 40px; height: 40px; }
.tag { display: inline-block; background: #f0f3f8; color: #617087; padding: 5px 7px; border-radius: 7px; font-size: 11px; font-weight: 650; }
.status { width: fit-content; display: inline-flex; align-items: center; gap: 5px; border-radius: 999px; padding: 5px 7px; font-size: 10px; font-weight: 760; text-transform: uppercase; letter-spacing: .03em; }.status.good { color: var(--green); background: var(--green-bg); }.status.warn { color: var(--amber); background: var(--amber-bg); }.status.bad { color: var(--red); background: var(--red-bg); }

.empty-state { min-height: 360px; background: white; border: 1px dashed #d5deea; border-radius: var(--radius); display: grid; place-items: center; align-content: center; text-align: center; padding: 30px; }
.empty-icon { width: 52px; height: 52px; border-radius: 16px; background: #eff4ff; color: var(--blue); display: grid; place-items: center; }.empty-state h3 { margin: 13px 0 5px; font-size: 17px; }.empty-state p { max-width: 480px; margin: 0 0 16px; color: var(--muted); font-size: 13px; line-height: 1.5; }
.notice { margin: 12px 0 16px; border: 1px solid #dce5f5; background: #f4f7ff; color: #44536d; padding: 10px 12px; border-radius: 10px; font-size: 12px; line-height: 1.45; }.notice.error { border-color: #ffd5d8; background: var(--red-bg); color: var(--red); }.notice.subtle { margin: 0; background: #fafbfe; }

.fact-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }.fact-card { background: white; border: 1px solid var(--line); border-radius: var(--radius); padding: 17px; min-height: 210px; display: flex; flex-direction: column; box-shadow: 0 6px 22px rgba(17,31,58,.035); }.fact-card-head { display: flex; justify-content: space-between; gap: 10px; }.fact-icon { width: 34px; height: 34px; border-radius: 9px; display: grid; place-items: center; background: #eff4ff; color: var(--blue); }.fact-label { margin-top: 14px; color: #748095; font-size: 11px; font-weight: 700; text-transform: uppercase; }.fact-value { margin-top: 5px; font-size: 18px; line-height: 1.35; color: #152033; font-weight: 720; word-break: break-word; }.fact-meta { margin-top: auto; padding-top: 15px; display: flex; flex-direction: column; gap: 3px; color: #929dae; font-size: 10px; }.fact-actions { margin-top: 9px; display: flex; gap: 6px; }

.questionnaire-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 15px; }.questionnaire-card { background: white; border: 1px solid var(--line); border-radius: var(--radius); padding: 18px; min-height: 210px; display: flex; flex-direction: column; box-shadow: 0 6px 22px rgba(17,31,58,.035); transition: .18s ease; }.questionnaire-card:hover { transform: translateY(-2px); box-shadow: var(--shadow); border-color: #cfd8e6; }.questionnaire-top { display: flex; justify-content: space-between; align-items: flex-start; }.questionnaire-card h3 { margin: 15px 0 4px; color: #152033; font-size: 17px; }.questionnaire-card p { margin: 0; color: var(--muted); font-size: 12px; }.questionnaire-meta { margin-top: auto; padding-top: 18px; display: flex; gap: 10px; flex-wrap: wrap; color: #8793a6; font-size: 10px; }
.detail-back { margin-bottom: 18px; }.detail-back a { display: inline-flex; gap: 6px; align-items: center; font-size: 12px; color: #617088; }.detail-back a:hover { color: var(--blue); }
.question-list { display: grid; gap: 11px; }.question-card { display: grid; grid-template-columns: 42px minmax(0,1fr); gap: 13px; background: white; border: 1px solid var(--line); border-radius: 15px; padding: 15px; }.question-number { width: 34px; height: 34px; border-radius: 9px; background: #f1f4f9; color: #657287; display: grid; place-items: center; font-size: 11px; font-weight: 800; }.question-body h3 { margin: 3px 0 11px; font-size: 14px; line-height: 1.45; color: #1b2739; }.answer-empty { display: flex; gap: 6px; align-items: center; color: #8a96a6; font-size: 11px; }.answer-box { border: 1px solid #dce6f5; background: #f8faff; border-radius: 11px; padding: 12px; }.answer-box.missing { border-color: #f3d9ae; background: #fffaf1; }.answer-label { display: flex; justify-content: space-between; color: #728097; font-size: 10px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }.answer-label span { color: var(--blue); }.answer-text { margin: 7px 0; color: #26344b; font-size: 13px; line-height: 1.5; white-space: pre-wrap; }.evidence-line { color: #8c97a8; font-size: 10px; }.answer-actions { margin-top: 10px; display: flex; gap: 7px; }

.answer-memory-list { display: grid; gap: 12px; }.memory-card { background: white; border: 1px solid var(--line); border-radius: 15px; padding: 17px; }.memory-card.outdated { opacity: .64; }.memory-head, .memory-foot { display: flex; justify-content: space-between; gap: 12px; align-items: center; }.memory-card h3 { margin: 12px 0 6px; font-size: 14px; color: #1b273a; }.memory-card p { margin: 0 0 12px; color: #536178; line-height: 1.5; font-size: 13px; }.memory-foot { border-top: 1px solid #edf1f5; padding-top: 9px; color: #8d98a9; font-size: 10px; }
.settings-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; }.settings-card { display: grid; gap: 15px; }.settings-title { display: flex; gap: 10px; align-items: center; }.settings-title svg { color: var(--blue); }.settings-title h2 { margin: 0; }.settings-title p { font-size: 11px; }.security-row { display: flex; gap: 8px; flex-wrap: wrap; }

label { display: grid; gap: 6px; color: #536078; font-size: 11px; font-weight: 700; }
input, textarea, select { width: 100%; border: 1px solid #d8e0eb; border-radius: 10px; padding: 10px 11px; outline: 0; background: white; color: #1c293d; font-size: 13px; transition: .15s ease; }
input:focus, textarea:focus, select:focus { border-color: #9bb0ff; box-shadow: 0 0 0 3px #edf1ff; }
textarea { resize: vertical; min-height: 90px; }.optional { color: #9ba5b5; font-weight: 500; }
.stack { display: grid; gap: 13px; }.drop-zone { min-height: 130px; border: 1px dashed #cbd6e5; border-radius: 13px; background: #fafcff; display: grid; place-items: center; align-content: center; text-align: center; cursor: pointer; padding: 18px; }.drop-zone svg { color: var(--blue); }.drop-zone strong { color: #344258; margin-top: 7px; }.drop-zone span { color: #8a96a6; font-size: 10px; font-weight: 500; margin-top: 3px; }
.modal-backdrop { position: fixed; inset: 0; z-index: 100; background: rgba(8,15,27,.54); backdrop-filter: blur(4px); display: grid; place-items: center; padding: 20px; }.modal { width: min(510px,100%); max-height: 90vh; overflow: auto; background: white; border-radius: 18px; box-shadow: 0 28px 80px rgba(0,0,0,.22); padding: 20px; }.modal-wide { width: min(820px,100%); }.modal-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 17px; }.modal-head h2 { margin: 0; font-size: 17px; }

.auth-layout { min-height: 100vh; display: grid; grid-template-columns: 1.1fr .9fr; background: white; }.auth-story { padding: 34px clamp(30px,6vw,86px); background: radial-gradient(circle at 80% 15%, rgba(49,94,251,.23), transparent 34%), linear-gradient(145deg,#0b1220,#111d35 70%,#152548); color: white; display: flex; flex-direction: column; }.auth-brand { width: fit-content; }.auth-copy { max-width: 670px; margin: auto 0; }.auth-copy .eyebrow { color: #9ab0ff; }.auth-copy h1 { margin: 14px 0 16px; max-width: 620px; font-size: clamp(38px,5vw,67px); letter-spacing: -.055em; line-height: .98; }.auth-copy > p { max-width: 580px; color: #aeb9ca; line-height: 1.6; font-size: 15px; }.auth-benefits { margin-top: 34px; display: grid; gap: 13px; max-width: 520px; }.auth-benefits > div { display: flex; gap: 11px; align-items: flex-start; }.auth-benefits svg { color: #8fa9ff; margin-top: 2px; }.auth-benefits span { display: flex; flex-direction: column; }.auth-benefits strong { font-size: 13px; }.auth-benefits small { margin-top: 2px; color: #8795ab; font-size: 11px; }.auth-panel { display: grid; place-items: center; padding: 28px; background: #f7f9fc; }.auth-card { width: min(420px,100%); background: white; border: 1px solid var(--line); border-radius: 20px; padding: 26px; box-shadow: var(--shadow); display: grid; gap: 15px; }.auth-card h2 { margin: 0 0 4px; font-size: 22px; letter-spacing: -.03em; }.auth-tabs { display: grid; grid-template-columns: 1fr 1fr; background: #f2f5f9; padding: 3px; border-radius: 10px; }.auth-tabs button { border: 0; border-radius: 8px; background: transparent; padding: 8px; color: #7b8799; font-size: 12px; font-weight: 700; }.auth-tabs button.active { background: white; color: #223048; box-shadow: 0 2px 8px rgba(17,31,58,.08); }
.onboarding-page { min-height: 100vh; display: grid; place-items: center; padding: 24px; background: radial-gradient(circle at 20% 10%, #edf2ff, transparent 32%), #f6f8fb; }.onboarding-card { width: min(480px,100%); background: white; border: 1px solid var(--line); border-radius: 22px; box-shadow: var(--shadow); padding: 28px; display: grid; gap: 15px; }.onboarding-card .brand { margin-bottom: 10px; }.step-chip { width: fit-content; color: var(--green); background: var(--green-bg); padding: 6px 8px; border-radius: 999px; font-size: 10px; font-weight: 750; display: flex; gap: 5px; align-items: center; }.onboarding-icon { width: 54px; height: 54px; border-radius: 16px; display: grid; place-items: center; color: var(--blue); background: #eef3ff; }.onboarding-card h1 { margin: 0; font-size: 28px; letter-spacing: -.04em; }.onboarding-card form { display: grid; gap: 13px; }
.muted { color: var(--muted); }.small { font-size: 11px !important; }.skeleton-lines { height: 160px; margin-top: 12px; border-radius: 10px; background: linear-gradient(100deg,#f2f4f8 20%,#fafbfc 40%,#f2f4f8 60%); background-size: 200% 100%; animation: shimmer 1.2s linear infinite; } @keyframes shimmer { to { background-position-x: -200%; } }

@media (max-width: 1100px) {
  .stats-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .fact-grid, .questionnaire-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .app-shell { grid-template-columns: 1fr; }
  .sidebar { position: sticky; z-index: 20; height: auto; padding: 12px 14px; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; }
  .brand span, .sidebar-card, .sidebar-footer { display: none; }
  .org-switcher { margin: 0 0 0 auto; width: min(270px,100%); }
  .side-nav { grid-column: 1/-1; display: flex; overflow-x: auto; padding-top: 9px; }
  .side-nav a { white-space: nowrap; padding: 8px 9px; font-size: 12px; }
  .page { padding: 24px 16px 60px; }
  .dashboard-grid, .settings-grid { grid-template-columns: 1fr; }
  .auth-layout { grid-template-columns: 1fr; }.auth-story { min-height: 410px; padding: 26px; }.auth-copy h1 { font-size: 42px; }.auth-panel { padding: 20px; }
}
@media (max-width: 620px) {
  .page-head { flex-direction: column; }.head-actions { width: 100%; justify-content: flex-start; }.stats-grid, .fact-grid, .questionnaire-grid { grid-template-columns: 1fr; }.toolbar { align-items: stretch; flex-direction: column; }.toolbar-stats { justify-content: space-between; }.question-card { grid-template-columns: 1fr; }.question-number { width: fit-content; min-width: 34px; padding: 0 8px; }.auth-copy h1 { font-size: 36px; }.auth-benefits { display: none; }
}
.answer-editor { margin: 8px 0; background: white; min-height: 78px; line-height: 1.5; }

/* Certivo v0.2 */
.button.compact { min-height: 32px; padding: 6px 9px; font-size: 11px; }
.table-actions { display: flex; align-items: center; justify-content: flex-end; gap: 6px; }
.upload-intro { display: flex; gap: 11px; align-items: center; padding: 12px; border-radius: 12px; background: #f4f7ff; border: 1px solid #e4eaff; }
.upload-intro .mini-icon { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: white; color: var(--blue); box-shadow: 0 4px 12px rgba(49,94,251,.08); }
.upload-intro > div:last-child { display: grid; gap: 2px; }
.upload-intro strong { font-size: 12px; color: #243149; }
.upload-intro span { color: #718096; font-size: 10px; line-height: 1.45; }

.readiness-checklist { margin-top: 18px; display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.readiness-item { min-width: 0; display: grid; grid-template-columns: 18px minmax(0,1fr) auto; gap: 9px; align-items: start; padding: 10px; border: 1px solid #edf0f5; border-radius: 11px; background: #fbfcfe; }
.readiness-item > svg { margin-top: 1px; color: #9aa5b5; }
.readiness-item.complete { border-color: #d9eee7; background: #f7fcfa; }
.readiness-item.complete > svg { color: var(--green); }
.readiness-item.review { border-color: #f1dfbe; background: #fffaf1; }
.readiness-item.review > svg { color: var(--amber); }
.readiness-item > div { display: grid; gap: 2px; }
.readiness-item strong { font-size: 11px; color: #26344a; }
.readiness-item span { color: #8591a3; font-size: 9px; line-height: 1.4; }
.readiness-item b { color: #9aa5b5; font-size: 9px; font-weight: 750; }
.readiness-summary { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 14px; padding-top: 13px; border-top: 1px solid #edf0f5; color: #69768a; font-size: 10px; }
.readiness-summary span { display: inline-flex; align-items: center; gap: 5px; }
.readiness-summary svg { color: var(--green); }
.readiness-summary .warning-row svg { color: var(--amber); }

.analysis-head { margin-bottom: 18px; }
.analysis-notice { margin-bottom: 16px; }
.analysis-summary-grid { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 12px; margin-bottom: 18px; }
.analysis-source-card { display: flex; gap: 12px; align-items: center; min-width: 0; }
.analysis-source-icon { width: 44px; height: 44px; flex: 0 0 auto; border-radius: 12px; display: grid; place-items: center; color: var(--blue); background: #edf2ff; }
.analysis-source-card > div:last-child { min-width: 0; display: grid; gap: 2px; }
.analysis-source-card span, .analysis-metric span { color: #8692a5; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.analysis-source-card strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #1d2a3f; font-size: 13px; }
.analysis-source-card small, .analysis-metric small { color: #8995a6; font-size: 9px; }
.analysis-metric { display: grid; align-content: center; gap: 3px; }
.analysis-metric strong { font-size: 28px; letter-spacing: -.04em; color: #142137; }
.analysis-empty { min-height: 390px; text-align: center; display: grid; place-items: center; align-content: center; padding: 36px; }
.analysis-hero-icon { width: 64px; height: 64px; display: grid; place-items: center; border-radius: 18px; background: linear-gradient(145deg,#eef3ff,#f4efff); color: var(--blue); margin-bottom: 8px; }
.analysis-empty h2 { margin: 8px 0 5px; font-size: 20px; }
.analysis-empty > p { max-width: 630px; line-height: 1.6; margin-bottom: 18px; }
.analysis-steps { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; margin-bottom: 20px; }
.analysis-steps span { display: inline-flex; gap: 6px; align-items: center; padding: 7px 9px; border: 1px solid #e4e9f1; border-radius: 999px; color: #617087; font-size: 10px; background: #fbfcfe; }
.analysis-steps b { width: 19px; height: 19px; border-radius: 999px; display: grid; place-items: center; background: #eaf0ff; color: var(--blue); font-size: 9px; }
.review-layout { display: grid; grid-template-columns: minmax(0,1fr) 300px; gap: 16px; align-items: start; }
.review-list { display: grid; gap: 10px; }
.section-title h2 { margin: 0 0 4px; font-size: 18px; }
.section-title p { margin: 0 0 4px; color: var(--muted); font-size: 12px; }
.review-card { border: 1px solid var(--line); background: white; border-radius: 15px; padding: 15px; display: grid; gap: 12px; }
.review-card-main { display: flex; gap: 11px; min-width: 0; }
.review-icon { width: 36px; height: 36px; flex: 0 0 auto; border-radius: 10px; display: grid; place-items: center; background: #eef3ff; color: var(--blue); }
.review-content { min-width: 0; flex: 1; }
.review-kicker { color: #7b8799; font-size: 9px; font-weight: 800; text-transform: uppercase; letter-spacing: .06em; }
.review-value { margin: 5px 0; color: #172439; font-size: 17px; font-weight: 730; line-height: 1.35; word-break: break-word; }
.review-source { color: #8995a7; font-size: 9px; }
.review-content blockquote { margin: 10px 0 0; border-left: 2px solid #b8c8ff; padding: 8px 10px; color: #637187; background: #fafbfe; border-radius: 0 8px 8px 0; font-size: 10px; line-height: 1.55; }
.review-actions { border-top: 1px solid #edf0f5; padding-top: 10px; display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.review-principle { position: sticky; top: 24px; display: grid; gap: 9px; }
.review-principle > svg { color: var(--blue); }
.review-principle h3 { margin: 0; font-size: 15px; }
.review-principle p { line-height: 1.55; font-size: 11px; }
.principle-row { display: flex; align-items: center; gap: 7px; color: #5e6b80; font-size: 10px; }
.principle-row svg { color: var(--green); }
.spin-icon { animation: spin .8s linear infinite; vertical-align: middle; }

.onboarding-page.v2 { padding: 28px; }
.onboarding-shell { width: min(980px,100%); display: grid; grid-template-columns: minmax(0,1.05fr) minmax(320px,.95fr); border: 1px solid var(--line); border-radius: 24px; overflow: hidden; box-shadow: 0 24px 70px rgba(17,31,58,.12); background: white; }
.onboarding-card.v2-card { width: auto; border: 0; border-radius: 0; box-shadow: none; padding: clamp(28px,4vw,46px); }
.onboarding-progress { display: grid; grid-template-columns: auto 1fr auto auto 1fr auto auto; align-items: center; gap: 7px; color: #9aa5b6; font-size: 9px; font-weight: 750; }
.onboarding-progress i { height: 1px; background: #e6eaf1; }
.onboarding-progress span { width: 23px; height: 23px; border: 1px solid #dfe5ef; border-radius: 999px; display: grid; place-items: center; font-style: normal; }
.onboarding-progress span.done { width: auto; padding: 0 8px; color: var(--green); border-color: #d5ece3; background: #f2fbf7; display: flex; gap: 4px; }
.onboarding-progress span.active { color: white; border-color: var(--blue); background: var(--blue); }
.onboarding-progress b { color: #66748a; font-size: 9px; }
.onboarding-lead { margin-top: 7px; line-height: 1.55; }
.onboarding-submit { margin-top: 3px; min-height: 43px; }
.onboarding-trust { display: flex; align-items: flex-start; gap: 7px; color: #7c899b; font-size: 9px; line-height: 1.45; padding-top: 4px; }
.onboarding-trust svg { flex: 0 0 auto; color: var(--green); }
.onboarding-side { padding: clamp(30px,4vw,48px); background: radial-gradient(circle at 80% 15%, rgba(49,94,251,.25), transparent 35%), linear-gradient(145deg,#0b1220,#13203a 72%,#182c4e); color: white; display: flex; flex-direction: column; justify-content: center; gap: 17px; }
.onboarding-side .eyebrow.light { color: #9db2ff; }
.onboarding-side h2 { margin: 8px 0 8px; max-width: 400px; font-size: 30px; letter-spacing: -.04em; line-height: 1.08; }
.onboarding-side > div:first-child > p { margin: 0; color: #a8b5c8; line-height: 1.6; font-size: 12px; }
.onboarding-benefit { display: flex; gap: 11px; align-items: flex-start; padding: 12px; border: 1px solid rgba(255,255,255,.08); border-radius: 12px; background: rgba(255,255,255,.035); }
.onboarding-benefit > div { width: 34px; height: 34px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 10px; background: rgba(87,119,255,.16); color: #92aaff; }
.onboarding-benefit span { display: grid; gap: 2px; }
.onboarding-benefit strong { color: white; font-size: 11px; }
.onboarding-benefit small { color: #8f9db1; font-size: 9px; line-height: 1.4; }

@media (max-width: 1050px) {
  .analysis-summary-grid { grid-template-columns: 1fr 1fr; }
  .analysis-source-card { grid-column: 1/-1; }
  .review-layout { grid-template-columns: 1fr; }
  .review-principle { position: static; }
  .onboarding-shell { grid-template-columns: 1fr; max-width: 610px; }
  .onboarding-side { display: none; }
}
@media (max-width: 820px) {
  .readiness-checklist { grid-template-columns: 1fr; }
  .table-card { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .table-card table { min-width: 760px; }
}
@media (max-width: 620px) {
  .analysis-summary-grid { grid-template-columns: 1fr; }
  .analysis-source-card { grid-column: auto; }
  .analysis-empty { min-height: 330px; padding: 24px 18px; }
  .analysis-steps { display: grid; width: 100%; }
  .analysis-steps span { justify-content: flex-start; border-radius: 10px; }
  .review-card-main { align-items: flex-start; }
  .review-actions { align-items: stretch; }
  .review-actions .button { width: 100%; }
  .onboarding-page.v2 { padding: 12px; }
  .onboarding-card.v2-card { padding: 24px 20px; }
  .onboarding-progress { grid-template-columns: auto 1fr auto auto; }
  .onboarding-progress i:nth-of-type(2), .onboarding-progress span:last-of-type, .onboarding-progress b:last-of-type { display: none; }
}


/* Professional destructive confirmation */
.button.danger { background: #b42318; color: #fff; border-color: #b42318; }
.button.danger:hover { background: #912018; border-color: #912018; transform: translateY(-1px); }
.button.danger:disabled { opacity: .58; cursor: wait; transform: none; }
.delete-confirmation { display: grid; grid-template-columns: 48px 1fr; gap: 14px; }
.delete-warning-icon { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: #fff1f0; color: #b42318; border: 1px solid #fecdca; }
.delete-copy strong { display: block; font-size: 16px; color: #101828; margin: 2px 0 6px; }
.delete-copy p { margin: 0; color: #667085; line-height: 1.55; }
.delete-file-name { color: #344054; font-weight: 700; word-break: break-word; }
.delete-warning-box { margin-top: 14px; border-radius: 12px; padding: 12px 13px; background: #fff8f7; border: 1px solid #fee4e2; color: #7a271a; font-size: 13px; line-height: 1.5; }
.delete-actions { grid-column: 1 / -1; display: flex; justify-content: flex-end; gap: 10px; padding-top: 4px; }
@media (max-width: 560px) { .delete-confirmation { grid-template-columns: 42px 1fr; }.delete-warning-icon { width: 42px; height: 42px; }.delete-actions { display: grid; grid-template-columns: 1fr 1fr; }.delete-actions .button { justify-content: center; } }

/* Certivo v0.3 questionnaire workspace */
.questionnaire-preview { border: 1px solid #dfe6f1; background: #f8faff; border-radius: 13px; padding: 13px; }
.preview-head { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:10px; }
.preview-head strong { font-size:13px; color:#17243a; }
.preview-list { display:grid; gap:7px; }
.preview-list > div { display:grid; grid-template-columns:28px minmax(0,1fr) auto; align-items:center; gap:8px; background:#fff; border:1px solid #e9eef5; border-radius:9px; padding:8px 9px; }
.preview-list b { width:24px; height:24px; border-radius:7px; background:#edf3ff; color:#3563ff; display:grid; place-items:center; font-size:10px; }
.preview-list span { color:#39485f; font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.preview-list small { color:#98a3b3; font-size:9px; }
.preview-more { margin-top:8px; color:#78869a; font-size:10px; font-weight:700; }
.questionnaire-meta .warn { color:#b86b00; }.questionnaire-meta .bad { color:#c23a46; }
.questionnaire-meta span { display:inline-flex; align-items:center; gap:4px; }
.questionnaire-progress-panel { background:#fff; border:1px solid var(--line); border-radius:16px; padding:16px; margin-bottom:14px; box-shadow:0 6px 22px rgba(17,31,58,.025); }
.progress-copy { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; margin-bottom:11px; }
.progress-copy > div:first-child { display:grid; gap:3px; }.progress-copy strong { font-size:14px; color:#17243a; }.progress-copy span { font-size:10px; color:#8190a5; }
.progress-mini-stats { display:flex; gap:12px; flex-wrap:wrap; justify-content:flex-end; }.progress-mini-stats span { font-weight:700; }.progress-mini-stats .good{color:#11845b}.progress-mini-stats .warn{color:#b66a00}.progress-mini-stats .bad{color:#c7444f}
.question-filterbar { display:flex; align-items:center; gap:7px; flex-wrap:wrap; margin:0 0 12px; }
.filter-label { display:flex; align-items:center; gap:5px; color:#7d899c; font-size:10px; font-weight:800; text-transform:uppercase; margin-right:2px; }
.filter-chip { border:1px solid #dde5ef; background:#fff; color:#617086; border-radius:999px; padding:7px 11px; font:inherit; font-size:10px; font-weight:700; cursor:pointer; transition:.15s ease; }
.filter-chip:hover { border-color:#bfcce0; color:#29405e; }.filter-chip.active { background:#edf3ff; border-color:#cbd9ff; color:#2f5df4; }
.filter-count { margin-left:auto; font-size:10px; }
.filter-chips { display:flex; gap:7px; flex-wrap:wrap; }.compact-chips { justify-content:flex-end; }
.question-title-row { display:flex; gap:10px; align-items:flex-start; justify-content:space-between; }.question-title-row h3 { flex:1; }
.source-badge { white-space:nowrap; border-radius:999px; padding:5px 8px; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.03em; }
.source-badge.reused { background:#f0ecff; color:#6a4ad7; }
.missing-action { margin:9px 0; display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; background:#fff; border:1px solid #f0dcb7; border-radius:9px; padding:10px; color:#9d6714; }
.missing-action > div { display:grid; gap:2px; }.missing-action strong { font-size:11px; color:#84520b; }.missing-action span { font-size:10px; color:#9c7a48; }
.question-card.approved { border-color:#d9eee5; }.question-card.rejected { border-color:#efd7da; }
.memory-summary { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-bottom:14px; }
.memory-summary > div { background:#fff; border:1px solid var(--line); border-radius:13px; padding:13px 15px; display:grid; gap:2px; }
.memory-summary strong { color:#17243a; font-size:20px; }.memory-summary span { color:#8793a6; font-size:10px; }
.memory-foot > div { display:grid; gap:2px; }.memory-foot strong { color:#59677b; font-size:10px; }.memory-foot span { color:#98a3b3; font-size:9px; }
@media(max-width:720px){
  .preview-list > div { grid-template-columns:28px minmax(0,1fr); }.preview-list small{display:none}
  .progress-copy { flex-direction:column; }.progress-mini-stats{justify-content:flex-start}
  .filter-count{width:100%; margin-left:0}.question-title-row{flex-direction:column}.missing-action{grid-template-columns:auto 1fr}.missing-action .button{grid-column:1/-1;width:100%}
  .memory-summary{grid-template-columns:1fr 1fr 1fr}.compact-chips{justify-content:flex-start}
}

/* Certivo v0.4 - Compliance Center */
.compliance-stats { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-bottom: 18px; }
.compliance-stat { min-height: 84px; display: flex; align-items: center; gap: 12px; padding: 15px 17px; border: 1px solid var(--line); border-radius: 15px; background: white; box-shadow: 0 5px 18px rgba(17,31,58,.03); }
.compliance-stat > svg { width: 36px; height: 36px; padding: 9px; border-radius: 10px; flex: 0 0 auto; }
.compliance-stat > div { display: grid; gap: 2px; }
.compliance-stat strong { color: #152033; font-size: 23px; line-height: 1; }
.compliance-stat span { color: #7c899d; font-size: 10px; font-weight: 700; }
.compliance-stat.good > svg { color: var(--green); background: var(--green-bg); }
.compliance-stat.warn > svg { color: var(--amber); background: var(--amber-bg); }
.compliance-stat.bad > svg { color: var(--red); background: var(--red-bg); }
.compliance-stat.neutral > svg { color: var(--blue); background: #eef3ff; }
.compliance-center { padding: 0; overflow: hidden; }
.compliance-toolbar { padding: 19px 20px; border-bottom: 1px solid #edf1f5; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.compliance-toolbar h2 { margin: 0 0 4px; font-size: 16px; }
.compliance-toolbar p { font-size: 11px; }
.filter-tabs { display: flex; gap: 5px; flex-wrap: wrap; padding: 3px; background: #f3f6fa; border-radius: 10px; }
.filter-tabs button { border: 0; background: transparent; color: #758297; padding: 7px 9px; border-radius: 8px; font-size: 10px; font-weight: 750; }
.filter-tabs button.active { background: white; color: #22314a; box-shadow: 0 2px 7px rgba(17,31,58,.07); }
.compliance-list { display: grid; }
.compliance-row { min-width: 0; display: grid; grid-template-columns: 38px minmax(210px,1fr) 120px 150px 135px; align-items: center; gap: 12px; padding: 13px 18px; border-bottom: 1px solid #edf1f5; }
.compliance-row:last-child { border-bottom: 0; }
.compliance-row:hover { background: #fbfcfe; }
.compliance-row-icon { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 10px; background: #f2f5fa; color: #657389; }
.compliance-row.warn .compliance-row-icon { color: var(--amber); background: var(--amber-bg); }
.compliance-row.bad .compliance-row-icon { color: var(--red); background: var(--red-bg); }
.compliance-row.good .compliance-row-icon { color: var(--green); background: var(--green-bg); }
.compliance-row-main { min-width: 0; display: grid; gap: 3px; }
.compliance-row-main strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #1b293e; font-size: 12px; }
.compliance-row-main span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: #8a96a8; font-size: 10px; }
.compliance-date { display: grid; gap: 2px; }
.compliance-date span { color: #9aa4b3; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .05em; }
.compliance-date strong { color: #526078; font-size: 10px; }
.compliance-status { width: fit-content; display: inline-flex; align-items: center; gap: 5px; border-radius: 999px; padding: 6px 8px; font-size: 9px; font-weight: 800; white-space: nowrap; }
.compliance-status.good { color: var(--green); background: var(--green-bg); }
.compliance-status.warn { color: var(--amber); background: var(--amber-bg); }
.compliance-status.bad { color: var(--red); background: var(--red-bg); }
.compliance-status.neutral { color: #68758a; background: #f0f3f7; }
.compliance-actions { display: flex; justify-content: flex-end; }
.compliance-actions > div { display: flex; align-items: center; justify-content: flex-end; gap: 4px; }
.compliance-empty { min-height: 270px; display: grid; place-items: center; align-content: center; text-align: center; color: #7d8a9d; padding: 30px; }
.compliance-empty svg { color: #8ea4ff; margin-bottom: 8px; }
.compliance-empty h3 { color: #26344a; margin: 3px 0 5px; font-size: 15px; }
.compliance-empty p { max-width: 450px; font-size: 11px; line-height: 1.55; }
.form-grid-2 { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.checkbox-row { display: grid; grid-template-columns: 18px minmax(0,1fr); align-items: start; gap: 9px; padding: 11px; border: 1px solid #dfe5ee; border-radius: 11px; background: #fafcff; }
.checkbox-row input { width: 16px; height: 16px; margin-top: 1px; }
.checkbox-row span { display: grid; gap: 2px; }
.checkbox-row strong { color: #29374d; font-size: 11px; }
.checkbox-row small { color: #8491a4; font-size: 9px; line-height: 1.4; }
@media (max-width: 1050px) {
  .compliance-stats { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .compliance-row { grid-template-columns: 38px minmax(180px,1fr) 110px 140px; }
  .compliance-actions { grid-column: 2/-1; justify-content: flex-start; }
}
@media (max-width: 760px) {
  .compliance-toolbar { align-items: stretch; flex-direction: column; }
  .filter-tabs { overflow-x: auto; flex-wrap: nowrap; }
  .compliance-row { grid-template-columns: 36px minmax(0,1fr); gap: 9px 11px; }
  .compliance-date, .compliance-row > .compliance-status, .compliance-actions { grid-column: 2; }
  .compliance-actions { justify-content: flex-start; }
  .form-grid-2 { grid-template-columns: 1fr; }
}
@media (max-width: 520px) {
  .compliance-stats { grid-template-columns: 1fr 1fr; }
  .compliance-stat { padding: 12px; min-height: 74px; }
  .compliance-stat strong { font-size: 20px; }
}


/* v0.5 Team & access */
.team-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:18px; }
.team-stat { min-height:82px; display:flex; gap:12px; align-items:center; padding:15px 17px; background:#fff; border:1px solid var(--line); border-radius:15px; box-shadow:0 5px 18px rgba(17,31,58,.03); }
.team-stat > svg { width:36px; height:36px; padding:9px; color:var(--blue); background:#eef3ff; border-radius:10px; }
.team-stat.good > svg { color:var(--green); background:var(--green-bg); }
.team-stat.warn > svg { color:var(--amber); background:var(--amber-bg); }
.team-stat > div { display:grid; gap:2px; }
.team-stat strong { font-size:22px; line-height:1; color:#152033; }
.team-stat span { color:#7c899d; font-size:10px; font-weight:700; }
.team-panel { padding:0; overflow:hidden; }
.team-panel-head { display:flex; justify-content:space-between; gap:18px; align-items:center; padding:18px 20px; border-bottom:1px solid #edf1f5; }
.team-panel-head h2 { margin:0 0 4px; font-size:16px; }
.team-panel-head p { font-size:11px; }
.team-list { display:grid; }
.team-row { display:grid; grid-template-columns:42px minmax(200px,1fr) 92px minmax(250px,340px) 38px; gap:12px; align-items:center; padding:13px 18px; border-bottom:1px solid #edf1f5; }
.team-row:last-child { border-bottom:0; }
.team-row:hover { background:#fbfcfe; }
.team-avatar { width:38px; height:38px; border-radius:12px; background:#edf2ff; color:var(--blue); font-weight:800; display:grid; place-items:center; }
.team-person { min-width:0; display:grid; gap:2px; }
.team-person strong { display:flex; align-items:center; gap:7px; color:#18263a; font-size:12px; }
.team-person span, .team-person small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#7e8a9d; font-size:10px; }
.you-pill { font-size:8px; line-height:1; padding:4px 6px; border-radius:999px; background:#edf2ff; color:var(--blue); }
.team-invite-status { width:fit-content; padding:6px 8px; border-radius:999px; font-size:9px; font-weight:800; }
.team-invite-status.active { color:var(--green); background:var(--green-bg); }
.team-invite-status.invited { color:var(--amber); background:var(--amber-bg); }
.team-role-cell { display:grid; gap:4px; }
.team-role-cell select { min-height:38px; }
.team-role-cell small { color:#8b96a7; font-size:9px; line-height:1.35; }
.team-empty, .team-no-access { min-height:270px; display:grid; place-items:center; align-content:center; text-align:center; gap:7px; color:#7d8a9d; }
.team-empty h3, .team-no-access h2 { margin:2px 0; color:#26344a; }
.team-empty p, .team-no-access p { max-width:480px; font-size:11px; }
.invite-intro { display:flex; gap:11px; padding:12px; border:1px solid #e7ebf2; background:#f8faff; border-radius:12px; }
.invite-intro svg { color:var(--blue); flex:0 0 auto; margin-top:2px; }
.invite-intro > div { display:grid; gap:3px; }
.invite-intro span { color:#718096; font-size:10px; line-height:1.45; }
.role-explainer { color:#657389; font-size:10px; line-height:1.5; border-left:3px solid #dce5ff; padding:7px 10px; background:#f8faff; border-radius:0 8px 8px 0; }
@media (max-width: 980px) {
  .team-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .team-row { grid-template-columns:42px minmax(0,1fr) 86px 180px 38px; }
}
@media (max-width: 720px) {
  .team-stats { grid-template-columns:1fr 1fr; }
  .team-panel-head { align-items:flex-start; flex-direction:column; }
  .team-row { grid-template-columns:42px minmax(0,1fr) 38px; }
  .team-invite-status, .team-role-cell { grid-column:2/4; }
  .team-role-cell { max-width:none; }
}


/* Certivo v0.6 - Activity Center, tasks and notifications */
.activity-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:16px; }
.activity-stat { min-height:78px; display:flex; align-items:center; gap:11px; padding:14px 16px; background:#fff; border:1px solid var(--line); border-radius:15px; }
.activity-stat > svg { width:34px; height:34px; padding:8px; border-radius:10px; flex:0 0 auto; }
.activity-stat > div { display:grid; gap:2px; }.activity-stat strong { font-size:22px; color:#152033; line-height:1; }.activity-stat span { color:#7d899c; font-size:10px; font-weight:700; }
.activity-stat.good > svg { color:var(--green); background:var(--green-bg); }.activity-stat.bad > svg { color:var(--red); background:var(--red-bg); }.activity-stat.neutral > svg { color:var(--blue); background:#eef3ff; }
.activity-tabs { display:flex; gap:5px; padding:4px; width:fit-content; background:#e9eef6; border-radius:11px; margin-bottom:14px; }
.activity-tabs button { border:0; background:transparent; color:#6d7a8f; padding:8px 12px; border-radius:8px; font-size:10px; font-weight:800; }
.activity-tabs button.active { background:#fff; color:#1c2a3f; box-shadow:0 2px 8px rgba(17,31,58,.08); }
.activity-panel { padding:0; overflow:hidden; }.activity-panel-head { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:18px 20px; border-bottom:1px solid #edf1f5; }
.activity-panel-head h2 { margin:0 0 4px; font-size:16px; }.activity-panel-head p { font-size:11px; }.activity-panel-head .button.small { min-height:34px; }
.attention-list { display:grid; }.attention-row { display:grid; grid-template-columns:38px minmax(0,1fr) auto; gap:12px; align-items:center; padding:13px 18px; border-bottom:1px solid #edf1f5; }
.attention-row:last-child { border-bottom:0; }.attention-row.read { opacity:.72; }.attention-row.unread { background:#fcfdff; }
.attention-icon { width:36px; height:36px; display:grid; place-items:center; border-radius:10px; background:#f2f5fa; color:#657389; }.attention-row.warn .attention-icon { background:var(--amber-bg); color:var(--amber); }.attention-row.bad .attention-icon { background:var(--red-bg); color:var(--red); }
.attention-copy { min-width:0; display:grid; gap:3px; }.attention-copy > div { display:flex; align-items:center; gap:7px; }.attention-copy strong { color:#1b293e; font-size:12px; }.attention-copy p { margin:0; color:#657389; font-size:10px; line-height:1.45; }.attention-copy small { color:#909bad; font-size:9px; }
.unread-dot { width:7px; height:7px; border-radius:999px; background:var(--blue); box-shadow:0 0 0 3px #edf2ff; }.attention-actions { display:flex; gap:6px; align-items:center; }.button.small { padding:7px 9px; min-height:32px; font-size:9px; }
.activity-empty { min-height:230px; display:grid; place-items:center; align-content:center; text-align:center; gap:7px; padding:30px; color:#7d899c; }.activity-empty svg { color:var(--green); }.activity-empty h3 { margin:2px 0; color:#26344a; font-size:15px; }.activity-empty p { font-size:11px; }
.task-filters { display:flex; gap:5px; padding:3px; background:#f3f6fa; border-radius:10px; overflow-x:auto; }.task-filters button { border:0; background:transparent; padding:7px 9px; border-radius:8px; color:#758297; font-size:9px; font-weight:800; white-space:nowrap; }.task-filters button.active { background:white; color:#22314a; box-shadow:0 2px 7px rgba(17,31,58,.07); }
.task-list { display:grid; }.task-row { display:grid; grid-template-columns:minmax(0,1fr) 130px 80px; gap:14px; align-items:center; padding:14px 18px; border-bottom:1px solid #edf1f5; border-left:3px solid #dfe5ef; }.task-row:last-child { border-bottom:0; }.task-row.priority-high { border-left-color:#f79009; }.task-row.priority-urgent { border-left-color:#d92d20; }.task-row.done { opacity:.65; }
.task-main { min-width:0; display:grid; gap:5px; }.task-title-line { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }.task-title-line strong { color:#19273c; font-size:12px; }.task-main p { margin:0; color:#6e7c90; font-size:10px; line-height:1.45; }.task-meta { display:flex; flex-wrap:wrap; gap:10px; color:#8995a7; font-size:9px; }.task-meta span { display:flex; align-items:center; gap:4px; }.overdue-text { color:var(--red)!important; font-weight:750; }
.priority-pill { display:inline-flex; padding:4px 6px; border-radius:999px; font-size:8px; font-weight:800; background:#f1f4f8; color:#64748b; }.priority-pill.high { background:var(--amber-bg); color:var(--amber); }.priority-pill.urgent { background:var(--red-bg); color:var(--red); }.priority-pill.low { background:var(--green-bg); color:var(--green); }
.task-status-select { min-height:36px; font-size:10px; }.task-row-actions { display:flex; justify-content:flex-end; gap:4px; }
.timeline { display:grid; padding:8px 20px 18px; }.timeline-item { display:grid; grid-template-columns:14px minmax(0,1fr); gap:10px; position:relative; padding:10px 0; }.timeline-item:not(:last-child)::before { content:''; position:absolute; left:5px; top:24px; bottom:-7px; width:1px; background:#e3e8f0; }.timeline-dot { width:11px; height:11px; border-radius:999px; background:#dce5ff; border:3px solid #f5f8ff; margin-top:3px; }.timeline-item > div:last-child { display:grid; gap:3px; }.timeline-item > div:last-child > div { display:flex; justify-content:space-between; gap:12px; }.timeline-item strong { color:#223047; font-size:11px; }.timeline-item span { color:#9aa5b6; font-size:9px; white-space:nowrap; }.timeline-item p { margin:0; color:#78869a; font-size:9px; line-height:1.4; }
.dashboard-attention { margin-top:16px; padding:16px 18px; display:grid; grid-template-columns:42px minmax(0,1fr) auto; gap:12px; align-items:center; border-color:#dfe6f1; }.dashboard-attention.has-urgent { border-color:#fecdca; background:#fffdfd; }.attention-widget-icon { width:40px; height:40px; display:grid; place-items:center; border-radius:11px; background:#eef3ff; color:var(--blue); }.has-urgent .attention-widget-icon { background:var(--red-bg); color:var(--red); }.attention-widget-copy h2 { margin:0 0 3px; font-size:14px; }.attention-widget-copy p { margin:0; color:#7b8799; font-size:10px; }
@media (max-width: 900px) { .activity-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }.task-row { grid-template-columns:minmax(0,1fr) 125px; }.task-row-actions { grid-column:2; }.dashboard-attention { grid-template-columns:42px minmax(0,1fr); }.dashboard-attention .button { grid-column:2; width:fit-content; } }
@media (max-width: 680px) { .activity-panel-head { align-items:stretch; flex-direction:column; }.activity-tabs { width:100%; overflow-x:auto; }.activity-tabs button { flex:1; white-space:nowrap; }.attention-row { grid-template-columns:36px minmax(0,1fr); }.attention-actions { grid-column:2; justify-content:flex-start; }.task-row { grid-template-columns:1fr; }.task-status-select, .task-row-actions { grid-column:1; }.task-row-actions { justify-content:flex-start; }.dashboard-attention { grid-template-columns:1fr; }.attention-widget-icon { display:none; }.dashboard-attention .button { grid-column:1; width:100%; justify-content:center; } }

/* Certivo v0.7 · Supplier profile & document packages */
.supplier-profile-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:18px; margin-bottom:18px; }
.supplier-summary { overflow:hidden; }
.supplier-summary-brand { display:flex; align-items:center; gap:12px; padding-bottom:18px; border-bottom:1px solid #edf1f5; }
.supplier-logo { width:46px; height:46px; border-radius:14px; display:grid; place-items:center; background:#eef3ff; color:var(--blue); }
.supplier-summary-brand span { display:block; color:#8591a3; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.supplier-summary-brand h2 { margin:3px 0 0; font-size:20px; }
.supplier-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; padding:16px 0; border-bottom:1px solid #edf1f5; }
.supplier-metrics > div { min-width:0; padding:10px; border:1px solid #e8edf4; border-radius:11px; background:#fafcff; }
.supplier-metrics strong { display:block; font-size:20px; color:#162238; }
.supplier-metrics span { display:block; color:#7f8b9d; font-size:9px; margin-top:2px; line-height:1.35; }
.verified-facts-list { display:grid; gap:0; margin-top:8px; }
.verified-facts-list > div { display:grid; grid-template-columns:minmax(120px,.8fr) minmax(0,1.2fr); gap:14px; padding:9px 0; border-bottom:1px solid #f0f3f7; }
.verified-facts-list > div:last-of-type { border-bottom:0; }
.verified-facts-list span { color:#7a8799; font-size:10px; text-transform:uppercase; font-weight:750; letter-spacing:.03em; }
.verified-facts-list strong { color:#26354b; font-size:12px; overflow-wrap:anywhere; text-align:right; }
.verified-facts-list small { display:block; margin-top:10px; color:#8b96a7; font-size:10px; }
.package-builder { display:grid; gap:14px; }
.package-builder .panel-head > svg { color:var(--blue); }
.package-meta-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.package-switch { grid-template-columns:18px minmax(0,1fr); align-items:flex-start; gap:9px; padding:11px 12px; background:#f8faff; border:1px solid #e3e9f5; border-radius:11px; cursor:pointer; }
.package-switch input { width:16px; height:16px; margin:2px 0 0; }
.package-switch span { display:grid; gap:2px; }
.package-switch strong { color:#314058; font-size:11px; }
.package-switch small { color:#8793a5; font-size:9px; font-weight:500; }
.package-preview-counts { display:flex; gap:8px; flex-wrap:wrap; }
.package-preview-counts span { display:inline-flex; align-items:center; gap:5px; padding:7px 9px; border-radius:9px; background:#f2f5fa; color:#59677d; font-size:10px; font-weight:700; }
.package-actions { display:flex; gap:9px; flex-wrap:wrap; padding-top:2px; }
.package-actions .button { flex:1; min-width:180px; }
.package-sections { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.package-selection.package-documents { grid-column:1 / -1; }
.package-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:12px; }
.package-section-head h2 { margin:0 0 4px; }
.package-section-head p { margin:0; color:var(--muted); font-size:11px; }
.package-mini-actions { display:flex; gap:4px; flex-wrap:wrap; justify-content:flex-end; }
.package-item-list { display:grid; gap:7px; }
.package-item { display:grid; grid-template-columns:18px minmax(0,1fr) auto; align-items:center; gap:10px; padding:10px 11px; border:1px solid #e6ebf2; border-radius:11px; background:#fff; cursor:pointer; }
.package-item:hover { border-color:#ccd6e6; background:#fcfdff; }
.package-item input { width:15px; height:15px; margin:0; }
.package-item > div { min-width:0; display:grid; gap:2px; }
.package-item strong { color:#26344a; font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.package-item span { color:#8591a4; font-size:9px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.package-item > small { color:#7e8a9c; font-size:9px; text-align:right; white-space:nowrap; }
.package-item-warning { background:#fffcf6; border-color:#f1dfbf; }
.package-item-warning > small { color:#9d6a1c; }
.package-item input:disabled { cursor:not-allowed; opacity:.45; }

@media (max-width: 1050px) {
  .supplier-profile-grid { grid-template-columns:1fr; }
  .supplier-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 820px) {
  .package-sections { grid-template-columns:1fr; }
  .package-selection.package-documents { grid-column:auto; }
  .package-meta-grid { grid-template-columns:1fr; }
}
@media (max-width: 620px) {
  .supplier-metrics { grid-template-columns:1fr 1fr; }
  .package-section-head { flex-direction:column; }
  .package-mini-actions { justify-content:flex-start; }
  .package-item { grid-template-columns:18px minmax(0,1fr); }
  .package-item > small { grid-column:2; text-align:left; white-space:normal; }
  .package-actions { flex-direction:column; }
  .package-actions .button { width:100%; }
}

/* Certivo v0.8 · Secure sharing & customer portal */
.share-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(420px,.9fr); gap:18px; margin-bottom:18px; }
.share-builder { display:grid; gap:14px; }
.share-switches { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.share-created { display:grid; grid-template-columns:42px minmax(0,1fr) auto; align-items:center; gap:12px; margin-bottom:18px; border-color:#cfe7dc; background:#fbfffd; }
.share-created-icon { width:40px; height:40px; border-radius:12px; display:grid; place-items:center; background:var(--green-bg); color:var(--green); }
.share-created-copy { min-width:0; display:grid; gap:4px; }
.share-created-copy strong { color:#173326; font-size:13px; }
.share-created-copy span { color:#637369; font-size:10px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.share-created-actions { display:flex; gap:7px; }
.share-history { padding:0; overflow:hidden; }
.share-history > .panel-head { padding:20px; border-bottom:1px solid #edf1f5; }
.share-list { display:grid; }
.share-row { display:grid; grid-template-columns:36px minmax(0,1fr) 150px 112px; gap:11px; align-items:center; padding:13px 16px; border-bottom:1px solid #edf1f5; }
.share-row:last-child { border-bottom:0; }
.share-row:hover { background:#fbfcfe; }
.share-row.revoked { opacity:.55; background:#fafafa; }
.share-row-icon { width:34px; height:34px; display:grid; place-items:center; border-radius:10px; background:#eef3ff; color:var(--blue); }
.share-row-main { min-width:0; display:grid; gap:2px; }
.share-row-main strong { color:#223149; font-size:11px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.share-row-main span { color:#738096; font-size:9px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.share-row-main small { color:#9aa5b5; font-size:8.5px; }
.share-row-stats { display:grid; gap:5px; }
.share-row-stats span { display:flex; align-items:center; gap:5px; color:#6e7c90; font-size:9px; }
.share-row-actions { display:flex; justify-content:flex-end; gap:3px; }
.share-row-actions a.icon-button { display:grid; }
.share-selections { margin-top:0; }

@media (max-width:1100px) {
  .share-layout { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .share-switches { grid-template-columns:1fr; }
  .share-created { grid-template-columns:42px minmax(0,1fr); }
  .share-created-actions { grid-column:2; }
  .share-row { grid-template-columns:36px minmax(0,1fr); }
  .share-row-stats, .share-row-actions { grid-column:2; }
  .share-row-stats { display:flex; flex-wrap:wrap; gap:10px; }
  .share-row-actions { justify-content:flex-start; }
}
@media (max-width:520px) {
  .share-created-actions { display:grid; grid-template-columns:1fr 1fr; }
  .share-created-actions .button { width:100%; }
}

/* Certivo v0.9 - UX & product finish */
.app-shell.v130 { grid-template-columns: 258px minmax(0,1fr); }
.workspace { min-width:0; }
.app-topbar { height: 58px; position: sticky; top:0; z-index:18; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 clamp(18px,3vw,36px); border-bottom:1px solid #e7ebf2; background:rgba(245,247,251,.92); backdrop-filter:blur(14px); }
.topbar-left,.topbar-actions,.breadcrumb { display:flex; align-items:center; gap:10px; }
.breadcrumb { color:#8a96a8; font-size:11px; }.breadcrumb b{color:#c0c8d3;font-weight:500}.breadcrumb strong{color:#2f3b50;font-size:12px}
.release-chip { padding:5px 8px; border-radius:999px; background:#eef3ff; color:#315efb; font-size:9px; font-weight:800; letter-spacing:.06em; }
.topbar-search { min-width:230px; height:34px; display:flex; align-items:center; gap:8px; border:1px solid #dce3ed; background:white; color:#68758a; border-radius:9px; padding:0 9px; font-size:11px; }
.topbar-search span{flex:1;text-align:left}.topbar-search kbd,.command-hint kbd,.help-shortcuts kbd { border:1px solid #dde3ec; background:#f8fafc; border-radius:6px; padding:2px 6px; color:#778398; font-size:9px; font-family:inherit; box-shadow:0 1px 0 #e6eaf0; }
.topbar-help,.mobile-menu,.mobile-close { width:34px;height:34px;border:1px solid #dce3ed;background:white;color:#617087;border-radius:9px;display:grid;place-items:center; }
.mobile-menu,.mobile-close { display:none; }
.nav-label{min-width:0}.nav-soon{margin-left:auto;font-style:normal;font-size:8px;text-transform:uppercase;letter-spacing:.05em;padding:3px 5px;border-radius:999px;background:rgba(255,255,255,.07);color:#7f8ca1}

.command-backdrop,.help-backdrop { position:fixed;inset:0;z-index:100;background:rgba(7,13,24,.42);backdrop-filter:blur(3px); }
.command-backdrop { display:grid;place-items:start center;padding:11vh 16px 20px; }
.command-palette { width:min(680px,100%);max-height:min(650px,78vh);display:flex;flex-direction:column;overflow:hidden;background:white;border:1px solid #dfe5ee;border-radius:18px;box-shadow:0 30px 90px rgba(7,13,24,.24); }
.command-search { min-height:58px;display:flex;align-items:center;gap:10px;padding:0 14px;border-bottom:1px solid #edf0f5;color:#8490a3; }
.command-search input { flex:1;min-width:0;border:0;outline:0;font-size:15px;color:#17243a;background:transparent; }
.command-hint { display:flex;justify-content:space-between;gap:12px;padding:8px 14px;border-bottom:1px solid #edf0f5;background:#fbfcfe;color:#8a96a8;font-size:9px; }
.command-results{padding:7px;overflow:auto}.command-result{width:100%;border:0;background:transparent;display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;text-align:left;padding:9px;border-radius:10px;color:#314057}.command-result:hover,.command-result:focus{outline:0;background:#f2f6ff}.command-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#f0f4fb;color:#536a96}.command-copy{display:grid;gap:2px;min-width:0}.command-copy strong{font-size:12px;color:#1b2a40;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.command-copy small{font-size:9px;color:#8b97a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.command-meta{font-size:9px;color:#8390a4;background:#f5f7fa;padding:4px 6px;border-radius:999px}.command-loading,.command-empty{padding:28px;text-align:center;color:#8793a5;font-size:11px}

.help-backdrop{display:flex;justify-content:flex-end}.help-drawer{width:min(410px,92vw);height:100%;overflow:auto;background:white;border-left:1px solid #e3e8f0;box-shadow:-20px 0 60px rgba(12,22,39,.18);padding:24px}.help-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.help-head h2{margin:5px 0 0;font-size:23px;letter-spacing:-.035em}.help-lead{color:#718096;font-size:12px;line-height:1.55;margin:12px 0 20px}.help-steps{display:grid;gap:8px}.help-steps button{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;text-align:left;border:1px solid #e7ebf1;background:#fbfcfe;border-radius:12px;padding:11px}.help-steps button:hover{border-color:#cbd8ff;background:#f6f8ff}.help-step-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#eef3ff;color:#315efb}.help-steps button>span:last-child{display:grid;gap:3px}.help-steps strong{font-size:11px;color:#223049}.help-steps small{font-size:9px;color:#8390a3;line-height:1.45}.help-shortcuts{margin:20px 0;padding:14px;border:1px solid #e7ebf1;border-radius:13px;background:#fafbfd;display:grid;gap:9px}.help-section-title{display:flex;align-items:center;gap:7px;color:#34435a;font-size:11px;font-weight:750;margin-bottom:2px}.help-shortcuts>div:not(.help-section-title){display:flex;justify-content:space-between;gap:12px;color:#6c798d;font-size:10px}.help-principle{margin-top:15px;display:flex;gap:10px;padding:12px;border-radius:12px;background:#f2fbf7;border:1px solid #d9eee6;color:#12845f}.help-principle>div{display:grid;gap:2px}.help-principle strong{font-size:10px;color:#285746}.help-principle span{font-size:9px;color:#67877b;line-height:1.45}
.release-toast{position:fixed;right:22px;bottom:22px;z-index:80;width:min(390px,calc(100vw - 32px));display:grid;grid-template-columns:38px minmax(0,1fr) 32px;gap:10px;align-items:center;padding:12px;background:#0f1a2d;color:white;border:1px solid rgba(255,255,255,.1);border-radius:14px;box-shadow:0 18px 50px rgba(11,18,32,.25)}.release-toast-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:rgba(85,212,159,.13);color:#55d49f}.release-toast>div{display:grid;gap:2px}.release-toast strong{font-size:11px}.release-toast span{font-size:9px;color:#a6b1c2;line-height:1.4}.release-toast .icon-button{color:#8e9aab}

.dashboard-welcome{display:flex;align-items:center;justify-content:space-between;gap:22px;margin:-6px 0 18px;padding:18px 20px;border:1px solid #dfe6f4;border-radius:18px;background:radial-gradient(circle at 80% -20%,rgba(49,94,251,.15),transparent 38%),linear-gradient(135deg,#fff,#f8faff);box-shadow:0 8px 26px rgba(17,31,58,.04)}.welcome-kicker{display:block;color:#315efb;font-size:9px;font-weight:800;letter-spacing:.12em}.dashboard-welcome h2{margin:5px 0 4px;font-size:18px;letter-spacing:-.03em}.dashboard-welcome p{margin:0;color:#718096;font-size:11px}.welcome-score{width:90px;height:62px;flex:0 0 auto;border-left:1px solid #e3e9f3;display:grid;place-items:center;align-content:center}.welcome-score strong{font-size:24px;letter-spacing:-.04em;color:#1a2a44}.welcome-score span{font-size:9px;color:#8692a5;text-transform:uppercase;font-weight:800}
.quick-actions{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:18px}.quick-actions button{display:grid;grid-template-columns:38px minmax(0,1fr) 18px;align-items:center;gap:9px;text-align:left;border:1px solid #e2e7ef;background:white;border-radius:13px;padding:11px;box-shadow:0 4px 14px rgba(17,31,58,.025)}.quick-actions button:hover{border-color:#cbd7fb;transform:translateY(-1px)}.quick-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#eef3ff;color:#315efb}.quick-actions button>span:nth-child(2){display:grid;gap:2px}.quick-actions strong{font-size:10px;color:#25344b}.quick-actions small{font-size:9px;color:#8894a6}.quick-actions>button>svg{color:#a1acbb}.setup-count{font-size:10px;font-weight:800;color:#315efb;background:#eef3ff;border-radius:999px;padding:5px 8px}.setup-list{display:grid;margin-top:11px}.setup-row{display:grid;grid-template-columns:20px minmax(0,1fr) 16px;align-items:center;gap:9px;text-align:left;border:0;border-bottom:1px solid #eef1f5;background:transparent;padding:10px 2px;color:#8b97a8}.setup-row:last-child{border-bottom:0}.setup-row>span{display:grid;gap:2px}.setup-row strong{font-size:10px;color:#334158}.setup-row small{font-size:9px;color:#8b97a8}.setup-row.done>svg:first-child{color:#12845f}.setup-row:not(.done)>svg:first-child{color:#acb5c2}.setup-row:hover strong{color:#315efb}.dashboard-grid-lower{margin-top:18px}

.parked-feature{display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;align-items:start;background:linear-gradient(135deg,#fff,#f8faff);border-color:#dce4f4}.parked-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:#eef3ff;color:#315efb}.parked-copy h2{margin:7px 0 6px;font-size:20px}.parked-copy p{line-height:1.6;max-width:900px}.status.neutral{display:inline-flex;color:#536b9f;background:#edf2ff;border-radius:999px;padding:5px 8px;font-size:8px;font-weight:800;letter-spacing:.06em}.parked-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:5px}.parked-stats>div{display:grid;grid-template-columns:28px auto;grid-template-rows:auto auto;column-gap:7px;align-items:center;padding:10px;border:1px solid #e8ecf2;background:white;border-radius:11px}.parked-stats svg{grid-row:1/3;color:#6b7ca1}.parked-stats strong{font-size:15px;color:#223149}.parked-stats span{font-size:8px;color:#8a96a8}.share-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.feature-list{display:grid;gap:9px;margin-top:15px}.feature-list>div{display:flex;align-items:center;gap:8px;font-size:10px;color:#5d6b80}.feature-list svg{color:#12845f}.parked-tip{display:flex;gap:10px;margin:15px 0;padding:12px;border-radius:11px;background:#f6f8ff;border:1px solid #e3e9ff;color:#315efb}.parked-tip>div{display:grid;gap:2px}.parked-tip strong{font-size:10px;color:#33476d}.parked-tip span{font-size:9px;color:#7182a5}.parked-note{display:flex;align-items:center;gap:7px;margin-top:12px;color:#8a96a8;font-size:9px}

.empty-state{border-style:dashed!important;background:linear-gradient(180deg,#fff,#fbfcfe)!important}.skeleton-lines{border-radius:10px;min-height:100px;background:linear-gradient(90deg,#f2f4f8 25%,#fafbfc 37%,#f2f4f8 63%);background-size:400% 100%;animation:skeletonWave 1.35s ease infinite}@keyframes skeletonWave{0%{background-position:100% 0}100%{background-position:0 0}}

@media(max-width:1050px){.quick-actions{grid-template-columns:1fr 1fr}.parked-stats{grid-template-columns:1fr 1fr}}
@media(max-width:900px){
  .app-shell.v130{display:block}.workspace{min-height:100vh}.sidebar{position:fixed!important;left:0;top:0;bottom:0;width:min(310px,86vw);height:100vh!important;z-index:55!important;display:flex!important;transform:translateX(-105%);transition:transform .22s ease;padding:18px 16px!important;overflow:auto}.sidebar.mobile-open{transform:translateX(0)}.sidebar .brand span,.sidebar .sidebar-card,.sidebar .sidebar-footer{display:initial}.sidebar .brand{display:flex}.sidebar .brand>div:last-of-type{display:flex}.sidebar .org-switcher{margin:22px 0 14px;width:100%}.sidebar .side-nav{display:grid!important;overflow:visible!important;padding-top:0!important}.sidebar .side-nav a{font-size:13px!important;padding:10px 11px!important}.sidebar-card{display:grid!important;margin-top:auto}.sidebar-footer{display:flex!important}.mobile-overlay{position:fixed;inset:0;z-index:50;border:0;background:rgba(4,9,18,.46)}.mobile-menu,.mobile-close{display:grid}.mobile-close{margin-left:auto;border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.04);color:#aab6c7}.app-topbar{height:54px;padding:0 14px}.breadcrumb span,.breadcrumb b{display:none}.topbar-search{min-width:0;width:38px;padding:0;justify-content:center}.topbar-search span,.topbar-search kbd,.release-chip{display:none}.topbar-actions{gap:7px}.page{padding-top:22px}.dashboard-welcome{margin-top:0}.share-preview-grid{grid-template-columns:1fr}}
@media(max-width:620px){.quick-actions{grid-template-columns:1fr}.dashboard-welcome{align-items:flex-start}.welcome-score{width:72px}.parked-stats{grid-template-columns:1fr 1fr}.parked-feature{grid-template-columns:46px minmax(0,1fr)}.parked-icon{width:44px;height:44px;border-radius:12px}.release-toast{right:16px;bottom:16px}.command-backdrop{padding-top:7vh}.command-meta{display:none}.command-result{grid-template-columns:36px minmax(0,1fr)}}

/* Certivo v1.0 · Report center */
.report-template-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:18px}.report-template{min-width:0;display:grid;grid-template-columns:40px minmax(0,1fr) 18px;gap:10px;align-items:center;text-align:left;border:1px solid #e1e6ee;background:#fff;border-radius:14px;padding:12px;color:#34435a;box-shadow:0 4px 14px rgba(17,31,58,.025)}.report-template:hover{border-color:#cad6fb;transform:translateY(-1px)}.report-template.active{border-color:#b9c9ff;background:linear-gradient(135deg,#fff,#f5f7ff);box-shadow:0 8px 22px rgba(49,94,251,.08)}.report-template-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#edf2ff;color:#315efb}.report-template>span:nth-child(2){min-width:0;display:grid;gap:3px}.report-template strong{font-size:11px;color:#25344b}.report-template small{font-size:9px;line-height:1.4;color:#8591a4}.report-template>svg{color:#315efb}.report-workspace{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(420px,1.18fr);gap:16px;align-items:start}.report-controls,.branding-panel{display:grid;gap:14px}.report-form{display:grid;grid-template-columns:1fr 1fr;gap:11px}.report-form label,.branding-grid label{display:grid;gap:6px;color:#617087;font-size:10px;font-weight:700}.report-form label.full{grid-column:1/-1}.report-form input,.report-form textarea,.branding-grid input,.branding-grid select{width:100%;border:1px solid #dfe5ee;background:white;border-radius:10px;padding:9px 10px;color:#27364d;outline:0}.report-form textarea{min-height:84px;resize:vertical}.report-form input:focus,.report-form textarea:focus,.branding-grid input:focus,.branding-grid select:focus{border-color:#9db2ff;box-shadow:0 0 0 3px rgba(49,94,251,.08)}.report-actions{display:flex;gap:8px;flex-wrap:wrap}.report-preview{position:relative;overflow:hidden;min-height:520px;padding:0!important;background:#fff}.report-preview-accent{height:5px;width:100%}.report-preview-head{display:flex;align-items:center;gap:12px;padding:24px 24px 16px;border-bottom:1px solid #edf0f5}.report-preview-head img{width:52px;height:40px;object-fit:contain;border:1px solid #e7ebf1;border-radius:9px;background:white}.report-logo-placeholder{width:46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#eef3ff;color:#315efb}.report-preview-head>div{display:grid;gap:2px}.report-preview-head small{font-size:8px;color:#8995a6;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.report-preview-head h2{margin:0;font-size:20px;letter-spacing:-.03em}.report-preview-head p{font-size:10px}.report-preview-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-bottom:1px solid #edf0f5;background:#fbfcfe}.report-preview-meta span{padding:13px 16px;display:grid;gap:3px;color:#8a96a7;font-size:8px;text-transform:uppercase;font-weight:800;letter-spacing:.05em;border-right:1px solid #edf0f5}.report-preview-meta span:last-child{border-right:0}.report-preview-meta strong{font-size:18px;letter-spacing:-.03em;color:#27364d;text-transform:none}.report-preview-list{padding:16px 24px 22px;display:grid}.report-preview-list>div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #f0f2f6}.report-preview-list>div:last-child{border-bottom:0}.report-preview-list strong{font-size:10px;color:#344158}.report-preview-list span{font-size:9px;color:#7f8b9e;text-align:right}.report-preview-foot{margin-top:auto;border-top:1px solid #edf0f5;padding:12px 24px;display:flex;justify-content:space-between;gap:16px;color:#929dae;font-size:8px}.report-preview-foot span{white-space:nowrap}.branding-panel{grid-column:1/-1}.branding-grid{display:grid;grid-template-columns:1fr 1fr 180px;gap:12px;align-items:end}.branding-logo{grid-column:1/3}.branding-logo-row{display:flex;gap:8px;align-items:center}.branding-logo-row input[type=file]{padding:7px;background:#fbfcfe}.branding-check{display:flex!important;grid-template-columns:18px 1fr!important;align-items:center!important;gap:7px!important;min-height:38px}.branding-check input{width:15px!important;height:15px}.branding-actions{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap}.reports-page .notice{margin-bottom:16px}
@media(max-width:1180px){.report-template-grid{grid-template-columns:1fr 1fr}.report-workspace{grid-template-columns:1fr}.branding-grid{grid-template-columns:1fr 1fr}.branding-logo{grid-column:1/-1}}
@media(max-width:1050px){.quick-actions{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:720px){.report-template-grid{grid-template-columns:1fr}.report-form,.branding-grid{grid-template-columns:1fr}.report-form label.full,.branding-logo,.branding-actions{grid-column:auto}.report-preview-meta{grid-template-columns:1fr}.report-preview-meta span{border-right:0;border-bottom:1px solid #edf0f5}.report-preview-meta span:last-child{border-bottom:0}.report-preview-foot{flex-direction:column}.branding-logo-row{align-items:stretch;flex-direction:column}}
@media(max-width:620px){.quick-actions{grid-template-columns:1fr}}

/* Certivo v1.1 · Professional settings and branded customer portal */
.settings-pro-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:16px;align-items:start}.settings-nav{position:sticky;top:74px;background:#fff;border:1px solid #e1e6ee;border-radius:16px;padding:10px;box-shadow:0 5px 18px rgba(17,31,58,.025)}.settings-nav-title{display:grid;gap:2px;padding:10px 10px 12px;border-bottom:1px solid #edf0f4;margin-bottom:6px}.settings-nav-title strong{font-size:12px;color:#26344a}.settings-nav-title span{font-size:9px;color:#8995a7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-nav>button{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:9px;text-align:left;border:0;background:transparent;border-radius:10px;padding:9px;color:#718096}.settings-nav>button:hover{background:#f7f9fc}.settings-nav>button.active{background:#eef3ff;color:#315efb}.settings-nav-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:#f3f5f9;color:#697a94}.settings-nav>button.active .settings-nav-icon{background:#fff;color:#315efb;box-shadow:0 2px 8px rgba(49,94,251,.08)}.settings-nav>button>span:nth-child(2){display:grid;gap:2px;min-width:0}.settings-nav>button strong{font-size:10px;color:#324057}.settings-nav>button.active strong{color:#2245bd}.settings-nav>button small{font-size:8.5px;color:#8b97a8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-nav-meta{display:flex;align-items:center;gap:7px;margin:8px 8px 2px;padding-top:10px;border-top:1px solid #edf0f4;color:#8a96a8;font-size:8.5px;min-width:0}.settings-nav-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-content{min-width:0}.settings-main-card{display:grid;gap:16px}.settings-section-head{display:flex;gap:11px;align-items:flex-start}.settings-section-icon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:11px;background:#eef3ff;color:#315efb}.settings-section-icon.good{background:#eaf7f2;color:#12845f}.settings-section-head h2{margin:2px 0 3px;font-size:16px;letter-spacing:-.025em;color:#223149}.settings-section-head p{font-size:9.5px;line-height:1.5;color:#7f8b9e}.settings-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.settings-field{display:grid;gap:6px;align-content:start}.settings-field.full{grid-column:1/-1}.settings-field-label{font-size:9.5px;font-weight:750;color:#5b697e}.settings-field input,.settings-field select,.settings-field textarea{width:100%;border:1px solid #dce3ed;background:#fff;border-radius:10px;padding:9px 10px;color:#27364d;outline:0;min-height:39px}.settings-field textarea{resize:vertical;min-height:82px}.settings-field input:focus,.settings-field select:focus,.settings-field textarea:focus{border-color:#9eb3ff;box-shadow:0 0 0 3px rgba(49,94,251,.08)}.settings-field input:disabled{background:#f6f7f9;color:#8c97a7}.settings-field small{font-size:8.5px;color:#8a96a8;line-height:1.45}.settings-readonly{min-height:39px;display:flex;align-items:center;border:1px solid #e5e9ef;background:#f8f9fb;border-radius:10px;padding:9px 10px;color:#5d6b7f;font-size:10px}.settings-readonly.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:8.5px;overflow-wrap:anywhere}.settings-actions{display:flex;gap:8px;flex-wrap:wrap}.settings-info-strip,.settings-storage-note{display:flex;gap:10px;align-items:flex-start;border-radius:11px;padding:11px 12px}.settings-info-strip{background:#f4f8ff;border:1px solid #dfe8ff;color:#315efb}.settings-info-strip>div{display:grid;gap:2px}.settings-info-strip strong{font-size:9.5px;color:#3d4f75}.settings-info-strip span{font-size:8.5px;line-height:1.45;color:#7585a8}.settings-storage-note{background:#fafbfd;border:1px solid #e7ebf1;color:#8290a4;font-size:8.5px;line-height:1.5}.settings-portal-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:16px;align-items:start}.settings-toggle-list{display:grid;border:1px solid #e7ebf1;border-radius:12px;overflow:hidden}.settings-toggle{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:12px;align-items:center;padding:11px 12px;border-bottom:1px solid #edf0f4;cursor:pointer}.settings-toggle:last-child{border-bottom:0}.settings-toggle-copy{display:grid;gap:2px}.settings-toggle-copy strong{font-size:9.5px;color:#334158}.settings-toggle-copy small{font-size:8.5px;color:#8a96a8;line-height:1.4}.settings-toggle input{position:absolute;opacity:0;pointer-events:none}.settings-switch{width:32px;height:18px;border-radius:999px;background:#dce2eb;position:relative;transition:.16s}.settings-switch:before{content:"";position:absolute;width:14px;height:14px;border-radius:999px;background:#fff;left:2px;top:2px;box-shadow:0 1px 3px rgba(0,0,0,.18);transition:.16s}.settings-toggle input:checked+.settings-switch{background:#315efb}.settings-toggle input:checked+.settings-switch:before{transform:translateX(14px)}.portal-settings-preview{position:sticky;top:74px;overflow:hidden;padding:0!important;border-top:4px solid var(--preview-accent,#315efb)}.portal-settings-preview-top{display:flex;gap:11px;align-items:center;padding:18px 18px 12px}.portal-settings-preview-top img,.portal-settings-preview-logo{width:46px;height:46px;border-radius:12px;border:1px solid #e5e9ef;background:#fff;object-fit:contain}.portal-settings-preview-logo{display:grid;place-items:center;background:color-mix(in srgb,var(--preview-accent) 9%,white);color:var(--preview-accent);font-weight:900}.portal-settings-preview-top>div{display:grid;gap:2px;min-width:0}.portal-settings-preview-top small{font-size:8px;color:var(--preview-accent);font-weight:800;text-transform:uppercase;letter-spacing:.09em}.portal-settings-preview-top strong{font-size:13px;color:#25344b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-settings-preview>p{margin:0;padding:0 18px 14px;color:#768397;font-size:9px;line-height:1.5}.portal-settings-preview-badges{display:flex;gap:6px;flex-wrap:wrap;padding:0 18px 14px}.portal-settings-preview-badges span{display:flex;align-items:center;gap:4px;padding:5px 7px;border-radius:999px;background:#f2f7f5;color:#12845f;font-size:8px;font-weight:750}.portal-settings-preview-contact{display:grid;gap:2px;margin:0 18px 14px;padding:11px;border:1px solid #e7ebf1;border-radius:11px;background:#fafbfd}.portal-settings-preview-contact small{font-size:7.5px;text-transform:uppercase;font-weight:800;color:#919cac}.portal-settings-preview-contact strong{font-size:9.5px;color:#34435a}.portal-settings-preview-contact span{font-size:8.5px;color:#7d8a9e;overflow-wrap:anywhere}.portal-settings-preview-foot{padding:10px 18px;border-top:1px solid #edf0f4;color:#9aa5b5;font-size:7.5px;text-align:center}.settings-link-cards{display:grid;grid-template-columns:1fr 1fr;gap:9px}.settings-link-cards button{display:grid;grid-template-columns:34px minmax(0,1fr) 16px;gap:9px;align-items:center;text-align:left;border:1px solid #e5e9ef;background:#fbfcfe;border-radius:11px;padding:10px;color:#6f7e92}.settings-link-cards button:hover{border-color:#cbd8ff;background:#f6f8ff}.settings-link-cards button>span{display:grid;gap:2px}.settings-link-cards strong{font-size:9.5px;color:#344158}.settings-link-cards small{font-size:8.5px;color:#8995a7}.settings-security-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-system-card{grid-column:1/-1}.security-check-list{display:grid}.security-check-list>div{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f4}.security-check-list>div:last-child{border-bottom:0}.security-check-list svg{color:#12845f}.security-check-list>div>span{display:grid;gap:2px}.security-check-list strong{font-size:9.5px;color:#334158}.security-check-list small{font-size:8.5px;color:#8995a7}.security-check-list b{font-size:8px;color:#12845f;background:#eaf7f2;border-radius:999px;padding:5px 7px}.settings-detail-list{display:grid}.settings-detail-list>div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid #edf0f4}.settings-detail-list>div:last-child{border-bottom:0}.settings-detail-list span{font-size:8.5px;color:#8995a7}.settings-detail-list strong{font-size:9px;color:#3b495d;text-align:right;overflow-wrap:anywhere}.good-text{color:#12845f!important}
@media(max-width:1120px){.settings-portal-layout{grid-template-columns:1fr}.portal-settings-preview{position:static}.settings-security-grid{grid-template-columns:1fr}.settings-system-card{grid-column:auto}}
@media(max-width:900px){.settings-pro-layout{grid-template-columns:1fr}.settings-nav{position:static;display:grid;grid-template-columns:1fr 1fr;padding:8px}.settings-nav-title,.settings-nav-meta{grid-column:1/-1}.settings-nav>button{grid-template-columns:32px minmax(0,1fr)}.settings-nav>button>svg:last-child{display:none}}
@media(max-width:620px){.settings-form-grid,.settings-link-cards{grid-template-columns:1fr}.settings-field.full{grid-column:auto}.settings-nav{grid-template-columns:1fr}.settings-nav-title,.settings-nav-meta{grid-column:auto}.settings-actions{display:grid}.settings-actions .button{width:100%}.security-check-list>div{grid-template-columns:22px minmax(0,1fr)}.security-check-list b{grid-column:2;width:max-content}.settings-detail-list>div{display:grid;gap:3px}.settings-detail-list strong{text-align:left}}

/* ========================================================================== */
/* Certivo v1.2.0 — Supplier Readiness Guide                                 */
/* ========================================================================== */
.sidebar-guide-card{width:100%;text-align:left;cursor:pointer;font:inherit;color:inherit}.sidebar-guide-card:hover{border-color:rgba(122,151,255,.28);background:rgba(122,151,255,.075)}
.help-guide-button{margin:2px 0 10px;justify-content:center}
.dashboard-next-button{margin-top:11px}.welcome-score-guide strong{font-size:20px}.quick-actions-six{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-guide-progress{height:7px;margin:12px 0 8px;border-radius:999px;background:#edf1f6;overflow:hidden}.dashboard-guide-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#315efb,#6b8cff)}.dashboard-guide-number{width:22px;height:22px!important;display:grid!important;place-items:center;border-radius:999px;background:#eef3ff;color:#315efb!important;font-size:9px!important;font-weight:800}.dashboard-guide-list .setup-row{grid-template-columns:24px minmax(0,1fr) 16px}.dashboard-guide-open{margin-top:10px;justify-content:center}.dashboard-guide-complete{display:flex;align-items:center;gap:10px;margin:15px 0;padding:12px;border:1px solid #d8efe6;border-radius:12px;background:#f4fbf8;color:#12845f}.dashboard-guide-complete>div{display:grid;gap:2px}.dashboard-guide-complete strong{font-size:11px;color:#1f4f40}.dashboard-guide-complete span{font-size:9px;color:#6d8c82}

.supplier-guide-page{max-width:1480px}.guide-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 170px;align-items:center;gap:30px;padding:25px 28px;margin-bottom:16px;border:1px solid #dce5f5;border-radius:20px;background:radial-gradient(circle at 88% 12%,rgba(49,94,251,.16),transparent 34%),linear-gradient(135deg,#fff,#f8faff);box-shadow:0 10px 32px rgba(17,31,58,.045);overflow:hidden}.guide-hero.complete{border-color:#d6ebdf;background:radial-gradient(circle at 88% 12%,rgba(18,132,95,.13),transparent 34%),linear-gradient(135deg,#fff,#f7fbf9)}.guide-hero h2{margin:6px 0 6px;font-size:24px;letter-spacing:-.04em;color:#17243a}.guide-hero p{max-width:820px;margin:0;color:#6f7d90;font-size:12px;line-height:1.6}.guide-progress-track{height:8px;margin-top:18px;border-radius:999px;background:#e8edf5;overflow:hidden}.guide-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#315efb,#6b8cff)}.guide-hero.complete .guide-progress-track span{background:linear-gradient(90deg,#12845f,#3aa67e)}.guide-progress-meta{display:flex;justify-content:space-between;gap:12px;margin-top:7px;font-size:9px}.guide-progress-meta strong{color:#33445f}.guide-progress-meta span{color:#8b97a8}.guide-score-dial{position:relative;--guide-score:0deg;width:132px;height:132px;margin-left:auto;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#315efb var(--guide-score),#e9eef7 0);box-shadow:inset 0 0 0 1px rgba(49,94,251,.05)}.guide-score-dial:before{content:"";position:absolute;width:104px;height:104px;border-radius:50%;background:white;box-shadow:0 6px 18px rgba(17,31,58,.06)}.guide-score-dial>div{position:relative;z-index:1;display:grid;text-align:center}.guide-score-dial strong{font-size:25px;letter-spacing:-.05em;color:#1d2b43}.guide-score-dial span{font-size:8px;text-transform:uppercase;font-weight:800;letter-spacing:.1em;color:#8a96a8}
.guide-next-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:15px;margin-bottom:14px;padding:16px 18px;border:1px solid #d8e2ff;border-radius:16px;background:#f7f9ff}.guide-next-card.complete{border-color:#d5ebdf;background:#f5fbf8}.guide-next-icon{width:44px;height:44px;display:grid;place-items:center;border-radius:13px;background:#e9efff;color:#315efb}.guide-next-card.complete .guide-next-icon{background:#e6f5ee;color:#12845f}.guide-next-copy{display:grid;gap:3px}.guide-next-copy>span{font-size:8px;font-weight:850;letter-spacing:.1em;color:#315efb}.guide-next-card.complete .guide-next-copy>span{color:#12845f}.guide-next-copy h2{margin:0;font-size:15px;color:#263751}.guide-next-copy p{margin:0;color:#6f7f94;font-size:10px;line-height:1.5}.guide-next-copy small{color:#8793a4;font-size:9px}.guide-next-card .button{white-space:nowrap}
.guide-overview-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}.guide-overview-strip>div{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;padding:11px 12px;border:1px solid #e2e7ef;border-radius:12px;background:white}.guide-overview-strip svg{color:#315efb}.guide-overview-strip span{font-size:9px;color:#8793a4}.guide-overview-strip strong{font-size:10px;color:#31425c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.guide-phases{display:grid;gap:14px}.guide-phase{padding:0;overflow:hidden}.guide-phase-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border-bottom:1px solid #edf0f5;background:linear-gradient(180deg,#fff,#fbfcfe)}.guide-phase-kicker{display:block;margin-bottom:3px;color:#315efb;font-size:8px;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.guide-phase-head h2{margin:0;font-size:14px;color:#26364e}.guide-phase-count{font-size:9px;font-weight:850;color:#315efb;background:#eef3ff;border-radius:999px;padding:6px 9px}.guide-phase-count.done{color:#12845f;background:#edf8f3}.guide-step-list{display:grid}.guide-step{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:12px;align-items:start;padding:15px 18px;border-bottom:1px solid #eef1f5;background:white}.guide-step:last-child{border-bottom:0}.guide-step.done{background:linear-gradient(90deg,rgba(18,132,95,.035),transparent 28%)}.guide-step-number{width:32px;height:32px;display:grid;place-items:center;border:1px solid #dfe6f0;border-radius:10px;background:#f8fafc;color:#687892;font-size:10px;font-weight:850}.guide-step.done .guide-step-number{border-color:#cae8dc;background:#edf8f3;color:#12845f}.guide-step-body{min-width:0;display:grid;gap:5px}.guide-step-title-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.guide-step-title-row h3{margin:0;font-size:11px;color:#273851}.guide-step-body>p{margin:0;color:#738196;font-size:9.5px;line-height:1.55}.guide-step-body>small{color:#8e99a9;font-size:8.5px}.guide-suggestion{display:flex;align-items:flex-start;gap:6px;margin-top:1px;padding:7px 9px;border-radius:9px;background:#f6f8ff;color:#536a9d;font-size:8.8px;line-height:1.45}.guide-suggestion svg{flex:0 0 auto;color:#5a79ff;margin-top:1px}.guide-step>.button{align-self:center;white-space:nowrap}.guide-step.done>.button{color:#738197}.guide-step-title-row .status.neutral{padding:4px 6px}

@media(max-width:1050px){.quick-actions-six{grid-template-columns:1fr 1fr 1fr}.guide-hero{grid-template-columns:minmax(0,1fr) 140px}.guide-score-dial{width:118px;height:118px}.guide-score-dial:before{width:92px;height:92px}.guide-next-card{grid-template-columns:44px minmax(0,1fr)}.guide-next-card>.button{grid-column:2;justify-self:start}.guide-overview-strip{grid-template-columns:1fr}.guide-step{grid-template-columns:36px minmax(0,1fr)}.guide-step>.button{grid-column:2;justify-self:start}}
@media(max-width:760px){.guide-hero{grid-template-columns:1fr;padding:20px}.guide-score-dial{margin:0;width:108px;height:108px}.guide-score-dial:before{width:84px;height:84px}.guide-next-card{grid-template-columns:40px minmax(0,1fr);padding:14px}.guide-next-card>.button{grid-column:1/-1;width:100%;justify-content:center}.guide-phase-head{align-items:flex-start}.guide-step{padding:13px 14px}.quick-actions-six{grid-template-columns:1fr 1fr}.dashboard-welcome{flex-direction:column}.welcome-score{border-left:0;border-top:1px solid #e3e9f3;width:100%;height:auto;padding-top:10px;display:flex;gap:7px;justify-content:flex-start}.welcome-score strong{font-size:19px}}
@media(max-width:520px){.quick-actions-six{grid-template-columns:1fr}.guide-hero h2{font-size:21px}.guide-progress-meta{flex-direction:column;gap:2px}.guide-step{grid-template-columns:32px minmax(0,1fr);gap:9px}.guide-step-number{width:29px;height:29px}.guide-step>.button{grid-column:1/-1;width:100%;justify-content:center}.guide-step-title-row{align-items:flex-start;justify-content:space-between}.guide-overview-strip>div{grid-template-columns:25px minmax(0,1fr);}.guide-overview-strip strong{grid-column:2;white-space:normal}}

/* ========================================================================== */
/* Certivo v1.3.0 · Readiness Center                                          */
/* ========================================================================== */

.app-shell.v130 .sidebar-card.sidebar-guide-card{cursor:pointer}
.readiness-center-page{max-width:1500px;margin:0 auto}
.readiness-hero{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.7fr);gap:22px;padding:26px;border:1px solid #dfe5ef;border-radius:22px;background:linear-gradient(135deg,#fff 0%,#f8faff 72%,#f3f6ff 100%);box-shadow:0 12px 34px rgba(15,23,42,.05);margin-bottom:18px;position:relative;overflow:hidden}
.readiness-hero:before{content:"";position:absolute;right:-75px;top:-90px;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(49,94,251,.12),rgba(49,94,251,0) 68%);pointer-events:none}
.readiness-hero-main{position:relative;z-index:1;align-self:center}
.readiness-score-row{display:flex;align-items:flex-end;gap:14px;margin:7px 0 6px}
.readiness-score-row strong{font-size:54px;line-height:.95;letter-spacing:-2.6px;color:#101828}
.readiness-score-row span{font-size:16px;font-weight:750;color:#667085;padding-bottom:6px}
.readiness-hero-main>p{max-width:760px;color:#667085;margin:0 0 18px}
.readiness-hero-track{height:10px;border-radius:999px;background:#e9edf5;overflow:hidden;max-width:760px}
.readiness-hero-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#315efb,#6748ff);transition:width .28s ease}
.readiness-hero.warn .readiness-hero-track span{background:linear-gradient(90deg,#d99018,#f2b84b)}
.readiness-hero.bad .readiness-hero-track span{background:linear-gradient(90deg,#c74545,#e36868)}
.readiness-profile-box{position:relative;z-index:1;padding:18px;border:1px solid #e1e6ef;border-radius:17px;background:rgba(255,255,255,.88);box-shadow:0 7px 18px rgba(15,23,42,.035)}
.readiness-profile-head{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px;color:#315efb}
.readiness-profile-head div{display:flex;flex-direction:column;gap:2px;color:#101828}
.readiness-profile-head strong{font-size:14px}
.readiness-profile-head span{font-size:12px;color:#7a8495}
.readiness-profile-box select{width:100%;margin-bottom:9px}
.readiness-profile-box>small{display:block;color:#7a8495;line-height:1.45}

.readiness-next{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:15px;padding:18px 20px;border-radius:17px;border:1px solid #dce3f4;background:#f6f8ff;margin-bottom:18px}
.readiness-next.critical{background:#fff8f6;border-color:#f2d6cf}
.readiness-next.complete{background:#f4fbf7;border-color:#cfe9d9;grid-template-columns:auto minmax(0,1fr)}
.readiness-next-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#fff;border:1px solid #dde4f3;color:#315efb;box-shadow:0 4px 11px rgba(15,23,42,.04)}
.readiness-next.critical .readiness-next-icon{color:#c4533c;border-color:#f0d5ce}
.readiness-next-copy span{font-size:10px;font-weight:850;letter-spacing:.12em;color:#315efb}
.readiness-next.critical .readiness-next-copy span{color:#b84733}
.readiness-next-copy h2{font-size:18px;margin:3px 0 4px}
.readiness-next-copy p{margin:0;color:#5d6878}
.readiness-next-copy small{display:block;margin-top:5px;color:#8a94a4}

.readiness-status{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap;border:1px solid transparent}
.readiness-status.good{color:#087650;background:#edf9f3;border-color:#ccebdd}
.readiness-status.warn{color:#9b6300;background:#fff8e9;border-color:#f4e0ad}
.readiness-status.bad{color:#b53f35;background:#fff1ef;border-color:#f3d1cc}
.readiness-status.neutral{color:#64748b;background:#f5f7fa;border-color:#e3e8ef}

.readiness-category-grid{display:grid;grid-template-columns:repeat(7,minmax(130px,1fr));gap:10px;margin-bottom:18px}
.readiness-category{padding:14px 14px 13px;border-radius:15px;border:1px solid #e1e6ee;background:#fff;min-width:0}
.readiness-category-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}
.readiness-category-top span{font-size:12px;font-weight:750;color:#536078;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.readiness-category-top strong{font-size:14px;color:#1d2939}
.readiness-mini-track{height:6px;background:#edf0f5;border-radius:999px;overflow:hidden}
.readiness-mini-track span{height:100%;display:block;background:#315efb;border-radius:inherit}
.readiness-category.warn .readiness-mini-track span{background:#d99a27}
.readiness-category.bad .readiness-mini-track span{background:#cf5a4c}
.readiness-category small{display:block;margin-top:8px;font-size:10px;color:#98a2b3;line-height:1.3}

.readiness-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.65fr);gap:18px;align-items:start}
.readiness-gap-panel{min-width:0}
.filter-tabs.compact{display:flex;gap:5px;flex-wrap:wrap}
.filter-tabs.compact button{padding:7px 10px;font-size:11px}
.readiness-gap-list{display:flex;flex-direction:column;gap:9px;margin-top:14px}
.readiness-gap-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:15px;border:1px solid #e5e9f0;border-radius:14px;background:#fff}
.readiness-gap-row.missing,.readiness-gap-row.expired{border-left:3px solid #d55a4d}
.readiness-gap-row.review,.readiness-gap-row.expiring{border-left:3px solid #d39a31}
.readiness-gap-row.complete{border-left:3px solid #2b9b6c}
.readiness-gap-row.not_applicable{opacity:.78;background:#fafbfc}
.readiness-gap-title{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.readiness-gap-title strong{font-size:14px}
.requirement-chip{font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;padding:4px 6px;border-radius:999px;background:#f2f4f7;color:#697586}
.requirement-chip.critical{background:#fff0ed;color:#b84635}
.readiness-gap-main p{margin:5px 0 4px;font-size:12px;line-height:1.5;color:#677285}
.readiness-gap-main small{color:#8b95a5;font-size:11px}
.readiness-gap-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;align-content:center;max-width:310px}
.readiness-empty{display:flex;min-height:180px;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:7px;color:#8190a3}
.readiness-empty strong{color:#536078}
.readiness-empty.compact{min-height:90px}

.readiness-side-stack{display:flex;flex-direction:column;gap:18px}
.readiness-should-list{display:flex;flex-direction:column;gap:8px;margin:10px 0 14px}
.readiness-should-list>div{display:grid;grid-template-columns:auto 1fr;gap:9px;padding:9px 0;border-bottom:1px solid #eef1f5;color:#98a2b3}
.readiness-should-list>div:last-child{border-bottom:0}
.readiness-should-list>div.done{color:#17845b}
.readiness-should-list span{display:flex;flex-direction:column;gap:1px}
.readiness-should-list strong{font-size:12px;color:#475467}
.readiness-should-list small{font-size:10px;color:#98a2b3}
.readiness-deadline-list{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.readiness-deadline-list button{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;text-align:left;border:1px solid #e6eaf1;background:#fff;padding:9px 10px;border-radius:11px;color:#697586;cursor:pointer}
.readiness-deadline-list button:hover{background:#f8faff;border-color:#ccd7f5}
.readiness-deadline-list button.soon{background:#fffaf1;border-color:#f1dfb9}
.readiness-deadline-list button.expired{background:#fff3f1;border-color:#f1d4ce}
.readiness-deadline-list span{display:flex;flex-direction:column;min-width:0}
.readiness-deadline-list strong{font-size:11px;color:#344054;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.readiness-deadline-list small{font-size:9px;color:#98a2b3}
.readiness-deadline-list b{font-size:10px;white-space:nowrap}
.readiness-explain-strip{margin-top:18px;display:flex;gap:10px;align-items:flex-start;padding:13px 15px;border:1px solid #dbe4fa;border-radius:13px;background:#f7f9ff;color:#315efb}
.readiness-explain-strip div{display:flex;flex-direction:column;gap:2px;color:#475467}
.readiness-explain-strip strong{font-size:12px;color:#26354e}
.readiness-explain-strip span{font-size:11px;line-height:1.45}

.readiness-category-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}
.readiness-category-mini{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left;padding:10px 11px;border-radius:11px;border:1px solid #e7ebf1;background:#fff;cursor:pointer}
.readiness-category-mini:hover{background:#f8faff;border-color:#ccd6f0}
.readiness-category-mini div{display:flex;flex-direction:column;min-width:0}
.readiness-category-mini strong{font-size:11px;color:#344054}
.readiness-category-mini span{font-size:9px;color:#98a2b3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.readiness-category-mini b{font-size:11px;color:#315efb}
.readiness-category-mini.warn b{color:#a66e0b}
.readiness-category-mini.bad b{color:#b7473b}

@media (max-width:1250px){
  .readiness-category-grid{grid-template-columns:repeat(4,minmax(140px,1fr))}
  .readiness-layout{grid-template-columns:minmax(0,1fr) 330px}
}
@media (max-width:980px){
  .readiness-hero{grid-template-columns:1fr}
  .readiness-layout{grid-template-columns:1fr}
  .readiness-side-stack{display:grid;grid-template-columns:1fr 1fr}
  .readiness-next{grid-template-columns:auto minmax(0,1fr) auto}
  .readiness-next>.button{grid-column:2/-1;justify-self:start}
}
@media (max-width:720px){
  .readiness-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .readiness-score-row strong{font-size:44px}
  .readiness-next{grid-template-columns:auto minmax(0,1fr)}
  .readiness-next>.readiness-status{grid-column:2}
  .readiness-next>.button{grid-column:2}
  .readiness-gap-row{grid-template-columns:1fr}
  .readiness-gap-actions{justify-content:flex-start;max-width:none}
  .readiness-side-stack{display:flex}
  .readiness-category-mini-grid{grid-template-columns:1fr}
}
@media (max-width:480px){
  .readiness-category-grid{grid-template-columns:1fr}
  .readiness-hero{padding:19px}
  .readiness-next{padding:15px}
}

/* Certivo v1.3.3 · Kompetencer startup hotfix + brand spacing fix */
.brand .brand-copy{display:flex;flex-direction:column;gap:2px;min-width:0;line-height:1.08}
.brand .brand-copy strong{font-size:18px;color:white;letter-spacing:-.02em;line-height:1.08}
.brand .brand-copy span{font-size:10px;color:#8f9ab0;margin-top:0;line-height:1.25;white-space:nowrap}

.credentials-page{padding-bottom:40px}
.credentials-setup{display:grid;grid-template-columns:58px minmax(0,1fr);gap:16px;align-items:start;background:linear-gradient(135deg,#fff,#f8faff);border-color:#dce4f4}
.credentials-setup-icon{width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:#eef3ff;color:var(--blue)}
.credentials-setup h2{margin:8px 0 6px;font-size:20px}.credentials-setup p{line-height:1.6;max-width:850px}
.credential-principle{display:flex;align-items:flex-start;gap:11px;margin-bottom:16px;padding:14px 16px;background:#f8faff;border-color:#dfe6f6}
.credential-principle>svg{flex:0 0 auto;color:var(--blue);margin-top:1px}.credential-principle strong{display:block;font-size:12px;color:#2a3b55}.credential-principle p{margin-top:3px;font-size:10px;line-height:1.5}
.credentials-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 16px}
.credential-filter-tabs{display:flex;gap:4px;padding:3px;background:#edf1f6;border-radius:10px;overflow-x:auto}
.credential-filter-tabs button{border:0;background:transparent;color:#738096;padding:7px 10px;border-radius:8px;font-size:10px;font-weight:750;white-space:nowrap}
.credential-filter-tabs button.active{background:#fff;color:#315efb;box-shadow:0 2px 8px rgba(17,31,58,.08)}
.employee-credential-grid{display:grid;gap:14px;margin-bottom:16px}
.employee-card{padding:0;overflow:hidden}
.employee-card-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:16px 18px;border-bottom:1px solid #edf1f5;background:linear-gradient(180deg,#fff,#fbfcfe)}
.employee-ident{display:flex;align-items:center;gap:11px;min-width:0}.employee-avatar{width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;border-radius:12px;background:#edf2ff;color:#315efb;font-size:15px;font-weight:850}
.employee-ident h2{margin:0 0 3px;font-size:14px}.employee-ident p{font-size:9px}.employee-head-actions{display:flex;align-items:center;gap:8px}.credential-count{padding:5px 8px;border-radius:999px;background:#eef3ff;color:#315efb;font-size:9px;font-weight:800}
.credential-list{display:grid}.credential-row{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:11px;align-items:center;padding:13px 18px;border-bottom:1px solid #eef1f5;background:white}.credential-row:last-child{border-bottom:0}
.credential-row-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#f3f6fb;color:#647795}.credential-row-main{min-width:0;display:grid;gap:5px}.credential-row-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.credential-row-title strong{font-size:11px;color:#283951}.credential-row-meta{display:flex;gap:7px;flex-wrap:wrap;align-items:center;color:#7f8b9e;font-size:8.5px}.credential-row-meta>span:not(.evidence-pill)::after{content:'·';margin-left:7px;color:#c1c8d3}.credential-row-meta>span:last-child::after,.credential-row-meta>.evidence-pill::after{content:'';margin:0}
.evidence-pill{display:inline-flex;align-items:center;gap:4px;padding:4px 6px;border-radius:7px;background:#f1f5ff;color:#536fae;font-weight:700;max-width:280px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.credential-row-actions{display:flex;align-items:center;gap:4px}.credential-delete{color:#9b5b61}.credential-delete:hover{color:#b42318;background:#fff1f2}
.credential-empty{padding:18px;color:#8792a4;font-size:10px;text-align:center}.employee-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px;background:#fafbfc;border-top:1px solid #eef1f5}.employee-admin-actions{display:flex;gap:5px}.employee-card-foot .button.danger{background:transparent!important;border-color:transparent!important;color:#a64751!important;box-shadow:none!important}
.credential-catalog{margin-top:16px}.credential-catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:15px}.credential-catalog-grid>div{border:1px solid #e5eaf1;border-radius:12px;padding:12px;background:#fbfcfe}.credential-catalog-grid strong{display:block;margin-bottom:8px;font-size:10px;color:#34455f}.catalog-tags{display:flex;gap:5px;flex-wrap:wrap}.catalog-tags span{padding:5px 7px;border-radius:7px;background:#fff;border:1px solid #e5eaf1;color:#718096;font-size:8px}
.credential-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.credential-form-grid label{display:grid;gap:6px;color:#617087;font-size:10px;font-weight:700}.credential-form-grid label.full{grid-column:1/-1}.credential-form-grid input,.credential-form-grid select,.credential-form-grid textarea{width:100%;border:1px solid #dfe5ee;background:white;border-radius:10px;padding:9px 10px;color:#27364d;outline:0}.credential-form-grid textarea{resize:vertical}.credential-form-grid input:focus,.credential-form-grid select:focus,.credential-form-grid textarea:focus{border-color:#9db2ff;box-shadow:0 0 0 3px rgba(49,94,251,.08)}

@media(max-width:980px){.credential-catalog-grid{grid-template-columns:1fr 1fr}.credential-row{grid-template-columns:36px minmax(0,1fr)}.credential-row-actions{grid-column:2;justify-content:flex-start}.credentials-toolbar{align-items:stretch;flex-direction:column}.credentials-toolbar .search{width:100%}.credential-filter-tabs{width:max-content;max-width:100%}}
@media(max-width:640px){.brand .brand-copy span{display:none}.credential-catalog-grid,.credential-form-grid{grid-template-columns:1fr}.credential-form-grid label.full{grid-column:auto}.credential-row{padding:12px 14px}.employee-card-head{align-items:flex-start}.employee-head-actions{align-items:flex-end;flex-direction:column}.employee-card-foot{align-items:stretch;flex-direction:column}.employee-admin-actions{justify-content:space-between}.credentials-setup{grid-template-columns:44px 1fr}.credentials-setup-icon{width:44px;height:44px}}

/* Certivo v1.4.1 · Billing navigation hotfix */
.billing-top-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid #dbe4ff;background:#f5f8ff;color:#315efb;border-radius:999px;padding:6px 9px;font-size:9px;font-weight:800;white-space:nowrap;cursor:pointer}.billing-top-chip:hover{background:#edf3ff;border-color:#bfd0ff}.billing-page{display:grid;gap:18px}.billing-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.billing-trial-banner{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:13px;padding:15px 16px;border:1px solid #cbd9ff;background:linear-gradient(135deg,#f5f8ff,#eef3ff);border-radius:15px}.billing-trial-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#315efb;color:#fff;box-shadow:0 8px 22px rgba(49,94,251,.18)}.billing-trial-banner>div{display:grid;gap:3px}.billing-trial-banner strong{font-size:12px;color:#24365b}.billing-trial-banner span:not(.billing-trial-icon){font-size:9px;line-height:1.5;color:#6f7f9c}.billing-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.billing-current-card{display:grid;gap:5px;min-height:126px;align-content:start}.billing-current-card>.billing-card-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#eef3ff;color:#315efb;margin-bottom:3px}.billing-current-card>span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#8692a4}.billing-current-card>strong{font-size:15px;color:#223149}.billing-current-card>small{font-size:8.5px;line-height:1.45;color:#8995a7}.billing-usage-card{display:grid;gap:14px}.billing-section-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.billing-section-head h2,.billing-section-title h2{margin:0 0 3px;font-size:16px;letter-spacing:-.02em;color:#223149}.billing-section-head p,.billing-section-title p{margin:0;font-size:9px;line-height:1.5;color:#8390a3}.billing-usage-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.billing-usage-item{display:grid;gap:8px;padding:12px;border:1px solid #e7ebf1;background:#fbfcfe;border-radius:12px}.billing-usage-label{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:7px;color:#6f7f95}.billing-usage-label span{font-size:9px;font-weight:700;color:#48566c}.billing-usage-label strong{font-size:9px;color:#27364d}.billing-meter{height:5px;background:#edf0f5;border-radius:999px;overflow:hidden}.billing-meter i{display:block;height:100%;background:#315efb;border-radius:999px;min-width:0}.billing-section-title{padding-top:2px}.billing-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:stretch}.billing-plan-card{position:relative;display:grid;grid-template-rows:auto 1fr auto;gap:16px;border:1px solid #e0e6ef;background:#fff;border-radius:16px;padding:18px;box-shadow:0 7px 24px rgba(20,33,61,.035);overflow:hidden}.billing-plan-card.featured{border-color:#aabfff;box-shadow:0 12px 34px rgba(49,94,251,.1)}.billing-plan-card.current{outline:2px solid rgba(49,94,251,.12)}.billing-plan-ribbon{position:absolute;right:13px;top:13px;border-radius:999px;background:#315efb;color:#fff;padding:5px 8px;font-size:7.5px;font-weight:850;letter-spacing:.04em}.billing-plan-head{display:grid;gap:10px}.billing-plan-head>div:first-child{display:grid;gap:5px}.billing-plan-badge{font-size:8px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#315efb}.billing-plan-head h3{margin:0;font-size:20px;letter-spacing:-.03em;color:#1d2c44}.billing-plan-head p{margin:0;font-size:9px;line-height:1.55;color:#7f8b9e;max-width:95%}.billing-price{display:flex;align-items:baseline;gap:5px}.billing-price strong{font-size:24px;letter-spacing:-.04em;color:#17263f}.billing-price span{font-size:8px;color:#8c97a7}.billing-feature-list{display:grid;gap:8px;align-content:start}.billing-feature-list>div{display:grid;grid-template-columns:18px 1fr;gap:7px;align-items:start;font-size:9px;line-height:1.45;color:#536176}.billing-feature-list svg{color:#12845f;margin-top:1px}.billing-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.billing-manage-card{display:grid;gap:14px;align-content:start}.billing-invoices{display:grid;border-top:1px solid #edf0f4}.billing-invoice-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid #edf0f4;text-decoration:none}.billing-invoice-row span{display:grid;gap:2px}.billing-invoice-row strong{font-size:9.5px;color:#35445a}.billing-invoice-row small{font-size:8px;color:#929cac}.billing-invoice-row b{font-size:8px;color:#315efb;background:#eef3ff;border-radius:999px;padding:4px 7px;text-transform:capitalize}.billing-empty{padding:12px 0;color:#8b96a7;font-size:9px}.billing-security-note{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid #dce8e3;background:#f4faf7;border-radius:13px;color:#12845f}.billing-security-note>div{display:grid;gap:2px}.billing-security-note strong{font-size:9.5px;color:#34554a}.billing-security-note span{font-size:8.5px;line-height:1.5;color:#718c83}.plan-gate-page{min-height:70vh;display:grid;place-items:center}.plan-gate-card{width:min(560px,100%);text-align:center;display:grid;justify-items:center;gap:10px;padding:32px}.plan-gate-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;background:#eef3ff;color:#315efb}.plan-gate-card h1{margin:0;font-size:24px;color:#1c2b43}.plan-gate-card>p{max-width:440px;margin:0;color:#7e8b9e;font-size:10px;line-height:1.6}.plan-gate-note{display:flex;gap:8px;align-items:flex-start;text-align:left;padding:11px 12px;border:1px solid #dfe7ff;background:#f6f8ff;border-radius:11px;color:#315efb;font-size:9px;line-height:1.5;margin:3px 0 5px}.notice.warning{border-color:#f2ddb0;background:#fff9ed;color:#8a6219}
@media(max-width:1180px){.billing-overview-grid,.billing-usage-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.billing-plan-grid{grid-template-columns:1fr}.billing-plan-card{grid-template-columns:1fr}.billing-plan-ribbon{top:16px}.billing-bottom-grid{grid-template-columns:1fr}}
@media(max-width:720px){.billing-page-head{display:grid}.billing-trial-banner{grid-template-columns:40px 1fr}.billing-trial-banner .button{grid-column:1/-1;width:100%}.billing-overview-grid,.billing-usage-grid{grid-template-columns:1fr}.billing-top-chip{max-width:135px;overflow:hidden;text-overflow:ellipsis}.billing-plan-card{padding:15px}.billing-bottom-grid{grid-template-columns:1fr}}
