:where(.h55){--h55-accent:#2350d8;--h55-accent-ink:#ffffff;--h55-ink:#1b2330;--h55-muted:#4f5868;--h55-paper:#ffffff;--h55-glass:rgba(255,255,255,0.72);--h55-line:rgba(20,28,48,0.14);--h55-wash:rgba(35,80,216,0.08);--h55-blur:16px;--h55-chamfer:0px;--h55-radius:18px;--h55-font:inherit;--h55-shadow:0 18px 40px -18px rgba(10,15,30,0.4);--h55-ease:cubic-bezier(0.2,0.7,0.2,1)}.h55{font-family:var(--h55-font)}.h55-vh{position:absolute;inset-block-start:0;inset-inline-start:0;inline-size:1px;block-size:1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.h55-btn{position:fixed;z-index:60;inset-block-end:calc(16px + env(safe-area-inset-bottom, 0px));inset-inline-start:calc(16px + env(safe-area-inset-left, 0px));display:inline-flex;align-items:center;gap:8px;min-block-size:48px;padding-block:4px;padding-inline:4px 16px;border:1px solid var(--h55-line);border-radius:999px;background:var(--h55-glass);color:var(--h55-ink);-webkit-backdrop-filter:saturate(1.5) blur(var(--h55-blur));backdrop-filter:saturate(1.5) blur(var(--h55-blur));box-shadow:var(--h55-shadow);font:inherit;font-size:.9375rem;font-weight:650;cursor:pointer;transition:transform .16s var(--h55-ease)}.h55-btn:active{transform:scale(.97)}.h55-btn:focus-visible,.h55-chip:focus-visible,.h55-go:focus-visible,.h55-person a:focus-visible,.h55-send:focus-visible,.h55-x:focus-visible{outline:2px solid var(--h55-accent);outline-offset:3px}.h55-ico{display:inline-grid;place-items:center;inline-size:40px;block-size:40px;border-radius:999px}.h55-head-ico svg,.h55-ico svg{display:block;inline-size:100%;block-size:100%;overflow:visible}.h55-btn[data-hidden] *{animation-play-state:paused!important}.h55-dlg{box-sizing:border-box;inline-size:min(32rem,calc(100vw - 32px));max-block-size:min(84vh,46rem);padding:0;-webkit-margin-after:auto;margin-block-end:auto;overflow-x:hidden;border:1px solid var(--h55-line);border-radius:var(--h55-radius);background:var(--h55-paper);color:var(--h55-ink);box-shadow:0 40px 80px -30px rgba(10,15,30,.5);overscroll-behavior:contain;-webkit-clip-path:polygon(var(--h55-chamfer) 0,100% 0,100% calc(100% - var(--h55-chamfer)),calc(100% - var(--h55-chamfer)) 100%,0 100%,0 var(--h55-chamfer));clip-path:polygon(var(--h55-chamfer) 0,100% 0,100% calc(100% - var(--h55-chamfer)),calc(100% - var(--h55-chamfer)) 100%,0 100%,0 var(--h55-chamfer))}.h55-dlg[open]{animation:h55-in .24s var(--h55-ease)}.h55-dlg::-webkit-backdrop{background:rgba(10,15,30,.4)}.h55-dlg::backdrop{background:rgba(10,15,30,.4)}@keyframes h55-in{0%{transform:translateY(10px) scale(.985)}to{transform:none}}@media (max-width:47.999rem){.h55-dlg{inline-size:100vw;max-inline-size:100vw;margin:auto 0 0;border-end-start-radius:0;border-end-end-radius:0;max-block-size:88vh;-webkit-clip-path:none;clip-path:none}}.h55-in{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:14px;gap:14px;padding:18px 20px calc(18px + env(safe-area-inset-bottom, 0px))}.h55-head{display:flex;align-items:center;gap:10px}.h55-head-ico{inline-size:36px;block-size:36px;flex:none}.h55-head h2{margin:0;-webkit-margin-end:auto;margin-inline-end:auto;font-size:1.2rem;font-weight:700;letter-spacing:-.01em;line-height:1.2}.h55-head h2 span{font-weight:500;color:var(--h55-muted)}.h55-x{display:inline-grid;place-items:center;inline-size:44px;block-size:44px;flex:none;border:1px solid var(--h55-line);border-radius:999px;background:transparent;color:var(--h55-ink);cursor:pointer}.h55-scope{margin:0;font-size:.8125rem;color:var(--h55-muted)}.h55-log:empty{display:none}.h55-turn{display:grid;grid-gap:8px;gap:8px;padding:14px 16px;border-radius:calc(var(--h55-radius) - 6px);background:var(--h55-wash)}.h55-q{font-size:.875rem;font-weight:650;color:var(--h55-muted)}.h55-a,.h55-q{margin:0;overflow-wrap:anywhere}.h55-a{line-height:1.55;color:var(--h55-ink);max-inline-size:none}.h55-routes{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 0}.h55 a.h55-go,.h55 a.h55-go:visited{display:inline-flex;align-items:center;min-block-size:44px;max-inline-size:100%;padding:4px 16px;border-radius:999px;background:var(--h55-accent);color:var(--h55-accent-ink);font-weight:650;text-decoration:none}.h55-thinking{margin:0;font-size:.8125rem;color:var(--h55-muted)}.h55-chips-wrap h3{margin:0 0 8px;font-size:.75rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--h55-muted)}.h55-chips{display:flex;flex-wrap:wrap;gap:8px}.h55-chip{min-block-size:44px;padding:0 14px;border:1px solid var(--h55-line);border-radius:999px;background:transparent;color:var(--h55-ink);font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;text-align:start}@media (hover:hover){.h55-chip:hover{border-color:var(--h55-accent)}.h55 a.h55-go:hover{color:var(--h55-accent-ink);filter:brightness(1.06)}}.h55-form{display:flex;gap:8px}.h55-input{flex:1 1;min-inline-size:0;min-block-size:48px;padding:0 14px;border:1px solid var(--h55-line);border-radius:12px;background:var(--h55-paper);color:var(--h55-ink);font:inherit;font-size:1rem}.h55-input:focus-visible{outline:2px solid var(--h55-accent);outline-offset:1px}.h55-send{flex:none;min-block-size:48px;min-inline-size:48px;padding:0 18px;border:0;border-radius:12px;background:var(--h55-accent);color:var(--h55-accent-ink);font:inherit;font-weight:700;cursor:pointer}.h55-send:disabled{opacity:.55;cursor:default}.h55-person{display:flex;flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0;font-size:.875rem}.h55 .h55-person a{display:inline-flex;align-items:center;min-block-size:44px;color:var(--h55-accent);font-weight:650}.h55-person span{color:var(--h55-muted);overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){.h55 *,.h55 :after,.h55 :before{animation:none!important;transition:none!important}}@media (prefers-reduced-transparency:reduce){.h55-btn{background:var(--h55-paper);-webkit-backdrop-filter:none;backdrop-filter:none}}@media (forced-colors:active){.h55-btn,.h55-chip,.h55-dlg,.h55-go,.h55-input,.h55-send{border:1px solid CanvasText}.h55 a.h55-go,.h55-send{background:ButtonFace;color:ButtonText}}@media print{.h55{display:none}}.h55--university{--h55-accent:#50c8ff;--h55-accent-ink:#0b1d3a;--h55-ink:#eef2fa;--h55-muted:#b6c2d8;--h55-paper:#0f2346;--h55-glass:rgba(11,29,58,0.7);--h55-line:rgba(212,175,55,0.32);--h55-wash:rgba(30,91,255,0.16);--h55-blur:20px;--h55-chamfer:10px;--h55-radius:6px;--h55-font:var(--font-body,Figtree,"Segoe UI",sans-serif);--h55-shadow:0 18px 40px -18px rgba(0,0,0,0.7);--uni-board:#1e5bff;--uni-cap:#0e3d8a;--uni-gold:#d4af37;--uni-disc:#0b1d3a}html[data-theme=warm] .h55--university,html[data-theme=white] .h55--university{--h55-accent:#1e5bff;--h55-accent-ink:#ffffff;--h55-ink:#1f2633;--h55-muted:#586475;--h55-paper:#ffffff;--h55-glass:rgba(247,248,250,0.78);--h55-line:rgba(11,29,58,0.16);--h55-wash:#eef1f5;--h55-shadow:0 16px 34px -18px rgba(11,29,58,0.45);--uni-disc:#eef1f5;--uni-gold:#b8912a}html[data-theme=warm] .h55--university{--h55-paper:#fffaf2;--h55-wash:#f4ecdf;--uni-disc:#f4ecdf}.h55--university .h55-head h2{font-family:var(--font-display,Sora,"Segoe UI",sans-serif)}.h55--university .h55-btn{border-radius:999px}.uni-disc{fill:var(--uni-disc)}.uni-board{fill:var(--uni-board)}.uni-cap{fill:var(--uni-cap)}.uni-button{fill:var(--uni-gold);transform-box:fill-box;transform-origin:center;transition:transform .24s var(--h55-ease)}.uni-cord{fill:none;stroke:var(--uni-gold);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.uni-tuft{fill:var(--uni-gold)}.uni-tassel{transform-box:view-box;transform-origin:20px 16.1px;transform:rotate(calc(var(--h55-lx, 0) * 9deg));transition:transform .32s var(--h55-ease)}.h55--university .h55-btn[data-state=idle] .uni-tuft{animation:uni-sway 5.6s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 0}@keyframes uni-sway{0%,to{transform:rotate(0deg)}50%{transform:rotate(7deg)}}@media (hover:hover){.h55--university .h55-btn:hover .uni-button{transform:scale(1.35)}}.h55--university .h55-btn:focus-visible .uni-button{transform:scale(1.35)}.h55--university [data-state=thinking] .uni-tassel{animation:uni-swing .8s ease-in-out infinite}@keyframes uni-swing{0%,to{transform:rotate(-12deg)}50%{transform:rotate(10deg)}}.h55--university [data-state=answer] .uni-tassel{transform:scaleX(-1)}.h55--university [data-state=answer] .uni-button{fill:#ffd76a;transform:scale(1.25)}@media (prefers-reduced-motion:reduce){.uni-tassel{transform:none!important}.h55--university [data-state=answer] .uni-tassel{transform:scaleX(-1)!important}}@media (forced-colors:active){.uni-board,.uni-button,.uni-cap,.uni-tuft{fill:CanvasText}.uni-cord{stroke:CanvasText}.uni-disc{fill:Canvas}}