/* Wema redesign — shell (owned by the shell subagent): app chrome, sign-in, team, settings, KB, audit, integrations, report. */

/* ---------- Sidebar ---------- */
.brandmark{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:4px 10px 18px;text-decoration:none}
.brandmark .logo{display:flex;align-items:center;gap:8px}
.brandmark .logo img{height:26px;width:auto}
.brandmark .wordmark{font-family:var(--font-head);font-weight:800;font-size:25px;color:var(--wema);letter-spacing:-.04em;line-height:1}
.brandmark .product{display:block;color:var(--muted-w);font-size:12.5px;font-weight:600;letter-spacing:.01em;margin:2px 0 0 1px}
.side-foot{margin-top:auto;border-top:0;padding:14px 4px 2px}
.side-site{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--border-w);border-radius:12px;font-size:12.5px;color:#374151;background:#FCFCFD}
.side-site strong{font-weight:650;color:var(--ink-w)}
.side-powered{font-size:11px;color:#9CA3AF;padding:0 8px}

/* ---------- Top bar ---------- */
.topbar{gap:14px;z-index:30}
.crumb-wrap{display:flex;flex-direction:column;min-width:0;line-height:1.15}
.crumb-trail{font-size:11.5px;color:#9CA3AF;font-weight:550;display:flex;gap:6px;align-items:center}
.crumb-trail:empty{display:none}
.crumb-trail a{color:#9CA3AF}.crumb-trail a:hover{color:var(--wema)}
.crumb-trail::after{content:"›";color:#C4C8CF}
.topbar .crumb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.top-search{position:relative;flex:0 1 380px;min-width:200px;transition:border-color .15s,box-shadow .15s}
.top-search:focus-within{border-color:var(--wema);box-shadow:0 0 0 3px #981D871f}
.top-search input::-webkit-search-cancel-button{display:none}
.search-kbd{font:600 11px var(--font);color:#9CA3AF;border:1px solid var(--border-w);border-radius:6px;padding:1px 6px;background:#FAFAFB}
.top-search:focus-within .search-kbd{display:none}
.top-search-btn{display:none;width:40px;height:40px;border-radius:50%;border:1px solid var(--border-w);background:#fff;color:#374151;place-items:center;cursor:pointer}
.search-pop,.bell-pop,.me-pop{position:absolute;top:calc(100% + 8px);background:#fff;border:1px solid var(--border-w);border-radius:14px;box-shadow:0 16px 48px #11192824,0 2px 6px #1119280f;z-index:60;overflow:hidden}
.search-pop[hidden],.bell-pop[hidden],.me-pop[hidden]{display:none}
.search-pop{left:0;right:0;min-width:300px;max-height:420px;overflow:auto;padding:6px}
.search-group{font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:#9CA3AF;font-weight:700;padding:8px 10px 4px}
.search-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;color:var(--ink-w)}
.search-item:hover,.search-item.sel{background:var(--lilac);color:var(--wema)}
.search-ico{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:#F3F4F6;color:#4B5563;flex:none}
.search-item.sel .search-ico{background:#fff;color:var(--wema)}
.search-text{display:flex;flex-direction:column;min-width:0}.search-text strong{font-weight:600;font-size:13.5px}.search-text small{color:var(--muted-w);font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.search-empty{padding:14px;color:var(--muted-w);font-size:13px}
.bell-wrap{position:relative}
.top-bell::after{display:none}
.top-bell.unread::after{display:block}
.top-bell[aria-expanded=true]{border-color:var(--wema);color:var(--wema)}
.bell-pop{right:-60px;width:380px;max-height:min(520px,calc(100vh - 90px));overflow:auto}
.bell-head{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;border-bottom:1px solid #F0F1F3;position:sticky;top:0;background:#fff}
.bell-head a{font-size:12.5px;font-weight:600}
.bell-item{display:flex;gap:10px;padding:11px 16px;border-bottom:1px solid #F5F5F7;color:var(--ink-w);font-size:13px;line-height:1.4;position:relative}
.bell-item:hover{background:#FCF7FB}
.bell-item.new::before{content:"";position:absolute;left:6px;top:20px;width:6px;height:6px;border-radius:50%;background:var(--wema)}
.bell-text{display:flex;flex-direction:column;gap:2px;min-width:0}.bell-text small{color:#9CA3AF;font-size:11.5px}
.bell-dot{width:28px;height:28px;border-radius:50%;background:var(--lilac);flex:none}
.bell-empty{padding:22px 16px;color:var(--muted-w);font-size:13px;text-align:center}
.me-menu{position:relative}
#meBox{padding:0;border:0;background:none}
.me-chip{display:flex;align-items:center;gap:9px;padding:4px 10px 4px 4px;border:1px solid var(--border-w);border-radius:999px;background:#fff;cursor:pointer;font:inherit;color:inherit;text-align:left}
.me-chip:hover,.me-chip[aria-expanded=true]{border-color:var(--wema)}
.me-chip .me-text strong{font-size:13px;font-weight:650;white-space:nowrap}.me-chip .me-text span{font-size:11.5px;white-space:nowrap}
.me-caret{color:#9CA3AF;transform:rotate(90deg);display:inline-flex}
.me-pop{right:0;width:250px;padding:6px}
.me-pop-head{display:flex;flex-direction:column;padding:10px 12px 12px;border-bottom:1px solid #F0F1F3;margin-bottom:4px}
.me-pop-head span{font-size:12px;color:var(--muted-w);word-break:break-all}
.me-pop-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:0;background:none;border-radius:9px;font:550 13.5px var(--font);color:var(--ink-w);cursor:pointer;text-align:left}
.me-pop-item span{display:inline-flex}
.me-pop-item:hover{background:var(--lilac);color:var(--wema)}
.me-pop-item.signout{color:var(--bad)}.me-pop-item.signout:hover{background:var(--bad-bg);color:var(--bad)}
body.auth-mode .shell{display:none}
body.auth-mode{background:#fff}
#authRoot{min-height:100vh}

/* ---------- Generic bits ---------- */
.chips{display:flex;gap:6px;flex-wrap:wrap}
.chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 13px;border-radius:999px;border:1px solid var(--border-w);background:#fff;font:600 12.5px var(--font);color:#374151;cursor:pointer}
.chip:hover{border-color:var(--wema);color:var(--wema)}
.chip.active{background:var(--wema);border-color:var(--wema);color:#fff}
.chip-n{font-size:11px;font-weight:700;opacity:.65}
.input.sm{height:34px;padding:6px 11px;font-size:13px}
.stack.tight{gap:1px}
.row.tight{gap:6px}
.person{display:flex;align-items:center;gap:10px;min-width:0}
.nowrap{white-space:nowrap}
.center-text{text-align:center;align-self:center}
.mono{font-family:ui-monospace,"Cascadia Mono",Consolas,monospace;font-size:12.5px}
.btn.sm.danger{color:var(--bad)}
.copy-field{display:flex;flex-direction:column;gap:5px;min-width:0}
.copy-label{font-size:11.5px;font-weight:650;color:var(--muted-w);text-transform:uppercase;letter-spacing:.05em}
.copy-row{display:flex;gap:8px;align-items:center;min-width:0}
.copy-value{flex:1;min-width:0;padding:9px 12px;border-radius:10px;background:var(--lilac);color:var(--wema-deep);font:600 13.5px ui-monospace,"Cascadia Mono",Consolas,monospace;overflow-wrap:anywhere;user-select:all}
.copy-field.secret .copy-value{background:#FFF7E6;color:#5c3d05;letter-spacing:.02em}
.inline-panel{border-color:#E6C6E0;box-shadow:0 8px 28px #981D8714}
.inline-panel .card-head{align-items:flex-start}
.inline-panel .card-head p{margin-top:3px}

/* ---------- Team (concept 03) ---------- */
.team-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.team-stat{display:flex;gap:14px;align-items:center;background:#fff;border:1px solid var(--border-w);border-radius:16px;padding:16px 18px;box-shadow:var(--shadow)}
.team-stat-ico{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--lilac);color:var(--wema)}
.team-stat.bad .team-stat-ico{background:#FDECEE;color:var(--red-w)}
.team-stat.gold .team-stat-ico{background:#FBF5E6;color:var(--gold-w)}
.team-stat strong{display:block;font:750 26px/1.1 var(--font-head);letter-spacing:-.02em;color:var(--ink-w)}
.team-stat span{display:block;font-size:13px;color:#4B5563;font-weight:550}
.team-stat small{display:block;font-size:11.5px;color:#9CA3AF;margin-top:2px}
.team-card{overflow:hidden}
.team-filters{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;border-bottom:1px solid #F0F1F3}
.team-filter-inputs{display:flex;gap:8px;flex-wrap:wrap}
.team-filter-inputs .input{width:auto;min-width:150px}
.team-filter-inputs input[type=search]{min-width:200px}
.team-table{border:0;border-radius:0}
.team-table .table td{padding:12px 14px}
.team-table tr.inactive td{opacity:.6}
.team-table tr.inactive td:last-child,.team-table tr.inactive td:nth-last-child(2){opacity:1}
.score-cell{display:flex;align-items:center;gap:8px;min-width:96px}.score-cell .bar{flex:1;height:6px;min-width:44px}
.badge.super{background:#FBF5E6;color:#946B12;display:inline-flex;align-items:center;gap:4px}
.badge.super span{display:inline-flex}
.manage-btn{gap:4px;white-space:nowrap}
.manage-btn[aria-expanded=true] span{transform:rotate(90deg)}
.manage-btn span{display:inline-flex;transition:transform .15s}
.chev{color:#C4C8CF;display:inline-flex}
.row-end{text-align:right;width:1%}
.manage-row td{background:#FCF7FB !important;padding:14px 18px !important}
.manage-body{display:flex;flex-direction:column;gap:12px}
.manage-meta{display:flex;flex-wrap:wrap;gap:6px 22px;font-size:12.5px;color:#4B5563}
.manage-meta b{font-weight:650;color:var(--muted-w);text-transform:uppercase;font-size:10.5px;letter-spacing:.06em;margin-right:4px}
.manage-actions{gap:8px}
.manage-body .team-form{background:#fff;border:1px solid var(--border-w);border-radius:12px;padding:16px}
.team-creds{border-color:#F1D9A6;background:#FFFDF7}
.team-creds .card-head{background:#FFF8E8}
.cred-person{display:flex;flex-direction:column;gap:10px;padding:10px 0;border-top:1px dashed #F1D9A6}
.cred-person:first-of-type{border-top:0}
.cred-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:12px}
.import-summary{display:flex;gap:12px}
.import-stat{display:flex;align-items:baseline;gap:6px;padding:10px 16px;border-radius:12px;background:#F3F4F6}
.import-stat strong{font:750 22px var(--font-head)}
.import-stat.good{background:var(--good-bg);color:var(--good)}.import-stat.bad{background:var(--bad-bg);color:var(--bad)}

/* ---------- Telephony settings (concept 42) ---------- */
.tel-account{display:flex;align-items:center;gap:14px}
.tel-ico{width:46px;height:46px;border-radius:12px;background:var(--lilac);color:var(--wema);display:grid;place-items:center;flex:none}
.tel-account-text{display:flex;flex-direction:column;flex:1;min-width:0}
.tel-account-text strong{font:700 16px var(--font-head)}
.tel-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:4px}
.tel-feature{display:flex;gap:10px;padding:12px;border:1px solid #F0F1F3;border-radius:12px;background:#FCFCFD}
.tel-feature-ico{width:34px;height:34px;border-radius:10px;background:#E6F8F4;color:var(--teal-ink);display:grid;place-items:center;flex:none}
.tel-feature.off .tel-feature-ico{background:#F3F4F6;color:#9CA3AF}
.tel-feature strong{display:block;font-size:13.5px}.tel-feature small{display:block;color:var(--muted-w);font-size:12px;line-height:1.4}
.tel-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;align-items:start}
.tel-did{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--border-w);border-radius:12px;background:#fff}
.tel-did strong{font:700 17px var(--font-head);letter-spacing:.02em}
.tel-flag{display:inline-flex;width:24px;height:16px;border-radius:3px;overflow:hidden;box-shadow:0 0 0 1px #0001}
.tel-flag i{flex:1;background:#008751}.tel-flag i:nth-child(2){background:#fff}
.tel-notice{display:flex;gap:10px;align-items:flex-start;padding:11px 13px;border-radius:12px;background:var(--lilac);color:var(--wema-dark);font-size:12.5px;line-height:1.45}
.tel-notice span:first-child{display:inline-flex;margin-top:1px}
.tel-checks{list-style:none;margin:0;padding:6px;border-radius:12px;background:#FAFAFB;display:flex;flex-direction:column;gap:2px}
.tel-check{display:flex;gap:10px;align-items:flex-start;padding:9px 10px}
.tel-check-ico{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;flex:none;background:#E5E7EB;color:#6B7280}
.tel-check.ok .tel-check-ico{background:var(--teal-w);color:#fff}
.tel-check.bad .tel-check-ico{background:var(--red-w);color:#fff}
.tel-check strong{display:block;font-size:13.5px}.tel-check small{display:block;color:var(--muted-w);font-size:12px}

/* ---------- Knowledge base (concept 25) ---------- */
.kb-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px;align-items:start}
.kb-cats{display:flex;flex-direction:column;gap:2px;background:#fff;border:1px solid var(--border-w);border-radius:16px;padding:10px;position:sticky;top:84px;box-shadow:var(--shadow)}
.kb-cat-item{display:flex;justify-content:space-between;align-items:center;padding:9px 12px;border:0;background:none;border-radius:10px;font:550 13.5px var(--font);color:#374151;cursor:pointer;text-align:left}
.kb-cat-item:hover{background:#FAF5F9;color:var(--wema)}
.kb-cat-item.active{background:var(--lilac);color:var(--wema);font-weight:650}
.kb-count{font-size:12px;font-weight:700;color:#9CA3AF;background:#F3F4F6;border-radius:999px;padding:1px 8px}
.kb-cat-item.active .kb-count{background:#fff;color:var(--wema)}
.kb-side-note{display:flex;gap:8px;font-size:11.5px;color:var(--muted-w);padding:12px 10px 4px;border-top:1px solid #F0F1F3;margin-top:8px;line-height:1.4}
.kb-side-note span:first-child{color:var(--teal-ink);display:inline-flex}
.kb-main{display:flex;flex-direction:column;gap:14px;min-width:0}
.kb-tools .input{max-width:320px}
.kb-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.kb-card{display:flex;flex-direction:column;gap:8px;text-align:left;background:#fff;border:1px solid var(--border-w);border-radius:16px;padding:16px;box-shadow:var(--shadow);cursor:pointer;font:inherit;color:inherit;transition:border-color .15s,box-shadow .15s;min-width:0}
.kb-card:hover{border-color:#D9A9CF}
.kb-card.open{border:2px solid var(--wema);padding:15px;box-shadow:0 8px 24px #981D871f}
.kb-card-ico{color:#C4C8CF;display:inline-flex}
.kb-title{font:650 15px/1.3 var(--font-head);color:var(--ink-w)}
.kb-excerpt{font-size:12.5px;color:var(--muted-w);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.kb-meta{display:flex;flex-direction:column;font-size:11.5px;color:#9CA3AF;margin-top:auto;padding-top:6px;border-top:1px solid #F5F5F7}
.badge.kb-cat{font-size:11.5px}
.badge.kb-product{background:var(--lilac);color:var(--wema)}
.badge.kb-policy{background:#EEF2FF;color:#4338CA}
.badge.kb-procedure{background:#E6F8F4;color:var(--teal-ink)}
.badge.kb-compliance{background:#FDECEE;color:#C21F2C}
.kb-reader{grid-column:1/-1;padding:22px 26px}
.kb-reader.kb-editor{padding:0}
.kb-reader-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding-bottom:14px;border-bottom:1px solid #F0F1F3;margin-bottom:14px}
.kb-reader-head h2{font:700 22px var(--font-head);letter-spacing:-.02em;margin:4px 0 2px}
.kb-body{max-width:760px;font-size:14.5px;line-height:1.65;color:#1F2937;display:flex;flex-direction:column;gap:10px}
.kb-body h4{font:650 15px var(--font-head);margin-top:6px}
.kb-body ul,.kb-body ol{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:4px}
.kb-body ol li::marker{color:var(--wema);font-weight:700}

/* ---------- Audit log (concept 27) ---------- */
.audit-filters{display:flex;flex-direction:column;gap:12px;padding:16px;border-bottom:1px solid #F0F1F3}
.audit-filter-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.audit-page .table-wrap{border:0;border-radius:0}
.audit-time{white-space:nowrap;font-variant-numeric:tabular-nums;color:#374151}
.audit-sentence{display:block;max-width:520px;line-height:1.45}
.badge.audit-type{font-size:11.5px}
.audit-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;color:#4B5563;cursor:pointer}.audit-toggle input{accent-color:var(--wema)}
.badge.t-decisions{background:#FCE7F6;color:#A3127E}
.badge.t-overrides{background:#FFEDE5;color:#B4410E}
.badge.t-coaching{background:var(--lilac);color:var(--wema)}
.badge.t-configuration{background:#EEF2FF;color:#4338CA}
.badge.t-access{background:#E6F8F4;color:var(--teal-ink)}

/* ---------- Integrations (concept 26) ---------- */
.int-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.int-card{display:flex;flex-direction:column;gap:12px;padding:18px}
.int-head{display:flex;gap:12px;align-items:flex-start}
.int-head .stack{flex:1;min-width:0}
.int-head strong{font:650 15px/1.25 var(--font-head)}
.int-tile{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font:800 13px var(--font-head);letter-spacing:.02em;flex:none;background:#F3F4F6;color:#4B5563}
.int-tile.brand{background:var(--lilac);color:var(--wema)}.int-tile.teal{background:#E6F8F4;color:var(--teal-ink)}.int-tile.gold{background:#FBF5E6;color:#946B12}
.int-pill{display:inline-flex;align-items:center;gap:4px;white-space:nowrap;font-size:11.5px}
.int-pill span{display:inline-flex}
.badge.muted{background:#F3F4F6;color:#6B7280}
.int-desc{font-size:13px;color:#4B5563;line-height:1.5}
.int-flow{display:flex;gap:8px;align-items:center;padding:8px 12px;border-radius:10px;background:#FAFAFB;border:1px solid #F0F1F3;font-size:12.5px;font-weight:600;color:#374151}
.int-flow span{color:var(--wema);display:inline-flex}
.int-foot{gap:8px;margin-top:auto;padding-top:10px;border-top:1px solid #F5F5F7;flex-wrap:nowrap}
.int-foot .muted{min-width:0}
.int-protect{display:flex;gap:14px;align-items:center;padding:18px 22px;border-radius:16px;background:var(--lilac);border:1px solid #EBD3E6;color:var(--wema-deep)}
.int-protect-ico{width:44px;height:44px;border-radius:12px;background:#fff;color:var(--wema);display:grid;place-items:center;flex:none}
.int-protect p{font-size:13px;color:#5B2A52;margin-top:2px}

/* ---------- Executive report (concept 28) ---------- */
.rep-eyebrow{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--wema)}
.rep-head h1{font-size:28px;margin-top:4px}
.rep-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}
.rep-kpi{background:#fff;border:1px solid var(--border-w);border-radius:16px;padding:16px 18px;display:flex;flex-direction:column;gap:6px;box-shadow:var(--shadow)}
.rep-kpi-label{font-size:12.5px;font-weight:600;color:#4B5563}
.rep-kpi-ico{width:30px;height:30px;border-radius:9px;background:#F3F4F6;color:#6B7280;display:grid;place-items:center}
.rep-kpi-value{font:750 30px/1.1 var(--font-head);letter-spacing:-.03em;color:var(--ink-w)}
.rep-kpi-sub{font-size:12px;color:var(--muted-w)}
.rep-kpi.brand .rep-kpi-value{color:var(--wema)}.rep-kpi.brand .rep-kpi-ico{background:var(--lilac);color:var(--wema)}
.rep-kpi.teal .rep-kpi-value{color:var(--teal-ink)}.rep-kpi.teal .rep-kpi-ico{background:#E6F8F4;color:var(--teal-ink)}
.rep-kpi.warn .rep-kpi-value{color:#B4410E}.rep-kpi.warn .rep-kpi-ico{background:#FFEDE5;color:#B4410E}
.rep-kpi.gold .rep-kpi-value{color:#946B12}.rep-kpi.gold .rep-kpi-ico{background:#FBF5E6;color:var(--gold-w)}
.rep-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.rep-bars{display:flex;flex-direction:column;gap:14px}
.rep-bar-row{display:grid;grid-template-columns:140px minmax(0,1fr) 36px;gap:12px;align-items:center}
.rep-bar-label{display:flex;flex-direction:column;font-weight:600;font-size:13.5px}.rep-bar-label small{font-weight:500;color:var(--muted-w);font-size:11.5px}
.rep-bar-track{height:14px;border-radius:999px;background:#F3F4F6;overflow:hidden}
.rep-bar-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--wema-magenta),var(--wema))}
.rep-bar-row strong{font:700 16px var(--font-head);text-align:right}
.rep-narrative{margin:0;padding:0;list-style:none;counter-reset:n;display:flex;flex-direction:column;gap:14px}
.rep-narrative li{counter-increment:n;display:grid;grid-template-columns:30px 1fr;gap:4px 12px;font-size:13.5px;line-height:1.5}
.rep-narrative li::before{content:counter(n);grid-row:span 2;width:28px;height:28px;border-radius:50%;background:var(--lilac);color:var(--wema);display:grid;place-items:center;font-weight:750;font-size:13px}
.rep-narrative strong{font-weight:650}.rep-narrative span{color:#4B5563}
.rep-meter{display:flex;flex-direction:column;gap:14px}
.rep-meter-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;position:relative}
.rep-meter-track::before{content:"";position:absolute;left:12%;right:12%;top:17px;height:2px;background:linear-gradient(90deg,var(--teal-w),var(--wema),var(--gold-w))}
.rep-step{display:flex;flex-direction:column;align-items:center;text-align:center;gap:3px;position:relative}
.rep-step-dot{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--teal-w);box-shadow:0 0 0 4px #fff;margin-bottom:4px}
.rep-step.progression .rep-step-dot{background:var(--wema)}.rep-step.actualization .rep-step-dot{background:var(--gold-w)}.rep-step.super .rep-step-dot{background:linear-gradient(135deg,#E2B850,var(--gold-w))}
.rep-step strong{font-size:13px}.rep-step-n{font:700 15px var(--font-head)}.rep-step small{font-size:11px;color:var(--muted-w);line-height:1.3}
.rep-core{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.rep-core-item{display:flex;flex-direction:column;gap:8px;font-size:13px}
.rep-foot{font-size:11.5px;color:#9CA3AF;text-align:center;padding:4px 0 8px}
.print-only{display:none}
@media print{
  @page{size:A4;margin:12mm}
  body{background:#fff !important}
  .sidebar,.topbar,.e360-phone-dock,#toasts,.no-print{display:none !important}
  .shell{display:block !important}
  #view{padding:0 !important;max-width:none !important}
  .print-only{display:flex !important}
  .rep-print-brand{align-items:center;gap:8px;margin-bottom:6px}
  .rep-print-brand img{height:22px}.rep-print-brand span{font:800 20px var(--font-head);color:var(--wema)}.rep-print-brand small{margin-left:auto;color:#6B7280}
  .card,.rep-kpi{box-shadow:none !important;break-inside:avoid}
  .rep-kpis{grid-template-columns:repeat(5,1fr)}
  .rep-grid{grid-template-columns:1fr 1fr}
  *{-webkit-print-color-adjust:exact;print-color-adjust:exact}
}

/* ---------- Sign-in (concept 02) ---------- */
.auth-hero-copy{position:relative;z-index:1;margin:auto 0}
.auth-hero h1{font-size:64px}
.auth-hero p{font-size:20px;max-width:500px}
.auth-logo{position:relative;z-index:1}
.auth-logo span{font-size:30px}
.auth-card{max-width:440px;gap:14px}
.auth-card h2{font-size:30px}
.auth-mobile-logo{display:none;align-items:center;gap:8px}
.auth-mobile-logo img{height:26px}.auth-mobile-logo span{font:800 24px var(--font-head);color:var(--wema);letter-spacing:-.04em}.auth-mobile-logo small{color:var(--muted-w);font-weight:600;margin-left:4px}
.auth-sso-wrap{position:relative;display:block;cursor:not-allowed}
.auth-sso{width:100%;gap:10px;opacity:.55;pointer-events:none}
.auth-tip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);background:var(--ink-w);color:#fff;font-size:12px;font-weight:600;padding:6px 10px;border-radius:8px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .15s}
.auth-tip::after{content:"";position:absolute;top:100%;left:50%;margin-left:-5px;border:5px solid transparent;border-top-color:var(--ink-w)}
.auth-sso-wrap:hover .auth-tip,.auth-sso-wrap:focus .auth-tip{opacity:1}
.auth-ico{display:inline-flex}
.auth-form{display:flex;flex-direction:column;gap:14px}
.auth-field .field-label{font-size:13px}
.auth-input{position:relative;display:flex;align-items:center}
.auth-input .auth-ico{position:absolute;left:13px;color:#9CA3AF;pointer-events:none}
.auth-input .input{height:46px;padding-left:40px;padding-right:44px;font-size:14.5px}
.auth-eye{position:absolute;right:6px;width:34px;height:34px;border:0;background:none;color:#9CA3AF;border-radius:8px;cursor:pointer;display:grid;place-items:center}
.auth-eye:hover{color:var(--wema);background:var(--lilac)}
.auth-remember{display:flex;align-items:center;gap:6px;color:var(--muted-w)}
.auth-submit{height:46px;width:100%;font-size:15px}
.btn.auth-submit:not(.primary){border-color:#D1D5DB}
.auth-error[hidden],.auth-note[hidden]{display:none}
.auth-demo-head{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}
.auth-demo-head strong{font-size:13px}
.auth-demo-head span{font-size:11.5px;color:var(--muted-w)}
.auth-demo-head code{background:var(--lilac);color:var(--wema);padding:1px 6px;border-radius:6px;font-size:11.5px}
.auth-demo .who{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.auth-demo .who button:last-child:nth-child(odd){grid-column:1/-1}
.auth-demo button span{min-width:0}
.auth-eyebrow{font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:var(--wema)}
.auth-who{display:flex;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border-w);border-radius:12px;background:#FCFCFD}
.auth-who span{display:flex;flex-direction:column;min-width:0}.auth-who small{color:var(--muted-w);font-size:12px;overflow-wrap:anywhere}
.pw-rules{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px 12px;font-size:12.5px;color:var(--muted-w)}
.pw-rules li{display:flex;align-items:center;gap:6px}
.pw-rules li::before{content:"";width:14px;height:14px;border-radius:50%;border:1.5px solid #D1D5DB;flex:none;box-sizing:border-box}
.pw-rules li.ok{color:var(--teal-ink)}
.pw-rules li.ok::before{background:var(--teal-w) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5'%3E%3Cpath d='M5 12l5 5 9-10'/%3E%3C/svg%3E") center/10px no-repeat;border-color:var(--teal-w)}

/* ---------- Responsive ---------- */
@media (max-width:1180px){
  .team-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .kb-grid,.int-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rep-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
  .top-search{flex-basis:260px}
  .me-chip .me-text{display:none}
}
@media (max-width:980px){
  .tel-grid,.rep-grid{grid-template-columns:1fr}
  .audit-filter-row{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
  .auth-hero{padding:22px 20px;gap:12px}
  .auth-hero h1{font-size:30px;margin-bottom:6px}
  .auth-hero p{font-size:14.5px}
  .auth-stages{margin-top:14px}
  .auth-stages span{padding:5px 11px;font-size:12px}
  .auth-legal{display:none}
  .auth-panel{padding:24px 18px 30px;align-items:flex-start}
}
@media (max-width:820px){
  .topbar{gap:8px;padding:10px 14px;min-height:60px}
  .top-search{display:none}
  .top-search-btn{display:grid}
  body.search-open .top-search{display:flex;position:fixed;left:10px;right:10px;top:10px;z-index:80;flex:none;box-shadow:0 10px 40px #1119282e}
  body.search-open .search-pop{min-width:0}
  .top-bell{display:grid;width:38px;height:38px}
  .bell-pop{position:fixed;left:10px;right:10px;top:64px;width:auto}
  .me-chip{padding:3px}
  .me-chip .me-text,.me-caret{display:none}
  .crumb-trail{display:none}
  .team-stats{grid-template-columns:1fr 1fr;gap:10px}
  .team-stat{padding:12px;gap:10px}.team-stat-ico{width:36px;height:36px}.team-stat strong{font-size:21px}.team-stat small{display:none}
  .team-filter-inputs,.team-filter-inputs .input{width:100%;min-width:0}
  .cred-grid{grid-template-columns:1fr}
  .manage-row td{display:block !important}
  .manage-row td::before{display:none}
  .tel-features{grid-template-columns:1fr}
  .kb-layout{grid-template-columns:1fr}
  .kb-cats{position:static;flex-direction:row;overflow-x:auto;padding:6px}
  .kb-cat-item{white-space:nowrap;gap:8px}
  .kb-side-note{display:none}
  .kb-grid,.int-grid{grid-template-columns:1fr}
  .kb-reader{padding:16px}
  .kb-reader-head{flex-direction:column}
  .audit-filter-row{grid-template-columns:1fr 1fr}
  .audit-sentence{max-width:none;text-align:right}
  .rep-kpis{grid-template-columns:1fr 1fr}
  .rep-bar-row{grid-template-columns:96px minmax(0,1fr) 30px}
  .rep-meter-track{grid-template-columns:1fr 1fr;row-gap:16px}
  .rep-meter-track::before{display:none}
  .rep-core{grid-template-columns:1fr 1fr}
  .pw-rules{grid-template-columns:1fr}
}
@media (max-width:420px){
  .audit-filter-row{grid-template-columns:1fr}
}
