/* Aselo reference: Inter + Noto Sans TC, warm whites, charcoal, violet. */
:root{--accent:#8B5CF6;--accent-hover:#6D28D9;--accent-soft:#F5F3FF;--ink:#0F0F0E;--text:#56544D;--muted:#727069;--line:#e8e6e1;--canvas:#FAFAF8;--font:"Inter","Noto Sans TC",-apple-system,BlinkMacSystemFont,"PingFang TC","Microsoft JhengHei","Segoe UI",sans-serif;--serif:var(--font)}
body{font-family:var(--font);background:var(--canvas);color:var(--ink);font-feature-settings:"cv02","cv03","cv04","cv11"}
.brand{color:var(--ink);gap:9px}.brand>span{font-family:var(--font);font-weight:800;letter-spacing:-1px}.brand-beta{font-family:var(--font);font-size:10px;letter-spacing:.7px;text-transform:uppercase;font-weight:700;background:#EDE9FE;color:#6D28D9;border:1px solid #DDD6FE;border-radius:6px;padding:4px 7px}
.welcome-nav,.app-header{background:#fff;color:var(--ink);border-bottom:1px solid var(--line)}.app-header .header-actions .quiet,.save-status{color:var(--text)}.app-header .app-brand>span{font-size:28px}.mobile-trip-select{background:#FAFAF8;color:var(--ink);border-color:var(--line)}.avatar-button{background:#F5F3FF;color:#6D28D9}.language-switch{border-color:#e5e0ef}.language-switch button{color:#56544D}.language-switch button.active{background:#EDE9FE;color:#6D28D9}
.primary,.chat-bottom .send{background:linear-gradient(180deg,#A78BFA,#8B5CF6);color:#fff;box-shadow:0 4px 14px #8b5cf630}.primary:hover{background:#7c3aed}.invite-layout{max-width:1280px;margin:32px auto 0;display:grid;grid-template-columns:1.12fr 1fr;min-height:640px;padding:0 28px;gap:72px;align-items:center}.invite-photo{align-self:stretch;border-radius:24px;background:linear-gradient(0deg,#191126d9,transparent 80%),url('/photos/seoul.jpg') center/cover;display:flex;align-items:end;color:#fff;padding:48px}.invite-photo h1{font:800 clamp(38px,4.5vw,64px)/1.22 var(--font);letter-spacing:-2px;margin:18px 0}.invite-photo p{font-size:15px;opacity:.9}.invite-photo .eyebrow{color:#e9ddff}.invite-panel{padding:28px 0;max-width:430px}.invite-roami{width:76px;height:76px;display:block;margin-bottom:28px}.invite-panel>.eyebrow{display:block;color:#7c3aed;font-size:11px;font-weight:700;letter-spacing:2px}.invite-panel h2{font-size:32px;letter-spacing:-1.2px;line-height:1.3;margin:14px 0;font-weight:800}.invite-panel>p{color:var(--text);font-size:15px}.invite-panel form{margin-top:30px}.invite-panel label{font-size:13px;font-weight:600;display:block;margin-bottom:9px}.invite-panel input{display:block;width:100%;padding:16px;background:#fff;border:1px solid #dcd8e4;border-radius:11px;font-size:16px;color:var(--ink)}.invite-panel input:focus{outline:2px solid #c4b5fd;outline-offset:2px}.invite-panel .primary{width:100%;justify-content:center;padding:16px;font-size:15px;border-radius:11px;min-height:52px}.invite-panel .invite-note{font-size:12px;line-height:1.9;color:var(--muted);margin-top:22px}.invite-footer{max-width:1280px;padding:28px;margin:20px auto 0;display:flex;justify-content:space-between;gap:15px;font-size:11px;color:var(--muted)}
.trip-titlebar h1{font-weight:700;letter-spacing:-1.5px}.day-heading h3,.chat-intro h2{font-weight:700;letter-spacing:-.8px}.day-nav button{background:#F1EFF5;color:#56544D}.day-nav button.active{background:#6D28D9;color:#fff}.event>time{color:#56544D}.event-symbol{background:#F5F3FF;color:#7c3aed}.event-card{border-color:#e8e6ee}.chat-panel,.app.chat-open .chat-panel{background:#FAFAF8}.message.user .bubble{background:#EDE9FE;color:#4c1d95}.mobile-chat-toggle{background:#F5F3FF;border-color:#DDD6FE}.roami-avatar{background:linear-gradient(145deg,#FAFAF8,#EDE9FE)}.chat-header strong,.chat-header small{color:var(--ink)}.event:before{border-color:#d5cbed}.app .event>time:before{background:#a78bfa;box-shadow:0 0 0 3px #f5f3ff}.compact-button{border-color:#e5e0eb}.event-expanded{color:#56544D}.family-filters button.active{background:#EDE9FE;color:#6D28D9;border-color:#DDD6FE}
@media(max-width:760px){.welcome-nav{min-height:78px;padding:15px 18px}.welcome-nav .brand>span{font-size:26px}.invite-layout{grid-template-columns:1fr;margin:0;gap:0;padding:0}.invite-photo{min-height:230px;border-radius:0;padding:28px;background-position:center 48%}.invite-photo h1{font-size:35px;margin:10px 0;letter-spacing:-1px}.invite-photo p{font-size:12px;margin:0}.invite-panel{padding:30px 24px;max-width:none}.invite-roami{display:none}.invite-panel h2{font-size:28px}.invite-panel form{margin-top:24px}.invite-panel>p{font-size:13px}.invite-footer{margin:0;padding:8px 24px 24px;flex-wrap:wrap}.app-header .app-brand>span{font-size:24px}.app-header .brand img{width:26px;height:26px}.brand-beta{font-size:9px;padding:3px 5px}.app-header .brand{gap:6px}}
