:root{
  --ink:#04111d;--ink2:#071725;--ink3:#0b1c2b;--line:#1b2b38;
  --ivory:#f2efe8;--muted:#8f9aa5;--gold:#c9a969;--red:#d32432;
  --blue:#7da7cf;--radius:22px;--shadow:0 24px 60px rgba(0,0,0,.28);
  font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",sans-serif;
  color-scheme:dark;
}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--ink);color:var(--ivory)}
body{min-height:100dvh;overflow-x:hidden}button,input,select{font:inherit}button{cursor:pointer}
.sky{position:fixed;inset:0;overflow:hidden;pointer-events:none;background:
 radial-gradient(circle at 80% 10%,rgba(55,85,112,.12),transparent 28%),
 radial-gradient(circle at 20% 90%,rgba(201,169,105,.06),transparent 35%),var(--ink)}
.stars{position:absolute;inset:-20%;background-image:radial-gradient(circle,rgba(255,255,255,.42) 0 1px,transparent 1.4px);background-size:46px 46px;opacity:.16}
.stars-b{background-size:72px 72px;transform:rotate(17deg);opacity:.09}
.app-shell{position:relative;z-index:1;max-width:520px;min-height:100dvh;margin:0 auto;background:linear-gradient(180deg,rgba(4,17,29,.94),rgba(4,17,29,.99));box-shadow:0 0 80px rgba(0,0,0,.16)}
.screen{display:none;min-height:100dvh;padding:calc(28px + env(safe-area-inset-top)) 24px calc(28px + env(safe-area-inset-bottom))}
.screen.active{display:flex;flex-direction:column}.scroll-screen.active{display:block}
.brand-row,.home-header,.compact-brand,.back-row{display:flex;align-items:center}.brand-row{gap:12px}.brand-mark{display:block;width:36px;height:36px;object-fit:contain;flex-shrink:0}
.wordmark{font-family:Georgia,"Times New Roman",serif;font-size:18px;letter-spacing:.23em}.wordmark.small{font-size:16px}.brand-line{margin-top:3px;font-size:8px;letter-spacing:.18em;color:var(--muted)}
.chip{margin-left:auto;border:1px solid rgba(201,169,105,.55);border-radius:999px;padding:6px 9px;color:var(--gold);font-size:8px;letter-spacing:.16em}.hidden{display:none!important}
.welcome-copy{margin:auto 0 40px}.eyebrow,.section-label{color:var(--gold);font-size:10px;letter-spacing:.18em;text-transform:uppercase}.welcome-copy h1,.section-intro h2,.personal-title h2,.loading-screen h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.025em}
.welcome-copy h1{max-width:430px;margin:12px 0 18px;font-size:46px;line-height:1.02}.welcome-copy p,.section-intro p,.personal-title p{color:var(--muted);font-size:16px;line-height:1.55;margin:0;max-width:440px}
.welcome-actions{margin-top:auto}.primary{width:100%;min-height:56px;border:0;border-radius:16px;background:linear-gradient(135deg,#d7bc82,#b8985c);color:#06131e;font-weight:650;letter-spacing:.01em;box-shadow:0 12px 30px rgba(201,169,105,.12)}
.primary:disabled{opacity:.45;cursor:default}.privacy-note,.status-line{font-size:12px;line-height:1.45;color:var(--muted);text-align:center}.privacy-note{margin:14px 12px 0}.status-line{min-height:17px;margin:10px 0 0}.status-line.error{color:#e0ad66}
.loading-screen{align-items:center!important;justify-content:center;text-align:center}.loading-orbit{position:relative;width:118px;height:118px;margin-bottom:32px}.loading-core{position:absolute;inset:31px;border:1px solid rgba(201,169,105,.8);border-radius:50%;display:grid;place-items:center;color:var(--gold);font-size:28px;box-shadow:0 0 38px rgba(201,169,105,.12);animation:breathe 1.8s ease-in-out infinite}
.orbit-ring{position:absolute;inset:8px;border:1px solid rgba(201,169,105,.15);border-radius:50%;animation:spin 8s linear infinite}.orbit-ring.ring-two{inset:0;animation-duration:12s;animation-direction:reverse}.orbit-ring i{position:absolute;width:5px;height:5px;border-radius:50%;background:var(--gold);top:-3px;left:52%;box-shadow:0 0 10px rgba(201,169,105,.55)}
.loading-screen h2{font-size:28px;margin:0 0 24px}.resolve-list{display:grid;gap:9px}.resolve-row{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);font-size:13px;opacity:.55;animation:resolve 2.8s ease-in-out infinite}.resolve-row span{width:5px;height:5px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px rgba(201,169,105,.4)}.resolve-row b{font-weight:450}.delay-one{animation-delay:.45s}.delay-two{animation-delay:.9s}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes breathe{50%{transform:scale(1.06);box-shadow:0 0 44px rgba(201,169,105,.19)}}@keyframes resolve{0%,100%{opacity:.38}45%{opacity:1}}
.compact-brand{gap:10px;color:var(--ivory);font-family:Georgia,"Times New Roman",serif;letter-spacing:.16em;font-size:15px}.brand-dot{display:block;width:30px;height:30px;object-fit:contain;flex-shrink:0}
.section-intro{margin:54px 0 28px}.section-intro h2{font-size:36px;margin:8px 0 12px}.form-stack{display:grid;gap:15px}.form-stack label,.pair-panel label{display:grid;gap:8px;color:var(--muted);font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.form-stack input,.form-stack select,.pair-panel input{width:100%;border:1px solid var(--line);border-radius:15px;background:rgba(10,27,42,.9);color:var(--ivory);padding:16px 15px;font-size:16px;outline:none;text-transform:none;letter-spacing:normal}.form-stack input:focus,.form-stack select:focus,.pair-panel input:focus{border-color:rgba(201,169,105,.72);box-shadow:0 0 0 3px rgba(201,169,105,.06)}
.choice-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 2px;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05)}.choice-row span{display:grid;gap:3px;color:var(--ivory);font-size:14px}.choice-row small{color:var(--muted);font-size:11px;font-weight:400}.choice-row input{appearance:none;width:46px;height:28px;border-radius:999px;background:#1b2b38;position:relative;transition:.2s}.choice-row input:after{content:"";position:absolute;width:22px;height:22px;border-radius:50%;top:3px;left:3px;background:#71808d;transition:.2s}.choice-row input:checked{background:rgba(201,169,105,.36)}.choice-row input:checked:after{left:21px;background:var(--gold)}
.home-header{justify-content:space-between}.ghost-icon{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:rgba(7,23,37,.6);color:var(--ivory);font-size:18px;letter-spacing:2px}.personal-title{margin:48px 0 26px}.personal-title h2{font-size:36px;margin:8px 0 10px}.section-label{margin:30px 0 12px;color:var(--muted)}
.travel-hero{position:relative;overflow:hidden;border:1px solid rgba(201,169,105,.16);border-radius:26px;padding:24px;background:linear-gradient(145deg,rgba(13,35,52,.96),rgba(6,21,33,.98));box-shadow:var(--shadow)}.travel-hero:before{content:"";position:absolute;width:220px;height:220px;border:1px solid rgba(201,169,105,.08);border-radius:50%;right:-80px;top:-100px}.travel-copy h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:31px;margin:8px 0 4px}.travel-copy p{color:var(--muted);margin:0}.trip-route{display:flex;align-items:center;margin-top:26px;color:var(--ivory);font-size:15px;letter-spacing:.12em}.trip-route i{height:1px;background:linear-gradient(90deg,var(--gold),rgba(201,169,105,.2));flex:1;margin:0 14px;position:relative}.trip-route i:after{content:"✦";position:absolute;right:0;top:-8px;color:var(--gold);font-style:normal;font-size:12px}
.specialist-grid{display:grid;gap:12px}.specialist-card{position:relative;display:flex;align-items:center;gap:14px;border:1px solid var(--line);border-radius:20px;padding:17px;background:linear-gradient(145deg,rgba(9,25,39,.96),rgba(6,20,31,.96));overflow:hidden}.specialist-card:after{content:"";position:absolute;right:-22px;top:-30px;width:95px;height:95px;border-radius:50%;border:1px solid rgba(255,255,255,.035)}.specialist-icon{width:42px;height:42px;border-radius:50%;object-fit:contain;border:1px solid rgba(255,255,255,.11);padding:5px;background:rgba(0,0,0,.15)}.specialist-copy{display:grid;gap:2px;min-width:0;flex:1}.specialist-copy b{font-size:13px;letter-spacing:.12em;font-weight:620}.specialist-copy span{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.specialist-status{font-size:11px;color:var(--gold);text-align:right;max-width:110px}.specialist-card.apex .specialist-status,.specialist-card.apex .specialist-copy b{color:#e35460}.specialist-card.forge{cursor:pointer;text-decoration:none}.specialist-card.forge .specialist-status,.specialist-card.forge .specialist-copy b{color:#b868ff}.forge-mark{padding:3px;border-color:rgba(184,104,255,.35);box-shadow:0 0 18px rgba(184,104,255,.1)}.forge-mark svg{width:100%;height:100%}.specialist-card.forge:active .forge-mark{animation:forge-settle .55s ease-out}.specialist-card.forge:active .forge-mark svg g{animation:forge-spark .42s ease-out}@keyframes forge-spark{0%{opacity:.1;transform:translateY(5px)}45%{opacity:1}100%{opacity:1;transform:translateY(0)}}@keyframes forge-settle{45%{box-shadow:0 0 28px rgba(184,104,255,.45)}100%{box-shadow:0 0 18px rgba(184,104,255,.1)}}
.device-card{display:flex;align-items:center;gap:13px;width:100%;padding:17px;border:1px solid var(--line);border-radius:20px;background:rgba(8,24,37,.88);color:var(--ivory);text-align:left}.device-orb{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(201,169,105,.62);color:var(--gold)}.device-card span:nth-child(2){display:grid;gap:4px;flex:1}.device-card b{font-size:14px}.device-card small{font-size:11px;color:var(--muted)}.device-card strong{font-weight:300;font-size:24px;color:var(--muted)}
.install-hint{margin:18px 0 0;border-top:1px solid rgba(255,255,255,.06);padding:18px 2px 0;display:grid;gap:4px}.install-hint b{font-size:12px;color:var(--ivory)}.install-hint span{font-size:11px;color:var(--muted)}
.back-row{gap:16px;color:var(--muted);font-size:10px;letter-spacing:.16em}.back-row button{width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(8,24,37,.7);color:var(--ivory);font-size:28px;line-height:1}.pair-panel{margin-top:12px;display:grid;gap:16px}.pair-panel input{text-align:center;font-size:32px;letter-spacing:.22em;text-transform:uppercase;padding-left:calc(15px + .22em)}.quiet-panel{display:flex;gap:14px;margin-top:28px;padding:18px;border-radius:18px;background:rgba(9,25,39,.7);border:1px solid rgba(255,255,255,.05)}.quiet-panel span{color:var(--gold)}.quiet-panel p{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
@media(min-width:700px){body{padding:28px 0}.app-shell{min-height:calc(100dvh - 56px);border:1px solid rgba(255,255,255,.04);border-radius:30px;overflow:hidden}.screen{min-height:calc(100dvh - 56px)}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

.persona-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:-8px 0 20px;padding:13px 14px;border:1px solid rgba(201,169,105,.34);border-radius:16px;background:rgba(201,169,105,.055)}
.persona-bar span{display:grid;gap:3px}.persona-bar b{color:var(--gold);font-size:9px;letter-spacing:.16em}.persona-bar small{color:var(--muted);font-size:10px}.persona-bar button{border:0;background:none;color:var(--ivory);font-size:11px;text-decoration:underline;text-underline-offset:3px}
.builder-tools{margin:34px 0 14px;padding:22px;border:1px solid rgba(201,169,105,.2);border-radius:22px;background:linear-gradient(145deg,rgba(13,35,52,.82),rgba(6,21,33,.92))}.builder-tools h3{font-family:Georgia,"Times New Roman",serif;font-size:25px;font-weight:400;margin:8px 0}.builder-tools p{color:var(--muted);font-size:13px;line-height:1.5}.secondary{width:100%;min-height:50px;margin-top:10px;border:1px solid rgba(201,169,105,.34);border-radius:15px;background:rgba(4,17,29,.55);color:var(--ivory)}

.travel-hero.has-image{min-height:260px;display:flex;flex-direction:column;justify-content:flex-end;background-size:cover!important;background-position:center!important;border-color:rgba(201,169,105,.22)}
.travel-hero.has-image:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 70px rgba(1,8,14,.2)}
.travel-hero.has-image .travel-copy,.travel-hero.has-image .trip-route{position:relative;z-index:1}

.specialist-icon.vector{display:grid;place-items:center;padding:3px;background:rgba(0,0,0,.14)}
.specialist-icon.vector svg{width:100%;height:100%;fill:none;stroke:var(--gold);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.specialist-icon.vector .spark{fill:var(--gold);stroke:none}.apex-mark{border-color:rgba(227,84,96,.36)}
.specialist-icon.vector.apex-mark svg{stroke:#e10600}.apex-mark{border-color:rgba(225,6,0,.36)}.apex-mark .orbit{opacity:.58;stroke-width:1.1}
.specialist-icon.vector.valet-mark svg{stroke:var(--ivory);stroke-width:1.7}.specialist-icon.vector.valet-mark .hook-stars{stroke-width:.8;opacity:.65}.specialist-icon.vector.valet-mark .hook-star{fill:var(--ivory);stroke:none}

.form-stack select:disabled{opacity:.55;cursor:default}.form-stack label>small{font-size:12px;line-height:1.5;letter-spacing:normal;text-transform:none}

