/* Public website shares the desktop and admin-panel tokens. */
.home-shell { max-width:1320px; margin:auto; padding:0 48px; }
.home-header { border-bottom:1px solid var(--line); }
.home-toolbar { min-height:88px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.home-actions { display:flex; align-items:center; gap:24px; }
.home-actions .button { min-height:40px; font-size:12px; padding:8px 16px; }
.home-nav { display:flex; gap:24px; }
.home-nav a { padding:14px 4px; color:var(--muted); font-size:13px; border-bottom:3px solid transparent; }
.home-nav a:hover { color:var(--text); }
.home-nav .home-current { color:var(--accent); border-color:var(--accent); font-weight:600; }
.home-hero { display:grid; grid-template-columns:1fr 1.08fr; gap:56px; align-items:center; padding:64px 0 68px; }
.home-intro { min-width:0; }
.home-badge { display:inline-flex; align-items:center; gap:9px; font-size:11px; color:var(--accent); margin-bottom:32px; padding:7px 11px; border:1px solid var(--line); border-radius:5px; }
.home-eyebrow { font-size:10px; letter-spacing:.16em; margin-bottom:12px; }
.home-intro h1 { font-size:clamp(40px,4.6vw,62px); line-height:1.06; letter-spacing:-.045em; }
.home-intro h1 span { color:var(--accent); }
.home-subheading { font-size:17px; letter-spacing:0; margin-top:24px; }
.home-description { max-width:490px; margin:14px 0 28px; font-size:14px; line-height:1.85; }
.home-cta { display:flex; align-items:center; flex-wrap:wrap; gap:22px; }
.home-download { min-height:50px; padding:12px 24px; gap:22px; font-size:14px; }
.home-download span { border-left:1px solid currentColor; padding-left:16px; font-size:11px; font-weight:400; }
.home-text-link { color:var(--muted); font-size:13px; text-decoration:underline; text-underline-offset:5px; }
.home-text-link:hover { color:var(--accent); }
.home-download-meta { display:flex; flex-wrap:wrap; gap:16px; color:var(--muted); font-size:10px; margin-top:15px; }
.home-preview { min-width:0; margin:0; padding:20px; background:var(--soft); border:1px solid var(--line); border-radius:12px; }
.home-preview-caption { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 14px; font-size:9px; letter-spacing:.1em; color:var(--muted); }
.home-preview-version { letter-spacing:0; font-size:11px; color:var(--text); }
.home-preview-image { overflow:hidden; border-radius:7px; border:1px solid var(--line); box-shadow:0 16px 32px #0001; background:var(--bg); }
.home-preview-image img { display:block; width:100%; height:auto; }
.home-preview-image .preview-dark { display:none; }
:root[data-theme=dark] .home-preview-image .preview-light { display:none; }
:root[data-theme=dark] .home-preview-image .preview-dark { display:block; }
.home-preview figcaption { margin-top:14px; color:var(--muted); font-size:11px; }
.home-architecture { border-block:1px solid var(--line); padding:36px 0; display:grid; grid-template-columns:270px 1fr; gap:48px; align-items:center; scroll-margin-top:24px; }
.home-section-label h2 { max-width:250px; font-size:25px; }
.home-section-label p { margin-bottom:0; font-size:12px; }
.home-section-label .eyebrow { font-size:10px; }
.home-route { display:grid; grid-template-columns:1fr 36px 1fr 36px 1fr; gap:16px; align-items:center; }
.home-route-node { text-align:center; min-width:0; }
.home-route-node h3 { font-size:14px; margin-top:10px; letter-spacing:0; }
.home-route-node p { font-size:10px; margin:7px 0 0; overflow-wrap:anywhere; }
.home-route-line { height:1px; background:var(--line); }
.home-node-index { display:inline-flex; align-items:center; justify-content:center; height:50px; font-size:20px; font-weight:300; color:var(--muted); }
.home-route-center img { object-fit:contain; }
.home-discord { width:40px; height:50px; display:block; margin:auto; background:var(--text); mask:url('discord.png') center/contain no-repeat; -webkit-mask:url('discord.png') center/contain no-repeat; }
.home-features { padding:54px 0; scroll-margin-top:28px; }
.home-section-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:28px; }
.home-section-heading .eyebrow { font-size:10px; margin-bottom:10px; }
.home-section-heading h2 { font-size:28px; }
.home-small-label { font-size:10px; color:var(--muted); letter-spacing:.09em; }
.home-feature-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.home-feature { padding:8px 24px 8px 0; }
.home-feature+.home-feature { border-left:1px solid var(--line); padding-left:24px; }
.home-feature-number { display:block; color:var(--accent); font-size:9px; letter-spacing:.09em; margin-bottom:22px; }
.home-feature h3 { font-size:17px; letter-spacing:-.01em; }
.home-feature p { font-size:12px; line-height:1.85; margin:12px 0 0; }
.home-final-cta { background:var(--soft); border:1px solid var(--line); border-radius:9px; padding:28px 32px; display:flex; align-items:center; justify-content:space-between; gap:24px; margin:20px 0 48px; }
.home-final-cta h2 { font-size:30px; }
.home-final-cta .eyebrow { margin-bottom:9px; font-size:10px; }
.home-footer { border-top:1px solid var(--line); padding:28px 0; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.home-footer .brand { font-size:18px; gap:8px; }
.home-footer .brand img { width:26px; height:32px; }
.home-footer .brand small { font-size:9px; }
.home-footer p { font-size:10px; margin:12px 0 0; }
.home-footer-links { display:flex; gap:24px; font-size:12px; color:var(--muted); }
.home-footer-links a:hover { color:var(--accent); }
@media(prefers-color-scheme:dark) { :root:not([data-theme]) .home-preview-image .preview-light { display:none; } :root:not([data-theme]) .home-preview-image .preview-dark { display:block; } }
@media(max-width:1100px) { .home-shell { padding:0 32px; } .home-hero { gap:32px; } .home-badge { font-size:10px; } .home-description { font-size:13px; } .home-architecture { grid-template-columns:220px 1fr; gap:28px; } .home-route { gap:10px; grid-template-columns:1fr 20px 1fr 20px 1fr; } .home-feature { padding-right:18px; } .home-feature+.home-feature { padding-left:18px; } }
@media(max-width:850px) { .home-hero { grid-template-columns:1fr; padding:44px 0; gap:36px; } .home-intro h1 { font-size:58px; } .home-description { max-width:600px; font-size:14px; } .home-preview { max-width:650px; width:100%; } .home-architecture { grid-template-columns:1fr; gap:28px; } .home-section-label h2 { max-width:none; } .home-feature-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 0; } .home-feature:nth-child(3) { border-left:0; padding-left:0; }  }
@media(max-width:600px) { .home-shell { padding:0 20px; } .home-toolbar { flex-wrap:wrap; padding:18px 0; gap:16px; } .home-actions { width:100%; justify-content:space-between; gap:12px; } .home-nav { gap:0; justify-content:space-between; } .home-nav a { font-size:10px; padding:13px 3px; } .home-hero { padding:30px 0 36px; gap:30px; } .home-badge { font-size:9px; padding:6px 8px; margin-bottom:26px; } .home-intro h1 { font-size:45px; } .home-subheading { font-size:15px; margin-top:20px; } .home-description { font-size:13px; } .home-cta { gap:18px; } .home-download { font-size:13px; padding:12px 18px; gap:18px; } .home-download-meta { font-size:9px; gap:12px; } .home-preview { padding:12px; border-radius:8px; } .home-preview-caption { font-size:8px; margin-bottom:10px; } .home-preview-version { font-size:9px; } .home-preview figcaption { font-size:9px; margin-top:10px; } .home-architecture { padding:28px 0; gap:24px; } .home-section-label h2 { font-size:23px; } .home-route { grid-template-columns:1fr 12px 1fr 12px 1fr; gap:6px; } .home-route-node h3 { font-size:11px; } .home-route-node p { font-size:9px; } .home-route-center img { width:36px; height:44px; } .home-node-index { height:44px; font-size:18px; } .home-discord { height:44px; width:32px; } .home-features { padding:34px 0; } .home-section-heading { flex-wrap:wrap; gap:12px; } .home-section-heading h2 { font-size:25px; } .home-small-label { font-size:9px; } .home-feature-grid { grid-template-columns:1fr; gap:0; } .home-feature,.home-feature+.home-feature { border-left:0; border-bottom:1px solid var(--line); padding:22px 0; } .home-feature-number { margin-bottom:12px; } .home-feature p { font-size:13px; }      .home-final-cta { flex-direction:column; align-items:flex-start; padding:24px; margin-bottom:30px; gap:22px; } .home-final-cta h2 { font-size:28px; } .home-footer { align-items:flex-start; flex-direction:column; gap:20px; } .home-footer-links { font-size:11px; } }

.home-start { border-top:1px solid var(--line); padding:36px 0; scroll-margin-top:24px; }
.home-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:30px; list-style:none; padding:0; margin:0; }
.home-steps li { display:flex; gap:16px; }
.home-step-number { font-size:12px; color:var(--accent); padding-top:2px; }
.home-steps h3 { font-size:16px; }
.home-steps p { font-size:12px; line-height:1.8; margin:10px 0 0; }
.home-start-note { border-top:1px solid var(--line); padding-top:22px; margin:28px 0 0; font-size:12px; max-width:850px; }
.home-start-note strong { color:var(--text); font-weight:600; }
@media(max-width:700px) { .home-steps { grid-template-columns:1fr; gap:24px; } .home-start { padding:28px 0; } }
