:root{--navy:#102840;--gold:#d9b66f;--ivory:#f7f3ea;--teal:#45b8c6}*{box-sizing:border-box}body{margin:0;background:#091c2c;color:var(--ivory);font:14px 'Segoe UI',Arial,sans-serif}button,select,input{font:inherit}button{cursor:pointer;border:1px solid #ffffff20;background:#ffffff05;color:var(--ivory);border-radius:6px;padding:11px 16px;transition:.2s}button:hover{background:#ffffff12;border-color:#d9b66f80}button:focus-visible{outline:2px solid var(--teal);outline-offset:3px}button:disabled{opacity:.35;cursor:default}header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 42px;border-bottom:1px solid #ffffff12}.brand{display:flex;align-items:center;gap:14px;color:var(--ivory);text-decoration:none;letter-spacing:2px;font-size:15px;font-weight:600}.brand small{display:block;color:#8098a8;font-size:9px;letter-spacing:2.2px;margin-top:6px}.anchor{color:var(--gold);font-size:34px}.header-right{display:flex;gap:20px;align-items:center}.live{font-size:10px;letter-spacing:1.5px;color:#a2b8bf}.live i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#7dc7ab;margin-right:8px}main{max-width:1600px;margin:auto;padding:28px 42px}#stage{position:relative;aspect-ratio:16/9;max-height:68vh;margin:auto;overflow:hidden;border:1px solid #b6c7cc20;border-radius:10px;background:radial-gradient(ellipse at 52% 80%,#235b6a 0,#102e43 32%,#0c2236 75%);isolation:isolate}.stage-top,.stage-bottom{position:absolute;left:4%;right:4%;display:flex;justify-content:space-between;z-index:5;letter-spacing:2px;font-size:10px;color:#b5c6cb}.stage-top{top:6%}.stage-bottom{bottom:5%;font-size:11px;color:#b6ced1}.stage-bottom b{font-weight:500;letter-spacing:2px}.stage-bottom>span:first-child{color:var(--gold)}#welcome{text-align:center;position:absolute;width:100%;top:16%;z-index:3;transition:opacity .7s}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--gold)}h1{font:clamp(28px,4.5vw,70px)/1.04 Georgia,serif;font-weight:400;letter-spacing:-1px;margin:20px 0 12px}h1 em,h2 em{font-weight:400;color:var(--gold)}#subtitle{font:italic 18px Georgia,serif;color:#c2d0d1;margin:0}.gold-rule{height:1px;width:50px;background:var(--gold);margin:22px auto 15px}.boarding{font-size:10px;letter-spacing:4px}#verse{font-size:12px;line-height:1.6;color:#c5cfd0;margin:12px auto}#heroShip{position:absolute;z-index:2;width:45%;left:28%;bottom:10%;filter:drop-shadow(0 15px 25px #061a2d);animation:float 6s ease-in-out infinite}#heroShip svg{width:100%;overflow:visible}#map{width:100%;height:100%;opacity:0;transition:opacity 1s}#stage.map #map{opacity:1}#stage.map #welcome,#stage.map #heroShip{opacity:0;pointer-events:none}#stage.ambient #welcome{opacity:0}#stage.ambient #heroShip{width:65%;left:17.5%;bottom:20%}#stage.ambient #map{opacity:.12}.ocean-lines{position:absolute;left:0;right:0;bottom:0;height:30%;opacity:.18;pointer-events:none;background:repeating-radial-gradient(ellipse at 50% -40%,transparent 0 23px,#72b4bc80 24px,transparent 25px 44px);transform:scaleX(1.8)}.map .ocean-lines{opacity:.04}.stars{position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(1px 1px at 18% 25%,#f7e2ac 80%,transparent),radial-gradient(1px 1px at 75% 20%,#f7e2ac 80%,transparent),radial-gradient(2px 2px at 88% 37%,#f7e2ac80 80%,transparent),radial-gradient(1px 1px at 45% 10%,white 80%,transparent);background-size:340px 230px;opacity:.6;z-index:1}.compass{position:absolute;bottom:14%;right:5%;text-align:center;color:#d9b66f80;font-size:9px;line-height:1}.compass span{font-size:54px}#announcement{position:absolute;z-index:6;top:33%;width:100%;text-align:center;opacity:0;pointer-events:none;transition:opacity .8s;background:radial-gradient(ellipse,#0a213be8,transparent 70%);padding:30px}#announcement.show{opacity:1}#announceSmall{font-size:13px;letter-spacing:4px;color:var(--gold)}#announcement h2{font:clamp(30px,4vw,64px) Georgia,serif;margin:16px 0}#announcement.bottom{top:auto;bottom:12%;padding:12px}#announcement.bottom h2{font-size:32px}#final{position:absolute;inset:0;z-index:7;background:#0b2038d9;display:none;text-align:center;padding-top:14%}#final span{letter-spacing:4px;font-size:12px;color:var(--gold)}#final h2{font:clamp(42px,6vw,100px)/1.05 Georgia,serif;margin:24px}#final p{letter-spacing:3px;color:#d1dce0}.celebrating #final{display:block}#particles{position:absolute;inset:0;pointer-events:none;z-index:8;overflow:hidden}.spark{position:absolute;width:3px;height:5px;background:var(--gold);animation:fall 8s linear infinite;opacity:0}.celebrating .spark{opacity:.7}#console{padding:28px 0 0}.console-heading{display:flex;align-items:center;justify-content:space-between}.console-heading h2{font:25px Georgia,serif;margin:9px 0 23px}.pill{font-size:11px;background:#45b8c60d;color:#9ccece;border:1px solid #45b8c62b;padding:8px 12px;border-radius:20px}#itinerary{display:flex;justify-content:space-between;border-bottom:1px solid #ffffff12;padding-bottom:22px;gap:10px}.stop{flex:1;position:relative;display:flex;align-items:center;gap:10px;font-size:12px;color:#8196a5}.stop:after{content:'';height:1px;background:#ffffff16;flex:1;margin-right:12px}.stop:last-child{flex:0.9}.stop:last-child:after{display:none}.stop .number{border:1px solid #ffffff30;border-radius:50%;min-width:26px;height:26px;display:grid;place-items:center;font-size:10px}.stop.active{color:var(--gold)}.stop.active .number{background:var(--gold);color:#102840;border-color:var(--gold)}.stop.done{color:#b5d8d8}.controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0 18px}.journey-info{display:flex;flex-direction:column;min-width:220px}.journey-info small,.duration{font-size:9px;letter-spacing:2px;color:#859eac}.journey-info strong{font:25px Georgia,serif;margin:6px 0}.journey-info>span{font-size:11px;color:#819ba9}.main-controls{display:flex;gap:8px}.primary{background:var(--gold);color:#102840;border-color:var(--gold);font-weight:600;min-width:180px}.primary:hover{background:#ecd09b}.primary span{margin-left:32px}.duration select{display:block;background:#102840;color:var(--ivory);border:1px solid #ffffff20;border-radius:5px;padding:10px;margin-top:8px;font-size:12px;letter-spacing:0}.progress{height:2px;background:#ffffff12}.progress div{height:100%;background:var(--teal);width:0}.secondary{display:flex;justify-content:space-between;gap:10px;padding:20px 0}.secondary>div{display:flex;gap:8px}.secondary button{font-size:11px;padding:9px 12px}.gold{color:var(--gold)!important;border-color:#d9b66f50}footer{display:flex;justify-content:space-between;border-top:1px solid #ffffff10;padding-top:18px;font-size:10px;color:#708d9d}footer button{padding:4px 9px;margin-left:10px;font-size:10px}#syncDot{color:var(--teal)}.help{font-size:11px;color:#6f8a9b;text-align:center;margin:22px 0 0}dialog{width:min(670px,90vw);color:var(--ivory);background:#102840;border:1px solid #d9b66f70;border-radius:12px;padding:28px}dialog::backdrop{background:#020c18c9}.dialog-top{display:flex;justify-content:space-between;align-items:center}.dialog-top h2{font:25px Georgia,serif}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.fields label{font-size:12px;color:#bbcbd3}.fields input,.fields select{display:block;width:100%;background:#071d30;border:1px solid #ffffff20;border-radius:4px;color:white;padding:9px;margin-top:7px}.fields input[type=color]{height:36px;padding:3px}.checks{display:grid;gap:12px;margin:24px 0;font-size:12px}dialog p{color:#95aab8;font-size:12px;line-height:1.7}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:20;background:#f7f3ea;color:#102840;padding:15px 22px;border-radius:6px;display:none}.public header,.public #console{display:none}.public main{padding:0;max-width:none;height:100vh;display:grid;place-items:center;background:#030d17}.public #stage{width:min(100vw,177.777vh);max-height:none;border:0;border-radius:0}.public .stage-top,.public .stage-bottom{font-size:clamp(12px,1.2vw,22px)}.public h1{font-size:6vw}.public #heroShip{bottom:9%}.reduced *{animation:none!important}.no-stars .stars{display:none}@keyframes float{50%{transform:translateY(-5px) rotate(-.4deg)}}@keyframes fall{from{transform:translateY(-40px) rotate(0)}to{transform:translateY(900px) rotate(220deg)}}@media(max-width:900px){header{padding:0 18px;height:75px}.live{display:none}main{padding:18px}.controls{flex-wrap:wrap}.secondary{flex-wrap:wrap}.stop{font-size:10px;gap:5px}.stop:after{margin-right:0}.stage-top{font-size:8px}.stage-bottom{font-size:8px}#welcome{top:15%}h1{margin:12px 0 8px}.gold-rule{margin:12px auto}.boarding{font-size:8px}.eyebrow{font-size:8px}#subtitle{font-size:14px}#stage{max-height:none}footer{gap:15px}.header-right{gap:8px}.brand{font-size:11px}}@media(max-width:600px){header .brand small{display:none}.header-right button{font-size:10px;padding:9px}#itinerary{flex-wrap:wrap}.stop{min-width:28%}.stop:after{display:none}.duration{width:100%}.duration select{width:100%}.main-controls{width:100%}.main-controls .primary{flex:1}.secondary>div{flex-wrap:wrap}.fields{grid-template-columns:1fr}footer{flex-direction:column}#welcome .eyebrow{display:none}h1{font-size:27px}#heroShip{width:50%;left:25%;bottom:7%}.boarding{font-size:7px}.gold-rule{margin:8px auto}.stage-top{top:5%}#verse{font-size:7px}.console-heading h2{font-size:20px}}

button.stop{border:1px solid transparent;background:transparent;padding:8px 5px;text-align:left;border-radius:6px}button.stop:hover{background:#d9b66f12;border-color:#d9b66f55;color:var(--ivory)}button.stop.active{border-color:#d9b66f30}
