:root{--blue: #0b4f8f;--blue-deep: #073a6b;--blue-ink: #0a2745;--blue-tint: #e6eff8;--sky: #f3f7fb;--gold: #f2c230;--gold-bright: #f5d93a;--gold-soft: #fdf1c4;--green: #5e9f40;--green-dark: #3f7a27;--green-soft: #e5f1dd;--white: #ffffff;--muted: #56708c;--font-display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--font-body: "Figtree", "Segoe UI", system-ui, -apple-system, sans-serif;--r-bubble: 20px;--r-chip: 999px}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);font-size:16px;line-height:1.5;color:var(--blue-ink);background:var(--sky);-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer}:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.app{display:grid;grid-template-columns:minmax(300px,380px) 1fr;height:100vh;height:100dvh}.brand{position:relative;overflow:hidden;display:flex;flex-direction:column;background:var(--blue);color:var(--white);padding:36px 32px 0}.brand__top{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:20px}.brand__logo{width:84px;height:84px;object-fit:contain;background:var(--white);border-radius:50%;padding:8px}.brand__name{font-family:var(--font-display);font-weight:800;font-size:clamp(1.8rem,2.4vw,2.3rem);line-height:1;letter-spacing:-.02em;margin:0}.brand__uni{margin:8px 0 0;color:var(--gold);font-weight:600}.brand__restart-mobile{display:none}.brand__body{position:relative;z-index:1;margin-top:28px;max-width:32ch}.brand__lede{font-size:1.05rem;margin:0 0 16px}.brand__cnn{margin:0 0 28px;color:#cfe0f1;font-size:.95rem}.brand__cnn strong{color:var(--gold)}.brand__progress-text{display:flex;justify-content:space-between;font-size:.875rem;color:#cfe0f1;margin-bottom:8px}.brand__bar{height:8px;border-radius:8px;background:var(--blue-deep);overflow:hidden}.brand__bar span{display:block;height:100%;background:var(--green);border-radius:inherit;transition:width .4s ease}.brand__restart{margin-top:20px;background:transparent;color:var(--white);border:1.5px solid rgba(255,255,255,.45);border-radius:var(--r-chip);padding:10px 18px;font-weight:600;transition:background .2s,border-color .2s}.brand__restart:hover{background:var(--blue-deep);border-color:var(--white)}.brand__sun{position:absolute;left:50%;bottom:-2px;width:100%;max-width:400px;transform:translate(-50%);pointer-events:none}.brand__sun .sun{fill:var(--gold)}.brand__sun .ray{fill:var(--gold-bright);opacity:.9;transform-box:fill-box;transform-origin:bottom center;animation:ray-rise .7s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i) * 45ms + .15s)}.brand__sun .ray:nth-child(odd){fill:var(--gold)}@keyframes ray-rise{0%{opacity:0;scale:1 .2}}.chat{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--sky)}.chat__head{display:flex;align-items:center;gap:12px;padding:16px 28px;background:var(--white);border-bottom:1px solid var(--blue-tint)}.chat__avatar{width:44px;height:44px;border-radius:50%;object-fit:contain;background:var(--white);border:2px solid var(--gold);padding:3px}.chat__title{font-family:var(--font-display);font-weight:700;font-size:1.15rem;margin:0;line-height:1.2}.chat__sub{margin:0;font-size:.875rem;color:var(--muted)}.chat__scroll{flex:1;overflow-y:auto;overscroll-behavior:contain}.chat__thread{max-width:760px;margin:0 auto;padding:28px 24px 16px;display:flex;flex-direction:column;gap:14px}.msg{display:flex;align-items:flex-end;gap:10px;animation:msg-in .28s ease-out both}.msg--user{justify-content:flex-end}.msg--bot{align-items:flex-start}.msg__avatar{flex:none;width:32px;height:32px;border-radius:50%;object-fit:contain;background:var(--white);border:1.5px solid var(--gold);padding:2px}.msg__stack{display:flex;flex-direction:column;gap:10px;max-width:min(78%,60ch)}.msg--user .msg__stack{align-items:flex-end}.msg__bubble{margin:0;padding:12px 16px;border-radius:var(--r-bubble);font-size:1rem;line-height:1.55}.msg--bot .msg__bubble{background:var(--white);border-bottom-left-radius:6px;box-shadow:0 1px 0 var(--blue-tint)}.msg--user .msg__bubble{background:var(--blue);color:var(--white);border-bottom-right-radius:6px}@keyframes msg-in{0%{opacity:0;transform:translateY(6px)}}.msg__typing{display:inline-flex;gap:5px;padding:16px 18px}.msg__typing span{width:8px;height:8px;border-radius:50%;background:var(--gold);animation:bounce 1s infinite ease-in-out}.msg__typing span:nth-child(2){animation-delay:.15s;background:var(--green)}.msg__typing span:nth-child(3){animation-delay:.3s;background:var(--blue)}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.followups{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.followups__label{width:100%;margin:0;font-size:.8125rem;color:var(--muted)}.followup{background:var(--green-soft);color:var(--green-dark);border:1.5px solid transparent;border-radius:var(--r-chip);padding:7px 14px;font-size:.9rem;font-weight:600;text-align:left;transition:border-color .2s}.followup:hover{border-color:var(--green)}.done{align-self:center;text-align:center;background:var(--gold-soft);border-radius:16px;padding:18px 22px;margin-top:8px;max-width:52ch}.done p{margin:0 0 12px}.done__btn{background:var(--blue);color:var(--white);border:0;border-radius:var(--r-chip);padding:9px 20px;font-weight:600}.tray{background:var(--white);border-top:1px solid var(--blue-tint);padding:14px 24px calc(16px + env(safe-area-inset-bottom,0px))}.tray__head,.tray__panel{max-width:760px;margin:0 auto}.tray__head{display:flex;align-items:center;gap:8px}.tray__tabs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;flex:1}.tray__tabs::-webkit-scrollbar{display:none}.tray__tab{flex:none;display:inline-flex;align-items:center;gap:8px;background:transparent;color:var(--muted);border:0;border-radius:var(--r-chip);padding:8px 14px;font-weight:600;font-size:.9375rem;transition:background .2s,color .2s}.tray__tab:hover{color:var(--blue)}.tray__tab[aria-selected=true]{background:var(--gold);color:var(--blue-ink)}.tray__count{font-size:.75rem;font-weight:600;font-variant-numeric:tabular-nums;opacity:.75}.tray__toggle{display:none;align-items:center;gap:4px;background:transparent;border:0;color:var(--blue);font-weight:600;font-size:.875rem;padding:8px 4px 8px 8px}.tray__toggle svg{width:16px;height:16px;transition:transform .2s}.tray.is-open .tray__toggle svg{transform:rotate(180deg)}.tray__list{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items:center;gap:6px;text-align:left;background:var(--white);color:var(--blue);border:1.5px solid var(--blue);border-radius:var(--r-chip);padding:9px 16px;font-weight:600;font-size:.9375rem;line-height:1.3;transition:background .15s,color .15s,transform .1s}.chip:hover:not(:disabled){background:var(--blue);color:var(--white)}.chip:active:not(:disabled){transform:scale(.97)}.chip:disabled{opacity:.55;cursor:wait}.chip--asked{border-color:var(--green);color:var(--green-dark);background:var(--green-soft)}.chip--asked:hover:not(:disabled){background:var(--green);border-color:var(--green)}.chip__check{width:14px;height:14px;flex:none}@media(max-width:860px){.app{grid-template-columns:1fr;grid-template-rows:auto 1fr}.brand{padding:calc(12px + env(safe-area-inset-top,0px)) 16px 12px}.brand__top{flex-direction:row;align-items:center;gap:12px}.brand__logo{width:46px;height:46px;padding:4px}.brand__titles{flex:1;min-width:0}.brand__name{font-size:1.3rem}.brand__uni{margin-top:2px;font-size:.8125rem}.brand__restart-mobile{display:inline-block;background:var(--gold);color:var(--blue-ink);border:0;border-radius:var(--r-chip);padding:8px 14px;font-weight:600;font-size:.875rem;white-space:nowrap}.brand__body{display:none}.brand__sun{width:220px;left:auto;right:-60px;transform:none;opacity:.25}.chat__head{display:none}.chat__thread{padding:20px 14px 12px}.msg__stack{max-width:86%}.tray{padding:10px 14px calc(12px + env(safe-area-inset-bottom,0px))}.tray__toggle{display:inline-flex}.tray:not(.is-open) .tray__panel{display:none}.tray__panel{max-height:36dvh;overflow-y:auto}.chip{font-size:.9rem;padding:9px 14px}}@media(max-width:380px){.brand__uni{display:none}.tray__tab{padding:8px 10px;font-size:.875rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
