:root {
  color-scheme: dark;
  font-family: Inter, "Segoe UI", system-ui, -apple-system, sans-serif;
  color: #f3f5fb;
  background: #080b14;
  --bg: #080b14;
  --panel: #111726;
  --panel-soft: #141b2d;
  --line: #222d46;
  --muted: #929db3;
  --soft: #c7cfe0;
  --accent: #7b6df8;
  --accent-bright: #a99eff;
  --cyan: #54dff5;
  --green: #51dda8;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 92px; }
body { margin: 0; min-width: 300px; min-height: 100vh; overflow-x: hidden; background: radial-gradient(circle at 72% -8%, #241a52 0, transparent 30rem), radial-gradient(circle at 8% 30%, #0e31523d 0, transparent 28rem), var(--bg); }
body::before { content: ""; position: fixed; inset: 0; z-index: -1; opacity: .18; pointer-events: none; background-image: linear-gradient(#ffffff05 1px, transparent 1px), linear-gradient(90deg, #ffffff05 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(to bottom, black, transparent 65%); }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
.section-shell { width: min(1160px, calc(100% - 48px)); margin-inline: auto; }

.topbar { position: sticky; top: 0; z-index: 20; height: 76px; display: flex; align-items: center; gap: 32px; padding: 0 max(24px, calc((100vw - 1160px) / 2)); border-bottom: 1px solid #1b2438; background: #0a0e18d9; backdrop-filter: blur(18px); }
.brand { display: flex; align-items: center; gap: 11px; margin-right: auto; }
.brand img { width: 43px; height: 43px; object-fit: contain; filter: drop-shadow(0 7px 13px #6559e666); }
.brand strong, .brand small { display: block; }
.brand strong { font-size: 18px; letter-spacing: -.4px; }
.brand small { margin-top: 1px; color: #79859d; font-size: 10px; }
.topbar nav { display: flex; gap: 28px; color: #939db1; font-size: 12px; }
.topbar nav a { transition: color .18s; }
.topbar nav a:hover { color: #fff; }
.nav-github { padding: 9px 13px; border: 1px solid #2d3850; border-radius: 8px; color: #cdd5e4; font-size: 11px; font-weight: 650; transition: border-color .18s, background .18s; }
.nav-github:hover { border-color: #6358bd; background: #19162f; }
.nav-github span { margin-left: 5px; color: var(--accent-bright); }

.hero { min-height: 650px; display: grid; grid-template-columns: minmax(0, .92fr) minmax(470px, 1.08fr); align-items: center; gap: 58px; padding-block: 74px 68px; }
.eyebrow { display: inline-flex; align-items: center; gap: 8px; color: #aca2ff; font-size: 10px; font-weight: 800; letter-spacing: 1.55px; }
.eyebrow i { width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 14px var(--green); }
.hero h1 { max-width: 640px; margin: 17px 0 20px; font-size: clamp(46px, 5.5vw, 72px); line-height: .98; letter-spacing: -3.5px; }
.hero h1 em, .stack-copy h2 em { color: #a89bff; font-style: normal; }
.lead { max-width: 610px; margin: 0; color: #a4aec2; font-size: 16px; line-height: 1.7; }
.hero-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 29px; }
.button { min-height: 45px; display: inline-flex; align-items: center; justify-content: center; gap: 12px; padding: 0 18px; border: 1px solid #313c54; border-radius: 9px; background: #141c2d; color: #edf1fa; font-size: 12px; font-weight: 700; cursor: pointer; transition: transform .18s, background .18s, border-color .18s, box-shadow .18s; }
.button:hover:not(.disabled):not(:disabled) { transform: translateY(-2px); border-color: #52607e; background: #1c263a; }
.button.primary { border-color: #8b7df8; background: linear-gradient(135deg, #8a7bff, #6558e8); box-shadow: 0 10px 30px #6759e933, inset 0 1px #ffffff42; color: #fff; }
.button.primary:hover:not(:disabled) { border-color: #aa9fff; background: linear-gradient(135deg, #9d92ff, #7366f1); box-shadow: 0 14px 40px #6759e955; }
.button.ghost { background: #0e1421a6; }
.button.disabled, .button:disabled { opacity: .43; cursor: not-allowed; pointer-events: none; }
.trust-row { display: flex; flex-wrap: wrap; gap: 17px; margin-top: 20px; color: #707d94; font-size: 10px; }
.trust-row span::first-letter { color: var(--green); }
.trust-row .download-proof { width: 100%; display: inline-flex; align-items: center; gap: 6px; margin-top: 2px; color: #78859d; }
.trust-row .download-proof::first-letter { color: inherit; }
.download-proof b { color: #c8c0ff; font: 700 12px Consolas, monospace; }

.product-preview { position: relative; margin: 0; perspective: 1000px; }
.preview-glow { position: absolute; inset: 10% -5%; background: radial-gradient(ellipse, #5f4ff74a, transparent 68%); filter: blur(28px); }
.preview-window { position: relative; overflow: hidden; border: 1px solid #38415f; border-radius: 17px; background: #0c111e; box-shadow: 0 34px 90px #000a, 0 0 0 7px #ffffff03; transform: rotateY(-5deg) rotateX(2deg); }
.preview-bar { height: 35px; display: flex; align-items: center; gap: 6px; padding: 0 12px; border-bottom: 1px solid #20283d; background: #111725; color: #59657b; font-size: 8px; }
.preview-bar i { width: 7px; height: 7px; border-radius: 50%; background: #39445a; }
.preview-bar i:first-child { background: #e06d7b; }.preview-bar i:nth-child(2) { background: #e6b65e; }.preview-bar i:nth-child(3) { background: #4ecb95; }
.preview-bar span { margin-left: auto; margin-right: auto; }
.preview-body { height: 342px; display: grid; grid-template-columns: 71px 1fr; }
.preview-body aside { display: flex; flex-direction: column; align-items: center; gap: 17px; padding: 15px 10px; border-right: 1px solid #1c2538; background: #0d1320; }
.preview-body aside img { width: 35px; height: 35px; object-fit: contain; margin-bottom: 11px; }
.preview-body aside span { width: 30px; height: 5px; border-radius: 4px; background: #252f44; }
.preview-body aside span:first-of-type { background: #7669f4; box-shadow: 0 0 10px #7669f466; }
.preview-main { padding: 20px; min-width: 0; }
.preview-title { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }
.preview-title small, .preview-title b { display: block; }
.preview-title small { margin-bottom: 3px; color: #55627a; font-size: 6px; letter-spacing: 1.2px; }
.preview-title b { font-size: 15px; }
.preview-title>span { padding: 6px 8px; border: 1px solid #28344a; border-radius: 6px; color: #7b879e; font-size: 7px; }
.preview-hero { min-height: 126px; padding: 18px; border: 1px solid #302b5c; border-radius: 11px; background: radial-gradient(circle at 85% 20%, #6956ed33, transparent 35%), linear-gradient(130deg, #171a30, #16132d); }
.preview-hero small { display: block; color: #a397ff; font-size: 6px; letter-spacing: 1px; }
.preview-hero strong { display: block; margin-top: 7px; font-size: 18px; line-height: 1.06; }
.preview-hero strong em { color: #a89cff; font-style: normal; }
.preview-hero>div { display: flex; gap: 5px; margin-top: 12px; }
.preview-hero i { padding: 6px 8px; border: 1px solid #3a4460; border-radius: 5px; color: #aab4c7; font-size: 6px; font-style: normal; }
.preview-hero i:first-child { border-color: #7568ef; background: #7264ef; color: #fff; }
.preview-services { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; margin-top: 10px; }
.preview-services>div { padding: 13px; border: 1px solid #253047; border-radius: 9px; background: #111827; }
.preview-services span, .preview-services b, .preview-services small { display: block; }
.preview-services span { color: #6d7890; font-size: 6px; letter-spacing: 1px; }.preview-services b { margin: 8px 0 4px; color: var(--green); font-size: 9px; }.preview-services small { color: #667289; font-size: 6px; }
.product-preview figcaption { margin-top: 17px; color: #69758c; text-align: center; font-size: 10px; }
.preview-hero { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.preview-hero>.preview-hero-copy { display: block; margin: 0; }
.preview-hero-copy>div { display: flex; gap: 5px; margin-top: 12px; }
.preview-mini-orb { position: relative; width: 76px; height: 76px; flex: 0 0 76px; display: flex!important; flex-direction: column; align-items: center; justify-content: center; margin: 0 4px 0 0!important; border-radius: 50%; background: radial-gradient(circle at 38% 30%, #a69cff, #6252df 72%); box-shadow: 0 0 27px #7563f577; z-index: 1; }
.preview-mini-orb b { font-size: 23px; line-height: 1; }.preview-mini-orb small { margin-top: 4px; color: #ece9ff!important; font-size: 5px!important; letter-spacing: 1px!important; }.preview-mini-orb em { margin-top: 2px; color: #d7d1ff99; font: 500 5px Consolas, monospace; font-style: normal; }
.preview-mini-orb>i { position: absolute; inset: 12px -20px!important; padding: 0!important; border: 1px solid #8d7cff55!important; border-radius: 50%!important; background: transparent!important; animation: previewOrbit 6s linear infinite; z-index: -1; }.preview-mini-orb>i:last-child { inset: 22px -31px!important; border-color: #5cdff54d!important; animation-duration: 8s; animation-direction: reverse; }
.preview-mini-orb>i::after { content: ""; position: absolute; left: 50%; top: -3px; width: 5px; height: 5px; border-radius: 50%; background: #c5bdff; box-shadow: 0 0 8px #8d7eff; }.preview-mini-orb>i:last-child::after { background: #70e5f7; box-shadow: 0 0 8px #5bdff5; }
@keyframes previewOrbit { to { transform: rotate(360deg); } }

.signal-strip { min-height: 75px; display: flex; align-items: center; justify-content: center; gap: 27px; border-block: 1px solid #1c2639; background: #0c111dc4; color: #68758c; font-size: 10px; font-weight: 700; letter-spacing: 1px; text-transform: uppercase; }
.signal-strip i { width: 3px; height: 3px; border-radius: 50%; background: #504783; }
.content-section, .download-section, .legal-section { padding-block: 105px; }
.section-heading { max-width: 650px; margin-bottom: 42px; }
.section-heading>span { color: #9287f7; font-size: 9px; font-weight: 800; letter-spacing: 1.6px; }
.section-heading h2 { margin: 11px 0 12px; font-size: clamp(32px, 4vw, 47px); line-height: 1.08; letter-spacing: -1.7px; }
.section-heading p { margin: 0; color: var(--muted); font-size: 14px; line-height: 1.65; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.feature-card { min-height: 270px; padding: 25px; border: 1px solid var(--line); border-radius: 14px; background: linear-gradient(145deg, #121a2b, #0f1522); transition: transform .2s, border-color .2s; }
.feature-card:hover { transform: translateY(-4px); border-color: #3b4764; }
.feature-card.featured { background: radial-gradient(circle at 85% 10%, #5544c73d, transparent 42%), linear-gradient(145deg, #17172f, #111526); border-color: #373066; }
.feature-icon { width: 43px; height: 43px; display: grid; place-items: center; margin-bottom: 30px; border: 1px solid #3d3768; border-radius: 11px; background: #7467f71c; color: #b5adff; font: 700 15px Consolas, monospace; }
.feature-card>span { color: #6e7990; font-size: 8px; font-weight: 800; letter-spacing: 1.2px; }
.feature-card h3 { margin: 8px 0 10px; font-size: 18px; }
.feature-card p { margin: 0; color: #8995ab; font-size: 12px; line-height: 1.65; }
.mini-status { display: grid; grid-template-columns: 8px 1fr; gap: 2px 8px; align-items: center; margin-top: 20px; padding: 10px 11px; border: 1px solid #2a3e45; border-radius: 8px; background: #0e1c1b; }
.mini-status i { grid-row: 1/3; width: 7px; height: 7px; border-radius: 50%; background: var(--green); box-shadow: 0 0 9px var(--green); }.mini-status b { font-size: 9px; }.mini-status small { color: #607d75; font-size: 7px; }
.mini-service-pair { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; margin-top: 18px; }.mini-service-pair .mini-status { margin-top: 0; padding: 8px; }.mini-service-pair .mini-status b { white-space: nowrap; }

.php-manager-showcase { padding-block: 104px 116px; border-top: 1px solid #1c2639; }.php-manager-showcase .section-heading { margin-bottom: 28px; }
.php-manager-window { margin: 0; padding: 24px; border: 1px solid #343d59; border-radius: 17px; background: radial-gradient(circle at 94% 0,#5947d52c,transparent 28%),#0c121f; box-shadow: 0 30px 85px #0008,0 0 0 7px #ffffff02; }
.php-shot-head { display: flex; align-items: center; gap: 10px; padding-bottom: 17px; border-bottom: 1px solid #202a3e; }.php-shot-head>div:first-child { margin-right: auto; }.php-shot-head small,.php-shot-head b { display: block; }.php-shot-head small { color: #70659d; font-size: 7px; font-weight: 800; letter-spacing: 1.2px; }.php-shot-head b { margin-top: 4px; font-size: 17px; }.php-shot-head>button,.php-shot-list button { padding: 8px 11px; border: 1px solid #343e57; border-radius: 7px; background: #151d2e; color: #c8d0df; font-size: 9px; }.php-shot-head>button { border-color: #5d52ad; color: #c1b8ff; }
.php-shot-profile { display: flex; padding: 3px; border: 1px solid #332e58; border-radius: 8px; background: #101522; }.php-shot-profile span { padding: 6px 9px; border-radius: 5px; color: #78849a; font-size: 8px; font-weight: 700; }.php-shot-profile span.active { color: #fff; background: #7467ed; box-shadow: 0 4px 13px #6558e944; }.php-shot-head>em { padding: 7px 10px; border: 1px solid #2c3650; border-radius: 7px; color: #707d94; font-size: 8px; font-style: normal; }.php-shot-head>em b { display: inline; margin-left: 4px; color: #ddd8ff; font: 700 10px Consolas,monospace; }
.php-shot-list { display: grid; gap: 8px; margin-top: 13px; }.php-shot-list article { min-height: 68px; display: grid; grid-template-columns: 92px 1fr auto auto; align-items: center; gap: 14px; padding: 10px 12px; border: 1px solid #263149; border-radius: 10px; background: linear-gradient(145deg,#121a2a,#0f1623); }.php-shot-list article.selected { border-color: #5c50bd; background: linear-gradient(145deg,#181632,#111827); box-shadow: inset 3px 0 #7567f7; }.php-shot-list article>strong { color: #ecefff; font: 700 25px Consolas,monospace; }.php-shot-list article>strong small { color: #8378d8; font-size: 13px; }.php-shot-list article>div b,.php-shot-list article>div span { display: block; }.php-shot-list article>div b { font-size: 12px; }.php-shot-list article>div span { margin-top: 4px; color: #758198; font-size: 8px; }.php-shot-list article>i { color: #65dfad; font-size: 8px; font-style: normal; font-weight: 800; text-transform: uppercase; }.php-shot-list button:disabled { opacity: .55; }.php-manager-window figcaption { margin-top: 14px; color: #7f8ba2; font-size: 9px; line-height: 1.6; }.php-manager-window figcaption span { color: #afa6ff; font-weight: 800; }

.stack-section { display: grid; grid-template-columns: .86fr 1.14fr; gap: 75px; align-items: center; padding-block: 105px; border-top: 1px solid #1c2639; }
.stack-copy h2 { margin: 14px 0 18px; font-size: 45px; line-height: 1.08; letter-spacing: -1.8px; }
.stack-copy>p { color: #929db2; font-size: 13px; line-height: 1.7; }
.stack-copy ul { display: grid; gap: 10px; margin: 24px 0 0; padding: 0; list-style: none; color: #b9c2d2; font-size: 11px; }
.stack-copy li::before { content: "✓"; margin-right: 9px; color: var(--green); }
.stack-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.stack-grid article { min-height: 155px; padding: 24px; border: 1px solid var(--line); border-radius: 13px; background: linear-gradient(145deg, #131a2a, #101624); }
.stack-grid small, .stack-grid b, .stack-grid strong { display: block; }
.stack-grid small { color: #606c83; font-size: 8px; font-weight: 800; letter-spacing: 1.2px; }
.stack-grid b { margin: 29px 0 6px; font-size: 18px; }.stack-grid strong { color: #aca2ff; font: 500 11px Consolas, monospace; }
.stack-grid .php-stack-card { position: relative; overflow: hidden; border-color: #3b356b; background: radial-gradient(circle at 100% 0, #6956ed2b, transparent 52%), linear-gradient(145deg, #15172d, #101624); }
.stack-grid .php-stack-card b { margin-top: 18px; }
.stack-grid .php-stack-card strong { line-height: 1.65; }
.stack-grid .php-stack-card>span { display: block; max-width: 245px; margin-top: 9px; color: #77849a; font-size: 8px; line-height: 1.45; }

.security-section { padding-block: 105px; border-top: 1px solid #1c2639; }
.security-spotlight { position: relative; overflow: hidden; display: grid; grid-template-columns: .9fr 1.1fr; gap: 54px; padding: 48px; border: 1px solid #393466; border-radius: 21px; background: radial-gradient(circle at 8% 0, #674fe938, transparent 34%), radial-gradient(circle at 100% 100%, #12495b33, transparent 35%), linear-gradient(145deg, #16182f, #0e1523 72%); box-shadow: 0 28px 80px #0005, inset 0 1px #ffffff0b; }
.security-spotlight::before { content: ""; position: absolute; width: 300px; height: 300px; top: -190px; right: 18%; border: 1px solid #887cff29; border-radius: 50%; box-shadow: 0 0 0 42px #887cff0c, 0 0 0 84px #887cff08; pointer-events: none; }
.security-copy, .php-version-panel { position: relative; z-index: 1; }
.security-kicker { width: fit-content; display: flex; align-items: center; gap: 8px; margin-top: 25px; padding: 7px 10px 7px 7px; border: 1px solid #2d5b50; border-radius: 999px; background: #10231f; }
.security-kicker span { padding: 4px 7px; border-radius: 999px; background: #51dda81c; color: #66e6b5; font-size: 7px; font-weight: 900; letter-spacing: 1px; }
.security-kicker small { color: #78988f; font: 8px Consolas, monospace; }
.security-copy h2 { margin: 17px 0 17px; font-size: clamp(37px, 4vw, 51px); line-height: 1.02; letter-spacing: -2px; }
.security-copy h2 em { color: #a89bff; font-style: normal; }
.security-copy>p { max-width: 520px; margin: 0; color: #a0aabd; font-size: 13px; line-height: 1.72; }
.security-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 18px; margin-top: 27px; }
.security-source { color: #aaa1f8; font-size: 10px; font-weight: 700; }
.security-source:hover { color: #d0caff; }
.security-source span { margin-left: 4px; }
.php-version-panel { align-self: center; padding: 18px; border: 1px solid #2b3550; border-radius: 16px; background: #0a101ccb; box-shadow: 0 19px 50px #0005; backdrop-filter: blur(14px); }
.version-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 1px 2px 14px; }
.version-panel-head span { color: #7e89a0; font-size: 8px; font-weight: 800; letter-spacing: 1.25px; }
.version-panel-head b { color: #a8b2c5; font: 8px Consolas, monospace; font-weight: 500; }
.php-version-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.php-version-grid article { min-height: 105px; padding: 16px; border: 1px solid #29344d; border-radius: 11px; background: linear-gradient(145deg, #141c2d, #101725); }
.php-version-grid small, .php-version-grid strong, .php-version-grid span { display: block; }
.php-version-grid small { color: #68758d; font-size: 8px; font-weight: 800; letter-spacing: .8px; }
.php-version-grid strong { margin: 9px 0 10px; color: #c3bbff; font: 700 19px Consolas, monospace; letter-spacing: -.5px; }
.php-version-grid span { display: flex; align-items: center; gap: 6px; color: #6bb89d; font-size: 8px; font-weight: 700; text-transform: uppercase; }
.php-version-grid i { width: 6px; height: 6px; border-radius: 50%; background: var(--green); box-shadow: 0 0 9px #51dda899; }
.cve-row { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 8px; }
.cve-row a { padding: 13px; border: 1px solid #332f59; border-radius: 10px; background: #17162b; transition: border-color .18s, background .18s, transform .18s; }
.cve-row a:hover { transform: translateY(-2px); border-color: #6258a9; background: #1c1936; }
.cve-row small, .cve-row b, .cve-row span { display: block; }
.cve-row small { color: #6fc0a3; font-size: 6px; font-weight: 900; letter-spacing: 1px; }
.cve-row b { margin: 5px 0; color: #d0cafc; font: 700 10px Consolas, monospace; }
.cve-row span { color: #737e95; font-size: 7px; line-height: 1.4; }
.php-risk-note { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 18px; margin-top: 15px; padding: 21px 23px; border: 1px solid #553d42; border-radius: 14px; background: linear-gradient(90deg, #21171b, #141622); }
.risk-icon { width: 41px; height: 41px; display: grid; place-items: center; border: 1px solid #8f595a; border-radius: 50%; background: #d76e7214; color: #ef999c; font: 800 18px Consolas, monospace; box-shadow: 0 0 25px #b74e5430; }
.php-risk-note>div:nth-child(2)>span { color: #e08c90; font-size: 7px; font-weight: 900; letter-spacing: 1.25px; }
.php-risk-note h3 { margin: 4px 0 6px; font-size: 14px; }
.php-risk-note p { max-width: 790px; margin: 0; color: #8d97aa; font-size: 10px; line-height: 1.6; }
.php-risk-note code { color: #c9c1ff; font: inherit; }
.php-risk-note>a { white-space: nowrap; padding-left: 18px; color: #b8afff; font-size: 10px; font-weight: 800; }
.php-risk-note>a:hover { color: #dedaff; }
.php-risk-note>a span { margin-left: 6px; }
.security-footnote { max-width: 930px; margin: 17px auto 0; color: #68758c; text-align: center; font-size: 9px; line-height: 1.6; }

.download-section { border-top: 1px solid #1c2639; }
.download-section .section-heading { margin-inline: auto; text-align: center; }
.community-count { width: fit-content; display: flex; align-items: center; gap: 10px; margin: 19px auto 0; padding: 8px 12px; border: 1px solid #35305d; border-radius: 999px; background: #17152b; }
.community-count strong { color: #b5abff; font: 700 15px Consolas, monospace; }
.community-count span { color: #7e8aa0; font-size: 9px; }
.download-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 17px; max-width: 850px; margin: 0 auto; }
.download-card { position: relative; display: flex; flex-direction: column; min-height: 390px; padding: 28px; border: 1px solid var(--line); border-radius: 16px; background: linear-gradient(155deg, #141c2d, #0f1522); }
.download-card.recommended { border-color: #554b9b; background: radial-gradient(circle at 90% 5%, #6c56e333, transparent 38%), linear-gradient(155deg, #171932, #101522); box-shadow: 0 18px 50px #0004; }
.recommendation { position: absolute; top: 17px; right: 17px; padding: 5px 7px; border: 1px solid #514a8e; border-radius: 5px; background: #242044; color: #aaa0ff; font-size: 7px; font-weight: 800; letter-spacing: 1px; }
.package-icon { width: 53px; height: 53px; display: grid; place-items: center; margin-bottom: 26px; border: 1px solid #3d3768; border-radius: 13px; background: #7467f71c; color: #c2bbff; font-size: 22px; }
.download-card>small { color: #69758d; font-size: 8px; font-weight: 800; letter-spacing: 1.3px; }
.download-card h3 { margin: 8px 0 10px; font-size: 23px; }
.download-card p { margin: 0; color: #8e99ae; font-size: 12px; line-height: 1.6; }
.file-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 7px 12px; margin: auto 0 13px; padding-top: 25px; color: #68748b; font: 9px Consolas, monospace; }
.file-meta span:last-child { width: 100%; color: #7d86a3; }.file-meta b { color: #a79dff; font-weight: 700; }
.download-card .button { width: 100%; }
.download-note { max-width: 740px; margin: 21px auto 0; color: #657188; text-align: center; font-size: 10px; }

.legal-section { border-top: 1px solid #1c2639; }
.legal-list { display: grid; gap: 10px; }
.legal-list details { border: 1px solid var(--line); border-radius: 12px; background: #101725; overflow: hidden; }
.legal-list summary { min-height: 78px; display: flex; align-items: center; gap: 17px; padding: 0 21px; cursor: pointer; list-style: none; }
.legal-list summary::-webkit-details-marker { display: none; }
.legal-list summary>span { color: #6e63c5; font: 11px Consolas, monospace; }
.legal-list summary>div { flex: 1; }.legal-list summary b, .legal-list summary small { display: block; }.legal-list summary b { font-size: 13px; }.legal-list summary small { margin-top: 4px; color: #717e95; font-size: 9px; }
.legal-list summary>i { color: #8b80e8; font-style: normal; font-size: 20px; transition: transform .2s; }.legal-list details[open] summary>i { transform: rotate(45deg); }
.legal-copy { padding: 0 58px 22px; border-top: 1px solid #1e283b; color: #919cb1; font-size: 11px; line-height: 1.7; }
.legal-copy p { margin: 16px 0 0; }

footer { border-top: 1px solid #202a3e; background: #090d17; }
.footer-main { min-height: 230px; display: grid; grid-template-columns: 1fr 1.3fr; gap: 70px; align-items: center; }
.footer-brand { display: flex; align-items: center; gap: 16px; }.footer-brand img { width: 58px; height: 58px; object-fit: contain; }.footer-brand strong { font-size: 20px; }.footer-brand p { margin: 4px 0 0; color: #727e94; font-size: 11px; }
.footer-links { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; }.footer-links div { display: flex; flex-direction: column; gap: 9px; }.footer-links b { margin-bottom: 5px; color: #c9d1e0; font-size: 10px; }.footer-links a { color: #6f7b91; font-size: 10px; }.footer-links a:hover { color: #b3aaff; }
.footer-bottom { min-height: 66px; display: flex; align-items: center; justify-content: space-between; gap: 25px; border-top: 1px solid #1b2436; color: #59657a; font-size: 9px; }.footer-bottom small { max-width: 570px; text-align: right; font-size: 8px; line-height: 1.5; }

.consent-dialog { width: min(570px, calc(100% - 30px)); padding: 0; border: 1px solid #3c4261; border-radius: 17px; background: linear-gradient(155deg, #151b2c, #101522); color: #edf1fa; box-shadow: 0 35px 110px #000c; opacity: 0; transform: translateY(18px) scale(.97); transition: opacity .24s ease, transform .28s cubic-bezier(.2,.8,.2,1), overlay .28s allow-discrete, display .28s allow-discrete; }
.consent-dialog[open] { opacity: 1; transform: translateY(0) scale(1); }
.consent-dialog.closing { opacity: 0; transform: translateY(14px) scale(.98); }
.consent-dialog::backdrop { background: #03050bca; backdrop-filter: blur(8px); opacity: 0; transition: opacity .28s, overlay .28s allow-discrete, display .28s allow-discrete; }.consent-dialog[open]::backdrop { opacity: 1; }
@starting-style { .consent-dialog[open] { opacity: 0; transform: translateY(18px) scale(.97); }.consent-dialog[open]::backdrop { opacity: 0; } }
.consent-head { min-height: 88px; display: flex; align-items: center; gap: 13px; padding: 16px 20px; border-bottom: 1px solid #252e43; }.consent-logo { width: 49px; height: 49px; display: grid; place-items: center; border-radius: 12px; background: #7467f716; }.consent-logo img { width: 45px; height: 45px; object-fit: contain; }.consent-head span { color: #8d82eb; font-size: 7px; font-weight: 800; letter-spacing: 1.4px; }.consent-head h2 { margin: 3px 0 0; font-size: 18px; }.dialog-close { width: 31px; height: 31px; margin-left: auto; border: 1px solid #303a51; border-radius: 8px; background: #111827; color: #96a0b3; font-size: 21px; cursor: pointer; }
.consent-intro { margin: 0; padding: 19px 21px 12px; color: #9da7bb; font-size: 12px; line-height: 1.55; }.consent-intro strong { color: #dadff0; }
.consent-summary { display: grid; gap: 8px; margin: 0 21px 14px; padding: 12px; border: 1px solid #2b334b; border-radius: 10px; background: #0c121f; }.consent-summary div { display: grid; gap: 3px; }.consent-summary b { color: #cdd4e4; font-size: 10px; }.consent-summary span { color: #727e94; font-size: 9px; line-height: 1.45; }
.consent-check { display: flex; align-items: center; gap: 10px; margin: 9px 21px; padding: 11px; border: 1px solid #2b354d; border-radius: 9px; background: #111827; cursor: pointer; }.consent-check input { position: absolute; opacity: 0; pointer-events: none; }.consent-check>span { width: 20px; height: 20px; display: grid; place-items: center; flex: 0 0 auto; border: 1px solid #46516b; border-radius: 5px; color: transparent; }.consent-check input:checked+span { border-color: #796cf5; background: #7567f7; color: #fff; }.consent-check i { font-size: 11px; font-style: normal; }.consent-check b { color: #aab4c7; font-size: 10px; font-weight: 550; line-height: 1.4; }.consent-check a { color: #aaa0ff; text-decoration: underline; text-underline-offset: 2px; }
.consent-actions { display: flex; justify-content: flex-end; gap: 9px; padding: 16px 21px 8px; }.consent-actions .button { border-radius: 8px; }.consent-note { display: block; padding: 0 21px 19px; color: #5f6c82; text-align: right; font-size: 8px; }

@media (max-width: 980px) {
  .topbar nav { display: none; }
  .hero { grid-template-columns: minmax(0, 1fr); gap: 50px; padding-top: 65px; }
  .hero-copy, .product-preview { min-width: 0; }
  .hero-copy { text-align: center; }.hero .eyebrow, .hero-actions, .trust-row { justify-content: center; }.lead { margin-inline: auto; }
  .product-preview { width: min(620px, 100%); margin-inline: auto; }
  .feature-grid { grid-template-columns: 1fr 1fr; }
  .stack-section { grid-template-columns: 1fr; gap: 40px; }
  .security-spotlight { grid-template-columns: 1fr; }
  .php-shot-head { flex-wrap: wrap; }.php-shot-head>div:first-child { width: 100%; }.php-shot-list article { grid-template-columns: 78px 1fr auto; }.php-shot-list article>i { display: none; }
  .footer-main { grid-template-columns: 1fr; gap: 40px; padding-block: 55px; }
}

@media (max-width: 680px) {
  .section-shell { width: min(100% - 28px, 1160px); }
  .topbar { height: 66px; gap: 10px; padding: 0 14px; }.brand { min-width: 0; }.brand img { width: 37px; height: 37px; }.nav-github { flex: 0 0 auto; padding: 8px 10px; font-size: 9px; white-space: nowrap; }
  .hero { min-height: 0; padding-block: 54px; }.hero h1 { max-width: 100%; margin-inline: auto; font-size: clamp(35px, 10.8vw, 43px); letter-spacing: -2.2px; overflow-wrap: anywhere; }.lead { max-width: 100%; font-size: 14px; overflow-wrap: anywhere; }.hero-actions .button { flex: 1 1 155px; }.trust-row { gap: 9px; }
  .product-preview { width: 100%; }.preview-window { transform: none; }.preview-body { height: 286px; grid-template-columns: 52px minmax(0, 1fr); }.preview-body aside { padding-inline: 7px; }.preview-body aside img { width: 29px; height: 29px; }.preview-body aside span { width: 23px; }.preview-main { padding: 12px; }.preview-hero { min-height: 110px; padding: 13px; }.preview-hero strong { font-size: 15px; }.preview-services>div { min-width: 0; padding: 9px; }
  .signal-strip { justify-content: flex-start; overflow: hidden; padding-inline: 20px; gap: 18px; white-space: nowrap; }
  .content-section, .download-section, .legal-section, .stack-section, .security-section { padding-block: 72px; }.section-heading { margin-bottom: 30px; }
  .feature-grid, .download-grid, .stack-grid { grid-template-columns: 1fr; }.feature-card { min-height: 240px; }.stack-copy h2 { font-size: 36px; }.download-card { min-height: 360px; }.php-manager-showcase{padding-block:72px}.php-manager-window{padding:12px}.php-shot-profile{order:4;width:100%}.php-shot-profile span{flex:1;text-align:center}.php-shot-list article{grid-template-columns:62px 1fr}.php-shot-list article>strong{font-size:20px}.php-shot-list article>button{grid-column:2;justify-self:start}.mini-service-pair{grid-template-columns:1fr}
  .security-spotlight { gap: 38px; padding: 27px 20px; border-radius: 16px; }.security-copy h2 { font-size: 37px; }.security-actions { align-items: stretch; flex-direction: column; }.security-actions .button { width: 100%; }.security-source { padding: 5px; text-align: center; }
  .php-version-panel { padding: 12px; }.php-version-grid, .cve-row { grid-template-columns: 1fr; }.php-version-grid article { min-height: 90px; }.php-risk-note { grid-template-columns: auto 1fr; align-items: start; padding: 18px; }.php-risk-note>a { grid-column: 1 / -1; padding: 4px 0 0 59px; }
  .legal-list summary { padding-inline: 14px; }.legal-copy { padding-inline: 42px 18px; }
  .footer-links { grid-template-columns: 1fr 1fr; }.footer-bottom { align-items: flex-start; flex-direction: column; padding-block: 20px; }.footer-bottom small { text-align: left; }
  .consent-actions .button { flex: 1; }.consent-note { text-align: left; }
}

@media (max-width: 390px) {
  .brand span { display: none; }
  .hero-actions { align-items: stretch; flex-direction: column; }
  .hero-actions .button { width: 100%; flex-basis: auto; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
/* Isolated site profile product preview */
.isolation-showcase{padding-top:52px;padding-bottom:96px}
.isolation-window{margin:38px 0 0;border:1px solid #273857;border-radius:22px;background:linear-gradient(145deg,#0e1729,#0a1120);box-shadow:0 30px 80px #03081799;overflow:hidden;color:#eaf1ff}
.isolation-head{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid #21304a;background:#111b2e}
.isolation-head div{display:grid;gap:4px}.isolation-head small,.isolation-summary small{font:700 10px/1.2 monospace;letter-spacing:.13em;color:#788db3}.isolation-head b{font-size:18px}.isolation-head span{font-size:12px;color:#8092b1}.isolation-head em{font-style:normal;font-size:11px;font-weight:800;color:#63f0c4;border:1px solid #2b6b5b;background:#102b2a;padding:7px 12px;border-radius:20px}
.isolation-summary{display:grid;grid-template-columns:1fr 1.45fr 1fr;gap:10px;padding:18px 22px 8px}.isolation-summary>div{display:grid;gap:6px;min-width:0;padding:14px 16px;border:1px solid #263753;border-radius:12px;background:#0c1526}.isolation-summary b{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.isolation-tabs{display:flex;gap:4px;padding:14px 22px 0;overflow:auto}.isolation-tabs>*{white-space:nowrap;padding:10px 13px;font-size:11px;color:#8294b4;border-bottom:2px solid transparent}.isolation-tabs b{color:#bdb4ff;border-color:#8068ff}
.isolation-body{display:grid;grid-template-columns:1.55fr .85fr;gap:14px;padding:16px 22px 22px}.isolation-runtime,.isolation-security{border:1px solid #273853;border-radius:14px;background:#0b1424;padding:18px}.isolation-selects{display:grid;grid-template-columns:1fr 1fr;gap:12px}.isolation-selects label{display:grid;gap:7px}.isolation-selects small{font-size:9px;letter-spacing:.12em;color:#7f91b0}.isolation-selects label>b{display:flex;justify-content:space-between;padding:11px 12px;border:1px solid #2d405e;border-radius:9px;font-size:12px}.isolation-selects i{font-style:normal;color:#8068ff}.isolation-extension-head{display:flex;justify-content:space-between;margin:20px 0 10px;font-size:11px}.isolation-extension-head span{color:#64eec5}.isolation-chips{display:flex;flex-wrap:wrap;gap:7px}.isolation-chips i{font-style:normal;font:600 10px/1 monospace;color:#c7c0ff;border:1px solid #493d82;background:#181637;padding:7px 9px;border-radius:16px}
.isolation-security>span{display:block;margin-bottom:12px;font:700 10px/1.2 monospace;letter-spacing:.12em;color:#64eec5}.isolation-security>div{display:flex;gap:10px;padding:10px 0;border-top:1px solid #202e47}.isolation-security>div>i{display:grid;place-items:center;flex:0 0 22px;height:22px;border-radius:50%;background:#113a34;color:#68efc7;font-style:normal;font-size:11px}.isolation-security p{margin:0;display:grid;gap:3px}.isolation-security b{font-size:12px}.isolation-security small{color:#8292ad;line-height:1.45}.isolation-window figcaption{padding:14px 22px;border-top:1px solid #22314b;color:#8293b1;font-size:11px;text-align:center}
@media(max-width:800px){.isolation-summary,.isolation-body{grid-template-columns:1fr}.isolation-tabs{padding-bottom:5px}.isolation-selects{grid-template-columns:1fr}}

.apps-showcase { padding-block: 104px 96px; border-top: 1px solid #1c2639; }
.apps-showcase .section-heading { max-width: 720px; margin-bottom: 22px; }
.apps-intro { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: 48px; align-items: start; margin-bottom: 28px; }
.apps-points { display: grid; gap: 14px; margin: 8px 0 0; padding: 0; list-style: none; }
.apps-points li { padding: 16px 18px; border: 1px solid #27344f; border-radius: 13px; background: linear-gradient(145deg, #121a2b, #0f1522); }
.apps-points b, .apps-points span { display: block; }
.apps-points b { margin-bottom: 6px; font-size: 13px; }
.apps-points span { color: #8591a8; font-size: 12px; line-height: 1.6; }
.apps-points code { color: #c3bbff; font: inherit; }
.apps-preview-shot { margin: 0; overflow: hidden; border: 1px solid #38415f; border-radius: 17px; background: #0c111e; box-shadow: 0 34px 90px #000a, 0 0 0 7px #ffffff03; }
.apps-preview-shot .preview-bar { position: relative; }
.apps-preview-shot img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; object-position: center top; background: #0c111e; }
.apps-preview-shot figcaption { padding: 14px 18px 16px; border-top: 1px solid #22314b; color: #8293b1; font-size: 11px; text-align: center; }
.apps-catalog-strip { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; margin-top: 16px; }
.apps-catalog-strip article { min-height: 78px; display: grid; grid-template-columns: 36px 1fr; grid-template-rows: auto auto; align-items: center; column-gap: 9px; padding: 10px 11px; border: 1px solid #263149; border-radius: 11px; background: linear-gradient(145deg, #121a2a, #0f1623); }
.apps-catalog-strip b { grid-row: 1 / 3; width: 36px; height: 36px; display: grid; place-items: center; border: 1px solid #796ce64d; border-radius: 9px; background: linear-gradient(145deg, #2c2757, #1c1939); color: #bfb6ff; font-size: 9px; letter-spacing: -.3px; }
.apps-catalog-strip span { color: #e8edf8; font-size: 11px; font-weight: 700; }
.apps-catalog-strip small { color: #6f7c93; font-size: 8px; letter-spacing: .4px; text-transform: uppercase; }
.apps-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin: 22px 0 0; padding: 0; list-style: none; counter-reset: none; }
.apps-flow li { min-height: 148px; padding: 20px 18px; border: 1px solid #2a3552; border-radius: 14px; background: radial-gradient(circle at 100% 0, #5947d51f, transparent 42%), linear-gradient(145deg, #131a2b, #101624); }
.apps-flow small { color: #8d82eb; font: 800 8px Consolas, monospace; letter-spacing: 1.3px; }
.apps-flow b, .apps-flow span { display: block; }
.apps-flow b { margin: 10px 0 8px; font-size: 15px; }
.apps-flow span { color: #8591a8; font-size: 12px; line-height: 1.6; }
.apps-flow code { color: #c3bbff; font: inherit; }

@media (max-width: 980px) {
  .apps-intro, .apps-flow { grid-template-columns: 1fr; }
  .apps-catalog-strip { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 680px) {
  .apps-showcase { padding-block: 72px; }
  .apps-catalog-strip { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .apps-preview-shot { border-radius: 13px; }
}
