:root{--ink:#1c2934;--paper:#f3f5f6;--cream:#e9edf0;--wine:#643448;--acid:#e9e0e6;--line:#dce2e6;--surface:#fff;--muted:#586875;--max:1180px}
body.premium-app{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;background:var(--paper);color:var(--ink)}
.premium-app [hidden]{display:none!important}
.premium-app *, .premium-app *::before,.premium-app *::after{box-sizing:border-box}
.premium-app a,.premium-app button{-webkit-tap-highlight-color:transparent}
.premium-app :focus-visible{outline:3px solid #926174;outline-offset:3px}
.premium-app .micro{font-size:.75rem;letter-spacing:.1em;line-height:1.4;color:var(--muted)}
.premium-app .micro.light{color:#e8e8e5}
.premium-app .editorial-pad{max-width:var(--max);margin:0 auto;padding:36px 32px}
.premium-app main{padding-top:80px;padding-bottom:32px}
.premium-app section,.premium-app details{scroll-margin-top:95px}
.premium-app .site-header{height:72px!important;padding:0 max(24px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--line);backdrop-filter:blur(18px);box-shadow:none!important;color:var(--ink)!important;z-index:100}
.premium-app .wordmark{font-size:24px;letter-spacing:-1px;color:var(--wine)}
.premium-app .site-header nav{display:flex;gap:24px}
.premium-app .site-header nav a{font-size:.9rem;letter-spacing:normal;text-transform:none;text-decoration:none;padding:24px 0;color:var(--muted);min-height:48px}
.premium-app .site-header nav a.active{color:var(--wine);font-weight:650}
.premium-app .site-header nav a::after{display:none}
.premium-app .identity-switch{min-height:44px;border:1px solid var(--line);border-radius:24px;padding:9px 16px;letter-spacing:normal;font-size:.9rem;background:#fff;color:var(--ink);gap:0}
.premium-app .identity-switch i{display:none}
.premium-app .mobile-menu{display:none!important}
.premium-app #mobileDrawer{display:none!important}
.premium-app .hero{height:250px!important;min-height:0!important;max-width:1116px;margin:12px auto 0;border-radius:24px;overflow:hidden;background:#283c38;isolation:isolate}
.premium-app .hero:before,.premium-app .hero:after,.premium-app .hero-static-sun-mask,.premium-app .hero-grain{display:none!important}
.premium-app .hero-video{inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.72) saturate(.72)}
.premium-app .hero-overlay{background:linear-gradient(90deg,rgba(14,30,30,.85),rgba(14,30,30,.22))!important}
.premium-app .hero-meta{position:absolute;left:auto;right:28px;top:24px;bottom:auto;display:flex;gap:16px;font-size:.8rem;color:#fff;letter-spacing:.05em}
.premium-app .hero-copy{position:absolute;inset:auto auto 32px 36px;width:75%;padding:0;transform:none}
.premium-app .hero-copy>.micro{margin:0 0 8px;color:#fff;font-size:.75rem;letter-spacing:.12em}
.premium-app .hero h1{margin:0;font-family:Georgia,"Times New Roman",serif;font-size:clamp(35px,4vw,55px)!important;line-height:1.05!important;font-weight:400;letter-spacing:-.035em!important;color:white}
.premium-app .hero h1 span,.premium-app .hero h1 strong{display:inline;font:inherit;letter-spacing:inherit}
.premium-app .hero h1 strong:before{content:' '}
.premium-app .hero-bottom{display:block;margin-top:12px;gap:0}
.premium-app #heroIntro{max-width:600px;margin:0;font-size:.9rem;line-height:1.55;color:#e4eae7}
.premium-app .hero-names{display:none}
.premium-app .hero-bottom .round-arrow{display:none}
.premium-app .journey-info{max-width:1116px;margin:16px auto 0;background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 20px}
.premium-app .journey-info>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;cursor:pointer;list-style:none;font-size:.875rem;font-weight:600}
.premium-app .journey-info>summary::-webkit-details-marker{display:none}
.premium-app .journey-info>summary::after{content:'+';font-size:1.3rem;font-weight:400;color:var(--wine)}
.premium-app .journey-info[open]>summary::after{content:'−'}
.premium-app .flight-journal{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0;border:0;gap:20px;background:white}
.premium-app .flight-journal .flight-label{display:none}
.premium-app .flight-journal article{display:flex;align-items:center;flex-wrap:wrap;padding:12px 0 20px;gap:12px;border-top:1px solid var(--line)}
.premium-app .flight-journal article strong{font-size:1rem;letter-spacing:normal}
.premium-app .flight-journal article span,.premium-app .flight-journal article small{font-size:.8rem;color:var(--muted)}
.premium-app .app-section-header{display:flex;justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:16px}
.premium-app .app-section-header h2,.premium-app .section-title-grid h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:32px;line-height:1.15;letter-spacing:-.025em;margin:0;color:var(--ink)}
.premium-app .app-section-header>span{font-size:.85rem;color:var(--muted)}
.premium-app .itinerary-note{font-size:.9rem;line-height:1.6;max-width:780px;margin:0 0 20px;color:var(--muted)}
.premium-app .agenda-day-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:6px;background:#e8edf0;border:1px solid var(--line);border-radius:16px;margin-bottom:26px}
.premium-app .agenda-day-tabs button{display:flex;justify-content:center;align-items:baseline;gap:10px;background:transparent;border:0;border-radius:11px;min-height:56px;cursor:pointer;color:var(--muted);box-shadow:none;padding:9px}
.premium-app .agenda-day-tabs button strong{font-size:1.25rem;font-weight:650;line-height:1.2}
.premium-app .agenda-day-tabs button span{font-size:.85rem;line-height:1.3}
.premium-app .agenda-day-tabs button[aria-selected="true"]{background:#fff;color:var(--wine);box-shadow:0 2px 10px rgba(25,40,52,.06)}
.premium-app .itinerary-days{display:block;border:0}
.premium-app .premium-day{display:block!important;padding:0;border:0}
.premium-app .premium-day[hidden]{display:none!important}
.premium-app .agenda-day-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.premium-app .agenda-day-heading .micro{margin:0 0 4px}
.premium-app .agenda-day-heading h3{font-size:1.25rem;line-height:1.3;font-weight:600;margin:0;letter-spacing:-.02em}
.premium-app .agenda-day-heading>span{font-size:.8rem;color:var(--muted);white-space:nowrap}
.premium-app .itinerary-events{display:grid;gap:14px}
.premium-app .premium-event{display:grid!important;grid-template-columns:150px minmax(0,1fr);align-items:start!important;gap:20px;padding:24px;background:#fff;border:1px solid var(--line)!important;border-radius:18px;box-shadow:0 4px 14px rgba(23,38,50,.025)}
.premium-app .event-time{font-size:.875rem;line-height:1.6;font-weight:650;color:var(--wine);font-variant-numeric:tabular-nums;padding-top:2px}
.premium-app .event-title-row{display:flex;align-items:start;justify-content:space-between;gap:12px}
.premium-app .event-title-row h4{font-size:1.1rem;line-height:1.45;letter-spacing:-.01em;font-weight:650;margin:0}
.premium-app .event-status{font-size:.75rem!important;line-height:1.35;font-weight:550;border-radius:6px;padding:5px 8px;background:#f0e9ed;color:#633549;flex:none;max-width:200px}
.premium-app .event-status.is-pending{background:#f7eddc;color:#76511c}
.premium-app .event-transfer{font-size:.875rem;color:var(--muted);margin:8px 0!important;line-height:1.45}
.premium-app .event-details{margin:8px 0 0}
.premium-app .event-details summary{display:inline-flex;align-items:center;gap:8px;cursor:pointer;font-size:.85rem;min-height:32px;color:var(--muted);list-style:none}
.premium-app .event-details summary::after{content:'+';font-size:1.1rem}
.premium-app .event-details[open] summary::after{content:'−'}
.premium-app .event-details p{font-size:.9rem;line-height:1.6;color:var(--muted);margin:4px 0 12px;max-width:720px}
.premium-app .event-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:16px}
.premium-app .event-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--wine);color:white;font-size:.875rem;text-decoration:none;min-height:44px;padding:10px 16px;border-radius:10px;line-height:1.4}
.premium-app .event-primary svg{width:18px;height:18px;flex:none}
.premium-app .event-secondary,.premium-app .apple-leg-link{font-size:.85rem!important;text-transform:none!important;letter-spacing:normal!important;color:var(--muted);border:0;padding:8px 0!important;min-height:44px;text-decoration:underline;text-underline-offset:4px;line-height:1.4;margin:0}
.premium-app .section-title-grid{display:block;margin:0 0 24px;gap:12px}
.premium-app .section-title-grid .micro{margin:0 0 8px}
.premium-app .section-title-grid>p{font-size:.9rem;max-width:720px;line-height:1.6;color:var(--muted);margin:12px 0 0}
.premium-app .map-shell{height:auto!important;min-height:0!important;border:0;border-radius:16px;background:transparent;overflow:visible}
.premium-app .map-filters{position:static;display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;max-width:100%;padding:0;background:transparent}
.premium-app .map-filters button,.premium-app .place-tabs button{font-size:.875rem;min-height:44px;padding:9px 15px;border:1px solid var(--line);background:#fff;border-radius:22px;text-transform:none;letter-spacing:normal;color:var(--muted)}
.premium-app .map-filters button.active,.premium-app .place-tabs button.active{background:var(--wine);border-color:var(--wine);color:white}
.premium-app .confirmed-map-links{grid-template-columns:repeat(3,minmax(0,1fr));height:auto!important;max-height:none;overflow:visible!important;padding:0!important;background:transparent!important;gap:12px;border:0}
.premium-app .apple-place-location{background:#fff;padding:20px;border:1px solid var(--line);border-radius:16px;gap:10px}
.premium-app .apple-place-location>span{font-size:.8rem;color:var(--muted)}
.premium-app .apple-place-location>strong{font-size:1rem;line-height:1.45;font-weight:600}
.premium-app .apple-map-actions{gap:8px;max-width:none}
.premium-app .apple-map-actions a{font-size:.85rem!important;border:1px solid var(--line);color:var(--muted);border-radius:8px;background:#fff}
.premium-app .apple-map-actions .apple-directions-link{background:var(--wine);color:#fff;border-color:var(--wine)}
.premium-app .place-editorial-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:20px}
.premium-app .place-card:nth-child(n){grid-column:auto;min-height:0!important;aspect-ratio:auto;background:#fff;border:1px solid var(--line);border-radius:18px;padding:0;box-shadow:none;display:flex;flex-direction:column;overflow:hidden;color:var(--ink)}
.premium-app .place-card:before,.premium-app .place-card:after{display:none}
.premium-app .place-card>img{position:static!important;height:210px;width:100%;object-fit:cover;opacity:1;filter:none}
.premium-app .place-card-content{position:static;padding:20px;background:white;inset:auto}
.premium-app .place-card .category{font-size:.75rem;color:var(--muted);letter-spacing:.025em}
.premium-app .place-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;font-weight:400;margin:10px 0;line-height:1.25;letter-spacing:-.02em;color:var(--ink)}
.premium-app .place-card p{font-size:.9rem;line-height:1.6;color:var(--muted);margin-bottom:18px}
.premium-app .place-card-links{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.premium-app .place-card-links>button{border:0;background:transparent;min-height:44px;font-size:.85rem;color:var(--wine);padding:0}
.premium-app .place-card-links>a{font-size:.75rem;color:var(--muted)}
.premium-app .place-controls{margin-bottom:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.premium-app .place-tabs{display:flex;flex-wrap:wrap;gap:8px}
.premium-app .chat-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px}
.premium-app .chat-context{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:16px;padding:20px;height:max-content;box-shadow:none;min-width:0}
.premium-app .chat-context>strong{font-size:1rem}.premium-app .chat-context>span{font-size:.85rem;color:var(--muted)}
.premium-app .chat-context .chat-prompt{font-size:.85rem;color:var(--muted);padding:16px 0}
.premium-app .chat-alert-panel{border-color:var(--line);color:var(--muted)}
.premium-app .chat-alert-panel>span{font-size:.85rem}.premium-app .notification-button{border:1px solid var(--line);color:var(--wine);min-height:44px;font-size:.85rem;background:transparent;padding:8px;border-radius:8px}
.premium-app .chat-panel{border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 6px 24px rgba(21,38,50,.04);overflow:hidden}
.premium-app .messages{height:440px;min-height:220px;max-height:640px;padding:24px;background:#f7f9fa;overflow:auto;display:flex;flex-direction:column;gap:16px;overscroll-behavior:contain}
.premium-app .message{width:auto;max-width:88%;border:1px solid var(--line);box-shadow:none;background:white;color:var(--ink);border-radius:16px;padding:14px 16px;flex:none;align-self:flex-start}
.premium-app .message.mine{align-self:flex-end;background:#ebe3e8!important;color:#382c39;border-color:#e0d2dc}
.premium-app .message.proposal{border-left:3px solid #967f54}
.premium-app .message-head{font-size:.75rem;text-transform:none;letter-spacing:normal;color:var(--muted);gap:12px;align-items:baseline}
.premium-app .message-head>span{font-weight:600}.premium-app .message-head time{font-size:.7rem;white-space:nowrap}
.premium-app .message p{font-size:1rem;line-height:1.6;margin:8px 0;white-space:pre-wrap}
.premium-app .message-footer{border-top:0;margin-top:6px;padding:0}
.premium-app .message-delete-button,.premium-app .message-place{font-size:.75rem;letter-spacing:normal;text-transform:none;min-height:32px;color:var(--muted)}
.premium-app .message-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:16px;background:#fff;border:0;border-top:1px solid var(--line);width:100%}
.premium-app .message-form textarea{grid-column:1/-1;width:100%;min-height:76px;max-height:180px;background:#f7f9fa;border:1px solid var(--line);border-radius:12px;padding:12px 14px;font-size:1rem;line-height:1.5;color:var(--ink);resize:vertical}
.premium-app .chat-compose-tools{gap:8px;grid-column:1/-1}
.premium-app .chat-compose-tools button{font-size:.85rem;min-height:40px;padding:7px 12px;border-radius:8px;background:white;line-height:1.4;display:inline-flex;align-items:center;gap:7px;color:var(--muted)}
.premium-app .chat-paste-hint{font-size:.75rem;color:var(--muted);margin:0;line-height:1.45}
.premium-app .chat-message-context{grid-column:1;align-self:center;min-width:0}
.premium-app .chat-message-context>summary{font-size:.8rem;color:var(--muted);min-height:44px;display:flex;align-items:center;cursor:pointer}
.premium-app .chat-message-context select{width:100%;border:1px solid var(--line);border-radius:8px;min-height:44px;padding:7px;font-size:.85rem;margin:8px 0}
.premium-app .proposal-check{font-size:.85rem;display:flex;align-items:center;gap:8px}
.premium-app .send-button{grid-column:2;align-self:start;padding:10px 20px;min-height:44px;border-radius:10px;border:0;background:var(--wine);color:white;font-size:.9rem;width:auto;letter-spacing:normal}
.premium-app .send-button:disabled{opacity:.5;cursor:wait}
.premium-app .chat-attachment-previews{max-height:140px;overflow:auto}.premium-app .chat-attachment-preview img{height:64px;width:64px}.premium-app .chat-attachment-preview button{font-size:.75rem;min-height:32px}
.premium-app .chat-send-status{color:var(--muted);font-size:.8rem}
.premium-app .chat-emoji-picker button{background:#f1f4f6}.premium-app .chat-sticker-picker button{background:#f1f4f6;font-size:2.5rem}
.premium-app .diary-empty{padding:24px;text-align:center;color:var(--muted);background:transparent!important;border:0;display:block;margin:auto}
.premium-app .diary-empty h3{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;font-weight:400;color:var(--ink);line-height:1.3}
.premium-app .diary-empty p{font-size:.9rem;line-height:1.6;max-width:390px;margin:12px auto}
.premium-app .solid-button{background:var(--wine);color:#fff;border:1px solid var(--wine);border-radius:10px;min-height:44px;font-size:.9rem;letter-spacing:normal;text-transform:none;padding:10px 18px}
.premium-app .outline-button,.premium-app .text-button{font-size:.9rem;letter-spacing:normal;text-transform:none;min-height:44px;color:var(--wine)}
.premium-app .outline-button{border:1px solid var(--line);border-radius:10px;background:#fff;padding:10px 16px}
.premium-app .wine-challenge-hero{border-radius:18px;background:#1f3542;color:white;padding:28px;margin-bottom:24px;border:0}
.premium-app .wine-challenge-copy h3{font-family:Georgia,"Times New Roman",serif;font-size:1.8rem;font-weight:400;letter-spacing:normal;line-height:1.3;margin:12px 0}
.premium-app .wine-challenge-copy p{font-size:.9rem;line-height:1.6;color:#dbe3e8}
.premium-app .wine-challenge-status{font-size:.75rem;color:#e3d5b8;background:transparent;letter-spacing:.05em}
.premium-app .wine-seal-preview{display:none}
.premium-app .wine-summary{border:1px solid var(--line);background:white;border-radius:16px;overflow:hidden}.premium-app .wine-summary>div{padding:20px}
.premium-app .wine-summary>div>span{font-size:.75rem;color:var(--muted);letter-spacing:.025em}.premium-app .wine-summary>div>strong{font-size:1.5rem;color:var(--ink);letter-spacing:normal}
.premium-app .wine-leaderboard{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.premium-app .wine-player{padding:18px;border:1px solid var(--line);border-radius:14px;background:white;color:var(--ink);min-height:0;box-shadow:none}
.premium-app .wine-player.is-leader{background:#f0e9ed;border-color:#d8bdcd}.premium-app .wine-player h4{font-size:1rem}.premium-app .wine-player-score{font-size:1.8rem;line-height:1.3;color:var(--wine)}
.premium-app .wine-player-metrics{font-size:.75rem;color:var(--muted);line-height:1.6}.premium-app .wine-player-rank{font-size:.75rem;color:var(--muted)}
.premium-app .wine-card{border:1px solid var(--line);border-radius:18px;background:#fff;overflow:hidden;box-shadow:none}.premium-app .wine-card-body{padding:20px}
.premium-app .diary-photo{border-radius:18px;overflow:hidden}.premium-app .diary-caption{font-size:.9rem;line-height:1.5}.premium-app .diary-view-switch{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}.premium-app .diary-view-switch button{font-size:.85rem;min-height:44px;letter-spacing:normal;text-transform:none}
.premium-app .memory-close{height:260px;min-height:0;border-radius:18px;overflow:hidden;max-width:1116px;margin:20px auto}.premium-app .memory-copy h2{font-family:Georgia,"Times New Roman",serif;font-size:3rem;line-height:1.1}.premium-app .memory-copy p{font-size:.9rem}
.premium-app footer{max-width:1116px;margin:20px auto;padding:18px 0 28px;border-top:1px solid var(--line);display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;font-size:.8rem;color:var(--muted)}
.premium-app footer>span:nth-child(2){display:none}.premium-app footer button{font-size:.8rem;color:var(--wine);min-height:44px}
.premium-app .floating-chat,.premium-app .floating-ai{display:none!important}
.premium-app #appBottomNav{display:none}
.premium-app .dialog{border:0;background:transparent;max-width:calc(100vw - 32px);padding:0;color:var(--ink)}
.premium-app .dialog::backdrop{background:rgba(20,35,44,.45);backdrop-filter:blur(6px)}
.premium-app .dialog-card{border-radius:22px;background:white!important;border:1px solid var(--line);padding:32px;box-shadow:0 30px 80px rgba(10,25,38,.18);max-height:85dvh;overflow:auto;color:var(--ink)}
.premium-app .dialog-card h2{font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1.2;letter-spacing:-.02em;color:var(--ink)}
.premium-app .dialog-card label{font-size:.875rem}.premium-app .dialog-card input,.premium-app .dialog-card textarea,.premium-app .dialog-card select{font-size:1rem;min-height:44px;border:1px solid var(--line);background:#f8fafb;border-radius:9px;padding:10px;color:var(--ink)}
.premium-app .dialog-close{min-width:44px;min-height:44px;border-radius:50%;color:var(--ink);background:white;border:1px solid var(--line);font-size:1.5rem}
.premium-app .place-dialog-hero{margin:-32px -32px 24px;height:240px}.premium-app .place-dialog-hero img{height:100%;width:100%;object-fit:cover}
.premium-app .place-dialog-content-grid{display:block}.premium-app .place-dialog-content-grid p{font-size:1rem;line-height:1.7;color:var(--muted)}
.premium-app .place-dialog-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.premium-app .place-dialog-actions>a,.premium-app .admin-edit-place{font-size:.875rem;min-height:44px;padding:9px 12px;border-radius:8px;border:1px solid var(--line);background:white;letter-spacing:normal;color:var(--wine)}
.premium-app #accountRole{display:inline-flex;font-size:.8rem;background:#eee5eb;color:var(--wine);padding:5px 9px;border-radius:6px;margin:0 0 20px}
.premium-app .account-actions{display:grid;gap:8px}.premium-app .account-actions button{min-height:48px;border-radius:10px;font-size:.95rem;letter-spacing:normal;padding:12px;background:#f8fafb;border:1px solid var(--line);text-align:left}
.premium-app .identity-gate{background:#f3f5f6;grid-template-columns:1fr 1fr;overflow:auto;transition:none;padding:0;z-index:500}
.premium-app .identity-visual{display:block!important}.premium-app .identity-visual video{filter:brightness(.7) saturate(.7)}
.premium-app .identity-word{font-family:Georgia,"Times New Roman",serif;font-size:14vw;font-weight:400;letter-spacing:-.07em;bottom:6vw}
.premium-app .identity-panel{padding:42px 10%;width:100%;max-width:650px;margin:auto;justify-content:center;min-height:100%;background:transparent;gap:0}
.premium-app .identity-brand{position:static;display:flex;align-items:center;justify-content:space-between;color:var(--wine);font-size:26px;letter-spacing:-.06em;text-decoration:none;margin-bottom:36px;transform:none}
.premium-app .identity-brand i{font-size:.7rem;letter-spacing:.09em;color:var(--muted);font-style:normal;margin:0}
.premium-app .identity-panel>h1{font-family:Georgia,"Times New Roman",serif;font-size:2.8rem;line-height:1.1;letter-spacing:-.04em;font-weight:400;margin:12px 0 16px;color:var(--ink)}
.premium-app .identity-panel>#identityHelp{font-size:.95rem;line-height:1.6;color:var(--muted);margin:0 0 28px}
.premium-app .identity-names{display:grid;grid-template-columns:1fr 1fr;gap:10px;background:transparent;padding:0;border:0;margin:0 0 24px}
.premium-app .identity-names button{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-height:72px;padding:12px;background:white;border:1px solid var(--line);border-radius:12px;font-size:1rem;letter-spacing:normal;line-height:1.4;color:var(--ink);box-shadow:none;cursor:pointer}
.premium-app .identity-names button:hover{border-color:#a7788b;background:#fbf8fa}
.premium-app .traveler-avatar{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:#eee5eb;color:var(--wine);flex:none;font-size:.9rem;font-weight:600}
.premium-app .traveler-name{display:flex;flex-direction:column;gap:3px;text-align:left;font-size:.95rem}.premium-app .traveler-name small{font-size:.7rem;line-height:1.3;color:var(--muted)}
.premium-app .identity-panel>small{font-size:.75rem;line-height:1.6;color:var(--muted)}
.premium-app .pin-form{gap:14px;margin-top:10px}.premium-app .pin-form label{font-size:.85rem}.premium-app .pin-form input{min-height:52px;font-size:1.5rem;letter-spacing:.3em;border:1px solid var(--line);border-radius:12px;background:white;text-align:center;color:var(--ink)}
.premium-app .pin-back{font-size:.875rem;min-height:44px;color:var(--wine);padding:0}
@media(max-width:800px){
 .premium-app main{padding-top:64px;padding-bottom:84px}.premium-app .site-header{height:64px!important;padding:0 18px}.premium-app .site-header nav{display:none}.premium-app .identity-switch{font-size:.85rem;padding:9px 14px}
 .premium-app .editorial-pad{padding:24px 16px}.premium-app .hero{margin:12px 16px 0;height:170px!important;border-radius:18px}.premium-app .hero-meta{right:18px;top:16px;gap:12px;font-size:.7rem}.premium-app .hero-meta span:first-child{display:none}.premium-app .hero-copy{left:20px;bottom:20px;right:16px;width:auto}.premium-app .hero h1{font-size:2.1rem!important;line-height:1.1!important}.premium-app .hero-copy>.micro{font-size:.7rem}.premium-app #heroIntro{font-size:.8rem;line-height:1.45;max-width:300px}.premium-app .hero-bottom{margin-top:8px}
 .premium-app .journey-info{margin:12px 16px 0;padding:0 14px;border-radius:12px}.premium-app .journey-info>summary{font-size:.8rem;min-height:46px}.premium-app .flight-journal{grid-template-columns:1fr;gap:0}.premium-app .flight-journal article{padding:12px 0}
 .premium-app .app-section-header h2,.premium-app .section-title-grid h2{font-size:1.65rem}.premium-app .app-section-header{margin-bottom:10px}.premium-app .app-section-header>span{font-size:.75rem}.premium-app .itinerary-note{font-size:.8rem;line-height:1.55;margin-bottom:16px}
 .premium-app .agenda-day-tabs{margin-bottom:22px;border-radius:12px;gap:4px;padding:4px}.premium-app .agenda-day-tabs button{min-height:48px;border-radius:9px;gap:7px}.premium-app .agenda-day-tabs button strong{font-size:1.1rem}.premium-app .agenda-day-tabs button span{font-size:.8rem}
 .premium-app .agenda-day-heading{margin-bottom:14px}.premium-app .agenda-day-heading h3{font-size:1.05rem}.premium-app .agenda-day-heading>span{font-size:.7rem}.premium-app .agenda-day-heading .micro{font-size:.7rem}
 .premium-app .premium-event{grid-template-columns:1fr;gap:10px;padding:18px;border-radius:14px}.premium-app .event-time{font-size:.8rem;padding:0}.premium-app .event-title-row{display:block}.premium-app .event-title-row h4{font-size:1rem;line-height:1.5;margin-bottom:8px}.premium-app .event-status{display:inline-flex;max-width:none;font-size:.7rem!important;padding:4px 7px}.premium-app .event-transfer{font-size:.8rem}.premium-app .event-actions{gap:12px;margin-top:12px}.premium-app .event-primary{font-size:.8rem;padding:10px 12px}.premium-app .event-secondary,.premium-app .apple-leg-link{font-size:.8rem!important}.premium-app .event-details summary{font-size:.8rem}.premium-app .event-details p{font-size:.85rem}
 .premium-app .confirmed-map-links{grid-template-columns:1fr!important;gap:10px}.premium-app .apple-place-location{padding:16px}.premium-app .map-filters{gap:6px}.premium-app .map-filters button,.premium-app .place-tabs button{font-size:.8rem;padding:8px 12px}
 .premium-app .place-editorial-grid{grid-template-columns:1fr!important}.premium-app .place-card>img{height:200px}.premium-app .place-card-content{padding:18px}
 .premium-app .chat-section{padding:20px 12px 12px}.premium-app .chat-section>.section-title-grid{margin-bottom:14px}.premium-app .chat-section>.section-title-grid .micro{display:none}.premium-app .chat-section>.section-title-grid>p{display:none}.premium-app .chat-layout{grid-template-columns:1fr;gap:10px}
 .premium-app .chat-context{padding:8px 12px;border-radius:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.premium-app .chat-context>strong{font-size:.8rem}.premium-app .chat-context>span{font-size:.75rem}.premium-app .chat-context .chat-prompt,.premium-app .chat-context #chatAiBtn{display:none}.premium-app .chat-alert-panel{margin:0;padding:0;border:0;display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.premium-app .chat-alert-panel>span{display:none}.premium-app .notification-button{min-height:36px;font-size:.7rem;padding:6px 8px}
 .premium-app .chat-panel{border-radius:14px}.premium-app .messages{padding:14px;height:clamp(180px,calc(100dvh - 450px),520px);min-height:180px;gap:12px}.premium-app .message{padding:12px;max-width:94%}.premium-app .message-head{font-size:.7rem;gap:8px;flex-wrap:wrap}.premium-app .message-head time{font-size:.65rem}.premium-app .message p{font-size:.95rem}.premium-app .message-form{padding:12px;gap:8px;grid-template-columns:minmax(0,1fr) auto}.premium-app .message-form textarea{min-height:70px;padding:10px 12px;resize:none}.premium-app .chat-compose-tools{gap:6px}.premium-app .chat-compose-tools button{min-height:40px;font-size:.75rem;padding:7px 10px}.premium-app .chat-paste-hint{display:none}.premium-app .chat-message-context>summary{font-size:.7rem;min-height:44px;line-height:1.4}.premium-app .send-button{font-size:.85rem;padding:10px 18px;min-width:85px}.premium-app .chat-sticker-emoji{font-size:4rem}.premium-app .chat-message-image{max-width:200px}
 .premium-app #appBottomNav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:120;justify-content:space-around;gap:0;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid var(--line);backdrop-filter:blur(20px)}
 .premium-app #appBottomNav>a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:48px;flex:1;max-width:90px;text-decoration:none;color:#647583;font-size:.65rem;border-radius:12px;line-height:1.4;font-weight:500}.premium-app #appBottomNav>a svg{width:22px;height:22px}.premium-app #appBottomNav>a.active{background:#f2ebef;color:var(--wine)}.premium-app #appBottomNav .chat-badge{position:absolute;top:0;right:10px;font-size:.65rem}
 .premium-app .wine-leaderboard{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px}.premium-app .wine-player{padding:14px}.premium-app .wine-player-metrics{font-size:.7rem}.premium-app .wine-challenge-hero{padding:20px}.premium-app .wine-challenge-copy h3{font-size:1.45rem}.premium-app .wine-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.premium-app .wine-summary>div{padding:12px}.premium-app .wine-summary>div>span{font-size:.65rem}.premium-app .wine-summary>div>strong{font-size:1.1rem}.premium-app .wine-summary>#openWineBtn{grid-column:1/-1;width:100%;border-radius:0;border:0}
 .premium-app .diary-actions{gap:12px;margin-bottom:20px}.premium-app .diary-grid{gap:16px}.premium-app .diary-photo:nth-child(n){height:420px}.premium-app .memory-close{margin:16px;height:240px}.premium-app .memory-copy h2{font-size:2.5rem}.premium-app .memory-copy p{display:none}
 .premium-app footer{margin:8px 16px;padding-bottom:12px;font-size:.75rem}.premium-app .dialog-card{padding:24px 18px;border-radius:20px}.premium-app .dialog-card h2{font-size:1.6rem}.premium-app .dialog{max-width:calc(100vw - 24px)}.premium-app .place-dialog-hero{margin:-24px -18px 18px;height:200px}.premium-app .pin-user-row{display:flex;flex-wrap:wrap;gap:12px}
 .premium-app .identity-gate{display:block;overflow-y:auto}.premium-app .identity-visual{display:none!important}.premium-app .identity-panel{padding:28px 24px 32px;max-width:480px;min-height:100dvh;justify-content:center}.premium-app .identity-brand{margin-bottom:28px;font-size:25px}.premium-app .identity-brand i{font-size:.65rem}.premium-app .identity-panel>h1{font-size:2.4rem;margin:12px 0}.premium-app #identityHelp{font-size:.85rem!important;margin-bottom:22px!important}.premium-app .identity-panel>.micro{font-size:.7rem}.premium-app .identity-names{gap:8px;margin-bottom:22px}.premium-app .identity-names button{min-height:68px;padding:10px;gap:8px}.premium-app .traveler-name{font-size:.9rem}.premium-app .traveler-name small{font-size:.65rem}.premium-app .traveler-avatar{width:30px;height:30px;font-size:.8rem}.premium-app .identity-panel>small{font-size:.7rem}
}
@media(prefers-reduced-motion:reduce){.premium-app *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Remove inherited blend effects and expose the account on every viewport. */
.premium-app #siteHeader{mix-blend-mode:normal!important;filter:none!important;background:rgba(255,255,255,.98)!important;color:var(--ink)!important;isolation:isolate}
.premium-app #siteHeader .wordmark{mix-blend-mode:normal!important;color:var(--wine)!important}
.premium-app #identitySwitch{display:inline-flex!important;visibility:visible!important;opacity:1!important;color:var(--ink)!important;background:white!important}
.premium-app .identity-brand .identity-monogram{font-size:26px;letter-spacing:-.05em;color:var(--wine)}
.premium-app .traveler-name small{margin:0!important;padding:0!important;position:static!important;letter-spacing:normal!important;font-size:.7rem!important}
.premium-app .event-primary{text-transform:none!important;letter-spacing:normal!important}

.premium-app .hero h1{display:block!important;white-space:normal!important;grid-template-columns:none!important;gap:0!important;text-shadow:none}
.premium-app .hero h1 span,.premium-app .hero h1 strong{margin:0!important;padding:0!important;transform:none!important}
.premium-app .itinerary-note,.premium-app .event-transfer,.premium-app .event-details p{opacity:1!important;color:var(--muted)!important}
.premium-app #identitySwitch{text-transform:none!important;letter-spacing:normal!important}
.premium-app #siteHeader .wordmark,.premium-app #siteHeader nav a{text-shadow:none!important}
.premium-app #siteHeader nav a{font-weight:500!important}.premium-app #siteHeader nav a.active{font-weight:650!important}
.premium-app .pin-user-row{border:1px solid var(--line);border-radius:12px;gap:12px;padding:14px;flex-wrap:wrap}
.premium-app .pin-user-row button{font-size:.8rem;min-height:44px;border-color:var(--line);border-radius:8px;color:var(--wine)}
.premium-app .pin-user-row span{font-size:.8rem;opacity:1;color:var(--muted)}
