:root{--primary: #49ab47;--primary-dark: #2f7d32;--primary-darker: #276b29;--primary-soft: #edf8ed;--primary-ring: rgba(73, 171, 71, 0.35);--primary-shadow: rgba(73, 171, 71, 0.22);--bg: #f8fafc;--card-bg: #ffffff;--text: #1e293b;--text-muted: #64748b;--border: #e2e8f0;--radius: 12px;--shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)}*{box-sizing:border-box}html{overflow-x:hidden}img,svg,canvas{max-width:100%}body{margin:0;padding:0;overflow-x:hidden;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;background:var(--bg);color:var(--text);line-height:1.6}.container{width:min(100%, 960px);max-width:960px;margin:0 auto;padding:0 clamp(16px, 5vw, 24px)}.site-header{background:linear-gradient(135deg, var(--primary-dark) 0%, var(--primary-darker) 100%);color:white;padding:24px 0;text-align:center}.site-header .container{position:relative}.header-top{display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:12px}.lang-selector{display:inline-flex;gap:4px;background:rgba(255,255,255,0.12);border:1px solid rgba(255,255,255,0.25);border-radius:8px;padding:3px;position:absolute;right:0;top:50%;transform:translateY(-50%)}.lang-btn{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:5px 10px;border:none;border-radius:6px;background:transparent;color:rgba(255,255,255,0.75);font-size:0.8125rem;font-weight:600;cursor:pointer;transition:background 0.15s ease, color 0.15s ease}.lang-btn:hover{background:rgba(255,255,255,0.15);color:white}.lang-btn.is-active{background:rgba(255,255,255,0.9);color:var(--primary-dark)}.site-header h1{margin:0;font-size:clamp(2rem, 8vw, 2.5rem);line-height:1.16;font-weight:700;overflow-wrap:anywhere;text-align:center}.site-header p{margin:0;font-size:clamp(1rem, 4.4vw, 1.125rem);opacity:0.9}.site-header .hero-caveat{margin:10px auto 0;max-width:720px;font-size:0.9375rem;opacity:0.82}.hero-actions{display:flex;justify-content:center;gap:12px;margin-top:28px;flex-wrap:wrap}.hero-actions .btn{background:white;color:var(--primary-dark);text-decoration:none}.hero-actions .btn:hover{background:var(--primary-soft);color:var(--primary-dark);text-decoration:none}.hero-actions .btn-secondary{background:rgba(255,255,255,0.12);border-color:rgba(255,255,255,0.45);color:white}.hero-actions .btn-secondary:hover{background:rgba(255,255,255,0.22);color:white}.section{padding:48px 0}.section-title{font-size:1.5rem;font-weight:600;margin:0 0 24px;text-align:center}.section-divider{border:none;border-top:1px solid var(--border);margin:40px auto 32px;max-width:720px}.recommended-download{background:linear-gradient(135deg, var(--primary-dark) 0%, var(--primary-darker) 100%);border:1px solid var(--primary-dark);border-radius:var(--radius);padding:clamp(18px, 5vw, 24px);box-shadow:var(--shadow);margin:0 auto 24px;max-width:640px;width:100%;min-width:0;text-align:center;color:white}.recommended-download[hidden]{display:none}.recommended-download .eyebrow{margin:0 0 6px;color:rgba(255,255,255,0.85);font-size:0.75rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase}.recommended-download h3{margin:0 0 6px;font-size:clamp(1.125rem, 5.5vw, 1.25rem);line-height:1.25;overflow-wrap:anywhere}.recommended-download p:last-of-type{margin:0 auto 18px;max-width:520px;color:rgba(255,255,255,0.85)}.recommended-download .btn{background:white;color:var(--primary-dark)}.recommended-download .btn:hover{background:var(--primary-soft);color:var(--primary-darker)}.release-summary{display:grid;grid-template-columns:repeat(auto-fit, minmax(190px, 1fr));gap:12px;margin:0 0 24px}.release-summary>div{background:#f1f5f9;border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.release-summary span{display:block;color:var(--text-muted);font-size:0.75rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase}.release-summary strong{display:block;margin-top:2px;font-size:0.9375rem;word-break:break-word}.download-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:20px}.card-column{display:flex;flex-direction:column;gap:20px;min-width:0}.card-column>.card{flex:1 1 auto}.card{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(18px, 5vw, 24px);min-width:0;box-shadow:inset 0 2em 2em -1em var(--primary-soft),var(--shadow);transition:transform 0.15s ease, box-shadow 0.15s ease}.card:hover{transform:translateY(-2px);box-shadow:inset 0 2em 2em -1em var(--primary-soft),var(--shadow-lg)}.card.is-detected{border-color:var(--primary);box-shadow:inset 0 2em 2em -1em var(--primary-soft),0 0 3px 3px var(--primary-shadow),var(--shadow)}.detected-label{display:inline-flex;align-items:center;margin:-4px 0 14px;padding:4px 10px;border-radius:999px;background:#dbeafe;color:#1e40af;font-size:0.75rem;font-weight:700;letter-spacing:0.02em}.detected-label[hidden]{display:none}.card h3{margin:0 0 16px;font-size:1.125rem;font-weight:600;display:flex;align-items:center;gap:10px}.card h3 .icon{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center}.card ul{margin:0;padding:0;list-style:none}.card li{margin-bottom:8px}.no-build{color:var(--text-muted);font-size:0.875rem}.card a{color:var(--primary-dark);text-decoration:none;font-weight:500;display:inline-flex;align-items:center;gap:6px;padding:6px 0}.card a:hover{text-decoration:underline}.card .download-link{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 0;line-height:1.35}.download-title{font-weight:600}.download-meta{color:var(--text-muted);font-family:ui-monospace, "Cascadia Code", "Source Code Pro", monospace;font-size:0.75rem;word-break:break-all;overflow-wrap:anywhere}.card .note a{color:inherit;display:inline;font-weight:700;padding:0;text-decoration:underline}.card .note{margin-top:12px;padding:10px 12px;background:#fff7ed;border-left:3px solid #f97316;border-radius:6px;font-size:0.875rem;color:#9a3412}.page-note{margin:0 0 32px;padding:14px 16px;background:#fff7ed;border-left:3px solid #f97316;border-radius:6px;color:#9a3412;font-size:0.9375rem}.config-section{background:var(--card-bg);border:1px solid var(--border);border-radius:var(--radius);padding:clamp(20px, 5vw, 32px);min-width:0;box-shadow:var(--shadow)}.config-grid{display:grid;grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);gap:32px;align-items:start}.config-warning{margin:calc(-1 * clamp(20px, 5vw, 32px)) calc(-1 * clamp(20px, 5vw, 32px)) 24px calc(-1 * clamp(20px, 5vw, 32px));padding:16px clamp(20px, 5vw, 32px);background:#fff7ed;border-bottom:1px solid #fdba74;display:flex;align-items:center;gap:12px;color:#9a3412;font-size:0.9375rem}.config-warning-icon{color:#f97316;font-size:1.5rem;flex-shrink:0}.client-preview{position:relative;display:block;max-width:785px;margin:24px auto 0}.client-preview img{width:100%;height:auto;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.15)}.client-preview .overlay{position:absolute;font-family:ui-monospace, "Cascadia Code", "Source Code Pro", monospace;color:rgba(0,0,0,0.6);white-space:nowrap;pointer-events:none;line-height:1;font-size:clamp(7px, 1.1vw, 12px)}.overlay-id-server{top:243px;left:285px}.overlay-relay-server{top:285px;left:285px}.overlay-api-server{top:328px;left:285px}.overlay-key{top:370px;left:285px;max-width:46%;overflow:hidden;text-overflow:ellipsis}.mt-1{margin-top:16px}.mt-2{margin-top:24px}@media (max-width: 720px){.config-grid{grid-template-columns:1fr}}.qr-wrapper{text-align:center}#qrcode{display:inline-block;max-width:100%;padding:12px;background:white;border:1px solid var(--border);border-radius:var(--radius)}#qrcode img,#qrcode canvas{width:min(200px, 100%) !important;height:auto !important}.qr-empty{margin:0;color:var(--text-muted)}.qr-label{margin-top:12px;font-size:0.875rem;color:var(--text-muted)}.config-help{margin-top:0}.config-string{width:100%;min-height:80px;padding:12px;border:1px solid var(--border);border-radius:var(--radius);font-family:ui-monospace, "Cascadia Code", "Source Code Pro", monospace;font-size:0.875rem;resize:vertical;background:#f8fafc;color:var(--text)}.config-string-row{display:flex;gap:12px;align-items:flex-end}.config-string-row .config-string{flex:1}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:100%;padding:10px 20px;border:1px solid transparent;border-radius:8px;background:var(--primary-dark);color:white;font-size:0.9375rem;font-weight:500;cursor:pointer;text-align:center;text-decoration:none;white-space:normal;transition:background 0.15s ease, border-color 0.15s ease, color 0.15s ease}.btn:hover{background:var(--primary-darker);color:white;text-decoration:none}.btn-secondary{background:white;border-color:var(--border);color:var(--primary-dark)}.btn-secondary:hover{background:var(--primary-soft);color:var(--primary-dark)}a:focus-visible,button:focus-visible,.btn:focus-visible{outline:3px solid var(--primary-ring);outline-offset:3px}.btn:active{transform:translateY(1px)}.btn-group{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}.details-list{margin-top:20px;padding:16px;background:#f1f5f9;border-radius:var(--radius);font-size:0.875rem}.details-list dt{font-weight:600;color:var(--text-muted);margin-top:8px}.details-list dd{margin:2px 0 0;font-family:ui-monospace, monospace;word-break:break-all}.details-list dd:first-of-type{margin-top:0}.instructions{margin-top:20px;padding:16px;background:var(--primary-soft);border-left:3px solid var(--primary);border-radius:6px;font-size:0.9375rem}.instructions h4{margin:0 0 8px;font-size:1rem}.instructions ol{margin:0;padding-left:20px}.instructions li{margin-bottom:6px}.config-item{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.config-field{display:inline-flex;align-items:center;flex:1 1 auto;min-width:0;border:1px solid var(--border);border-radius:6px;background:#f8fafc;overflow:hidden}.config-value{border:none;background:transparent;color:var(--text);font-family:ui-monospace, "Cascadia Code", "Source Code Pro", monospace;font-size:0.875rem;padding:6px 10px;margin:0;flex:1 1 auto;min-width:0;cursor:text;outline:none}.btn-copy{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;border:none;border-left:1px solid var(--border);border-radius:0;background:transparent;color:var(--text-muted);font-size:0.875rem;cursor:pointer;transition:background 0.15s ease, color 0.15s ease}.btn-copy:hover{background:var(--primary-soft);color:var(--primary-dark)}.site-footer{border-top:1px solid var(--border);text-align:center;padding:32px 0;color:var(--text-muted);font-size:0.875rem}.toast{position:fixed;bottom:24px;right:24px;background:var(--text);color:white;padding:12px 20px;border-radius:8px;font-size:0.875rem;opacity:0;transform:translateY(10px);transition:opacity 0.3s ease, transform 0.3s ease;pointer-events:none;z-index:1000}.toast.show{opacity:1;transform:translateY(0)}@media (max-width: 900px){.download-grid{grid-template-columns:1fr}.card-column{gap:16px}}@media (max-width: 640px){.site-header{padding:48px 0 36px}.header-top{display:block;margin-bottom:8px}.lang-selector{position:absolute;top:-36px;right:clamp(12px, 4vw, 16px);transform:none}.section{padding:36px 0}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .btn,.recommended-download .btn,.btn-group .btn,.config-string-row .btn{width:100%}.config-string-row{flex-direction:column}.release-summary{grid-template-columns:1fr}.download-grid{gap:16px}.card:hover{transform:none}.config-grid{gap:24px}.toast{right:16px;bottom:16px;left:16px;text-align:center}}@media (max-width: 380px){.container{padding:0 12px}.site-header{padding:40px 0 32px}.btn{padding-right:14px;padding-left:14px}.release-summary>div,.card,.config-section{border-radius:10px}}
