.lv2-page{--lv2-bg: #050507;--lv2-bg-raised: #0a0a0e;--lv2-surface: rgba(255, 255, 255, .045);--lv2-surface-strong: rgba(255, 255, 255, .08);--lv2-border: rgba(255, 255, 255, .09);--lv2-border-strong: rgba(255, 255, 255, .16);--lv2-text: #f5f5f7;--lv2-text-dim: rgba(245, 245, 247, .64);--lv2-text-faint: rgba(245, 245, 247, .38);--lv2-accent: #5ac9c4;--lv2-accent-2: #2d8a85;--lv2-accent-warm: #ffaf20;--lv2-success: #34d399;--lv2-danger: #ff6b6b;--lv2-radius-lg: 24px;--lv2-radius-md: 16px;--lv2-radius-sm: 10px;position:relative;background:var(--lv2-bg);color:var(--lv2-text);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Inter,Segoe UI,sans-serif;min-height:100vh;overflow-x:hidden;-webkit-font-smoothing:antialiased}.lv2-page *{box-sizing:border-box}.lv2-page a{color:inherit}.lv2-ambient{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;mix-blend-mode:soft-light;opacity:.55;background:radial-gradient(ellipse 60% 50% at 15% 10%,rgba(90,201,196,.55),transparent 60%),radial-gradient(ellipse 50% 40% at 85% 35%,rgba(45,138,133,.45),transparent 60%),radial-gradient(ellipse 55% 45% at 50% 95%,rgba(255,175,32,.4),transparent 60%)}.lv2-reduced-motion .lv2-ambient{display:none}.lv2-section{position:relative;padding:140px 24px}.lv2-section__inner{max-width:1180px;margin:0 auto}.lv2-eyebrow{font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--lv2-accent);font-weight:600;margin:0 0 18px;text-align:center}.lv2-heading{font-size:clamp(30px,4.2vw,52px);font-weight:650;letter-spacing:-.02em;line-height:1.08;margin:0 0 20px;text-align:center;color:var(--lv2-text)}.lv2-lede{font-size:clamp(15px,1.4vw,18px);color:var(--lv2-text-dim);line-height:1.7;max-width:620px;margin:0 auto 64px;text-align:center}.lv2-glass{background:var(--lv2-surface);border:1px solid var(--lv2-border);border-radius:var(--lv2-radius-lg);backdrop-filter:blur(24px) saturate(140%);-webkit-backdrop-filter:blur(24px) saturate(140%)}.lv2-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:600;padding:14px 28px;border-radius:999px;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease}.lv2-btn:active{transform:scale(.97)}.lv2-btn--primary{background:linear-gradient(135deg,var(--lv2-accent),var(--lv2-accent-2));color:#08080c;box-shadow:0 8px 30px #5ac8fa40}.lv2-btn--primary:hover{box-shadow:0 10px 40px #5ac8fa66;transform:translateY(-1px)}.lv2-btn--secondary{background:#ffffff0f;color:var(--lv2-text);border-color:var(--lv2-border-strong)}.lv2-btn--secondary:hover{background:#ffffff1a;border-color:#ffffff4d}.lv2-btn--ghost{background:transparent;color:var(--lv2-text-dim);padding:8px 4px;font-size:14px}.lv2-btn--ghost:hover{color:var(--lv2-text)}.lv2-nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;padding:18px 32px;background:#0505078c;border-bottom:1px solid rgba(255,255,255,.06);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.lv2-nav__brand{font-size:15px;font-weight:700;letter-spacing:.06em}.lv2-nav__logo{height:30px;width:auto;display:block;border-radius:8px}.lv2-nav__actions{display:flex;align-items:center;gap:20px}.lv2-hero{--lv2-accent: #5ac8fa;--lv2-accent-2: #7c6cf7}.lv2-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:120px 24px 80px;overflow:hidden}.lv2-hero__canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0}.lv2-hero__fallback-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(ellipse 60% 50% at 50% 0%,rgba(90,200,250,.16),transparent 60%),radial-gradient(ellipse 50% 40% at 80% 90%,rgba(124,108,247,.14),transparent 60%),var(--lv2-bg)}.lv2-hero__vignette{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none;background:radial-gradient(ellipse 70% 60% at 50% 40%,transparent 40%,var(--lv2-bg) 100%)}.lv2-hero__content{position:relative;z-index:2;text-align:center;max-width:780px}.lv2-hero__kicker{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--lv2-text-faint);margin:0 0 28px;font-weight:600}.lv2-hero__title{font-size:clamp(64px,13vw,148px);font-weight:700;letter-spacing:-.04em;line-height:.95;margin:0 0 28px;background:linear-gradient(180deg,#fff,#fff 40%,#ffffff8c);-webkit-background-clip:text;background-clip:text;color:transparent}.lv2-hero__subtitle{font-size:clamp(17px,2vw,22px);color:var(--lv2-text-dim);line-height:1.6;max-width:560px;margin:0 auto 48px}.lv2-hero__ctas{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.lv2-hero__scroll-hint{position:absolute;bottom:36px;left:50%;transform:translate(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--lv2-text-faint)}.lv2-hero__scroll-chevron{animation:lv2-bounce 2s ease-in-out infinite}@keyframes lv2-bounce{0%,to{transform:translateY(0);opacity:.5}50%{transform:translateY(6px);opacity:1}}.lv2-architecture{background:var(--lv2-bg-raised)}.lv2-architecture__stack{display:flex;flex-direction:column;align-items:center;gap:0;max-width:520px;margin:0 auto}.lv2-layer{width:100%;padding:22px 28px;display:flex;align-items:center;gap:16px}.lv2-layer__icon{width:44px;height:44px;border-radius:12px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:#5ac9c424;border:1px solid rgba(90,201,196,.3);font-size:20px}.lv2-layer__text{text-align:left}.lv2-layer__title{font-size:16px;font-weight:650;margin:0 0 2px}.lv2-layer__desc{font-size:13px;color:var(--lv2-text-dim);margin:0}.lv2-layer__connector{width:1px;height:36px;background:linear-gradient(180deg,#ffffff47,#ffffff05);margin:0 auto}.lv2-nodes{background:var(--lv2-bg)}.lv2-orbit{position:relative;width:min(560px,90vw);height:min(560px,90vw);margin:0 auto}.lv2-orbit__hub{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:128px;height:128px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 35% 30%,#5ac9c459,#2d8a8538);border:1px solid var(--lv2-border-strong);font-weight:700;font-size:15px;letter-spacing:.06em;box-shadow:0 0 60px #5ac9c447}.lv2-orbit__ring{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:1px dashed rgba(255,255,255,.12)}.lv2-node{position:absolute;top:50%;left:50%;width:108px;margin-left:-54px;margin-top:-54px;display:flex;flex-direction:column;align-items:center;gap:10px;background:transparent;border:none;cursor:pointer;padding:0;color:var(--lv2-text)}.lv2-node__dot{width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;background:var(--lv2-surface-strong);border:1px solid var(--lv2-border-strong);transition:border-color .2s,box-shadow .2s,background .2s}.lv2-node:hover .lv2-node__dot,.lv2-node:focus-visible .lv2-node__dot{border-color:var(--lv2-accent);box-shadow:0 0 24px #5ac9c459;background:#5ac9c424}.lv2-node__label{font-size:13px;font-weight:600;color:var(--lv2-text-dim)}.lv2-panel-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0202048c;display:flex;justify-content:flex-end}.lv2-panel{width:min(420px,92vw);height:100%;padding:40px 32px;background:#0b0b10;border-left:1px solid var(--lv2-border-strong);display:flex;flex-direction:column;gap:18px;overflow-y:auto}.lv2-panel__close{align-self:flex-end;background:none;border:none;color:var(--lv2-text-dim);font-size:22px;cursor:pointer;line-height:1}.lv2-panel__close:hover{color:var(--lv2-text)}.lv2-panel__icon{width:56px;height:56px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:26px;background:#5ac9c424;border:1px solid rgba(90,201,196,.3)}.lv2-panel__title{font-size:24px;font-weight:700;margin:0}.lv2-panel__desc{font-size:15px;color:var(--lv2-text-dim);line-height:1.65;margin:0}.lv2-panel__list{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-direction:column;gap:12px}.lv2-panel__list li{font-size:14px;color:var(--lv2-text-dim);padding-left:22px;position:relative;line-height:1.5}.lv2-panel__list li:before{content:"✓";position:absolute;left:0;color:var(--lv2-success);font-weight:700}.lv2-features{background:var(--lv2-bg-raised)}.lv2-features__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.lv2-feature-card{padding:30px 26px;display:flex;flex-direction:column;gap:14px;transition:transform .25s ease,border-color .25s ease}.lv2-feature-card:hover{transform:translateY(-4px);border-color:var(--lv2-border-strong)}.lv2-feature-card__icon{width:42px;height:42px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#ffffff0f;font-size:20px}.lv2-feature-card__title{font-size:16px;font-weight:650;margin:0}.lv2-feature-card__body{font-size:13.5px;color:var(--lv2-text-dim);line-height:1.6;margin:0}.lv2-screens{background:var(--lv2-bg)}.lv2-screens__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.lv2-screen{overflow:hidden;display:flex;flex-direction:column}.lv2-screen__bar{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--lv2-border);background:#ffffff05}.lv2-screen__dot{width:8px;height:8px;border-radius:50%;background:#ffffff29}.lv2-screen__title{margin-left:6px;font-size:11px;color:var(--lv2-text-faint);letter-spacing:.03em}.lv2-screen__body{padding:18px;height:210px;display:flex;align-items:center;justify-content:center}.lv2-screen__graph{width:100%;height:100%}.lv2-screen__caption{padding:12px 16px 18px;font-size:12px;font-weight:600;color:var(--lv2-accent);letter-spacing:.02em;border-top:1px solid var(--lv2-border)}.lv2-screen__table{width:100%;border-collapse:collapse;font-size:12px}.lv2-screen__table th{text-align:left;font-weight:600;color:var(--lv2-text-faint);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;padding:0 8px 8px}.lv2-screen__table td{padding:6px 8px;color:var(--lv2-text-dim);border-top:1px solid var(--lv2-border)}.lv2-risk-badge{font-size:10px;font-weight:700;padding:2px 7px;border-radius:999px;letter-spacing:.02em}.lv2-risk-badge--crit{background:#ff6b6b29;color:var(--lv2-danger)}.lv2-risk-badge--high{background:#ffaf2029;color:var(--lv2-accent-warm)}.lv2-risk-badge--med{background:#5ac9c429;color:var(--lv2-accent)}.lv2-risk-badge--low{background:#34d39929;color:var(--lv2-success)}.lv2-screen__heatmap{position:relative;width:100%;height:100%;border-left:1px solid var(--lv2-border);border-bottom:1px solid var(--lv2-border)}.lv2-heatmap-quadrant{position:absolute;font-size:9.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--lv2-text-faint);font-weight:600}.lv2-heatmap-quadrant--tl{top:6px;left:8px}.lv2-heatmap-quadrant--tr{top:6px;right:8px}.lv2-heatmap-quadrant--bl{bottom:6px;left:8px}.lv2-heatmap-quadrant--br{bottom:6px;right:8px}.lv2-heatmap-dot{position:absolute;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;min-width:26px;height:20px;padding:0 6px;border-radius:999px;background:var(--lv2-accent);color:#08080c;font-size:9px;font-weight:700;white-space:nowrap}.lv2-heatmap-axis{position:absolute;font-size:9.5px;color:var(--lv2-text-faint)}.lv2-heatmap-axis--x{bottom:-18px;right:0}.lv2-dashboard{background:var(--lv2-bg)}.lv2-dash-frame{max-width:920px;margin:0 auto;overflow:hidden}.lv2-dash-frame__bar{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid var(--lv2-border);background:#ffffff05}.lv2-dash-frame__dot{width:10px;height:10px;border-radius:50%;background:#ffffff29}.lv2-dash-frame__title{margin-left:8px;font-size:12px;color:var(--lv2-text-faint);letter-spacing:.04em}.lv2-dash-frame__body{display:grid;grid-template-columns:1.3fr 1fr;gap:1px;background:var(--lv2-border)}.lv2-dash-col{background:#08080c;padding:24px}.lv2-dash-col__title{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--lv2-text-faint);margin:0 0 18px;font-weight:600}.lv2-notif{display:flex;flex-direction:column;gap:12px}.lv2-notif-item{display:flex;gap:12px;padding:12px 14px;border-radius:12px;background:#ffffff08;border:1px solid var(--lv2-border)}.lv2-notif-item__badge{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0}.lv2-notif-item__badge--ok{background:var(--lv2-success);box-shadow:0 0 0 3px #34d3992e}.lv2-notif-item__badge--warn{background:var(--lv2-accent-warm);box-shadow:0 0 0 3px #ffaf202e}.lv2-notif-item__badge--live{background:var(--lv2-accent);animation:lv2-pulse 1.6s ease-in-out infinite}@keyframes lv2-pulse{0%,to{box-shadow:0 0 #5ac9c466}50%{box-shadow:0 0 0 6px #5ac9c400}}.lv2-notif-item__title{font-size:13.5px;font-weight:600;margin:0 0 2px}.lv2-notif-item__meta{font-size:12px;color:var(--lv2-text-faint);margin:0}.lv2-progress{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.lv2-progress-row{display:flex;flex-direction:column;gap:6px}.lv2-progress-row__label{display:flex;justify-content:space-between;font-size:12.5px;color:var(--lv2-text-dim)}.lv2-progress-track{height:6px;border-radius:999px;background:#ffffff0f;overflow:hidden}.lv2-progress-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--lv2-accent),var(--lv2-accent-2))}.lv2-approvals{display:flex;flex-direction:column;gap:10px}.lv2-approval-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:10px;background:#ffffff08;border:1px solid var(--lv2-border);font-size:13px}.lv2-approval-item__tag{font-size:10.5px;padding:3px 8px;border-radius:999px;letter-spacing:.04em;background:#ffaf2024;color:var(--lv2-accent-warm);border:1px solid rgba(255,175,32,.3)}.lv2-final-cta{position:relative;text-align:center;padding:160px 24px;overflow:hidden;background:var(--lv2-bg-raised)}.lv2-final-cta__canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.7}.lv2-final-cta__content{position:relative;z-index:1}.lv2-final-cta__title{font-size:clamp(34px,5vw,64px);font-weight:700;letter-spacing:-.03em;margin:0 0 20px}.lv2-final-cta__sub{font-size:16px;color:var(--lv2-text-dim);max-width:520px;margin:0 auto 40px;line-height:1.6}.lv2-final-cta__ctas{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin-bottom:28px}.lv2-final-cta__note{font-size:12.5px;color:var(--lv2-text-faint);letter-spacing:.02em}.lv2-footer{padding:28px 32px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--lv2-border);font-size:12px;color:var(--lv2-text-faint)}@media (max-width: 900px){.lv2-features__grid{grid-template-columns:repeat(2,1fr)}.lv2-screens__grid,.lv2-dash-frame__body{grid-template-columns:1fr}}@media (max-width: 640px){.lv2-section{padding:96px 18px}.lv2-nav{padding:14px 18px}.lv2-features__grid{grid-template-columns:1fr}.lv2-orbit{width:320px;height:320px}.lv2-node{width:84px;margin-left:-42px;margin-top:-42px}.lv2-node__dot{width:48px;height:48px;font-size:18px}.lv2-orbit__hub{width:96px;height:96px;font-size:13px}.lv2-footer{flex-direction:column;gap:10px;text-align:center}}.lv2-page.lv2-reduced-motion *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}:root{--surface-card: #ffffff;--surface-secondary: #f8fafc;--border-card: #e2e8f0;--border-subtle: #f1f5f9;--text-primary: #1e293b;--text-secondary: #64748b;--brand-accent: #0d9488;--brand-secondary: #0891b2;--brand-critical: #dc2626;--header-bg: #0f172a;--header-text: #f8fafc;--header-muted: #94a3b8;--header-nav: #cbd5e1}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--surface-secondary);color:var(--text-primary);min-height:100vh}.portal-header{display:flex;align-items:center;gap:1.5rem;padding:0 2rem;height:56px;background:var(--header-bg);color:var(--header-text)}.portal-logo{font-weight:700;font-size:1.1rem;letter-spacing:.04em}.portal-logo-accent{color:var(--brand-accent)}.portal-company-name{color:var(--header-muted);font-size:.9rem;padding:.15rem .6rem;border-radius:4px;background:#ffffff14}.portal-header-nav{display:flex;gap:1rem;flex:1}.portal-header-nav a{color:#cbd5e1;text-decoration:none;font-size:.9rem}.portal-header-nav a:hover{color:#f8fafc}.portal-header-actions{display:flex;gap:.5rem}.portal-main{max-width:1200px;margin:0 auto;padding:2rem}.portal-loading{padding:2rem;text-align:center;color:#64748b}.portal-error{padding:2rem;color:#dc2626}.score-cards{display:flex;gap:1rem;margin:1.5rem 0;flex-wrap:wrap}.score-card{flex:1;min-width:140px;padding:1.25rem 1rem;background:var(--surface-card);border-radius:8px;border:1px solid var(--border-card);box-shadow:0 1px 3px #0000000a;text-align:center;display:flex;flex-direction:column;align-items:center;gap:.5rem}.score-ring-wrap{position:relative;width:80px;height:80px}.score-ring-wrap svg{transform:rotate(-90deg)}.score-ring-track{fill:none;stroke:var(--border-subtle);stroke-width:6}.score-ring-fill{fill:none;stroke-width:6;stroke-linecap:round;transition:stroke-dashoffset .5s ease}.score-ring-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.score-ring-number{font-size:1.3rem;font-weight:700;color:var(--text-primary);line-height:1}.score-label{color:var(--text-secondary);font-size:.8rem;margin-top:.1rem}.findings-summary{margin:2rem 0}.findings-counts{display:flex;gap:.5rem;margin:.75rem 0}.finding-badge{padding:.2rem .75rem;border-radius:999px;font-size:.8rem;font-weight:600;background:#f1f5f9;color:#475569}.finding-badge.critical{background:#fef2f2;color:#dc2626}.finding-badge.high{background:#fff7ed;color:#ea580c}.findings-list{list-style:none}.finding-row{display:flex;align-items:center;gap:.75rem;padding:.6rem 0;border-bottom:1px solid #f1f5f9}.severity-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.finding-row a{flex:1;text-decoration:none;color:#1e293b}.finding-category{font-size:.8rem;color:#94a3b8}.findings-filters{display:flex;gap:.5rem;margin:1rem 0}.filter-btn{padding:.3rem .9rem;border-radius:999px;border:1px solid #e2e8f0;background:#f8fafc;cursor:pointer;font-size:.85rem}.filter-btn.active{background:#0f172a;color:#f8fafc;border-color:#0f172a}.findings-layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.findings-list-full{list-style:none}.finding-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:6px;cursor:pointer;border:1px solid transparent}.finding-item:hover,.finding-item.selected{background:#f1f5f9;border-color:#e2e8f0}.severity-badge{padding:.15rem .6rem;border-radius:4px;color:#fff;font-size:.75rem}.finding-item-text{display:flex;flex-direction:column;gap:.1rem}.finding-detail{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;position:relative}.close-btn{position:absolute;top:.75rem;right:1rem;background:none;border:none;font-size:1.5rem;cursor:pointer;color:#94a3b8}.finding-meta{color:#64748b;font-size:.85rem;margin:.5rem 0 1.25rem}.finding-detail section{margin:1rem 0}.finding-detail h3{font-size:.9rem;color:#64748b;margin-bottom:.4rem}.discovered-at{font-size:.8rem;color:#94a3b8;margin-top:1rem}.roadmap-note{color:#64748b;font-size:.85rem;margin:.5rem 0 1.5rem}.roadmap-horizon{margin-bottom:2rem}.roadmap-horizon h2{font-size:1.1rem;margin-bottom:.75rem;color:#475569}.roadmap-items{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.roadmap-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.roadmap-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.status-badge{padding:.15rem .6rem;border-radius:4px;color:#fff;font-size:.75rem;white-space:nowrap}.roadmap-category{font-size:.8rem;color:#94a3b8;margin-top:.5rem;display:block}.roadmap-empty{color:#94a3b8}.company-selector{max-width:600px;margin:4rem auto;padding:0 1rem}.company-selector h1{margin-bottom:.5rem}.company-selector p{color:#64748b;margin-bottom:1.5rem}.company-list{list-style:none;display:flex;flex-direction:column;gap:.75rem}.company-card{width:100%;padding:1rem 1.25rem;background:#fff;border:1px solid #e2e8f0;border-radius:8px;cursor:pointer;text-align:left;display:flex;align-items:center;justify-content:space-between}.company-card:hover{border-color:#3b82f6;background:#eff6ff}.company-card strong{font-size:1rem}.industry{font-size:.85rem;color:#94a3b8}.advisory-chat{display:flex;flex-direction:column;height:calc(100vh - 120px)}.chat-description{color:#64748b;font-size:.9rem;margin:.5rem 0 1rem}.chat-messages{flex:1;overflow-y:auto;padding:1rem 0;display:flex;flex-direction:column;gap:1rem}.chat-empty{color:#94a3b8;text-align:center;margin:auto}.chat-message{max-width:80%}.chat-message.user{align-self:flex-end}.chat-message.assistant{align-self:flex-start}.message-content{padding:.75rem 1rem;border-radius:12px;font-size:.9rem;line-height:1.5;white-space:pre-wrap}.chat-message.user .message-content{background:#0f172a;color:#f8fafc}.chat-message.assistant .message-content{background:#fff;border:1px solid #e2e8f0}.typing{color:#94a3b8}.chat-input-row{display:flex;gap:.75rem;align-items:flex-end;padding:1rem 0}.chat-input-row textarea{flex:1;padding:.75rem;border:1px solid #e2e8f0;border-radius:8px;font-family:inherit;font-size:.9rem;resize:none}.chat-input-row button{padding:.75rem 1.5rem;background:#0f172a;color:#f8fafc;border:none;border-radius:8px;cursor:pointer}.chat-input-row button:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{padding:.4rem 1rem;background:transparent;border:1px solid #475569;color:#cbd5e1;border-radius:6px;cursor:pointer;font-size:.85rem}.btn-ghost{padding:.4rem .75rem;background:none;border:none;color:#94a3b8;cursor:pointer;font-size:.85rem}.view-all{font-size:.85rem;color:#3b82f6;text-decoration:none}.architecture-summary{margin-top:2rem;padding:1.5rem;background:#fff;border-radius:8px;border:1px solid #e2e8f0}.assessed-at{font-size:.8rem;color:#94a3b8;margin-top:.75rem}.portal-page{padding:0}.portal-page-title{font-size:1.5rem;font-weight:700;color:#0f172a}.portal-page-subtitle{font-size:.875rem;color:#64748b;margin-top:.25rem}.portal-error-banner{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;font-size:.875rem}.portal-input{width:100%;padding:.5rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;background:#fff;color:#1e293b;font-family:inherit}.portal-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #bfdbfe}.portal-textarea{resize:vertical;min-height:64px}.portal-btn-primary{padding:.5rem 1.25rem;background:#0f172a;color:#f8fafc;border:none;border-radius:6px;cursor:pointer;font-size:.875rem;font-weight:500;white-space:nowrap}.portal-btn-primary:hover{background:#1e293b}.portal-btn-primary:disabled{opacity:.5;cursor:not-allowed}.portal-btn-secondary{padding:.5rem 1.25rem;background:transparent;border:1px solid #cbd5e1;color:#475569;border-radius:6px;cursor:pointer;font-size:.875rem;white-space:nowrap}.portal-btn-secondary:hover{background:#f8fafc}.portal-btn-danger{padding:.5rem 1.25rem;background:#dc2626;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.875rem}.portal-btn-danger:hover{background:#b91c1c}.portal-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.portal-modal{background:#fff;border-radius:10px;width:100%;max-width:680px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #0003}.portal-modal-sm{max-width:420px}.portal-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid #e2e8f0}.portal-modal-header h2{font-size:1.1rem;font-weight:600}.portal-modal-close{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#94a3b8;line-height:1}.portal-modal-body{padding:1.25rem 1.5rem;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:.875rem}.portal-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e2e8f0}.portal-form-section-title{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8;margin-top:.5rem}.portal-form-row{display:flex;flex-direction:column;gap:.25rem}.portal-form-row label{font-size:.8rem;font-weight:500;color:#475569}.portal-form-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}.portal-form-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.875rem}@media (max-width: 540px){.portal-form-grid-2,.portal-form-grid-3{grid-template-columns:1fr}}.inventory-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.25rem;gap:1rem;flex-wrap:wrap}.inventory-filters{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap;align-items:center}.inventory-search{max-width:260px}.inventory-empty{text-align:center;padding:3rem 1rem;color:#94a3b8;background:#f8fafc;border-radius:8px;border:1px dashed #cbd5e1}.inventory-table-wrap{overflow-x:auto;border-radius:8px;border:1px solid #e2e8f0}.inventory-table{width:100%;border-collapse:collapse;font-size:.875rem;background:#fff}.inventory-table th{text-align:left;padding:.75rem 1rem;background:#f8fafc;font-size:.75rem;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid #e2e8f0;white-space:nowrap}.inventory-table td{padding:.75rem 1rem;border-bottom:1px solid #f1f5f9;vertical-align:middle}.inventory-row:last-child td{border-bottom:none}.inventory-row:hover td{background:#f8fafc}.inventory-name{display:flex;flex-direction:column;gap:.2rem;font-weight:500}.inventory-capability{font-size:.75rem;color:#94a3b8;font-weight:400}.inventory-badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.inventory-eol{font-size:.8rem;font-weight:500}.inventory-eol.eol-critical{color:#dc2626}.inventory-eol.eol-warning{color:#d97706}.inventory-eol.eol-ok{color:#16a34a}.inventory-actions{display:flex;gap:.25rem;justify-content:flex-end}.inventory-action-btn{background:none;border:1px solid transparent;border-radius:4px;cursor:pointer;padding:.25rem .4rem;font-size:.85rem;color:#64748b;transition:all .1s}.inventory-action-btn:hover{background:#f1f5f9;border-color:#e2e8f0;color:#0f172a}.inventory-action-delete:hover{background:#fef2f2;border-color:#fecaca;color:#dc2626}.eol-summary-row{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem;margin-bottom:1.5rem}@media (max-width: 680px){.eol-summary-row{grid-template-columns:repeat(2,1fr)}}.eol-summary-card{background:#fff;border-radius:8px;border:1px solid #e2e8f0;padding:1rem 1.25rem;text-align:center}.eol-summary-count{font-size:2rem;font-weight:700;line-height:1}.eol-summary-label{font-size:.75rem;color:#64748b;margin-top:.3rem}.eol-band-section{margin-bottom:.5rem}.eol-band-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:#f8fafc;border-radius:4px;margin-bottom:.25rem}.eol-band-count{font-size:.8rem;color:#64748b}.eol-band-badge{display:inline-block;padding:.2rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;white-space:nowrap}.eol-row-name{font-weight:500}.engagements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.engagement-card{background:var(--surface-card);border:1px solid var(--border-card);border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column;gap:.6rem}.engagement-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.engagement-title{font-weight:600;color:var(--text-primary);font-size:.95rem}.engagement-badge{display:inline-block;padding:.15rem .6rem;border-radius:999px;font-size:.72rem;font-weight:700;white-space:nowrap}.engagement-badge--type{background:var(--border-card);color:var(--text-secondary)}.engagement-description{font-size:.85rem;color:var(--text-secondary)}.engagement-meta{display:flex;gap:1rem;flex-wrap:wrap;font-size:.8rem;color:var(--text-secondary)}.engagement-progress{margin-top:.25rem}.engagement-progress-label{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-secondary);margin-bottom:.3rem}.dashboard-engagements{margin:2rem 0}.dashboard-engagements-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.dashboard-engagements-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.dashboard-engagement-row{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:var(--surface-card);border:1px solid var(--border-card);border-radius:6px;margin-bottom:.4rem}.dashboard-engagement-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dashboard-engagement-name{flex:1;font-size:.875rem;font-weight:500;color:var(--text-primary)}.dashboard-engagement-meta{font-size:.78rem;color:var(--text-secondary)}.internal-notes{margin-top:1.5rem;border-top:1px solid var(--border-subtle);padding-top:1rem}.internal-notes-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:.75rem}.internal-notes-empty{font-size:.85rem;color:var(--text-secondary);margin-bottom:.75rem}.internal-note-card{background:var(--surface-secondary);border:1px solid var(--border-subtle);border-radius:6px;padding:.75rem;margin-bottom:.5rem}.internal-note-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.35rem}.internal-note-name{font-size:.875rem;font-weight:600;color:var(--text-primary)}.internal-note-badge{display:inline-block;padding:.1rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;background:var(--border-card);color:var(--text-secondary)}.internal-note-badge--priority{background:#eff6ff;color:#1d4ed8}.internal-note-delete{background:none;border:none;cursor:pointer;color:var(--text-secondary);font-size:1rem;padding:0 .2rem;line-height:1}.internal-note-delete:hover{color:var(--brand-critical)}.internal-note-text{font-size:.85rem;color:var(--text-primary);white-space:pre-wrap;margin-bottom:.3rem}.internal-note-ts{font-size:.75rem;color:var(--text-secondary)}.internal-note-form{margin-top:1rem;display:flex;flex-direction:column;gap:.5rem}.internal-note-form-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.internal-note-form-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.5rem}@media (max-width: 600px){.internal-note-form-row{grid-template-columns:1fr}}.internal-note-error{font-size:.8rem;color:var(--brand-critical)}.empty-state{text-align:center;padding:2.5rem 1.5rem;background:var(--surface-card);border:1px dashed var(--border-card);border-radius:8px;color:var(--text-secondary)}.empty-state-icon{font-size:2rem;margin-bottom:.5rem}.empty-state p{font-size:.875rem}.ai-readiness{margin:2rem 0;background:var(--surface-card);border:1px solid var(--border-card);border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #0000000a}.ai-readiness-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem}.ai-readiness-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary)}.readiness-band-badge{display:inline-block;padding:.25rem .85rem;border-radius:999px;font-size:.8rem;font-weight:700;color:#fff;letter-spacing:.03em}.ai-readiness-dimensions{margin-bottom:1.25rem}.dim-row{margin-bottom:.6rem}.dim-label-row{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.25rem}.dim-label{font-size:.8rem;color:var(--text-secondary)}.dim-score{font-size:.8rem;font-weight:600;color:var(--text-primary)}.dim-bar-track{height:6px;background:var(--border-subtle);border-radius:999px;overflow:hidden}.dim-bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.ai-readiness-findings{margin-bottom:1.25rem}.ai-readiness-section-title{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:.6rem}.finding-chip{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;border-radius:6px;background:var(--surface-secondary);margin-bottom:.4rem;font-size:.85rem;color:var(--text-primary)}.finding-chip-dot{width:6px;height:6px;border-radius:50%;background:var(--brand-accent);flex-shrink:0;margin-top:5px}.ai-readiness-cta{padding:.75rem 1rem;background:var(--surface-secondary);border-radius:6px;font-size:.875rem;color:var(--text-secondary);border-left:3px solid var(--brand-accent)}@media print{.portal-header,.inventory-filters,.portal-btn-secondary,.no-print{display:none!important}.portal-main{padding:0;max-width:none}.inventory-table-wrap{border:none}.inventory-table th,.inventory-table td{font-size:.75rem;padding:.4rem .5rem}body{background:#fff;font-size:12px}h1{font-size:1.2rem!important}button{display:none!important}}
