.fpaisr-public { --fp-dark:#07131f; --fp-blue:#0b8bd9; --fp-soft:#f6fbff; --fp-line:#dce6f1; --fp-green:#4de2b2; font-family:inherit; color:#152234; }
.fpaisr-public * { box-sizing:border-box; }
.fpaisr-public-hero { background:radial-gradient(circle at top right,rgba(77,226,178,.28),transparent 35%),linear-gradient(135deg,#07131f,#10243a); color:#fff; border-radius:28px; padding:clamp(28px,5vw,64px); margin:24px 0; box-shadow:0 25px 70px rgba(7,19,31,.22); }
.fpaisr-public-hero h1 { color:#fff; font-size:clamp(34px,6vw,72px); line-height:.96; letter-spacing:-.05em; max-width:1000px; margin:.1em 0 .25em; }
.fpaisr-public-hero p { color:#d9e9ff; max-width:850px; font-size:clamp(16px,2vw,20px); }
.fpaisr-kicker { color:#76d7ff !important; text-transform:uppercase; letter-spacing:.14em; font-size:12px !important; font-weight:900; margin:0 0 8px !important; }
.fpaisr-cta-row { display:flex; gap:12px; flex-wrap:wrap; margin-top:24px; }
.fpaisr-btn { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:13px 20px; border-radius:999px; background:linear-gradient(90deg,#0b8bd9,#4de2b2); color:#06101c !important; font-weight:900; text-decoration:none !important; border:0; cursor:pointer; box-shadow:0 12px 35px rgba(11,139,217,.25); }
.fpaisr-btn-light { background:#fff; color:#07131f !important; }
.fpaisr-public-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:24px 0; }
.fpaisr-public-card,.fpaisr-public-report-card,.fpaisr-quiz-section { background:#fff; border:1px solid var(--fp-line); border-radius:24px; padding:24px; box-shadow:0 12px 35px rgba(15,29,44,.07); }
.fpaisr-public-card span { display:block; width:40px; height:6px; border-radius:999px; background:linear-gradient(90deg,#0b8bd9,#4de2b2); margin-bottom:14px; }
.fpaisr-public-card h3,.fpaisr-public-section h2,.fpaisr-quiz-section h2 { margin-top:0; color:#07131f; }
.fpaisr-public-card p { color:#5c6b7b; }
.fpaisr-public-section { background:var(--fp-soft); border:1px solid var(--fp-line); border-radius:28px; padding:28px; margin:24px 0; }
.fpaisr-pill-grid { display:flex; gap:10px; flex-wrap:wrap; }
.fpaisr-pill-grid span { background:#fff; border:1px solid var(--fp-line); border-radius:999px; padding:10px 14px; font-weight:800; }
.fpaisr-roadmap ol { margin:0; padding-left:22px; }
.fpaisr-roadmap li { margin:10px 0; }
.fpaisr-quiz-form { display:grid; gap:18px; }
.fpaisr-quiz-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.fpaisr-quiz-field { display:flex; flex-direction:column; gap:7px; font-weight:800; }
.fpaisr-quiz-field small { font-weight:500; color:#6d7885; }
.fpaisr-quiz-field input,.fpaisr-quiz-field select,.fpaisr-quiz-field textarea { width:100%; border:1px solid #cfd9e5; border-radius:16px; padding:13px 14px; background:#fbfdff; font:inherit; }
.fpaisr-quiz-full { grid-column:1/-1; }
.fpaisr-consent { display:flex; gap:10px; align-items:flex-start; background:#fff; border:1px solid var(--fp-line); border-radius:18px; padding:16px; }
.fpaisr-submit { width:100%; font-size:18px; }
.fpaisr-alert { background:#fff6d6; border:1px solid #ffdf73; color:#705500; padding:14px 16px; border-radius:16px; margin:14px 0; }
.fpaisr-report-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.fpaisr-single-report { grid-template-columns:minmax(0,900px); justify-content:center; }
.fpaisr-public-report-card h3 { margin:0; font-size:26px; }
.fpaisr-report-top { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; }
.fpaisr-public-grade { display:flex; align-items:baseline; gap:3px; background:#07131f; color:#fff; border-radius:20px; padding:14px 16px; min-width:104px; justify-content:center; }
.fpaisr-public-grade span { font-weight:900; color:#76d7ff; }
.fpaisr-public-grade strong { font-size:36px; line-height:1; }
.fpaisr-public-score { margin:13px 0; }
.fpaisr-public-score div { display:flex; justify-content:space-between; margin-bottom:5px; font-size:14px; }
.fpaisr-public-score i { display:block; height:10px; border-radius:999px; background:#e8eef5; overflow:hidden; }
.fpaisr-public-score em { display:block; height:100%; background:linear-gradient(90deg,#0b8bd9,#4de2b2); border-radius:999px; }
@media (max-width: 1000px) { .fpaisr-public-grid,.fpaisr-report-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 720px) { .fpaisr-public-grid,.fpaisr-report-grid,.fpaisr-quiz-grid { grid-template-columns:1fr; } .fpaisr-public-hero { border-radius:20px; } .fpaisr-report-top { flex-direction:column; } }

/* Fullscreen template + expanded Future Proof AI pages */
body.fpaisr-fullscreen-page { margin:0 !important; background:#eef6ff; }
body.fpaisr-fullscreen-page header,
body.fpaisr-fullscreen-page footer,
body.fpaisr-fullscreen-page .site-header,
body.fpaisr-fullscreen-page .site-footer,
body.fpaisr-fullscreen-page #masthead,
body.fpaisr-fullscreen-page #colophon,
body.fpaisr-fullscreen-page .entry-header,
body.fpaisr-fullscreen-page .page-header { display:none !important; }
.fpaisr-fullscreen-root { width:100%; min-height:100vh; margin:0; padding:0; overflow-x:hidden; }
.fpaisr-fullscreen-root .wp-site-blocks,
.fpaisr-fullscreen-root .entry-content,
.fpaisr-fullscreen-root .wp-block-post-content { max-width:none !important; width:100% !important; margin:0 !important; padding:0 !important; }
.fpaisr-fullscreen-shell { width:100vw; max-width:none; min-height:100vh; margin:0 calc(50% - 50vw); padding:clamp(18px,3vw,42px); background:linear-gradient(180deg,#eef6ff 0%,#ffffff 46%,#f6fbff 100%); }
.fpaisr-super-hero { min-height:420px; display:flex; flex-direction:column; justify-content:center; }
.fpaisr-btn-ghost { background:rgba(255,255,255,.16); color:#fff !important; border:1px solid rgba(255,255,255,.32); }
.fpaisr-feature-grid-wide { grid-template-columns:repeat(4,minmax(0,1fr)); }
.fpaisr-server-grid .fpaisr-public-card ul { padding-left:18px; margin:10px 0 0; color:#526273; }
.fpaisr-server-grid .fpaisr-public-card li { margin:7px 0; }
.fpaisr-tier-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.fpaisr-tier-grid > div { background:#fff; border:1px solid var(--fp-line); border-radius:20px; padding:20px; box-shadow:0 10px 30px rgba(15,29,44,.06); }
.fpaisr-tier-grid h3 { margin-top:0; color:#07131f; }
.fpaisr-insight-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin:18px 0; }
.fpaisr-insight-grid div { background:#f6fbff; border:1px solid var(--fp-line); border-radius:18px; padding:14px; }
.fpaisr-insight-grid span { display:block; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:#64758a; font-weight:900; }
.fpaisr-insight-grid strong { display:block; font-size:28px; color:#07131f; }
.fpaisr-mini-list { background:#f9fcff; border:1px solid var(--fp-line); border-radius:18px; padding:14px 18px 14px 34px; }
.fpaisr-mini-list li { margin:8px 0; }
@media (max-width: 1180px) { .fpaisr-feature-grid-wide,.fpaisr-tier-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width: 720px) { .fpaisr-fullscreen-shell { padding:14px; } .fpaisr-feature-grid-wide,.fpaisr-tier-grid,.fpaisr-insight-grid { grid-template-columns:1fr; } .fpaisr-super-hero { min-height:auto; } }

/* v2.2.0 AI operations, VectorDB, and private-data flow additions */
.fpaisr-flow-mini { display:flex; flex-wrap:wrap; gap:8px; align-items:center; background:#f8fbff; border:1px solid var(--fp-line); border-radius:20px; padding:16px; margin:16px 0; }
.fpaisr-flow-mini span { display:inline-flex; align-items:center; min-height:38px; padding:9px 13px; border-radius:999px; background:#fff; border:1px solid var(--fp-line); color:#142334; font-weight:900; max-width:360px; }
.fpaisr-flow-mini b { color:#0b8bd9; font-size:20px; }
.fpaisr-flow-large { padding:22px; }
.fpaisr-flow-large span { min-height:46px; }
.fpaisr-ops-plan .fpaisr-public-card p { min-height:96px; }
@media (max-width: 720px) { .fpaisr-flow-mini { flex-direction:column; align-items:stretch; } .fpaisr-flow-mini b { transform:rotate(90deg); text-align:center; } .fpaisr-flow-mini span { max-width:none; justify-content:center; text-align:center; } }

/* v2.3.0 Details + MCP blueprint page */
.fpaisr-details-page .fpaisr-public-card h3 { min-height:48px; }
.fpaisr-checklist-preview .fpaisr-public-card { display:flex; flex-direction:column; }
.fpaisr-checklist-preview .fpaisr-mini-list { flex:1; }
.fpaisr-details-page .fpaisr-public-section p { color:#526273; font-size:17px; max-width:920px; }
