.lobby-page { --lobby-ink:#11100f; --lobby-deep:#171411; --lobby-cream:#eee5d5; --lobby-muted:#a69b8c; --lobby-brass:#c79a5a; --lobby-line:rgba(238,229,213,.18); background:var(--lobby-ink); color:var(--lobby-cream); }
.lobby-nav { background:rgba(17,16,15,.84); border-color:var(--lobby-line); }
.lobby-nav-button { border-color:var(--lobby-brass); color:var(--lobby-cream)!important; }
.lobby-hero { position:relative; overflow:hidden; min-height:740px; padding:108px 0 86px; background:radial-gradient(circle at 73% 43%,rgba(199,154,90,.16),transparent 28%),linear-gradient(115deg,#11100f 0%,#171311 55%,#201a15 100%); border-bottom:1px solid var(--lobby-line); }
.lobby-hero::before { content:""; position:absolute; inset:0; opacity:.16; background-image:linear-gradient(rgba(238,229,213,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(238,229,213,.09) 1px,transparent 1px); background-size:56px 56px; mask-image:linear-gradient(90deg,black,transparent 75%); }
.lobby-hero-grid { position:relative; z-index:1; display:grid; grid-template-columns:1fr .92fr; gap:72px; align-items:center; }
.lobby-kicker { margin:0; color:var(--lobby-brass); font:700 11px/1.2 monospace; letter-spacing:.18em; text-transform:uppercase; }
.lobby-live-dot { display:inline-block; width:7px; height:7px; margin-right:9px; border-radius:50%; background:#d26849; box-shadow:0 0 0 5px rgba(210,104,73,.13); }
.lobby-display { max-width:700px; margin:22px 0 30px; font:500 clamp(58px,8vw,112px)/.86 Georgia,serif; letter-spacing:-.065em; }
.lobby-display em,.lobby-section-head em { color:var(--lobby-brass); font-style:normal; }
.lobby-lede { max-width:520px; color:#c1b6a5; font-size:18px; line-height:1.6; }
.lobby-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:36px; }
.lobby-button { min-height:50px; padding:0 20px; border:1px solid currentColor; text-decoration:none; font-weight:700; cursor:pointer; }
.lobby-button-brass { border-color:var(--lobby-brass); background:var(--lobby-brass); color:var(--lobby-ink); }
.lobby-button span { margin-left:18px; font-size:18px; }
.lobby-text-link { color:var(--lobby-cream); text-decoration:none; font-weight:700; }
.lobby-text-link span { margin-left:10px; color:var(--lobby-brass); }
.lobby-proof { display:flex; gap:12px; align-items:center; margin-top:82px; color:var(--lobby-muted); font:11px monospace; text-transform:uppercase; letter-spacing:.08em; }
.lobby-proof i { width:24px; height:1px; background:var(--lobby-brass); }
.lobby-reel-wrap { transform:rotate(2deg); }
.lobby-reel-label,.lobby-reel-bottom,.lobby-reel-topline { display:flex; justify-content:space-between; color:var(--lobby-muted); font:10px monospace; letter-spacing:.1em; }
.lobby-reel-label { margin-bottom:12px; color:var(--lobby-brass); }
.lobby-reel-frame { padding:16px; border:1px solid rgba(238,229,213,.35); background:#0b0b0a; box-shadow:18px 20px 0 rgba(0,0,0,.2); }
.lobby-reel-topline { padding-bottom:13px; }
.lobby-video-shell { position:relative; overflow:hidden; aspect-ratio:16/10; background:#30261d; }
.lobby-video-shell iframe { display:block; width:100%; height:100%; border:0; }
.lobby-reel-bottom { padding-top:13px; }
.lobby-caption { max-width:420px; margin:22px 0 0 auto; color:var(--lobby-muted); font-size:12px; line-height:1.5; }
.lobby-crosshair { position:absolute; width:18px; height:18px; border:1px solid rgba(238,229,213,.65); }
.lobby-crosshair-a { top:22px; left:22px; border-right:0; border-bottom:0; }.lobby-crosshair-b { right:22px; bottom:22px; border-left:0; border-top:0; }
.lobby-orbit { position:absolute; border:1px solid rgba(199,154,90,.17); border-radius:50%; pointer-events:none; }.lobby-orbit-one { width:700px;height:700px;right:-270px;top:40px; }.lobby-orbit-two { width:480px;height:480px;right:-160px;top:150px; }
.lobby-marquee { display:flex; gap:60px; overflow:hidden; padding:17px 0; color:var(--lobby-brass); border-bottom:1px solid var(--lobby-line); white-space:nowrap; font:11px monospace; letter-spacing:.16em; }
.lobby-marquee div::before { content:"✦"; margin-right:60px; color:#76572f; }
.lobby-generator { background:#171411; }.lobby-section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; margin-bottom:44px; }.lobby-section-head h2 { margin:13px 0 0; font:500 clamp(42px,6vw,76px)/.91 Georgia,serif; letter-spacing:-.055em; }.lobby-section-note { max-width:350px; color:#7d7469; line-height:1.6; }.lobby-balance { min-width:235px; padding:15px 18px; border:1px solid var(--lobby-line); }.lobby-balance-label,.lobby-result-status { display:block; color:var(--lobby-brass); font:10px monospace; letter-spacing:.1em; }.lobby-balance strong { display:block; margin:8px 0 10px; font:17px Georgia,serif; }.lobby-balance a { color:var(--lobby-muted); font-size:12px; }.lobby-tool-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:1px; background:var(--lobby-line); border:1px solid var(--lobby-line); }.lobby-panel { padding:30px; background:var(--lobby-deep); }.lobby-panel-heading { display:flex; align-items:center; gap:12px; margin-bottom:21px; }.lobby-panel-heading > span:first-child { color:var(--lobby-brass); font:12px monospace; }.lobby-panel-heading h3 { margin:0; font:400 28px Georgia,serif; }.lobby-panel-heading-spaced { margin-top:33px; }.lobby-dropzone { position:relative; display:flex; min-height:170px; flex-direction:column; align-items:center; justify-content:center; overflow:hidden; border:1px dashed rgba(199,154,90,.65); background:rgba(199,154,90,.04); text-align:center; cursor:pointer; }.lobby-dropzone input { position:absolute; inset:0; opacity:0; cursor:pointer; }.lobby-upload-icon { display:grid; width:34px; height:34px; place-items:center; margin-bottom:11px; border:1px solid var(--lobby-brass); color:var(--lobby-brass); font-size:25px; font-weight:300; }.lobby-dropzone strong { font:18px Georgia,serif; }.lobby-dropzone small { margin-top:7px; color:var(--lobby-muted); font:11px monospace; }.lobby-image-preview { position:absolute; inset:0; display:none; width:100%; height:100%; object-fit:cover; opacity:.72; }.lobby-dropzone.has-image .lobby-image-preview { display:block; }.lobby-dropzone.has-image > *:not(input):not(.lobby-image-preview) { position:relative; z-index:1; }.lobby-dropzone.has-image::after { content:"Change portrait"; position:absolute; right:10px; bottom:10px; z-index:2; padding:5px 8px; background:var(--lobby-ink); color:var(--lobby-cream); font:10px monospace; }.lobby-quality-grid { display:grid; grid-template-columns:1fr 1fr; gap:9px; }.lobby-choice { cursor:pointer; }.lobby-choice input { position:absolute; opacity:0; }.lobby-choice span { display:block; padding:14px; border:1px solid var(--lobby-line); }.lobby-choice input:checked + span { border-color:var(--lobby-brass); background:rgba(199,154,90,.1); }.lobby-choice b,.lobby-choice small,.lobby-choice em { display:block; }.lobby-choice b { font:18px Georgia,serif; }.lobby-choice small,.lobby-choice em { margin-top:6px; color:var(--lobby-muted); font:11px monospace; }.lobby-choice em { color:var(--lobby-brass); font-style:normal; }.lobby-inline-fields { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:18px; }.lobby-inline-fields label span { display:block; margin-bottom:8px; color:var(--lobby-muted); font:10px monospace; text-transform:uppercase; }.lobby-inline-fields select { width:100%; padding:12px 10px; border:1px solid var(--lobby-line); background:var(--lobby-ink); color:var(--lobby-cream); }.lobby-form-note { margin:21px 0; color:var(--lobby-muted); font-size:12px; line-height:1.55; }.lobby-generate-button { width:100%; }.lobby-form-status { min-height:18px; margin:13px 0 0; color:var(--lobby-brass); font-size:12px; }.lobby-result-panel { display:flex; min-height:600px; flex-direction:column; }.lobby-result-panel .lobby-panel-heading { justify-content:flex-start; }.lobby-result-status { margin-left:auto; }.lobby-result-stage { position:relative; display:grid; flex:1; min-height:420px; place-items:center; overflow:hidden; border:1px solid var(--lobby-line); background:radial-gradient(circle at 50% 42%,#403124,#181411 55%,#0b0b0a); }.lobby-stage-grid { position:absolute; inset:0; opacity:.3; background-image:linear-gradient(rgba(238,229,213,.1) 1px,transparent 1px),linear-gradient(90deg,rgba(238,229,213,.1) 1px,transparent 1px); background-size:40px 40px; transform:perspective(350px) rotateX(55deg) scale(1.5); transform-origin:center bottom; }.lobby-stage-mark { position:absolute; top:22px; left:25px; color:rgba(199,154,90,.35); font:bold 28px Georgia,serif; }.lobby-result-stage p { position:relative; max-width:220px; color:#bdb0a0; text-align:center; font:18px/1.3 Georgia,serif; }.lobby-result-stage video { position:absolute; inset:0; width:100%; height:100%; background:#080808; object-fit:contain; }.lobby-result-meta { display:flex; justify-content:space-between; gap:20px; padding-top:15px; color:var(--lobby-muted); font:10px monospace; letter-spacing:.1em; }.lobby-download { border:0; background:none; color:var(--lobby-brass); cursor:pointer; font:inherit; }.lobby-how { background:var(--lobby-cream); color:var(--lobby-ink); }.lobby-how .lobby-kicker { color:#81622f; }.lobby-how .lobby-section-note { color:#686157; }.lobby-step-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; border:1px solid rgba(17,16,15,.2); background:rgba(17,16,15,.2); }.lobby-step-grid article { min-height:230px; padding:27px; background:var(--lobby-cream); }.lobby-step-grid article > span { color:#81622f; font:12px monospace; }.lobby-step-grid h3 { margin:55px 0 10px; font:400 28px Georgia,serif; }.lobby-step-grid p { max-width:270px; color:#686157; line-height:1.55; }
@media (max-width:800px) { .lobby-hero { padding:70px 0 58px; }.lobby-hero-grid,.lobby-tool-grid { grid-template-columns:1fr; }.lobby-reel-wrap { margin-top:30px; }.lobby-proof { margin-top:48px; }.lobby-orbit { display:none; }.lobby-section-head { align-items:flex-start; flex-direction:column; }.lobby-balance { width:100%; }.lobby-result-panel { min-height:500px; }.lobby-result-stage { min-height:330px; }.lobby-step-grid { grid-template-columns:1fr; }.lobby-marquee { gap:25px; }.lobby-marquee div::before { margin-right:25px; } }
@media (max-width:430px) { .lobby-display { font-size:56px; }.lobby-panel { padding:21px; }.lobby-quality-grid { grid-template-columns:1fr; }.lobby-actions { align-items:flex-start; flex-direction:column; }.lobby-inline-fields { grid-template-columns:1fr; }.lobby-reel-frame { padding:10px; } }
