.hero-section{padding:48px 6vw 0;min-height:80vh;display:flex;align-items:flex-end}.hero-inner{padding:48px 56px 56px;max-width:900px;width:100%;animation:fadeInUp 1s ease both}.hero-eyebrow{display:inline-flex;align-items:center;gap:14px;font-size:11px;letter-spacing:.3em;text-transform:uppercase;margin-bottom:28px;opacity:.8;color:var(--text-secondary)}.eyebrow-line{display:inline-block;width:42px;height:1px;background:var(--text-secondary);opacity:.5}.hero-title{font-weight:300;font-size:clamp(52px,10vw,120px);line-height:.88;letter-spacing:-.03em;color:var(--text-primary);transition:color 3s ease}.hero-title em{font-style:italic;font-weight:400;color:var(--accent-warm);transition:color 3s ease}.hero-meta{display:flex;flex-wrap:wrap;gap:40px;margin-top:36px}.meta-label{display:block;opacity:.6;font-size:10px;text-transform:uppercase;letter-spacing:.22em;margin-bottom:5px;color:var(--text-secondary)}.meta-value{font-weight:400;font-size:18px;color:var(--text-primary);transition:color 3s ease}.intro-section{padding:60px 6vw 0}.intro-card{padding:56px;display:grid;grid-template-columns:1fr 1.4fr;gap:56px;align-items:start;animation:fadeInUp 1s ease .2s both}.intro-heading{font-weight:300;font-size:38px;line-height:1.08;letter-spacing:-.02em;color:var(--text-primary)}.intro-heading em{font-style:italic;color:var(--accent-warm)}.intro-body p{font-size:15px;color:var(--text-secondary);max-width:56ch;line-height:1.65}.intro-body p+p{margin-top:14px}.current-activity{padding:48px 6vw 0}.current-card{padding:40px 48px;position:relative;overflow:hidden;animation:fadeInUp .8s ease both}.current-card.active-card{border-color:var(--accent-warm);box-shadow:0 8px 32px #00000014,0 0 0 1px var(--card-highlight),inset 0 1px #ffffff14;animation:fadeInUp .8s ease both,pulse 3s ease-in-out infinite}.current-badge{display:inline-flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:6px 14px;border-radius:99px;margin-bottom:20px;font-weight:500}.current-badge.now{background:var(--card-highlight);color:var(--text-primary)}.current-badge.upcoming{background:#d4a43726;color:var(--accent)}.current-badge.completed{background:#6b804926;color:var(--accent)}.current-badge.transit{background:#c2542d1f;color:var(--accent-warm)}.now-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-warm);animation:pulseGlow 2s ease-in-out infinite}.current-context{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:10px}.current-content h2{font-weight:400;font-size:32px;line-height:1.1;color:var(--text-primary);margin-bottom:10px}.current-desc{font-size:15px;color:var(--text-secondary);max-width:60ch;line-height:1.6}.current-desc strong{color:var(--text-primary)}.countdown{display:flex;flex-wrap:wrap;gap:24px;margin:16px 0;align-items:baseline}.count-group{display:inline-flex;align-items:baseline;white-space:nowrap}.count-num{font-size:48px;font-weight:300;color:var(--accent-warm);line-height:1}.count-label{font-size:13px;text-transform:uppercase;letter-spacing:.15em;color:var(--text-secondary);margin-left:6px;align-self:flex-end;padding-bottom:6px}.progress-bar{height:4px;border-radius:4px;background:#80808026;margin-top:20px;overflow:hidden}.progress-fill{height:100%;border-radius:4px;background:var(--accent-warm);transition:width 1s ease}.progress-times{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.12em;color:var(--text-secondary);margin-top:8px;opacity:.7}.upcoming-stack{margin-top:20px}.upcoming-stack-label{font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:600;color:var(--text-secondary);margin-bottom:10px;padding-left:4px;transition:color 3s ease}.upcoming-stack-scroll{display:flex;flex-direction:column;gap:8px;max-height:340px;overflow-y:auto;overscroll-behavior:contain;padding-right:4px}.upcoming-stack-scroll::-webkit-scrollbar{width:3px}.upcoming-stack-scroll::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:3px}.upcoming-card{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:16px;cursor:default;transition:transform .25s ease,box-shadow .25s ease;animation:upcomingSlideIn .4s cubic-bezier(.34,1.56,.64,1) both}.upcoming-card:hover{transform:scale(1.015);box-shadow:0 4px 20px #0000001f}@keyframes upcomingSlideIn{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.upcoming-card-left{display:flex;flex-direction:column;align-items:center;gap:2px;flex-shrink:0;min-width:48px}.upcoming-card-num{font-size:22px;font-weight:300;color:var(--accent-warm);line-height:1;font-family:Fraunces,serif;transition:color 3s ease}.upcoming-card-time{font-size:10px;color:var(--text-secondary);letter-spacing:.05em;white-space:nowrap;transition:color 3s ease}.upcoming-card-body{flex:1;min-width:0}.upcoming-card-day{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary);opacity:.6;transition:color 3s ease}.upcoming-card-title{margin:2px 0;font-size:14px;font-weight:600;color:var(--text-primary);line-height:1.3;transition:color 3s ease}.upcoming-card-desc{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.4;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;transition:color 3s ease}.upcoming-card-right{flex-shrink:0}.upcoming-card-tag{font-size:10px;padding:3px 8px;border-radius:20px;background:#8080801a;color:var(--text-secondary);white-space:nowrap;transition:color 3s ease}.day-section{padding:80px 6vw 20px}.day-header{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;flex-wrap:wrap;margin-bottom:48px;padding-bottom:20px;border-bottom:1px solid rgba(128,128,128,.2)}.day-number{font-size:clamp(80px,14vw,180px);font-weight:300;line-height:.78;letter-spacing:-.04em;color:var(--text-primary);opacity:.7;transition:color 3s ease}.day-number em{font-style:italic;color:var(--accent-warm)}.day-info{text-align:right}.day-weekday{display:block;font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--text-secondary)}.day-date{display:block;font-weight:400;font-size:22px;color:var(--text-primary);margin-top:4px}.timeline{position:relative;padding-left:32px;display:flex;flex-direction:column;gap:16px}.timeline-line{position:absolute;left:11px;top:0;bottom:0;width:2px;background:#80808026;border-radius:2px}.timeline-stop{position:relative;padding:28px 32px;display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:start;animation:fadeInUp .6s ease both;transition:opacity .4s ease,transform .4s ease,background 3s ease,border-color 3s ease}.timeline-stop:hover{transform:translate(4px)}.timeline-stop.stop-past{opacity:.45}.timeline-stop.stop-current{border-color:var(--accent-warm);box-shadow:0 4px 24px #0000000f,0 0 0 1px var(--card-highlight)}.timeline-dot-container{position:relative;width:20px;height:20px;display:flex;align-items:center;justify-content:center;margin-top:6px}.timeline-dot{width:10px;height:10px;border-radius:50%;background:var(--text-secondary);opacity:.4;transition:all .4s ease;z-index:1}.timeline-dot.dot-active{width:12px;height:12px;background:var(--accent-warm);opacity:1}.dot-ring{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid var(--accent-warm);opacity:.5;animation:pulse 2.5s ease-in-out infinite}.stop-content{min-width:0}.stop-header{display:flex;align-items:baseline;gap:16px;margin-bottom:10px}.stop-number{font-size:36px;font-weight:300;font-style:italic;color:var(--accent);opacity:.6;line-height:1;flex-shrink:0}.stop-title{font-weight:400;font-size:24px;line-height:1.15;color:var(--text-primary);letter-spacing:-.01em}.stop-description{font-size:14px;color:var(--text-secondary);max-width:52ch;line-height:1.6}.stop-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.tag{font-size:10px;letter-spacing:.14em;text-transform:uppercase;padding:5px 12px;border:1px solid rgba(128,128,128,.25);border-radius:99px;color:var(--text-secondary);background:#8080800f;transition:all 3s ease}.tag-warm{border-color:var(--accent-warm);color:var(--accent-warm);background:#c2542d0f}.now-indicator{display:inline-flex;align-items:center;gap:8px;margin-top:14px;padding:6px 14px;border-radius:99px;background:var(--card-highlight);font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:500;color:var(--text-primary)}.now-pulse{width:8px;height:8px;border-radius:50%;background:var(--accent-warm);animation:pulseGlow 2s ease-in-out infinite}.now-text{line-height:1}.tips-section{padding:60px 6vw 0}.tips-card{padding:56px;display:grid;grid-template-columns:1fr 1.6fr;gap:48px;align-items:start;animation:fadeInUp .8s ease both}.tips-title{font-weight:300;font-size:46px;line-height:1;letter-spacing:-.02em;color:var(--text-primary)}.tips-title em{font-style:italic;color:var(--accent-warm)}.tips-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:20px 36px}.tip-item{padding-left:24px;position:relative;font-size:14px;line-height:1.5;color:var(--text-secondary)}.tip-item:before{content:"";position:absolute;left:0;top:10px;width:12px;height:1px;background:var(--accent-warm)}.tip-item b{display:block;font-weight:500;font-size:15px;margin-bottom:4px;color:var(--text-primary)}.app-footer{margin:60px 6vw 0;padding:40px 48px;display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:24px}.footer-sig{font-style:italic;font-size:28px;font-weight:300;line-height:1;color:var(--text-primary)}.footer-sub{display:block;font-size:11px;letter-spacing:.25em;text-transform:uppercase;font-style:normal;margin-top:10px;color:var(--text-secondary)}.footer-route{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary);opacity:.7}.time-simulator{position:fixed;bottom:24px;right:24px;z-index:100}.sim-toggle{width:44px;height:44px;border:none;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;color:var(--text-primary);transition:transform .3s ease}.sim-toggle:hover{transform:scale(1.08)}.sim-panel{position:absolute;bottom:56px;right:0;width:260px;padding:20px;display:flex;flex-direction:column;gap:16px;animation:fadeInUp .3s ease both;overscroll-behavior:contain}.sim-header{display:flex;justify-content:space-between;align-items:center}.sim-title{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-secondary)}.sim-switch{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-secondary);cursor:pointer}.sim-switch input{width:36px;height:20px;accent-color:var(--accent-warm, #c2542d);cursor:pointer}.sim-days{display:flex;gap:8px}.sim-day{flex:1;padding:8px;border:none;cursor:pointer;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-secondary);text-align:center;transition:all .3s ease}.sim-day.active{color:var(--text-primary);border-color:var(--accent-warm);box-shadow:0 0 0 1px var(--accent-warm)}.sim-slider-group{display:flex;flex-direction:column;gap:8px}.sim-range{width:100%;height:4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#80808033;border-radius:4px;outline:none;cursor:pointer;touch-action:none}.sim-range::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--accent-warm, #c2542d);cursor:pointer;box-shadow:0 2px 8px #0003}.sim-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--accent-warm, #c2542d);cursor:pointer;border:none;box-shadow:0 2px 8px #0003}.sim-time{text-align:center;font-size:24px;font-weight:300;color:var(--text-primary)}@media(max-width:880px){.hero-section{min-height:60vh;padding:32px 5vw 0}.hero-inner{padding:32px 28px 36px}.hero-meta{gap:22px}.intro-card{grid-template-columns:1fr;gap:24px;padding:32px 28px}.intro-heading{font-size:30px}.current-card{padding:28px 24px}.current-content h2{font-size:24px}.countdown{gap:12px;flex-wrap:wrap}.count-num{font-size:32px}.count-label{font-size:11px;margin-left:4px}.day-section{padding:50px 5vw 10px}.day-number{font-size:70px}.timeline{padding-left:24px}.timeline-stop{padding:20px;grid-template-columns:1fr;gap:0}.timeline-dot-container{display:none}.stop-header{gap:10px}.stop-number{font-size:28px}.stop-title{font-size:20px}.tips-card{grid-template-columns:1fr;padding:32px 28px;gap:28px}.tips-title{font-size:34px}.tips-list{grid-template-columns:1fr}.app-footer{margin:40px 5vw 0;padding:28px 24px;flex-direction:column;align-items:flex-start}.footer-sig{font-size:22px}.time-simulator{bottom:16px;right:16px}.sim-panel{width:240px;padding:16px}}.chat-bar{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:200;width:min(92vw,560px);cursor:pointer;transition:opacity .3s ease,transform .3s ease}.chat-bar--hidden{opacity:0;pointer-events:none;transform:translate(-50%) translateY(20px)}.chat-bar-inner{display:flex;align-items:center;gap:14px;padding:12px 20px;border-radius:999px;box-shadow:0 8px 40px #0000002e,0 0 0 1px var(--glass-border)}.chat-bar-left{display:flex;align-items:center;gap:8px;flex-shrink:0}.chat-bar-icon{font-size:18px}.chat-bar-label{font-size:14px;font-weight:500;color:var(--text-primary);white-space:nowrap;transition:color 3s ease}.chat-bar-preview{flex:1;min-width:0;overflow:hidden}.chat-bar-preview-text{display:block;font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color 3s ease}.chat-bar-preview-text strong{color:var(--text-primary);font-weight:500;transition:color 3s ease}.chat-bar-badge{background:var(--accent-warm);color:#fff;font-size:11px;font-weight:700;min-width:20px;height:20px;border-radius:999px;display:flex;align-items:center;justify-content:center;padding:0 6px;flex-shrink:0;animation:badgePop .35s cubic-bezier(.34,1.56,.64,1) both}@keyframes badgePop{0%{transform:scale(0)}to{transform:scale(1)}}.chat-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;pointer-events:none;opacity:0}.chat-overlay--open{pointer-events:auto;opacity:1}.chat-overlay--open.chat-overlay--animating{animation:dropletOpen .6s cubic-bezier(.22,1,.36,1) both}.chat-overlay:not(.chat-overlay--open).chat-overlay--animating{pointer-events:none;animation:dropletClose .5s cubic-bezier(.55,0,1,.45) both}@keyframes dropletOpen{0%{clip-path:circle(0% at var(--ripple-x, 50%) var(--ripple-y, 100%));opacity:1}to{clip-path:circle(150% at var(--ripple-x, 50%) var(--ripple-y, 100%));opacity:1}}@keyframes dropletClose{0%{clip-path:circle(150% at 50% 50%);opacity:1}to{clip-path:circle(0% at 50% 100%);opacity:0}}.chat-overlay-inner{width:100%;height:100%;display:flex;flex-direction:column;background:var(--glass-bg);backdrop-filter:blur(40px) saturate(1.8);-webkit-backdrop-filter:blur(40px) saturate(1.8)}.chat-overlay-inner.chat-overlay-inner--bubbles{background:#0a0e12a6}.chat-overlay-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid var(--glass-border);flex-shrink:0}.chat-overlay-title{display:flex;align-items:center;gap:10px;font-size:20px;font-weight:300;color:var(--text-primary);transition:color 3s ease}.chat-overlay-title em{font-style:italic;font-weight:400;color:var(--accent-warm);transition:color 3s ease}.chat-overlay-actions{display:flex;align-items:center;gap:8px}.chat-notif-btn,.chat-close-btn{width:40px;height:40px;border:none;background:transparent;border-radius:50%;font-size:18px;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease,color .2s ease}.chat-notif-btn:hover,.chat-close-btn:hover{background:#80808026;color:var(--text-primary)}.bubble-field{flex:1;position:relative;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none}.bubble-item{position:absolute;border-radius:50%;cursor:pointer;transition:left .8s cubic-bezier(.34,1.56,.64,1),top .8s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,filter .3s ease;animation:bubblePop .5s cubic-bezier(.34,1.56,.64,1) both;display:flex;align-items:center;justify-content:center;z-index:1}.bubble-item--center{z-index:3;box-shadow:0 0 30px rgba(var(--accent-warm-rgb, 180, 130, 70),.35),0 0 0 3px rgba(var(--accent-warm-rgb, 180, 130, 70),.2)}.bubble-item--selected{z-index:10;box-shadow:0 0 40px rgba(var(--accent-warm-rgb, 180, 130, 70),.5),0 0 0 3px var(--accent-warm);filter:brightness(1.15)}@keyframes bubblePop{0%{transform:translate(-50%,-50%) scale(0);opacity:0}to{transform:translate(-50%,-50%) scale(1);opacity:1}}.bubble-avatar{width:100%;height:100%;border-radius:50%;object-fit:cover;pointer-events:none}.bubble-letter{width:100%;height:100%;border-radius:50%;background:var(--accent-warm);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;pointer-events:none}.bubble-name{position:absolute;bottom:-20px;left:50%;transform:translate(-50%);font-size:10px;font-weight:600;color:var(--text-secondary);white-space:nowrap;letter-spacing:.05em;text-shadow:0 1px 4px rgba(0,0,0,.7);pointer-events:none}.bubble-count{position:absolute;top:-4px;right:-4px;width:20px;height:20px;border-radius:50%;background:var(--accent-warm);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d;pointer-events:none}.bubble-tooltip{position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%);width:240px;background:#14191eeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(128,128,128,.2);border-radius:16px;padding:14px;z-index:20;animation:tooltipIn .3s cubic-bezier(.34,1.56,.64,1) both;cursor:default}@keyframes tooltipIn{0%{opacity:0;transform:translate(-50%) translateY(-8px) scale(.9)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.bubble-tooltip-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid rgba(128,128,128,.15)}.bubble-tooltip-name{font-size:13px;font-weight:600;color:var(--text-primary)}.bubble-tooltip-count{font-size:11px;color:var(--text-secondary);opacity:.6}.bubble-tooltip-msg{padding:6px 0}.bubble-tooltip-msg+.bubble-tooltip-msg{border-top:1px solid rgba(128,128,128,.1)}.bubble-tooltip-text{font-size:13px;line-height:1.45;color:var(--text-primary);white-space:pre-wrap;word-break:break-word;margin:0}.bubble-tooltip-meta{display:flex;justify-content:space-between;align-items:center;margin-top:4px;font-size:10px;color:var(--text-secondary);opacity:.5}.bubble-tooltip-delete{background:none;border:none;color:#e74c3c;font-size:10px;cursor:pointer;padding:2px 6px;border-radius:4px;opacity:.7;transition:opacity .2s ease,background .2s ease}.bubble-tooltip-delete:hover{opacity:1;background:#e74c3c26}.chat-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:15px;color:var(--text-secondary);opacity:.6;font-style:italic}.chat-bar-svg-icon,.chat-header-svg-icon{color:var(--accent-warm);flex-shrink:0;transition:color 3s ease}.bubble-recent{position:absolute;bottom:16px;left:50%;transform:translate(-50%);width:min(92%,380px);display:flex;flex-direction:column;gap:6px;z-index:5;pointer-events:none}.bubble-recent-msg{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#14191ebf;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(128,128,128,.12);border-radius:14px;animation:recentSlideIn .4s cubic-bezier(.34,1.56,.64,1) both;pointer-events:auto}.bubble-recent-msg:nth-child(2){animation-delay:.06s}.bubble-recent-msg:nth-child(3){animation-delay:.12s}@keyframes recentSlideIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.bubble-recent-avatar{width:28px;height:28px;border-radius:50%;flex-shrink:0;overflow:hidden}.bubble-recent-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.bubble-recent-avatar span{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--accent-warm);color:#fff;font-size:12px;font-weight:600;border-radius:50%}.bubble-recent-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.bubble-recent-author{font-size:11px;font-weight:600;color:var(--accent-warm);letter-spacing:.02em}.bubble-recent-text{font-size:13px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.35}.bubble-recent-time{font-size:10px;color:var(--text-secondary);opacity:.5;white-space:nowrap;flex-shrink:0}.bubble-item--bot{background:linear-gradient(135deg,rgba(var(--accent-warm-rgb, 180, 130, 70),.2),#64c89626);border:1.5px solid rgba(100,200,150,.3)}.bubble-bot-icon{display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#1a3a2a,#0d2818);color:#6fcf97;pointer-events:none}.bubble-recent-msg--bot{border-color:#64c89633;background:#0f1e16cc}.bubble-recent-msg--bot .bubble-recent-author{color:#6fcf97}.bubble-recent-bot-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a3a2a,#0d2818);color:#6fcf97;border-radius:50%}.chat-compose{display:flex;align-items:flex-end;gap:10px;padding:12px 24px;border-top:1px solid var(--glass-border);flex-shrink:0}.chat-compose-avatar{flex-shrink:0;padding-bottom:4px}.chat-compose-input-wrap{flex:1;min-width:0}.chat-compose-input{width:100%;background:#80808014;border:1px solid var(--glass-border);border-radius:20px;padding:10px 16px;font-size:14px;color:var(--text-primary);font-family:inherit;line-height:1.45;resize:none;outline:none;transition:border-color .3s ease,color 3s ease;max-height:120px}.chat-compose-input::placeholder{color:var(--text-secondary);opacity:.5}.chat-compose-input:focus{border-color:var(--accent-warm)}.chat-send-btn{width:40px;height:40px;border:none;border-radius:50%;background:var(--accent-warm);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .2s ease,opacity .2s ease}.chat-send-btn:hover:not(:disabled){transform:scale(1.08)}.chat-send-btn:disabled{opacity:.35;cursor:default}.google-icon{flex-shrink:0}@media(max-width:880px){.chat-bar{bottom:12px;width:min(95vw,480px)}.chat-bar-inner{padding:10px 16px;gap:10px}.chat-overlay-header,.chat-feed{padding:12px 16px}.chat-compose{padding:10px 16px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100vh;font-family:Inter Tight,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.55;background:#0a0e12}body{overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}.app{transition:--sky-1 3s ease,--sky-2 3s ease,--text-primary 3s ease,--text-secondary 3s ease,background 3s ease,color 3s ease;color:var(--text-primary);min-height:100vh;position:relative}.glass{background:var(--glass-bg);backdrop-filter:blur(24px) saturate(1.6);-webkit-backdrop-filter:blur(24px) saturate(1.6);border:1px solid var(--glass-border);border-radius:20px;box-shadow:0 8px 32px #0000001f,inset 0 1px #ffffff1f,inset 0 0 80px #ffffff0a;transition:background 3s ease,border-color 3s ease,box-shadow 3s ease}.glass-sm{background:var(--glass-bg);backdrop-filter:blur(16px) saturate(1.4);-webkit-backdrop-filter:blur(16px) saturate(1.4);border:1px solid var(--glass-border);border-radius:14px;box-shadow:0 4px 20px #00000014,inset 0 1px #ffffff14,inset 0 0 40px #ffffff08;transition:background 3s ease,border-color 3s ease}.font-display{font-family:Fraunces,serif}.animated-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;transition:background 3s ease}.sky-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,var(--sky-1) 0%,var(--sky-2) 100%);transition:background 3s ease}.mountains{position:absolute;bottom:0;left:0;width:100%;pointer-events:none}.mountains svg{display:block;width:100%}.trees-container{position:absolute;bottom:0;left:0;width:100%;height:40vh;pointer-events:none}.tree-group{position:absolute;bottom:0;transform-origin:bottom center}.tree-group.sway-1{animation:treeSway1 6s ease-in-out infinite}.tree-group.sway-2{animation:treeSway2 8s ease-in-out infinite}.tree-group.sway-3{animation:treeSway3 7s ease-in-out infinite}@keyframes treeSway1{0%,to{transform:rotate(-.8deg)}50%{transform:rotate(.8deg)}}@keyframes treeSway2{0%,to{transform:rotate(.5deg)}50%{transform:rotate(-.6deg)}}@keyframes treeSway3{0%,to{transform:rotate(-.4deg)}33%{transform:rotate(.7deg)}66%{transform:rotate(-.3deg)}}.leaf{position:absolute;pointer-events:none;will-change:transform;animation:leafFall var(--leaf-duration, 12s) var(--leaf-delay, 0s) infinite ease-in-out;opacity:0}.leaf-shape{width:var(--leaf-size, 14px);height:var(--leaf-size, 14px);background:var(--leaf-color, var(--leaf-1));border-radius:50% 2px;opacity:.7;transform:rotate(var(--leaf-rotate, 0deg))}@keyframes leafFall{0%{transform:translateY(-5vh) rotate(0);opacity:0}8%{opacity:.7}50%{transform:translate(var(--leaf-drift, 80px),55vh) rotate(180deg);opacity:.6}92%{opacity:.3}to{transform:translate(var(--leaf-drift-end, 120px),110vh) rotate(360deg);opacity:0}}.wind-streak{position:absolute;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,var(--wind-color),transparent);animation:windStreak var(--wind-duration, 4s) var(--wind-delay, 0s) infinite ease-in-out;opacity:0;will-change:transform}@keyframes windStreak{0%{transform:translate(-200px) scaleX(.5);opacity:0}20%{opacity:1}80%{opacity:.5}to{transform:translate(100vw) scaleX(1.5);opacity:0}}.app-content{position:relative;z-index:1;padding-bottom:60px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#8080804d;border-radius:4px}@keyframes pulse{0%,to{box-shadow:0 0 0 0 var(--card-highlight)}50%{box-shadow:0 0 0 10px #c2542d00}}@keyframes pulseGlow{0%,to{opacity:.6}50%{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.mist-layer{position:absolute;bottom:10%;left:0;width:200%;height:30vh;pointer-events:none;opacity:.15;animation:mistDrift 30s linear infinite}@keyframes mistDrift{0%{transform:translate(0)}to{transform:translate(-50%)}}
