@import "https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;600;700&family=Source+Sans+3:wght@400;500;600;700&display=swap";
:root{--color-abyss-navy:#17202e;--color-tide-card:#202a3e;--color-spectral-cyan:#6ae4ff;--color-bone-white:#fff;--color-carbon-black:#000;--color-fog-gray:#cdd0d6;--color-horizon-glow:#298acb;--color-sos-red:#ff4757;--gradient-horizon-glow:radial-gradient(circle at 20% 20%, #08218f 0%, #298acb 50%, #17202e00 70%);--gradient-yield:linear-gradient(73.6deg, #34edb3 2.11%, #00d1ff);--font-open-sans:"Open Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-source-sans:"Source Sans 3", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--text-caption:12px;--leading-caption:1.33;--tracking-caption:-.43px;--text-body-sm:14px;--leading-body-sm:1.43;--tracking-body-sm:-.5px;--text-body:16px;--leading-body:1.5;--tracking-body:-.58px;--text-body-lg:18px;--leading-body-lg:1.57;--tracking-body-lg:-.65px;--text-subheading:22px;--leading-subheading:1.36;--tracking-subheading:-.79px;--text-heading-sm:28px;--leading-heading-sm:1.2;--tracking-heading-sm:-1.01px;--text-heading:36px;--leading-heading:1.2;--tracking-heading:-1.3px;--text-heading-lg:56px;--leading-heading-lg:1.2;--tracking-heading-lg:-2.02px;--text-display:100px;--leading-display:1;--tracking-display:-3.6px;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--spacing-4:4px;--spacing-8:8px;--spacing-12:12px;--spacing-16:16px;--spacing-20:20px;--spacing-24:24px;--spacing-28:28px;--spacing-40:40px;--spacing-52:52px;--spacing-60:60px;--spacing-80:80px;--spacing-120:120px;--spacing-136:136px;--page-max-width:1200px;--section-gap:80px;--card-padding:24px;--element-gap:16px;--radius-cards:15px;--radius-links:8px;--radius-badges:80px;--radius-inputs:4px;--radius-panels:24px;--radius-buttons:80px;--transition-fast:.15s ease;--transition-base:.25s ease;--transition-slow:.4s ease;--navbar-height:72px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-open-sans);font-size:var(--text-body);line-height:var(--leading-body);letter-spacing:var(--tracking-body);font-weight:var(--font-weight-regular);color:var(--color-bone-white);background-color:var(--color-abyss-navy);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}a{color:var(--color-spectral-cyan);transition:opacity var(--transition-fast);text-decoration:none}a:hover{opacity:.85}img,video,canvas{max-width:100%;display:block}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea,select{font-family:inherit;font-size:inherit;color:inherit;border:1px solid var(--color-carbon-black);background:0 0}ul,ol{list-style:none}.page-container{max-width:var(--page-max-width);padding:0 var(--spacing-24);margin:0 auto}.section{padding:var(--section-gap) 0}.section+.section{border-top:1px solid #0000004d}.grid-2{gap:var(--element-gap);grid-template-columns:repeat(2,1fr);display:grid}.grid-3{gap:var(--element-gap);grid-template-columns:repeat(3,1fr);display:grid}.grid-4{gap:var(--element-gap);grid-template-columns:repeat(4,1fr);display:grid}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.text-center{text-align:center}.text-display{font-size:var(--text-display);line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-weight:var(--font-weight-bold)}.text-heading-lg{font-size:var(--text-heading-lg);line-height:var(--leading-heading-lg);letter-spacing:var(--tracking-heading-lg);font-weight:var(--font-weight-bold)}.text-heading{font-size:var(--text-heading);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);font-weight:var(--font-weight-bold)}.text-heading-sm{font-size:var(--text-heading-sm);line-height:var(--leading-heading-sm);letter-spacing:var(--tracking-heading-sm);font-weight:var(--font-weight-bold)}.text-subheading{font-size:var(--text-subheading);line-height:var(--leading-subheading);letter-spacing:var(--tracking-subheading);font-weight:var(--font-weight-bold)}.text-body-lg{font-size:var(--text-body-lg);line-height:var(--leading-body-lg);letter-spacing:var(--tracking-body-lg)}.text-body-sm{font-size:var(--text-body-sm);line-height:var(--leading-body-sm);letter-spacing:var(--tracking-body-sm)}.text-caption{font-size:var(--text-caption);line-height:var(--leading-caption);letter-spacing:var(--tracking-caption)}.text-muted{color:var(--color-fog-gray)}.text-cyan{color:var(--color-spectral-cyan)}.font-source{font-family:var(--font-source-sans)}.btn-primary{justify-content:center;align-items:center;gap:var(--spacing-8);padding:var(--spacing-12) var(--spacing-24);background-color:var(--color-bone-white);color:var(--color-carbon-black);font-family:var(--font-open-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-semibold);letter-spacing:var(--tracking-body-sm);border-radius:var(--radius-buttons);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;border:none;text-decoration:none;display:inline-flex}.btn-primary:hover{opacity:.9;transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-ghost{justify-content:center;align-items:center;gap:var(--spacing-8);padding:var(--spacing-12) var(--spacing-20);color:var(--color-spectral-cyan);font-family:var(--font-open-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-regular);letter-spacing:var(--tracking-body-sm);border:1px solid var(--color-spectral-cyan);border-radius:var(--radius-links);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;background:0 0;text-decoration:none;display:inline-flex}.btn-ghost:hover{background:#6ae4ff14;transform:translateY(-1px)}.btn-ghost:active{transform:translateY(0)}.btn-ghost .arrow{transition:transform var(--transition-fast)}.btn-ghost:hover .arrow{transform:translate(3px)}.btn-sos{justify-content:center;align-items:center;gap:var(--spacing-8);padding:var(--spacing-16) var(--spacing-28);background-color:var(--color-sos-red);color:var(--color-bone-white);font-family:var(--font-open-sans);font-size:var(--text-body);font-weight:var(--font-weight-bold);border-radius:var(--radius-buttons);cursor:pointer;transition:all var(--transition-base);white-space:nowrap;border:none;display:inline-flex}.btn-sos:hover{background-color:#ff6b7a;transform:translateY(-1px)}.card{background-color:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-radius:var(--radius-cards);padding:var(--card-padding);transition:border-color var(--transition-base)}.card:hover{border-color:#6ae4ff26}.card-featured{border-color:#6ae4ff40}.badge{align-items:center;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-12);font-family:var(--font-source-sans);font-size:var(--text-caption);font-weight:var(--font-weight-medium);border-radius:var(--radius-badges);white-space:nowrap;display:inline-flex}.badge-cyan{color:var(--color-spectral-cyan);border:1px solid var(--color-spectral-cyan);background:0 0}.badge-dark{background:var(--color-tide-card);color:var(--color-bone-white);border:1px solid var(--color-carbon-black)}.badge-gradient{background:var(--gradient-yield);color:var(--color-carbon-black);font-weight:var(--font-weight-semibold);border:none}.tab-pills{align-items:center;gap:var(--spacing-8);flex-wrap:wrap;display:flex}.tab-pill{padding:var(--spacing-8) var(--spacing-20);font-family:var(--font-open-sans);font-size:var(--text-body-sm);font-weight:var(--font-weight-regular);color:var(--color-fog-gray);border-radius:var(--radius-badges);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:none}.tab-pill:hover{color:var(--color-bone-white);background:#ffffff0d}.tab-pill.active{background:var(--color-bone-white);color:var(--color-carbon-black);font-weight:var(--font-weight-semibold)}.stat-block{text-align:center;padding:var(--spacing-24) var(--spacing-16)}.stat-block__number{font-size:var(--text-heading-lg);line-height:var(--leading-heading-lg);letter-spacing:var(--tracking-heading-lg);font-weight:var(--font-weight-bold);color:var(--color-bone-white)}.stat-block__label{font-size:var(--text-body-sm);color:var(--color-fog-gray);margin-top:var(--spacing-8)}.navbar{z-index:1000;height:var(--navbar-height);transition:background-color var(--transition-base);align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.navbar.scrolled{-webkit-backdrop-filter:blur(12px);background-color:#17202ef2;border-bottom:1px solid #0006}.navbar__inner{max-width:var(--page-max-width);padding:0 var(--spacing-24);justify-content:space-between;align-items:center;width:100%;margin:0 auto;display:flex}.navbar__logo{align-items:center;gap:var(--spacing-8);font-size:var(--text-body-lg);font-weight:var(--font-weight-bold);color:var(--color-bone-white);white-space:nowrap;text-decoration:none;display:flex}.navbar__logo-icon{width:32px;height:32px;color:var(--color-spectral-cyan);background:#6ae4ff1f;border:1px solid #6ae4ff4d;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.navbar__links{align-items:center;gap:var(--spacing-28);display:flex}.navbar__link{font-size:var(--text-body-sm);font-weight:var(--font-weight-regular);color:var(--color-bone-white);transition:color var(--transition-fast);white-space:nowrap;text-decoration:none;position:relative}.navbar__link:hover,.navbar__link.active{color:var(--color-spectral-cyan)}.navbar__link.active:after{content:"";background:var(--color-spectral-cyan);border-radius:1px;height:2px;position:absolute;bottom:-4px;left:0;right:0}.navbar__actions{align-items:center;gap:var(--spacing-16);display:flex}.grid-2>*,.grid-3>*,.grid-4>*,.master-detail__list>*{min-width:0}.grid-span-2{grid-column:span 2;min-width:0}.detail-card{padding:var(--spacing-40) var(--spacing-40)}.master-detail__list{gap:var(--spacing-12);flex-direction:column;display:flex}.btn-wrap{white-space:normal;text-align:center;line-height:1.4}.chat-call-stage{justify-content:center;align-items:center;gap:var(--spacing-28);padding:var(--spacing-24) var(--spacing-28);background:var(--color-tide-card);border-bottom:1px solid var(--color-carbon-black);flex-wrap:wrap;display:flex}.chat-call-stage__info{flex:260px;min-width:0;max-width:460px}.navbar__sos{padding:6px 14px;font-size:12px;text-decoration:none}.lang-toggle{background:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-radius:var(--radius-badges);align-items:center;display:flex;overflow:hidden}.lang-toggle__btn{padding:var(--spacing-4) var(--spacing-12);font-size:var(--text-caption);font-weight:var(--font-weight-semibold);color:var(--color-fog-gray);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}.lang-toggle__btn.active{background:var(--color-spectral-cyan);color:var(--color-carbon-black)}.navbar__hamburger{cursor:pointer;padding:var(--spacing-8);flex-direction:column;gap:5px;display:none}.navbar__hamburger span{background:var(--color-bone-white);width:22px;height:2px;transition:all var(--transition-base);border-radius:1px;display:block}.navbar__hamburger.open span:first-child{transform:rotate(45deg)translateY(5px)translate(5px)}.navbar__hamburger.open span:nth-child(2){opacity:0}.navbar__hamburger.open span:nth-child(3){transform:rotate(-45deg)translateY(-5px)translate(5px)}.mobile-nav{top:var(--navbar-height);-webkit-backdrop-filter:blur(20px);z-index:999;padding:var(--spacing-40) var(--spacing-24);background:#17202efa;display:none;position:fixed;bottom:0;left:0;right:0}.mobile-nav.open{gap:var(--spacing-24);flex-direction:column;animation:.3s slideDown;display:flex}.mobile-nav__link{font-size:var(--text-heading-sm);font-weight:var(--font-weight-bold);color:var(--color-bone-white);padding:var(--spacing-12) 0;transition:color var(--transition-fast);border-bottom:1px solid #0000004d;text-decoration:none}.mobile-nav__link:hover,.mobile-nav__link.active{color:var(--color-spectral-cyan)}.hero{text-align:center;min-height:100vh;padding:calc(var(--navbar-height) + var(--spacing-60)) var(--spacing-24) var(--spacing-80);flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero:before{content:"";background:var(--gradient-horizon-glow);pointer-events:none;z-index:0;width:80%;height:80%;position:absolute;top:-20%;left:-20%}.hero__content{z-index:1;max-width:900px;position:relative}.hero__badge{margin-bottom:var(--spacing-24)}.hero__title{font-size:var(--text-display);line-height:var(--leading-display);letter-spacing:var(--tracking-display);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-24)}.hero__title .highlight{color:var(--color-spectral-cyan)}.hero__subtitle{font-size:var(--text-body-lg);line-height:var(--leading-body-lg);color:var(--color-fog-gray);max-width:600px;margin:0 auto var(--spacing-40)}.hero__ctas{justify-content:center;align-items:center;gap:var(--spacing-16);flex-wrap:wrap;display:flex}.hero__cards{z-index:1;margin-top:var(--spacing-80);width:100%;max-width:var(--page-max-width);padding:0 var(--spacing-24);position:relative}.feature-card{background-color:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-radius:var(--radius-cards);padding:var(--spacing-28) var(--card-padding);gap:var(--spacing-16);transition:all var(--transition-base);flex-direction:column;display:flex}.feature-card:hover{border-color:#6ae4ff33;transform:translateY(-2px)}.feature-card__icon{width:48px;height:48px;color:var(--color-spectral-cyan);background:#6ae4ff14;border:1px solid #6ae4ff33;border-radius:12px;justify-content:center;align-items:center;font-size:24px;display:flex}.feature-card__title{font-size:var(--text-subheading);line-height:var(--leading-subheading);letter-spacing:var(--tracking-subheading);font-weight:var(--font-weight-bold);color:var(--color-bone-white)}.feature-card__desc{font-size:var(--text-body-sm);color:var(--color-fog-gray);line-height:1.6}.feature-card__link{align-items:center;gap:var(--spacing-4);font-size:var(--text-body-sm);color:var(--color-spectral-cyan);font-weight:var(--font-weight-semibold);margin-top:auto;text-decoration:none;display:inline-flex}.feature-card__link:hover .arrow{transform:translate(3px)}.feature-card__link .arrow{transition:transform var(--transition-fast)}.steps-grid{gap:var(--spacing-24);counter-reset:step-counter;grid-template-columns:repeat(4,1fr);display:grid}.step-item{text-align:center;padding:var(--spacing-24);counter-increment:step-counter;position:relative}.step-item__number{border:2px solid var(--color-spectral-cyan);width:48px;height:48px;margin:0 auto var(--spacing-16);font-size:var(--text-body-lg);font-weight:var(--font-weight-bold);color:var(--color-spectral-cyan);border-radius:50%;justify-content:center;align-items:center;display:flex}.step-item__title{font-size:var(--text-body);font-weight:var(--font-weight-semibold);color:var(--color-bone-white);margin-bottom:var(--spacing-8)}.step-item__desc{font-size:var(--text-body-sm);color:var(--color-fog-gray);line-height:1.5}.step-item:not(:last-child):after{content:"";background:linear-gradient(90deg, var(--color-spectral-cyan), transparent);opacity:.3;width:calc(100% - 48px);height:2px;position:absolute;top:47px;right:-12px;transform:translate(50%)}.chat-page{height:100vh;padding-top:var(--navbar-height);background:var(--color-abyss-navy);flex-direction:column;display:flex}.chat-header{align-items:center;gap:var(--spacing-12);padding:var(--spacing-16) var(--spacing-24);border-bottom:1px solid var(--color-carbon-black);background:var(--color-tide-card);display:flex}.chat-header__avatar{background:var(--gradient-yield);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.chat-header__info{flex:1}.chat-header__name{font-size:var(--text-body);font-weight:var(--font-weight-semibold)}.chat-header__status{font-size:var(--text-caption);color:var(--color-fog-gray);align-items:center;gap:var(--spacing-4);display:flex}.chat-header__status .dot{background:#34ed7b;border-radius:50%;width:6px;height:6px}.chat-messages{padding:var(--spacing-24);gap:var(--spacing-16);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-message{gap:var(--spacing-12);max-width:75%;animation:.3s fadeInUp;display:flex}.chat-message--user{flex-direction:row-reverse;align-self:flex-end}.chat-message__avatar{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;display:flex}.chat-message--ai .chat-message__avatar{background:var(--gradient-yield)}.chat-message--user .chat-message__avatar{background:var(--color-tide-card);border:1px solid var(--color-carbon-black)}.chat-message__bubble{padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-cards);font-size:var(--text-body-sm);line-height:1.6}.chat-message--ai .chat-message__bubble{background:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-top-left-radius:var(--spacing-4)}.chat-message--user .chat-message__bubble{border-top-right-radius:var(--spacing-4);background:#6ae4ff1a;border:1px solid #6ae4ff33}.chat-message__time{color:var(--color-fog-gray);margin-top:var(--spacing-4);opacity:.7;font-size:11px}.typing-indicator{padding:var(--spacing-12) var(--spacing-16);gap:4px;display:flex}.typing-indicator span{background:var(--color-fog-gray);border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite typingBounce}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}.chat-input-bar{align-items:center;gap:var(--spacing-12);padding:var(--spacing-16) var(--spacing-24);border-top:1px solid var(--color-carbon-black);background:var(--color-tide-card);display:flex}.chat-input{padding:var(--spacing-12) var(--spacing-16);background:var(--color-abyss-navy);border:1px solid var(--color-carbon-black);border-radius:var(--radius-badges);color:var(--color-bone-white);font-size:var(--text-body-sm);transition:border-color var(--transition-fast);outline:none;flex:1}.chat-input:focus{border-color:var(--color-spectral-cyan)}.chat-input::placeholder{color:var(--color-fog-gray);opacity:.6}.chat-send-btn{background:var(--color-spectral-cyan);width:44px;height:44px;color:var(--color-carbon-black);cursor:pointer;transition:all var(--transition-fast);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-send-btn:hover{opacity:.85;transform:scale(1.05)}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed;transform:none}.chat-mode-toggle{align-items:center;gap:var(--spacing-4);background:var(--color-abyss-navy);border:1px solid var(--color-carbon-black);border-radius:var(--radius-badges);padding:var(--spacing-4);display:flex}.chat-mode-btn{padding:var(--spacing-4) var(--spacing-12);font-size:var(--text-caption);font-weight:var(--font-weight-semibold);color:var(--color-fog-gray);border-radius:var(--radius-badges);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:none}.chat-mode-btn.active{background:var(--color-spectral-cyan);color:var(--color-carbon-black)}.map-page{height:100vh;padding-top:var(--navbar-height);display:flex}.map-sidebar{background:var(--color-abyss-navy);border-right:1px solid var(--color-carbon-black);flex-direction:column;width:380px;display:flex;overflow:hidden}.map-sidebar__header{padding:var(--spacing-20) var(--spacing-24);border-bottom:1px solid var(--color-carbon-black)}.map-sidebar__title{font-size:var(--text-subheading);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-12)}.map-sidebar__search{width:100%;padding:var(--spacing-12) var(--spacing-16);background:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-radius:var(--radius-badges);color:var(--color-bone-white);font-size:var(--text-body-sm);transition:border-color var(--transition-fast);outline:none}.map-sidebar__search:focus{border-color:var(--color-spectral-cyan)}.map-sidebar__search::placeholder{color:var(--color-fog-gray);opacity:.6}.map-sidebar__filters{padding:var(--spacing-12) var(--spacing-24);border-bottom:1px solid var(--color-carbon-black)}.map-sidebar__results{padding:var(--spacing-12);flex:1;overflow-y:auto}.map-container{background:var(--color-tide-card);flex:1;position:relative}.camp-post-btn{width:100%;margin-top:var(--spacing-12);text-align:center;font-size:var(--text-body-sm);text-decoration:none;display:block}.camp-lang-toggle{border-radius:var(--radius-badges);color:var(--color-spectral-cyan);font-size:var(--text-caption);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-fast);background:0 0;border:1px solid #6ae4ff59;padding:2px 8px}.camp-lang-toggle:hover{background:#6ae4ff1f}.camp-filter-label{font-size:var(--text-caption);color:var(--color-fog-gray);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-8);justify-content:space-between;align-items:center;display:flex}.camp-filter-clear{color:var(--color-spectral-cyan);font-size:var(--text-caption);cursor:pointer;text-transform:none;letter-spacing:0;background:0 0;border:none}.specialty-chips{gap:var(--spacing-4);flex-wrap:wrap;display:flex}.specialty-chip{background:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-radius:var(--radius-badges);color:var(--color-fog-gray);font-family:var(--font-open-sans);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;align-items:center;gap:4px;padding:4px 8px;font-size:11px;display:inline-flex}.specialty-chip:hover{color:var(--color-bone-white);border-color:#6ae4ff59}.specialty-chip.active{font-weight:var(--font-weight-semibold);background:#6ae4ff14}.camp-card{background-color:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-radius:var(--radius-cards);padding:var(--spacing-16);margin-bottom:var(--spacing-8);cursor:pointer;transition:all var(--transition-base)}.camp-card:hover{border-color:#6ae4ff33}.camp-card__top{justify-content:space-between;align-items:center;gap:var(--spacing-8);margin-bottom:var(--spacing-8);display:flex}.camp-status{border-radius:var(--radius-badges);font-size:10px;font-weight:var(--font-weight-bold);letter-spacing:.4px;text-transform:uppercase;align-items:center;gap:4px;padding:2px 8px;display:inline-flex}.camp-status--ongoing{color:#34ed7b;background:#34ed7b24}.camp-status--upcoming{color:var(--color-spectral-cyan);background:#6ae4ff24}.camp-status--ended{color:#8fa0b5;background:#cdd0d61a}.camp-card__countdown{color:var(--color-fog-gray);white-space:nowrap;font-size:11px}.camp-card__name{font-size:var(--text-body);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-4);line-height:1.3}.camp-card__organizer,.camp-card__when{font-size:var(--text-caption);color:var(--color-fog-gray);margin-bottom:var(--spacing-4)}.camp-card__when{color:var(--color-spectral-cyan);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-8)}.camp-card__chips{margin-bottom:var(--spacing-8);flex-wrap:wrap;gap:4px;display:flex}.camp-card__chip{border-radius:var(--radius-badges);font-size:10px;font-weight:var(--font-weight-semibold);white-space:nowrap;border:1px solid;padding:1px 6px}.camp-card__meta{align-items:center;gap:var(--spacing-8);font-size:var(--text-caption);color:var(--color-fog-gray);flex-wrap:wrap;display:flex}.camp-card__distance{color:var(--color-spectral-cyan);font-weight:var(--font-weight-semibold)}.camp-card__free{color:#34ed7b;font-weight:var(--font-weight-semibold)}.camp-card__fee{color:gold;font-weight:var(--font-weight-semibold)}.camp-card__call{margin-top:var(--spacing-8);font-size:var(--text-caption);color:var(--color-spectral-cyan);text-decoration:none;display:inline-block}.camp-card__call:hover{text-decoration:underline}.camp-empty{padding:var(--spacing-24);text-align:center;font-size:var(--text-body-sm);color:var(--color-fog-gray)}.camp-empty--error{color:var(--color-sos-red)}.map-layer-toggle{z-index:500;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-badges);background:#17202eeb;border:1px solid #6ae4ff4d;padding:6px 12px;position:absolute;top:16px;right:60px}.map-layer-toggle label{color:var(--color-fog-gray);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:flex}.map-layer-toggle input{accent-color:var(--color-spectral-cyan);cursor:pointer}.camp-form-page{padding-top:calc(var(--navbar-height) + var(--spacing-40));padding-bottom:var(--spacing-40);min-height:100vh}.camp-form__back{margin-bottom:var(--spacing-16);font-size:var(--text-body-sm);color:var(--color-spectral-cyan);text-decoration:none;display:inline-block}.camp-form__title{font-size:var(--text-heading);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-8)}.camp-form__subtitle{font-size:var(--text-body-sm);color:var(--color-fog-gray);max-width:640px;margin-bottom:var(--spacing-24)}.camp-form__section{margin-bottom:var(--spacing-20)}.camp-form__legend{font-size:var(--text-body-lg);font-weight:var(--font-weight-semibold);color:var(--color-spectral-cyan);margin-bottom:var(--spacing-16)}.camp-form__grid{gap:var(--spacing-16);margin-bottom:var(--spacing-16);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.camp-form__field{gap:var(--spacing-4);margin-bottom:var(--spacing-12);flex-direction:column;display:flex}.camp-form__field--narrow{max-width:280px}.camp-form__field label{font-size:var(--text-caption);font-weight:var(--font-weight-semibold);color:var(--color-fog-gray)}.camp-form__bn{font-weight:var(--font-weight-regular);opacity:.7}.camp-form__req{color:var(--color-sos-red);margin-left:3px}.camp-form__field input,.camp-form__field textarea{width:100%;padding:var(--spacing-12) var(--spacing-16);background:var(--color-abyss-navy);border:1px solid var(--color-carbon-black);border-radius:var(--radius-badges);color:var(--color-bone-white);font-family:var(--font-open-sans);font-size:var(--text-body-sm);transition:border-color var(--transition-fast);resize:vertical;outline:none}.camp-form__field input:focus,.camp-form__field textarea:focus{border-color:var(--color-spectral-cyan)}.camp-form__field input.has-error{border-color:var(--color-sos-red)}.camp-form__field input::placeholder,.camp-form__field textarea::placeholder{color:var(--color-fog-gray);opacity:.45}.camp-form__error{color:var(--color-sos-red);font-size:11px}.camp-form__hint{font-size:var(--text-caption);color:var(--color-fog-gray);opacity:.8}.camp-form__inline{align-items:flex-end;gap:var(--spacing-24);flex-wrap:wrap;display:flex}.camp-form__checkbox{font-size:var(--text-body-sm);color:var(--color-fog-gray);cursor:pointer;margin-bottom:var(--spacing-12);align-items:center;gap:6px;display:flex}.camp-form__checkbox input{accent-color:var(--color-spectral-cyan);cursor:pointer}.camp-form__banner{border-radius:var(--radius-badges);color:var(--color-sos-red);font-size:var(--text-body-sm);padding:var(--spacing-12) var(--spacing-16);margin-bottom:var(--spacing-16);background:#ff47571f;border:1px solid #ff475766}.camp-picker{border-radius:var(--radius-cards);border:1px solid var(--color-carbon-black);background:var(--color-abyss-navy);width:100%;height:320px}.camp-picker__readout{margin-top:var(--spacing-8);font-size:var(--text-caption);color:var(--color-fog-gray)}.symptoms-finder-page{padding-top:calc(var(--navbar-height) + var(--spacing-24));min-height:100vh}.prescription-page{padding-top:calc(var(--navbar-height) + var(--spacing-40));min-height:100vh}.upload-zone{border-radius:var(--radius-panels);padding:var(--spacing-60);text-align:center;cursor:pointer;transition:all var(--transition-base);background:#6ae4ff05;border:2px dashed #6ae4ff4d}.upload-zone:hover,.upload-zone.dragover{border-color:var(--color-spectral-cyan);background:#6ae4ff0d}.upload-zone__icon{margin-bottom:var(--spacing-16);color:var(--color-spectral-cyan);font-size:48px}.upload-zone__title{font-size:var(--text-body-lg);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-8)}.upload-zone__hint{font-size:var(--text-body-sm);color:var(--color-fog-gray)}.rx-results{gap:var(--spacing-16);margin-top:var(--spacing-24);display:grid}.rx-medicine-card{background:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-radius:var(--radius-cards);padding:var(--card-padding)}.rx-medicine-card__name{font-size:var(--text-body-lg);font-weight:var(--font-weight-bold);color:var(--color-bone-white);margin-bottom:var(--spacing-4)}.rx-medicine-card__dosage{font-size:var(--text-body-sm);color:var(--color-spectral-cyan);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-12)}.rx-detail-row{align-items:flex-start;gap:var(--spacing-12);padding:var(--spacing-8) 0;border-top:1px solid #0000004d;display:flex}.rx-detail-row__label{font-size:var(--text-caption);color:var(--color-fog-gray);font-weight:var(--font-weight-semibold);text-transform:uppercase;flex-shrink:0;min-width:80px}.rx-detail-row__value{font-size:var(--text-body-sm);color:var(--color-bone-white);line-height:1.5}.sos-fab{bottom:var(--spacing-28);right:var(--spacing-28);z-index:900;background:var(--color-sos-red);width:64px;height:64px;color:var(--color-bone-white);font-size:14px;font-weight:var(--font-weight-bold);cursor:pointer;transition:transform var(--transition-fast);border:none;border-radius:50%;justify-content:center;align-items:center;animation:2s ease-in-out infinite sosPulse;display:flex;position:fixed;box-shadow:0 4px 24px #ff475766}.sos-fab:hover{transform:scale(1.1)}.sos-modal-overlay{z-index:1100;padding:var(--spacing-24);background:#000000b3;justify-content:center;align-items:center;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.sos-modal{background:var(--color-tide-card);border:1px solid var(--color-carbon-black);border-radius:var(--radius-panels);padding:var(--spacing-40);text-align:center;width:100%;max-width:480px;animation:.3s scaleIn}.sos-modal__icon{margin-bottom:var(--spacing-16);font-size:48px}.sos-modal__title{font-size:var(--text-heading-sm);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-8)}.sos-modal__desc{font-size:var(--text-body-sm);color:var(--color-fog-gray);margin-bottom:var(--spacing-24);line-height:1.6}.sos-modal__location{background:var(--color-abyss-navy);border:1px solid var(--color-carbon-black);border-radius:var(--radius-cards);padding:var(--spacing-16);margin-bottom:var(--spacing-24);font-family:var(--font-source-sans);font-size:var(--text-body-sm);color:var(--color-fog-gray)}.sos-modal__actions{gap:var(--spacing-12);justify-content:center;display:flex}.footer{border-top:1px solid var(--color-carbon-black);padding:var(--spacing-40) 0;background:var(--color-abyss-navy)}.footer__inner{max-width:var(--page-max-width);padding:0 var(--spacing-24);justify-content:space-between;align-items:center;gap:var(--spacing-16);flex-wrap:wrap;margin:0 auto;display:flex}.footer__text{font-size:var(--text-body-sm);color:var(--color-fog-gray)}.footer__links{gap:var(--spacing-20);display:flex}.footer__link{font-size:var(--text-body-sm);color:var(--color-fog-gray);transition:color var(--transition-fast);text-decoration:none}.footer__link:hover{color:var(--color-spectral-cyan)}.footer__inner--columns{gap:var(--spacing-40);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.footer__brand{max-width:360px}.footer__logo{align-items:center;gap:var(--spacing-8);font-size:var(--text-body-lg);font-weight:var(--font-weight-bold);color:var(--color-bone-white);margin-bottom:var(--spacing-12);display:flex}.footer__heading{font-family:var(--font-source-sans);font-size:12px;font-weight:var(--font-weight-semibold);letter-spacing:.08em;text-transform:uppercase;color:var(--color-bone-white);margin-bottom:var(--spacing-12)}.footer__list{gap:var(--spacing-8);flex-direction:column;display:flex}.footer__bottom{max-width:var(--page-max-width);margin:var(--spacing-40) auto 0;padding:var(--spacing-20) var(--spacing-24) 0;border-top:1px solid #ffffff14}.map-placeholder{background:var(--color-tide-card);justify-content:center;align-items:center;gap:var(--spacing-16);width:100%;height:100%;color:var(--color-fog-gray);flex-direction:column;display:flex}.map-placeholder__icon{color:var(--color-spectral-cyan);opacity:.5;font-size:64px}.map-placeholder__text{font-size:var(--text-body);text-align:center;max-width:300px}.map-placeholder__coords{font-family:var(--font-source-sans);font-size:var(--text-caption);color:var(--color-spectral-cyan);background:var(--color-abyss-navy);padding:var(--spacing-8) var(--spacing-16);border-radius:var(--radius-badges);border:1px solid var(--color-carbon-black)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes typingBounce{0%,80%,to{opacity:.5;transform:scale(0)}40%{opacity:1;transform:scale(1)}}@keyframes sosPulse{0%{box-shadow:0 4px 24px #ff475766}50%{box-shadow:0 4px 36px #ff4757a6}to{box-shadow:0 4px 24px #ff475766}}@keyframes spin{to{transform:rotate(360deg)}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--color-abyss-navy)}::-webkit-scrollbar-thumb{background:var(--color-tide-card);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-fog-gray)}@media (max-width:1024px){.hero__title{font-size:72px}.navbar__links{display:none}.navbar__hamburger{display:flex}.grid-3,.grid-4,.steps-grid{grid-template-columns:repeat(2,1fr)}.step-item:not(:last-child):after{display:none}.chat-header{gap:var(--spacing-8);padding:var(--spacing-12) var(--spacing-16);flex-wrap:wrap}.chat-header__info{flex:160px;min-width:0}.chat-header__name,.chat-header__status{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chat-header__status{display:block}.chat-mode-toggle{margin-left:auto}.master-detail{grid-template-columns:1fr}.master-detail__list{grid-template-columns:repeat(2,1fr);display:grid}.master-detail__list>.text-caption{grid-column:1/-1}}@media (max-width:768px){:root{--section-gap:60px;--navbar-height:64px}.hero__title{letter-spacing:-1.7px;font-size:48px}.hero__subtitle{font-size:var(--text-body)}.grid-2,.grid-3,.grid-4,.steps-grid{grid-template-columns:1fr}.stat-block__number{font-size:var(--text-heading)}.navbar__links{display:none}.navbar__hamburger{display:flex}.map-page{flex-direction:column}.map-sidebar{width:100%;max-height:50vh}.map-container{min-height:55vh}.camp-form__grid{grid-template-columns:1fr}.map-layer-toggle{top:60px;right:16px}.camp-picker{height:260px}.navbar__inner{padding:0 var(--spacing-16);gap:var(--spacing-8)}.navbar__logo{font-size:var(--text-body)}.navbar__actions{gap:var(--spacing-8)}.lang-toggle__btn{padding:var(--spacing-4) var(--spacing-8)}.text-heading-lg{font-size:var(--text-heading-sm);letter-spacing:var(--tracking-heading-sm);line-height:1.2}.text-heading{font-size:var(--text-subheading);letter-spacing:var(--tracking-subheading)}.prescription-page{padding-top:calc(var(--navbar-height) + var(--spacing-24))}.grid-span-2{grid-column:auto}.master-detail__list{grid-template-columns:1fr}.detail-card{padding:var(--spacing-20)}.grid-4--stats{gap:var(--spacing-12);grid-template-columns:repeat(2,1fr)}.chat-page{height:100dvh}.chat-call-stage{padding:var(--spacing-16);gap:var(--spacing-16)}.chat-messages{padding:var(--spacing-16)}.chat-message{max-width:90%}.chat-input-bar{gap:var(--spacing-8);padding:var(--spacing-12) var(--spacing-16);flex-wrap:wrap}.chat-input{flex:200px;min-width:0}.sos-fab{width:52px;height:52px;bottom:var(--spacing-16);right:var(--spacing-16);font-size:12px}.chat-page~.sos-fab{bottom:140px}.footer__inner{text-align:center;flex-direction:column}.footer__inner--columns{text-align:left;gap:var(--spacing-28);grid-template-columns:1fr}}@media (max-width:480px){.hero__title{letter-spacing:-1.3px;font-size:36px}.hero__ctas{flex-direction:column;width:100%}.hero__ctas .btn-primary,.hero__ctas .btn-ghost{justify-content:center;width:100%}.sos-modal{padding:var(--spacing-24)}.navbar__sos{display:none}.navbar__logo{font-size:var(--text-body-sm)}.page-container{padding:0 var(--spacing-16)}.card{padding:var(--spacing-16)}.text-heading-lg{letter-spacing:-.6px;font-size:24px}.btn-primary,.btn-ghost{white-space:normal;text-align:center}}@media (max-width:1180px){.navbar__links{gap:var(--spacing-16)}}@keyframes pulseRadar{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(2.2)}}.leaflet-popup-content-wrapper{background:#fff!important;border-radius:12px!important;box-shadow:0 8px 24px #0009!important}.leaflet-popup-tip{background:#fff!important}.leaflet-container{background:var(--color-abyss-navy)!important;font-family:inherit!important}.osm-dark-tiles .leaflet-tile{filter:brightness(.6)invert()contrast(3)hue-rotate(200deg)saturate(.3)brightness(.7)}.osm-standard-tiles .leaflet-tile{filter:none}.sc-counter{align-items:center;gap:var(--spacing-8);padding:var(--spacing-8) var(--spacing-16);border-radius:var(--radius-badges);border:1px solid var(--color-spectral-cyan);color:var(--color-spectral-cyan);font-size:var(--text-body-sm);font-weight:var(--font-weight-semibold);background:#6ae4ff1f;display:inline-flex}.sc-counter--empty{background:var(--color-abyss-navy);border-color:var(--color-carbon-black);color:var(--color-fog-gray)}.sc-group{border:1px solid var(--color-carbon-black);border-radius:var(--radius-cards);background:var(--color-abyss-navy);overflow:hidden}.sc-group+.sc-group{margin-top:var(--spacing-12)}.sc-group__header{align-items:center;gap:var(--spacing-12);width:100%;min-height:56px;padding:var(--spacing-12) var(--spacing-16);cursor:pointer;text-align:left;color:var(--color-bone-white);transition:background-color var(--transition-fast);background:0 0;border:none;font-family:inherit;display:flex}.sc-group__header:hover{background:#6ae4ff0f}.sc-group__emoji{flex-shrink:0;font-size:24px;line-height:1}.sc-group__titles{flex:1;min-width:0}.sc-group__title-bn{font-size:16px;font-weight:var(--font-weight-bold);line-height:1.3;display:block}.sc-group__title-en{color:var(--color-fog-gray);font-size:11px;line-height:1.3;display:block}.sc-group__count{min-width:24px;height:24px;padding:0 var(--spacing-8);border-radius:var(--radius-badges);background:var(--color-spectral-cyan);color:var(--color-carbon-black);font-size:12px;font-weight:var(--font-weight-bold);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sc-group__caret{color:var(--color-spectral-cyan);transition:transform var(--transition-fast);flex-shrink:0;font-size:12px}.sc-group__caret--open{transform:rotate(180deg)}.sc-group__body{gap:var(--spacing-8);padding:0 var(--spacing-12) var(--spacing-16);flex-wrap:wrap;display:flex}.sc-chip{min-width:140px;min-height:62px;padding:var(--spacing-8) var(--spacing-12);border-radius:var(--radius-cards);background-color:var(--color-tide-card);cursor:pointer;text-align:left;color:var(--color-bone-white);align-items:center;gap:var(--spacing-8);transition:background-color var(--transition-fast), border-color var(--transition-fast);border:2px solid #0000;flex:45%;font-family:inherit;display:flex;position:relative}.sc-chip__emoji{flex-shrink:0;font-size:22px;line-height:1}.sc-chip__labels{min-width:0}.sc-chip__bn{font-size:14px;font-weight:var(--font-weight-semibold);line-height:1.3;display:block}.sc-chip__en{color:var(--color-fog-gray);font-size:11px;line-height:1.3;display:block}.sc-chip--active{border-color:var(--color-spectral-cyan);background-color:#6ae4ff1f}.sc-chip__check{background:var(--color-spectral-cyan);width:22px;height:22px;color:var(--color-carbon-black);font-size:13px;font-weight:var(--font-weight-bold);opacity:0;transition:opacity var(--transition-fast);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:-7px;right:-7px}.sc-chip--active .sc-chip__check{opacity:1}.sc-context-row{align-items:center;gap:var(--spacing-12);flex-wrap:wrap;display:flex}.sc-context-row+.sc-context-row{margin-top:var(--spacing-16)}.sc-context-row__label{font-size:14px;font-weight:var(--font-weight-semibold);color:var(--color-bone-white);flex-shrink:0}.sc-toggle{min-height:48px;padding:var(--spacing-8) var(--spacing-20);border-radius:var(--radius-buttons);background-color:var(--color-abyss-navy);color:var(--color-fog-gray);font-family:inherit;font-size:14px;font-weight:var(--font-weight-semibold);cursor:pointer;transition:background-color var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast);border:2px solid #0000}.sc-toggle--active{border-color:var(--color-spectral-cyan);color:var(--color-spectral-cyan);background-color:#6ae4ff1f}.sc-cta{width:100%;min-height:56px;padding:var(--spacing-16) var(--spacing-24);border-radius:var(--radius-buttons);background:var(--color-spectral-cyan);color:var(--color-carbon-black);font-family:inherit;font-size:17px;font-weight:var(--font-weight-bold);cursor:pointer;transition:opacity var(--transition-fast);border:none}.sc-cta:hover{opacity:.9}.sc-cta--disabled,.sc-cta--disabled:hover{opacity:.35;cursor:not-allowed}.sc-results{opacity:0;transition:opacity .35s,transform .35s;transform:translateY(16px)}.sc-results--visible{opacity:1;transform:translateY(0)}.sc-result{border-radius:var(--radius-cards);background:var(--color-tide-card);border:1px solid var(--color-carbon-black)}.sc-result+.sc-result{margin-top:var(--spacing-12)}.sc-result--primary{padding:var(--spacing-24);border-left-style:solid;border-left-width:4px}.sc-result--secondary{padding:var(--spacing-16)}.sc-result__score-track{border-radius:var(--radius-badges);background:#ffffff1a;height:4px;overflow:hidden}.sc-result__score-fill{border-radius:var(--radius-badges);height:100%}.sc-listen{align-items:center;gap:var(--spacing-8);min-height:44px;padding:var(--spacing-8) var(--spacing-20);border-radius:var(--radius-buttons);border:2px solid var(--color-spectral-cyan);color:var(--color-spectral-cyan);font-family:inherit;font-size:15px;font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color var(--transition-fast);background:#6ae4ff1f;display:inline-flex}.sc-listen:hover{background:#6ae4ff33}.sc-disclose{justify-content:space-between;align-items:center;gap:var(--spacing-8);width:100%;min-height:48px;padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-links);background:var(--color-abyss-navy);border:1px solid var(--color-carbon-black);color:var(--color-spectral-cyan);font-family:inherit;font-size:15px;font-weight:var(--font-weight-semibold);cursor:pointer;text-align:left;transition:background-color var(--transition-fast);display:flex}.sc-disclose:hover{background:#6ae4ff0f}.sc-step{gap:var(--spacing-12);padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-links);background:var(--color-abyss-navy);border:1px solid var(--color-carbon-black);color:var(--color-bone-white);font-size:14px;line-height:1.55;display:flex}.sc-step__num{background:var(--color-spectral-cyan);width:24px;height:24px;color:var(--color-carbon-black);font-size:12px;font-weight:var(--font-weight-bold);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sc-warning{padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-links);border:1px solid var(--color-sos-red);border-left:4px solid var(--color-sos-red);color:var(--color-bone-white);background:#ff47571a;font-size:14px;line-height:1.55}@media (max-width:640px){.sc-chip{flex-basis:100%;min-width:0}.sc-context-row{flex-direction:column;align-items:stretch}.sc-context-row__label{margin-bottom:var(--spacing-4)}.sc-toggle{width:100%}.sc-result--primary{padding:var(--spacing-16)}}@media (prefers-reduced-motion:reduce){.sc-results{opacity:1;transition:none;transform:none}}.drn-page{padding-top:calc(var(--navbar-height) + var(--spacing-40));padding-bottom:var(--spacing-80);min-height:100vh}.drn-header{justify-content:space-between;align-items:flex-start;gap:var(--spacing-16);margin-bottom:var(--spacing-24);flex-wrap:wrap;display:flex}.drn-header__title{font-family:var(--font-source-sans);font-size:var(--text-heading-sm);line-height:var(--leading-heading-sm);letter-spacing:var(--tracking-heading-sm);font-weight:var(--font-weight-bold);color:var(--color-bone-white);margin-bottom:var(--spacing-4)}.drn-phase-steps{align-items:center;gap:var(--spacing-8);margin-bottom:var(--spacing-24);flex-wrap:wrap;display:flex}.drn-phase-step{font-size:var(--text-caption);font-weight:var(--font-weight-semibold);color:var(--color-fog-gray);opacity:.5;align-items:center;gap:6px;display:inline-flex}.drn-phase-step--active{opacity:1;color:var(--color-spectral-cyan)}.drn-phase-step--done{opacity:.85;color:#34edb3}.drn-phase-step__num{border:1px solid;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:11px;display:inline-flex}.drn-phase-arrow{color:var(--color-fog-gray);opacity:.35}.drn-layout{gap:var(--spacing-24);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:start;display:grid}.drn-sim,.drn-side{gap:var(--spacing-16);flex-direction:column;min-width:0;display:flex}.drn-source-banner{align-items:flex-start;gap:var(--spacing-12);padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-cards);font-size:var(--text-body-sm);line-height:var(--leading-body-sm);color:var(--color-fog-gray);background:#6ae4ff14;border:1px solid #6ae4ff4d;display:flex}.drn-source-banner--rx{background:#34edb314;border-color:#34edb34d}.drn-source-banner__icon{font-size:20px;line-height:1}.drn-source-banner strong{color:var(--color-bone-white)}.drn-disclaimer{align-items:flex-start;gap:var(--spacing-8);padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-cards);font-size:var(--text-caption);color:var(--color-fog-gray);background:#ff47571a;border:1px solid #ff475759;line-height:1.5;display:flex}.drn-disclaimer strong{color:var(--color-sos-red)}.drn-catalog{background:var(--color-tide-card);border-radius:var(--radius-cards);padding:var(--card-padding);border:1px solid #ffffff14}.drn-search{width:100%;margin-bottom:var(--spacing-12);border-radius:var(--radius-links);color:var(--color-bone-white);font-family:inherit;font-size:var(--text-body-sm);background:#00000040;border:1px solid #ffffff1f;padding:10px 14px}.drn-search:focus{outline:2px solid var(--color-spectral-cyan);outline-offset:1px}.drn-cat-tabs{gap:var(--spacing-8);padding-bottom:var(--spacing-8);margin-bottom:var(--spacing-12);scrollbar-width:thin;display:flex;overflow-x:auto}.drn-cat-tab{border-radius:var(--radius-badges);color:var(--color-fog-gray);font-family:inherit;font-size:var(--text-caption);font-weight:var(--font-weight-semibold);white-space:nowrap;cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast), background var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff1f;flex:none;align-items:center;gap:6px;padding:7px 14px;display:inline-flex}.drn-cat-tab--active{border-color:var(--color-spectral-cyan);color:var(--color-spectral-cyan);background:#6ae4ff1a}.drn-item-list{gap:var(--spacing-8);max-height:420px;padding-right:4px;display:grid;overflow-y:auto}.drn-item{gap:var(--spacing-12);padding:var(--spacing-12);border-radius:var(--radius-links);transition:border-color var(--transition-fast), background var(--transition-fast);background:#0003;border:1px solid #ffffff1a;grid-template-columns:1fr auto;align-items:center;display:grid}.drn-item--selected{border-color:var(--color-spectral-cyan);background:#6ae4ff12}.drn-item--out{opacity:.45}.drn-item__name{font-size:var(--text-body-sm);font-weight:var(--font-weight-semibold);color:var(--color-bone-white)}.drn-item__bn{font-size:var(--text-caption);color:var(--color-spectral-cyan);margin-top:1px}.drn-item__use{font-size:var(--text-caption);color:var(--color-fog-gray);margin-top:4px;line-height:1.45}.drn-item__caution{color:#ff4757e6;margin-top:4px;font-size:11px;line-height:1.45}.drn-item__meta{color:var(--color-fog-gray);opacity:.7;margin-top:4px;font-size:11px}.drn-item__rx{border-radius:var(--radius-badges);color:#34edb3;font-size:11px;font-weight:var(--font-weight-semibold);background:#34edb326;border:1px solid #34edb366;align-items:center;gap:4px;margin-top:6px;padding:2px 8px;display:inline-flex}.drn-qty{border-radius:var(--radius-badges);border:1px solid #ffffff24;align-items:center;gap:2px;display:inline-flex;overflow:hidden}.drn-qty__btn{width:30px;height:30px;color:var(--color-bone-white);cursor:pointer;transition:background var(--transition-fast);background:#ffffff0f;border:none;font-family:inherit;font-size:16px;line-height:1}.drn-qty__btn:hover:not(:disabled){background:#6ae4ff33}.drn-qty__btn:disabled{opacity:.3;cursor:not-allowed}.drn-qty__value{text-align:center;min-width:30px;font-size:var(--text-body-sm);font-weight:var(--font-weight-bold);font-variant-numeric:tabular-nums;color:var(--color-bone-white)}.drn-add-btn{border-radius:var(--radius-badges);border:1px solid var(--color-spectral-cyan);color:var(--color-spectral-cyan);font-family:inherit;font-size:var(--text-caption);font-weight:var(--font-weight-semibold);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast), color var(--transition-fast);background:0 0;padding:7px 16px}.drn-add-btn:hover{background:var(--color-spectral-cyan);color:var(--color-abyss-navy)}.drn-cart{background:var(--color-tide-card);border-radius:var(--radius-cards);padding:var(--card-padding);border:1px solid #ffffff14}.drn-cart__row{align-items:center;gap:var(--spacing-12);padding:var(--spacing-8) 0;border-bottom:1px solid #ffffff0f;grid-template-columns:1fr auto auto;display:grid}.drn-cart__row:last-of-type{border-bottom:none}.drn-cart__empty{font-size:var(--text-body-sm);color:var(--color-fog-gray);opacity:.75;padding:var(--spacing-12) 0}.drn-cart__unmatched{margin-top:var(--spacing-12);padding:var(--spacing-12);border-radius:var(--radius-links);font-size:var(--text-caption);color:var(--color-fog-gray);background:#0003;border:1px dashed #ffffff2e;line-height:1.5}.drn-remove{color:var(--color-sos-red);cursor:pointer;border-radius:var(--radius-inputs);background:0 0;border:none;padding:2px 6px;font-size:18px;line-height:1}.drn-remove:hover{background:#ff475726}.drn-payload{margin-top:var(--spacing-16)}.drn-payload__head{font-size:var(--text-caption);color:var(--color-fog-gray);font-variant-numeric:tabular-nums;justify-content:space-between;margin-bottom:6px;display:flex}.drn-payload__bar{border-radius:var(--radius-badges);background:#ffffff14;height:8px;overflow:hidden}.drn-payload__fill{border-radius:var(--radius-badges);background:var(--gradient-yield);height:100%;transition:width var(--transition-base)}.drn-payload--over .drn-payload__fill{background:var(--color-sos-red)}.drn-payload--over .drn-payload__head{color:var(--color-sos-red)}.drn-hub-card{background:var(--color-tide-card);border-radius:var(--radius-cards);padding:var(--card-padding);border:1px solid #6ae4ff40}.drn-hub-card--unreachable{border-color:#ff475759}.drn-hub-card__label{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.08em;color:var(--color-fog-gray);opacity:.8;margin-bottom:6px}.drn-hub-card__name{font-size:var(--text-body-lg);font-weight:var(--font-weight-semibold);color:var(--color-bone-white);line-height:1.3}.drn-hub-card__facts{gap:var(--spacing-16);margin-top:var(--spacing-12);flex-wrap:wrap;display:flex}.drn-hub-card__fact{font-size:var(--text-caption);color:var(--color-fog-gray)}.drn-hub-card__fact strong{font-size:var(--text-body);color:var(--color-spectral-cyan);font-variant-numeric:tabular-nums;margin-top:2px;display:block}.drn-map{border-radius:var(--radius-cards);background:var(--color-abyss-navy);border:1px solid #ffffff1a;height:460px;position:relative;overflow:hidden}.drn-map__canvas{width:100%;height:100%}.drn-map__offline{z-index:500;border-radius:var(--radius-links);max-width:calc(100% - 24px);color:var(--color-fog-gray);background:#17202eeb;border:1px solid #ffffff26;padding:8px 12px;font-size:11px;line-height:1.4;position:absolute;bottom:12px;left:12px}.drn-map__follow{z-index:500;border-radius:var(--radius-badges);color:var(--color-fog-gray);font-family:inherit;font-size:var(--text-caption);font-weight:var(--font-weight-semibold);cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);background:#17202eeb;border:1px solid #ffffff2e;padding:7px 14px;position:absolute;bottom:12px;right:12px}.drn-map__follow--on{border-color:var(--color-spectral-cyan);color:var(--color-spectral-cyan)}.drn-map__legend{z-index:500;border-radius:var(--radius-links);color:var(--color-fog-gray);background:#17202ee6;border:1px solid #ffffff1f;flex-direction:column;gap:4px;padding:8px 12px;font-size:11px;display:flex;position:absolute;top:12px;left:12px}.drn-map__ribbon{z-index:600;text-align:center;color:var(--color-bone-white);font-size:11px;font-weight:var(--font-weight-bold);letter-spacing:.06em;text-transform:uppercase;background:#ff4757eb;padding:6px 12px;position:absolute;top:0;left:0;right:0}.drn-marker-drone,.drn-marker-hub,.drn-marker-dest{background:0 0!important;border:none!important}.drn-marker-drone__body{transform:rotate(var(--drn-rot,0deg));transform-origin:50%;filter:drop-shadow(0 0 6px #6ae4ffe6);font-size:22px;line-height:1}.drn-marker-drone__rotor{border:1px solid #6ae4ff8c;border-radius:50%;animation:1.4s linear infinite droneRotor;position:absolute;inset:-6px}.drn-marker-hub__ring,.drn-marker-dest__ring{background:#6ae4ff40;border-radius:50%;position:absolute;inset:0}.drn-marker-hub--active .drn-marker-hub__ring{animation:2s ease-out infinite pulseRadar}.drn-marker-dest__ring{background:#34edb347;animation:2.4s ease-out infinite pulseRadar}.drn-marker-label{border-radius:var(--radius-inputs);color:var(--color-fog-gray);white-space:nowrap;background:#17202ee6;border:1px solid #ffffff26;margin-top:2px;padding:1px 6px;font-size:10px;position:absolute;top:100%;left:50%;transform:translate(-50%)}@keyframes droneRotor{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.drn-telemetry{background:var(--color-tide-card);border-radius:var(--radius-cards);padding:var(--card-padding);border:1px solid #ffffff14}.drn-eta{text-align:center;padding-bottom:var(--spacing-16);margin-bottom:var(--spacing-16);border-bottom:1px solid #ffffff14}.drn-eta__label{font-size:var(--text-caption);text-transform:uppercase;letter-spacing:.08em;color:var(--color-fog-gray);opacity:.8}.drn-eta__value{font-family:var(--font-source-sans);font-size:var(--text-heading-sm);line-height:1.15;font-weight:var(--font-weight-bold);color:var(--color-spectral-cyan);font-variant-numeric:tabular-nums;margin-top:2px}.drn-eta__sub{font-size:var(--text-caption);color:var(--color-fog-gray);font-variant-numeric:tabular-nums;margin-top:4px}.drn-scale-badge{margin-top:var(--spacing-8);border-radius:var(--radius-badges);color:var(--color-fog-gray);background:#ffffff12;border:1px solid #ffffff1f;align-items:center;gap:4px;padding:2px 10px;font-size:11px;display:inline-flex}.drn-progress{border-radius:var(--radius-badges);height:8px;margin-bottom:var(--spacing-16);background:#ffffff14;overflow:hidden}.drn-progress__fill{border-radius:var(--radius-badges);background:var(--gradient-yield);height:100%;transition:width 1s linear}.drn-stat-grid{gap:var(--spacing-12);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.drn-stat{padding:var(--spacing-12);border-radius:var(--radius-links);background:#00000038;border:1px solid #ffffff0f}.drn-stat__label{text-transform:uppercase;letter-spacing:.06em;color:var(--color-fog-gray);opacity:.8;font-size:11px}.drn-stat__value{font-size:var(--text-body-lg);line-height:1.4;font-weight:var(--font-weight-semibold);color:var(--color-bone-white);font-variant-numeric:tabular-nums;margin-top:2px}.drn-battery{margin-top:var(--spacing-16)}.drn-battery__head{font-size:var(--text-caption);color:var(--color-fog-gray);font-variant-numeric:tabular-nums;justify-content:space-between;margin-bottom:6px;display:flex}.drn-battery__bar{border-radius:var(--radius-badges);background:#ffffff14;height:6px;overflow:hidden}.drn-battery__fill{border-radius:var(--radius-badges);background:#34edb3;height:100%;transition:width 1s linear}.drn-battery--low .drn-battery__fill{background:var(--color-sos-red)}.drn-battery--low .drn-battery__head{color:var(--color-sos-red)}.drn-timeline{margin-top:var(--spacing-20);padding-top:var(--spacing-16);gap:var(--spacing-12);border-top:1px solid #ffffff14;flex-direction:column;display:flex}.drn-stage{align-items:center;gap:var(--spacing-12);opacity:.45;transition:opacity var(--transition-base);grid-template-columns:24px 1fr auto;display:grid}.drn-stage--done{opacity:.9}.drn-stage--active{opacity:1}.drn-stage__dot{background:#ffffff12;border:1px solid #ffffff26;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;display:inline-flex}.drn-stage--done .drn-stage__dot{background:#34edb32e;border-color:#34edb38c}.drn-stage--active .drn-stage__dot{border-color:var(--color-spectral-cyan);background:#6ae4ff33;animation:1.8s ease-in-out infinite pulseGlow}.drn-stage__label{font-size:var(--text-body-sm);color:var(--color-fog-gray)}.drn-stage--active .drn-stage__label{color:var(--color-bone-white);font-weight:var(--font-weight-semibold)}.drn-stage__time{color:var(--color-fog-gray);font-variant-numeric:tabular-nums;opacity:.75;font-size:11px}@keyframes pulseGlow{0%,to{box-shadow:0 0 #6ae4ff80}50%{box-shadow:0 0 0 6px #6ae4ff00}}.drn-alert{align-items:flex-start;gap:var(--spacing-8);padding:var(--spacing-12) var(--spacing-16);border-radius:var(--radius-cards);font-size:var(--text-body-sm);color:var(--color-fog-gray);background:#ffffff0a;border:1px solid #ffffff1f;line-height:1.5;display:flex}.drn-alert--warn{background:#ffc1071a;border-color:#ffc10766}.drn-alert--error{background:#ff47571a;border-color:#ff475766}.drn-alert--ok{background:#34edb31a;border-color:#34edb366}.drn-alert a{color:var(--color-spectral-cyan)}.drn-offline-chip{border-radius:var(--radius-badges);color:#ffc107;font-size:11px;font-weight:var(--font-weight-semibold);background:#ffc10726;border:1px solid #ffc10766;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.drn-cta-card{margin-top:var(--spacing-16);padding:var(--spacing-16);border-radius:var(--radius-cards);background:linear-gradient(135deg,#6ae4ff1a,#34edb30f);border:1px solid #6ae4ff4d}.drn-cta-card__title{align-items:center;gap:var(--spacing-8);font-size:var(--text-body);font-weight:var(--font-weight-semibold);color:var(--color-bone-white);margin-bottom:6px;display:flex}.drn-cta-card__rationale{font-size:var(--text-body-sm);color:var(--color-fog-gray);margin-bottom:var(--spacing-12);line-height:1.5}.drn-cta-card__kit{margin-bottom:var(--spacing-12);flex-wrap:wrap;gap:6px;display:flex}.drn-cta-card__chip{border-radius:var(--radius-badges);color:var(--color-bone-white);font-size:var(--text-caption);background:#ffffff14;border:1px solid #ffffff24;padding:3px 10px}.drn-cta-card__note{color:var(--color-fog-gray);opacity:.8;margin-top:var(--spacing-8);font-size:11px;line-height:1.45}.drn-field{margin-bottom:var(--spacing-16)}.drn-field__label{font-size:var(--text-caption);font-weight:var(--font-weight-semibold);color:var(--color-fog-gray);margin-bottom:6px;display:block}.drn-field input,.drn-field textarea{border-radius:var(--radius-links);width:100%;color:var(--color-bone-white);font-family:inherit;font-size:var(--text-body-sm);background:#00000040;border:1px solid #ffffff1f;padding:10px 14px}.drn-field input:focus,.drn-field textarea:focus{outline:2px solid var(--color-spectral-cyan);outline-offset:1px}.drn-field__error{color:var(--color-sos-red);margin-top:4px;font-size:11px}.drn-scale-row{align-items:center;gap:var(--spacing-8);flex-wrap:wrap;display:flex}.drn-scale-btn{border-radius:var(--radius-badges);color:var(--color-fog-gray);font-family:inherit;font-size:var(--text-caption);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;cursor:pointer;transition:border-color var(--transition-fast), color var(--transition-fast);background:#ffffff0a;border:1px solid #ffffff24;padding:6px 14px}.drn-scale-btn--active{border-color:var(--color-spectral-cyan);color:var(--color-spectral-cyan);background:#6ae4ff1a}.drn-actions{gap:var(--spacing-12);margin-top:var(--spacing-16);flex-wrap:wrap;display:flex}.drn-actions .btn-primary:disabled{opacity:.4;cursor:not-allowed}@media (max-width:900px){.drn-layout{grid-template-columns:minmax(0,1fr)}.drn-map{height:320px}.drn-item-list{max-height:none}}@media (max-width:640px){.drn-item{grid-template-columns:minmax(0,1fr)}.drn-item__actions{justify-self:start}.drn-stat-grid{grid-template-columns:minmax(0,1fr)}.drn-header__title{font-size:var(--text-subheading)}}@media (prefers-reduced-motion:reduce){.drn-marker-drone__body{transform:none}.drn-marker-drone__rotor,.drn-marker-hub--active .drn-marker-hub__ring,.drn-marker-dest__ring,.drn-stage--active .drn-stage__dot{animation:none}.drn-progress__fill,.drn-battery__fill,.drn-payload__fill,.drn-stage{transition:none}}
