:root{color:#f7efe5;font-synthesis:none;text-rendering:optimizelegibility;background:#08070b;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:radial-gradient(circle at 20% 10%,#ffa65742,#0000 32%),radial-gradient(circle at 80% 20%,#5b8dff33,#0000 30%),radial-gradient(circle at 50% 90%,#c159ff29,#0000 36%),linear-gradient(135deg,#08070b 0%,#14111d 45%,#08070b 100%);min-width:320px;min-height:100vh;margin:0;overflow-x:hidden}body:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px);background-size:44px 44px;position:fixed;inset:0;-webkit-mask-image:linear-gradient(#000,#0000 80%);mask-image:linear-gradient(#000,#0000 80%)}button,input,select,textarea{font:inherit}a{color:inherit}.page-shell{width:min(1180px,100% - 40px);margin:0 auto;padding:48px 0 80px}.hero{flex-direction:column;justify-content:center;min-height:82vh;display:flex}.hero-badge{color:#f7efe5c2;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffff0f;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:10px;width:fit-content;padding:10px 14px;display:flex;box-shadow:0 16px 60px #00000047}.pulse-dot{background:#ffc46b;border-radius:999px;width:9px;height:9px;animation:1.7s infinite pulse;box-shadow:0 0 #ffc46ba6}.hero-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:44px;margin-top:42px;display:grid}.hero-copy h1{letter-spacing:-.08em;max-width:760px;margin:0;font-size:clamp(3.5rem,8vw,7.4rem);line-height:.86}.hero-copy p{color:#f7efe5b8;max-width:680px;margin:28px 0 0;font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:18px;margin-top:34px;display:flex}.primary-action,button{color:#160d0b;cursor:pointer;background:linear-gradient(135deg,#ffd089,#ff8f70 48%,#b88cff);border:0;border-radius:18px;padding:15px 20px;font-weight:850;text-decoration:none;transition:transform .18s,filter .18s,opacity .18s;box-shadow:0 18px 48px #ff8f7042,inset 0 1px #ffffff8c}.primary-action:hover,button:hover{filter:brightness(1.08);transform:translateY(-2px)}button:disabled{cursor:wait;opacity:.7;transform:none}.mini-note{color:#f7efe58f;font-size:.95rem}.floating-preview{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:linear-gradient(145deg,#ffffff26,#ffffff0b),#ffffff0a;border:1px solid #ffffff29;border-radius:34px;padding:22px;position:relative;overflow:hidden;transform:rotate(1deg);box-shadow:0 28px 90px #00000080,inset 0 1px #ffffff29}.floating-preview:before{content:"";filter:blur(10px);background:#ffc46b2e;border-radius:50%;width:240px;height:240px;position:absolute;top:-80px;right:-80px}.preview-topline,.preview-card{position:relative}.preview-topline{color:#f7efe594;justify-content:space-between;margin-bottom:18px;font-size:.85rem;display:flex}.preview-card{background:#08070b6b;border:1px solid #ffffff1f;border-radius:24px;margin-top:14px;padding:20px}.preview-card.active{background:linear-gradient(135deg,#ffc46b2e,#b88cff1f),#08070b66}.time,.stop-time{color:#ffd089;font-size:.86rem;font-weight:800}.preview-card h3{margin:9px 0 8px;font-size:1.1rem}.preview-card p{color:#f7efe59e;margin:0;line-height:1.55}.planner-section{grid-template-columns:.82fr 1.18fr;align-items:start;gap:26px;display:grid}.planner-card,.result-panel{-webkit-backdrop-filter:blur(22px);backdrop-filter:blur(22px);background:linear-gradient(145deg,#ffffff1d,#ffffff0b),#ffffff09;border:1px solid #ffffff24;border-radius:34px;box-shadow:0 24px 84px #0000005c}.planner-card{padding:28px;position:sticky;top:24px}.section-heading h2,.result-panel h2{letter-spacing:-.055em;margin:8px 0 0;font-size:clamp(2rem,3vw,3.2rem)}.section-heading p,.result-panel>p{color:#f7efe5a3;line-height:1.65}.eyebrow{color:#ffd089;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:900}.planner-form{gap:16px;margin-top:26px;display:grid}label{color:#f7efe5bd;gap:8px;font-size:.92rem;font-weight:750;display:grid}input,select,textarea{color:#f7efe5;background:#08070b8c;border:1px solid #ffffff21;border-radius:18px;outline:none;width:100%;padding:14px 15px;transition:border-color .18s,box-shadow .18s,background .18s}textarea{resize:vertical}input:focus,select:focus,textarea:focus{background:#08070bb8;border-color:#ffd089bd;box-shadow:0 0 0 4px #ffd0891c}.full-width{grid-column:1/-1}.result-panel{min-height:560px;padding:28px;overflow:hidden}.empty-state,.loading-state,.error-state{text-align:center;align-content:center;place-items:center;display:grid}.empty-state p,.loading-state p,.error-state p{max-width:440px}.empty-orb,.loading-ring{border-radius:50%;width:96px;height:96px;margin-bottom:18px}.empty-orb{background:radial-gradient(circle at 35% 30%,#fff2d2,#0000 20%),linear-gradient(135deg,#ffd089,#ff8f70,#b88cff);animation:4s ease-in-out infinite float;box-shadow:0 0 80px #ff8f7066}.loading-ring{border:2px solid #ffffff1a;border-top-color:#ffd089;animation:.9s linear infinite spin}.showcase-banner{background:radial-gradient(circle at 18% 20%,#ffd08940,#0000 34%),radial-gradient(circle at 88% 16%,#b88cff3d,#0000 30%),linear-gradient(135deg,#ffffff26,#ffffff0e);border:1px solid #ffffff29;border-radius:30px;grid-template-columns:1fr auto;align-items:center;gap:24px;margin-bottom:18px;padding:30px;display:grid;position:relative;overflow:hidden;box-shadow:0 26px 90px #00000057,inset 0 1px #ffffff29}.showcase-banner:before{content:"";background:linear-gradient(115deg,#0000 35%,#ffffff29 45%,#0000 56%);animation:5s ease-in-out infinite sheen;position:absolute;inset:-40%;transform:translate(-40%)}.showcase-banner>*{z-index:1;position:relative}.showcase-banner h2{letter-spacing:-.075em;max-width:720px;margin:10px 0;font-size:clamp(2.4rem,5vw,5.4rem);line-height:.92}.showcase-banner p{color:#f7efe5b8;max-width:680px;margin:0;font-size:1.05rem;line-height:1.65}.showcase-orbit{background:radial-gradient(circle,#ffd0893d,#b88cff14 58%,#0000 62%);border:1px solid #ffffff29;border-radius:50%;place-items:center;width:138px;height:138px;display:grid}.showcase-orbit span{border:1px dashed #ffffff3d;border-radius:50%;width:108px;height:108px;animation:12s linear infinite spin;position:absolute}.showcase-orbit strong{text-align:center;color:#ffd089;max-width:84px;font-size:1.02rem}.experience-map{grid-template-columns:1fr 130px 1fr;align-items:stretch;gap:14px;margin-top:16px;display:grid}.map-card{background:linear-gradient(135deg,#ffd0891a,#b88cff14),#08070b57;border:1px solid #ffffff1c;border-radius:24px;min-height:150px;padding:20px}.map-card span{color:#f7efe580;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;font-weight:850;display:block}.map-card strong{margin-top:12px;font-size:1.15rem;line-height:1.3;display:block}.map-card p{color:#f7efe59e;margin:10px 0 0;line-height:1.5}.route-line{justify-content:center;align-items:center;gap:9px;display:flex}.route-line span{background:linear-gradient(135deg,#ffd089,#ff8f70);border-radius:50%;width:14px;height:14px;animation:1.6s ease-in-out infinite routePulse;box-shadow:0 0 24px #ff8f706b}.route-line span:nth-child(2){animation-delay:.16s}.route-line span:nth-child(3){animation-delay:.32s}@keyframes sheen{50%{transform:translate(45%)}}@keyframes routePulse{50%{opacity:.58;transform:scale(1.45)}}.plan-hero{background:radial-gradient(circle at 100% 0,#ffd08938,#0000 34%),linear-gradient(135deg,#ffffff1f,#ffffff0b);border:1px solid #ffffff21;border-radius:28px;padding:28px;position:relative}.plan-hero h2{margin-top:10px}.plan-hero p{color:#f7efe5b3;line-height:1.65}.hero-line{color:#f7efe5d1;background:#08070b59;border-left:3px solid #ffd089;border-radius:16px;margin-top:18px;padding:14px 16px;font-weight:750}.stats-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:16px;display:grid}.stats-grid div,.tips-card,.wow-card{background:#08070b5c;border:1px solid #ffffff1a;border-radius:22px;padding:18px}.stats-grid span{color:#f7efe57a;margin-bottom:8px;font-size:.78rem;display:block}.stats-grid strong{font-size:.98rem;line-height:1.4;display:block}.timeline{gap:15px;margin-top:20px;display:grid;position:relative}.stop-card{opacity:0;animation:.52s forwards reveal;animation-delay:var(--delay);background:linear-gradient(135deg,#ffffff17,#ffffff09),#08070b47;border:1px solid #ffffff1c;border-radius:24px;grid-template-columns:86px 1fr;gap:16px;padding:18px;display:grid;transform:translateY(12px)}.stop-content h3{margin:6px 0 8px;font-size:1.18rem}.stop-content p{color:#f7efe5ad;margin:0;line-height:1.6}.stop-type,.visual-cue{border-radius:999px;width:fit-content;padding:6px 10px;font-size:.72rem;font-weight:900}.stop-type{color:#160d0b;background:#ffd089}.fit-note{color:#f7efe5c7;margin-top:12px;font-size:.92rem;line-height:1.5}.visual-cue{color:#f7efe5c7;background:#ffffff14;margin-top:12px}.stop-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.stop-actions .visual-cue{margin-top:0}.map-link{color:#160d0b;background:linear-gradient(135deg,#ffd089,#ff8f70);border-radius:999px;justify-content:center;align-items:center;width:fit-content;padding:7px 11px;font-size:.72rem;font-weight:900;text-decoration:none;transition:transform .18s,filter .18s;display:inline-flex;box-shadow:0 10px 26px #ff8f702e}.map-link:hover{filter:brightness(1.08);transform:translateY(-1px)}.tips-grid{grid-template-columns:1fr 1fr;gap:14px;margin-top:16px;display:grid}.tips-card h3,.wow-card h3{margin:0 0 12px}.tips-card ul{color:#f7efe5ad;margin:0;padding-left:18px;line-height:1.65}.wow-card p{color:#f7efe5b8;margin:0;line-height:1.65}.small-muted{color:#f7efe585;font-size:.9rem}@keyframes pulse{70%{box-shadow:0 0 0 10px #ffc46b00}to{box-shadow:0 0 #ffc46b00}}@keyframes float{50%{transform:translateY(-8px)scale(1.02)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes reveal{to{opacity:1;transform:translateY(0)}}@media (width<=940px){.hero-grid,.planner-section,.tips-grid{grid-template-columns:1fr}:is(.hero-grid,.planner-section,.tips-grid) .showcase-banner,:is(.hero-grid,.planner-section,.tips-grid) .experience-map{grid-template-columns:1fr}:is(.hero-grid,.planner-section,.tips-grid) .showcase-orbit{width:112px;height:112px}:is(.hero-grid,.planner-section,.tips-grid) .route-line{min-height:52px}.hero{min-height:auto;padding:56px 0}.planner-card{position:static}}@media (width<=620px){.page-shell{width:min(100% - 24px,1180px);padding-top:28px}.hero-copy h1{font-size:clamp(3rem,16vw,4.5rem)}.floating-preview,.planner-card,.result-panel{border-radius:26px}.stats-grid,.stop-card{grid-template-columns:1fr}}
