:root { color-scheme: light; font-family: Inter, ui-sans-serif, system-ui, sans-serif; background: #f2efe8; color: #17211b; }
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; background: radial-gradient(circle at top right, #d7eadc, transparent 38%), #f2efe8; }
.shell { width: min(780px, calc(100% - 32px)); margin: 0 auto; padding: 64px 0; }
header { margin-bottom: 28px; }
.eyebrow { color: #376149; font-size: .78rem; font-weight: 750; letter-spacing: .12em; text-transform: uppercase; }
h1 { font-family: Georgia, serif; font-size: clamp(3rem, 9vw, 6rem); line-height: .9; margin: 10px 0 20px; font-weight: 500; }
.lead { max-width: 620px; font-size: 1.1rem; line-height: 1.55; color: #46534b; }
.card { background: rgba(255,255,255,.82); border: 1px solid #d4d8d1; border-radius: 22px; padding: 24px; box-shadow: 0 18px 50px rgba(34,52,40,.08); margin-top: 18px; }
.drop { display: grid; gap: 8px; padding: 30px; border: 1px dashed #87a391; border-radius: 16px; background: #f8faf7; cursor: pointer; }
.drop span { font-weight: 700; }
.drop small { color: #66736b; }
.drop input { margin-top: 10px; }
.row { display: flex; gap: 10px; align-items: flex-start; margin: 18px 2px; line-height: 1.4; }
.required { color: #26382d; }
button { width: 100%; border: 0; border-radius: 12px; padding: 14px 18px; background: #224c35; color: white; font: inherit; font-weight: 750; cursor: pointer; }
button:disabled { opacity: .55; cursor: wait; }
#status { min-height: 1.4em; color: #5a675f; }
.result li, .result p { line-height: 1.55; }
.warning { border-left: 4px solid #b96d2c; padding: 12px 16px; background: #fff4e8; border-radius: 0 10px 10px 0; }
.metric { padding: 11px 0; border-bottom: 1px solid #e4e7e2; }
.source-statement { border-top: 1px solid #dfe3de; margin-top: 1rem; padding-top: .75rem; }
.source-ids { font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .78rem; opacity: .72; overflow-wrap: anywhere; }
.profile-block { display: grid; grid-template-columns: auto 1fr; gap: 20px; align-items: center; padding: 18px; background: #eaf3ec; border-radius: 16px; margin-bottom: 18px; }
.profile-code { font: 700 1.5rem ui-monospace, SFMono-Regular, Consolas, monospace; color: #183d29; white-space: nowrap; }
.profile-summary p { margin: 3px 0; }
details { margin-top: 22px; border-top: 1px solid #dfe3de; padding-top: 14px; }
summary { cursor: pointer; font-weight: 750; }
.table-scroll { overflow-x: auto; margin-top: 12px; }
table { width: 100%; border-collapse: collapse; font-size: .84rem; }
th, td { text-align: left; padding: 8px 10px; border-bottom: 1px solid #e4e7e2; }
th { color: #526158; }
.visual-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.visual-grid figure { margin: 0; overflow: hidden; border: 1px solid #dfe3de; border-radius: 14px; background: #f8faf7; }
.visual-grid img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; }
.visual-grid figcaption { display: grid; gap: 4px; padding: 10px 12px; font-size: .84rem; line-height: 1.35; }
.visual-grid figcaption span { color: #66736b; }
.history-heading { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.history-heading h2, .history-heading p { margin-top: 0; }
.secondary, .danger { width: auto; padding: 8px 12px; }
.secondary { background: #587365; }
.danger { background: #8a3b32; }
.history-row { display: flex; justify-content: space-between; gap: 16px; padding: 13px 0; border-top: 1px solid #e4e7e2; }
.history-row > div { display: flex; gap: 10px; align-items: center; }
.history-row > div:first-child { display: grid; gap: 4px; }
.history-row small { color: #66736b; }
.history-row a { color: #224c35; font-weight: 700; }
.report-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; align-items: center; }
.result-heading { display: flex; justify-content: space-between; align-items: center; gap: 18px; flex-wrap: wrap; }
.region-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.region-card { padding: 14px; border: 1px solid #dfe3de; border-radius: 12px; background: #f8faf7; }
.region-card h4, .region-card p { margin: 0; }
.region-card p { margin-top: 7px; font-size: .9rem; }
.report-actions a { background: #224c35; color: white; padding: 9px 13px; border-radius: 9px; text-decoration: none; font-weight: 700; }
.readiness-banner { display: flex; align-items: center; gap: 10px; border: 1px solid #d4d8d1; border-radius: 14px; padding: 11px 14px; background: rgba(255,255,255,.7); }
.readiness-banner a, .back-link { margin-left: auto; color: #224c35; font-weight: 750; }
.status-dot { width: 10px; height: 10px; border-radius: 50%; background: #8b948e; flex: 0 0 auto; }
.status-dot.status-ready { background: #2c8a50; }
.status-dot.status-degraded { background: #c17a27; }
.status-ready { color: #215d38; }
.status-degraded { color: #9a551b; }
.diagnostics-title { font-size: clamp(2.5rem, 8vw, 5rem); }
.health-heading, .health-card-heading { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.health-heading h2, .health-heading p { margin-top: 0; }
.health-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.health-card { padding: 16px; border: 1px solid #dfe3de; border-radius: 14px; background: #f8faf7; }
.health-card h3 { margin: 0; font-size: 1rem; }
.health-card p { margin: 8px 0 0; color: #5a675f; font-size: .88rem; line-height: 1.45; overflow-wrap: anywhere; }
.status-badge { font-weight: 800; font-size: .72rem; text-transform: uppercase; letter-spacing: .05em; }
.status-badge.status-ready, .status-badge.status-configured { color: #215d38; }
.status-badge.status-degraded, .status-badge.status-unavailable { color: #9a551b; }
.action-item { border-top: 1px solid #e4e7e2; padding: 12px 0; line-height: 1.5; }
.wide-shell { width: min(1180px, calc(100% - 40px)); margin: 0 auto; padding: 26px 0 60px; }
.site-nav { min-height: 54px; display: flex; justify-content: space-between; align-items: center; gap: 24px; margin-bottom: 58px; }
.site-nav > div { display: flex; align-items: center; gap: 24px; }
.site-nav a { color: inherit; text-decoration: none; font-weight: 700; }
.brand { letter-spacing: .14em; font-size: .76rem; }
.nav-cta { padding: 10px 15px; border-radius: 999px; background: #172d20; color: #fff !important; }
.dark-page { color: #eef7f0; background: radial-gradient(circle at 75% 10%, #193f2c, transparent 32%), #09110d; }
.dark-nav { border-bottom: 1px solid rgba(255,255,255,.13); padding-bottom: 18px; }
.dark-nav a { color: #eaf5ed; }
.mint { color: #7ed5a4; }
.portal-hero { padding: 52px 0 110px; max-width: 980px; }
.portal-hero h1, .product-hero h1 { font-size: clamp(3.7rem, 8vw, 7.6rem); line-height: .92; letter-spacing: -.045em; }
.light-lead { color: #aebdb4; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 30px; margin-bottom: 28px; }
.section-heading h2 { font: 500 clamp(2rem, 5vw, 4rem)/1 Georgia,serif; margin: 0; max-width: 760px; }
.projects-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.project-card { min-height: 390px; display: flex; flex-direction: column; padding: 30px; color: #17211b; background: linear-gradient(140deg,#eff8f1,#a7d9b8); border-radius: 24px; box-shadow: inset 0 1px rgba(255,255,255,.7); transition: transform .25s ease, box-shadow .25s ease; }
.project-card:hover { transform: translateY(-5px); box-shadow: 0 24px 60px rgba(0,0,0,.22), inset 0 1px rgba(255,255,255,.75); }
.project-sun { background: linear-gradient(140deg,#fff4ce,#efbc68); }
.project-violet { background: linear-gradient(140deg,#f1ebff,#b9a7eb); }
.project-top { display: flex; justify-content: space-between; color: #3a5846; }
.live-pill { padding: 6px 10px; border: 1px solid rgba(23,33,27,.25); border-radius: 999px; font-size: .75rem; }
.project-card h3 { margin: auto 0 14px; font: 500 clamp(2.25rem,2.4vw,3.25rem)/.94 Georgia,serif; text-wrap: balance; overflow-wrap: break-word; }
.project-card p { max-width: 620px; line-height: 1.6; }
.tag-row { display: flex; gap: 7px; flex-wrap: wrap; margin: 16px 0 28px; }
.tag-row span { padding: 6px 9px; border-radius: 999px; background: rgba(255,255,255,.55); font-size: .72rem; }
.arrow-link { color: #183d29; font-weight: 800; text-decoration: none; }
footer { display: flex; justify-content: space-between; gap: 20px; padding: 34px 0 0; margin-top: 70px; border-top: 1px solid rgba(110,125,115,.25); font-size: .82rem; }
footer a { color: inherit; }
.product-hero { display: grid; grid-template-columns: 1.2fr .8fr; align-items: center; min-height: 680px; padding-bottom: 80px; gap: 60px; }
.hero-actions { display: flex; align-items: center; gap: 24px; margin-top: 34px; }
.primary-link { display: inline-flex; padding: 15px 22px; border-radius: 12px; background: #1d4d32; color: white; font-weight: 800; text-decoration: none; }
.text-link { color: #284a37; font-weight: 750; text-decoration: none; }
.scan-visual { position: relative; min-height: 510px; border-radius: 40% 40% 22px 22px; overflow: hidden; background: radial-gradient(circle at center,#9bc9aa,#244f37 57%,#12241a); box-shadow: 0 30px 80px rgba(20,55,35,.25); }
.face-orbit { position: absolute; inset: 15% 22%; border: 1px solid rgba(225,255,235,.7); border-radius: 48% 48% 42% 42%; }
.face-orbit:before,.face-orbit:after,.face-orbit span,.face-orbit i { content:""; position:absolute; border:1px solid rgba(225,255,235,.38); }
.face-orbit:before { left: 12%; right: 12%; top: 32%; }
.face-orbit:after { left: 20%; right: 20%; top: 62%; }
.face-orbit span { top: 10%; bottom: 10%; left: 50%; }
.face-orbit i { inset: 19% 8%; border-radius: 50%; }
.scan-line { position: absolute; left: 8%; right: 8%; top: 46%; height: 2px; background: #aaffc7; box-shadow: 0 0 24px #aaffc7; }
.scan-stat { position: absolute; display: grid; padding: 10px 13px; border: 1px solid rgba(255,255,255,.35); border-radius: 12px; background: rgba(8,20,13,.55); color: #fff; backdrop-filter: blur(8px); }
.scan-stat b { font-size: 1.3rem; }.scan-stat small { opacity:.7 }.stat-a{top:10%;left:7%}.stat-b{top:45%;right:5%}.stat-c{bottom:8%;left:10%}
.numbers { display: grid; grid-template-columns: repeat(4,1fr); border-block: 1px solid #cad1cb; padding: 28px 0; }
.numbers div { display:grid; gap:5px; padding-left:22px; border-left:1px solid #cad1cb; }.numbers div:first-child{border:0}.numbers b{font:500 2.3rem Georgia,serif}.numbers span{color:#617067}
.feature-section { padding: 120px 0; }
.feature-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px }.feature-grid article{padding:24px;border-top:2px solid #2b6040;background:rgba(255,255,255,.55)}.feature-grid article>span{font-family:ui-monospace;color:#4d735d}.feature-grid p{color:#607067;line-height:1.55}
.report-showcase { display:grid; grid-template-columns:1fr 1fr; gap:70px; padding:70px; border-radius:30px; background:#10251a;color:#eaf5ed }.report-showcase h2{font:500 clamp(2.5rem,5vw,4.5rem)/1 Georgia,serif}.report-showcase p{color:#b4c5ba;line-height:1.7}.pale{background:#c9f3d7;color:#173c28}
.report-mock{align-self:center;padding:24px;border-radius:18px;background:#f5f3eb;color:#17211b;box-shadow:0 30px 70px rgba(0,0,0,.35)}.mock-bar{display:flex;gap:6px;margin-bottom:45px}.mock-bar i{width:8px;height:8px;border-radius:50%;background:#c6ccc7}.report-mock>strong{display:block;font:700 2.3rem ui-monospace;margin-bottom:8px}.report-mock>span{color:#66736b}.mock-meter{height:9px;background:#dfe7e1;border-radius:9px;margin:14px 0 28px}.mock-meter i{display:block;width:78%;height:100%;background:#2f7950;border-radius:inherit}.mock-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.mock-grid i{height:76px;border-radius:9px;background:linear-gradient(135deg,#b5d8c0,#e5ece6)}
.final-cta{text-align:center;padding:100px 20px}.final-cta h2{font:500 clamp(2.5rem,6vw,5.5rem)/1 Georgia,serif;max-width:900px;margin:16px auto 34px}
.cab-header { display:flex;justify-content:space-between;align-items:end;gap:30px }.cab-header h1{font-size:clamp(3rem,7vw,6rem)}
.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.dashboard-grid article{display:grid;gap:14px;padding:20px;border:1px solid #d4d8d1;border-radius:16px;background:rgba(255,255,255,.7)}.dashboard-grid span{color:#66736b;font-size:.8rem}.dashboard-grid b{font:500 2rem Georgia,serif}.dashboard-grid .date-stat{font:700 1.1rem system-ui}
.cabinet-card{margin-top:28px}.search-box{display:grid;gap:7px;margin:22px 0}.search-box span{font-size:.75rem;font-weight:750}.search-box input{width:100%;padding:13px 15px;border:1px solid #cbd2cc;border-radius:11px;background:#fff;font:inherit}
.cab-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:17px 0;border-top:1px solid #e2e6e2}.cab-row-main{display:grid;gap:4px;min-width:0}.cab-row-main code{font-size:.72rem;color:#748078;overflow:hidden;text-overflow:ellipsis}.cab-row-main span{font-size:.8rem;color:#66736b}.record-status{font-size:.7rem;font-weight:800;text-transform:uppercase;color:#277348}.cab-row-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cab-row-actions a,.link-button{width:auto;padding:0;border:0;background:none;color:#315a42;font:700 .8rem system-ui;text-decoration:underline}.primary-small{padding:8px 11px!important;background:#28543a!important;color:#fff!important;border-radius:8px;text-decoration:none!important}.danger-text{color:#983d32}.cab-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.cab-tools a{display:grid;gap:8px;padding:20px;border:1px solid #d4d8d1;border-radius:15px;background:rgba(255,255,255,.6);color:inherit;text-decoration:none}.cab-tools span{color:#66736b;font-size:.85rem}
@media print { .report-actions, .history-heading { display: none; } body { background: white; } .card { box-shadow: none; border: 0; } details { display: block; } }
@media (max-width: 980px) and (min-width: 761px) { .projects-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 760px) { .shell { padding: 32px 0; } .wide-shell{width:min(100% - 24px,1180px)}.card { padding: 18px; } .health-grid,.projects-grid,.product-hero,.report-showcase,.cab-tools { grid-template-columns: 1fr; } .readiness-banner { align-items: flex-start; flex-wrap: wrap; }.site-nav{margin-bottom:30px}.site-nav>div{gap:12px}.site-nav>div>a:not(.nav-cta){display:none}.portal-hero{padding:30px 0 70px}.portal-hero h1,.product-hero h1{font-size:clamp(3.2rem,15vw,5rem)}.product-hero{padding-top:35px;min-height:auto}.scan-visual{min-height:420px}.numbers,.dashboard-grid{grid-template-columns:1fr 1fr}.feature-grid{grid-template-columns:1fr 1fr}.report-showcase{padding:30px}.section-heading,.cab-header{display:block}.cab-header>.primary-link{margin-bottom:24px}.cab-row{grid-template-columns:1fr auto}.cab-row-actions{grid-column:1/-1}.history-row{display:block}.history-row>div{margin-top:10px}footer{flex-wrap:wrap}.visual-grid,.region-grid{grid-template-columns:1fr} }
@media (max-width: 430px){.numbers,.dashboard-grid,.feature-grid{grid-template-columns:1fr}.numbers div{border-left:0;border-top:1px solid #cad1cb;padding:14px 0}.hero-actions{align-items:flex-start;flex-direction:column}.cab-row{grid-template-columns:1fr}}
